ORICART - smart cartridge for Oric by [raxiss]

This is the right place to discuss on how to implement hardware vsync, adding a VIA or AY chipset, puting multiple roms, or how to design a new flash expansion card.
User avatar
iss
Wing Commander
Posts: 1286
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

ORICART - smart cartridge for Oric by [raxiss]

Post by iss »

Hello, my fellow Oricians! :)

I'm very happy to share our newly developed hardware extension for Oric: The Oricart!

The story:
Before couple of months @rax asked me if it would be possible to create something simple for our Oric games which acts like cartridge... then we started to dream and to add more and more possibilities - here is the result based on hundreds of tests and years experience with Oric capricious hardware:
20210404_225645.jpg
Key features:
- improved boot at power-on
- 4 Mbit (512x8 KB) fast flash memory paged in 8K - compatible with any standard internal ROM configurations
- digitally controlled MAP signal - 20MHz MCU generates the wayward MAP signal enabling the 16K overlay
- dual-color LED indicator
- robust and stable design
- easy to operate
- data retention 100 years (min) and endurance: 100,000 cycles (typical) - guaranteed by the flash-memory manufacturer
20210404_225917.jpg
Sample applications:
- standard cartridge
- multi boot ROM system
- multimedia streaming applications
- games with many levels and big maps
- game cartridge with options for 'save game'
- snapshot of current state
- ... many more?

20210404_230220.jpg

User avatar
iss
Wing Commander
Posts: 1286
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by iss »

And here are first demos:

1. Multi ROM cartridge:


(Here is the emulated version in Oricutron)

2. Bad Apple for Oric by [raxiss]:

(Here is the emulated version in Oricutron)

Sorry for the video quality, next clips will be made by @rax ;)

User avatar
jbperin
Flight Lieutenant
Posts: 287
Joined: Wed Nov 06, 2019 11:00 am
Location: Valence, France

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by jbperin »

iss wrote:
Sun Apr 04, 2021 9:52 pm
Hello, my fellow Oricians! :)

Sample applications:
- standard cartridge
- multi boot ROM system
- multimedia streaming applications
- games with many levels and big maps
- game cartridge with options for 'save game'
- snapshot of current state
- ... many more?
Waou .. :shock: .. there are so many questions that arise from such a blast.

Here are the first that come to me:

- How do we put the data on the cartbridge ?
- How do we read/write them from our own program ?
- Are you planning to sell cartridge ?
- In one of Iss video we can see that the system is even emulated. Is that right ?
- Is it possible to develop and run some program that uses this technology ?
- If yes how ?

You had told us that you were preparing a revolution .. Looks like you were dawn right !! :D

User avatar
Chema
Game master
Posts: 2814
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by Chema »

That was amazing!

I'm particularly interested in:
  • The music... how did you make the Oric sound so incredibly well? :)
  • Can the cartridge store things like games in snapshots?
  • How did you solve the MAP problems? This one is very interesting for future projects and solving issues for many oricians which cannot use their devices. I am specially interested in this info...
  • Are the demo frames being streamed as a video or is something rendered by software?
Last edited by Chema on Mon Apr 05, 2021 3:19 pm, edited 1 time in total.

User avatar
iss
Wing Commander
Posts: 1286
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by iss »

Thanks for responses!

@jbperin: we (@rax and me) see two ways for Oricart's usage:
1. To distribute our games on cartridge - actually this was the primary idea.
Of course we will continue releasing free games as download but we already have some which are really 'big' (literally and figuratively) and it will be nice to publish them more official (i.e. box, cartridge, printed manual etc.).
2. With all additional features Oricart is really powerful extension and it makes sense to offer it as platform for developers too.
Driving Oricart is very easy from software point of view and we will provide all info as open source.
So, on your questions:
How do we put the data on the cartridge: if you want to distribute 1000+ copies best is to use programmer to directly program the flash chip :) else we have a kind of boot loader which can be used to fill the flash with data.
How do we read/write them from our own program: The flash memory is organized in 8K pages visible at #E000...#FFFF. Reading is fast as from any other address. Writing is bit different but easy too - it's documented very detailed in the PDF's and I can provide ASM or C source.
In onevideo we can see that the system is even emulated. Is that right: Yes, we have modified Oricart-compatible Oricutron.
Is it possible to develop and run some program that uses this technology, If yes how: Yes, and it's easy!

@Chema:
The music...: The sound is recorded separately and mixed with the video because recording with the microphone from Oric's speaker sounds really awful!
Can the cartridge store things like games in snapshots: Yes, the flash memory is writable. It will be very easy to add snapshot option with specific patch to every particular game. It will be more complex to make snapshot universal and this will be the next demo.
How did you solve the MAP problems: I'm using a micro-controller to generate the MAP signal. The result is very stable - Oric runs for 48 hours without problem. I have an idea for fixing unstable microdisc/jasmin controllers but this needs some work and lot testing!
Are the demo frames being streamed as a video or is something rendered by software: In BadApple (made by @rax!) all frames are LZ-compressed (~400K) and they are decompressed directly to video memory. The sound is PT3 (~8k). Interesting is that during playback there is kind of synchronization between video and audio - just like in real players! :)

User avatar
xahmol
Flying Officer
Posts: 235
Joined: Sun Jun 28, 2020 7:32 pm
Location: Utrecht, The Netherlands
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by xahmol »

Super!

Any plans to add also network support? If you can access it from the PC over WiFi or cable, that would be really awesome.

User avatar
Symoon
Archivist
Posts: 1963
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by Symoon »

This looks cool, how do you guys manage to handle so many projects, it's amazing - as a simple user I don't manage to follow anymore ;)

You're talking about LZ compression, it the decompressing handled by the Oric, or by the card? (if made by the Oric, I'd be interested to try it to minimize tape loadings - sorry for the off-topic request ;) )

User avatar
ibisum
Wing Commander
Posts: 1451
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by ibisum »

Absolutely amazing project. I'll take 4.

User avatar
jbperin
Flight Lieutenant
Posts: 287
Joined: Wed Nov 06, 2019 11:00 am
Location: Valence, France

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by jbperin »

iss wrote:
Mon Apr 05, 2021 1:09 am
The flash memory is organized in 8K pages visible at #E000...#FFFF. Reading is fast as from any other address. Writing is bit different but easy too - it's documented very detailed in the PDF's and I can provide ASM or C source.
May I ask which PDF ? I may have missed a link.
iss wrote:
Mon Apr 05, 2021 1:09 am
all frames are LZ-compressed (~400K) and they are decompressed directly to video memory.
Sorry I don't understand .. How is it possible to put ~400K of data between #E000 and #FFFF ?
Is that a kind of dynamically changing address decoding logic ?

Whatever way it is done : reading stream + LZ-uncompressing data + displaying frame + playing PT3 music (all at the same time) It is great !!
It clearly shows that Oricart allows to push Oric's possibilities at their best by providing a fast and large storage facility.
Put in hands of bad guys like you and rax .. Perspectives are very very appetizing :-)

Do you have an idea of how many euro one have to save to buy the:
[raxiss] Christmas 2021 Game Pack Deluxe Edition
Containing :
- IJK egoist interface
- All [raxiss] Game Production Pack on a (single) cartridge (set)

:D
Last edited by jbperin on Mon Apr 05, 2021 10:08 am, edited 1 time in total.

User avatar
iss
Wing Commander
Posts: 1286
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by iss »

ibisum wrote:
Mon Apr 05, 2021 9:03 am
I'll take 4.
Haha, you are playing "Va banque" - I have to start soldering asap again :).
Symoon wrote:
Mon Apr 05, 2021 8:20 am
... about LZ compression...
The decompression is handled by the Oric - it's fast and the code size is small but it's bigger than Novalight. The original sources for Apple ][ are available HERE.
xahmol wrote:
Mon Apr 05, 2021 7:10 am
Any plans to add also network support?
Yes, it's on the conveyor already :).
next.png
next.png (37.52 KiB) Viewed 2023 times
Seriously, the next device will offer internet connectivity and I'm very proud with some unique 'inventions' in it (like ROM-less booting :twisted: )

User avatar
ibisum
Wing Commander
Posts: 1451
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by ibisum »

iss wrote:
Mon Apr 05, 2021 10:07 am
ibisum wrote:
Mon Apr 05, 2021 9:03 am
I'll take 4.
Haha, you are playing "Va banque" - I have to start soldering asap again :).
A) Haha, very funny, but I will *legitimately* put these in 4 working Atmos machines and make those machines available to an audience here in Vienna, Austria, and B) now I want 5, just tell me where to send the funds immediately.

User avatar
Symoon
Archivist
Posts: 1963
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by Symoon »

Thanks for the source code!
(still got to find out how to download a folder in unfriendly github :lol: )

User avatar
Dbug
Site Admin
Posts: 3693
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by Dbug »

Nice work :)

I guess you pretty much have the base for the equivalent of the RetroReplay1541UltimateEthernet something ultimate they have on C64, with the definitive cartridge that allows:
- Cartridge games
- Multi-Rom with custom software
- Ethernet connectivity
- Cumulus and Erebus built-in :)

What I'm wondering, is if you want to sell your games in cartridge, does that mean a lot of hardware duplication, like if I want a cartridge for my own software development, but I want to play the latest Raxxis game, do I need to remove the card and put the new one, or are you planning something with a double card system, with like a "mother card" with slots on which you can actually put the flash content?

User avatar
iss
Wing Commander
Posts: 1286
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by iss »

Symoon wrote:
Mon Apr 05, 2021 10:49 am
(still got to find out how to download a folder in unfriendly github :lol: )
Go to top-level (https://github.com/deater/dos33fsprogs), press the green button then Donwload zip.
git.jpg
EDIT: Maybe this will be interesting too: https://awesomeopensource.com/project/e ... marty/lzsa

User avatar
Symoon
Archivist
Posts: 1963
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: ORICART - smart cartridge for Oric by [raxiss]

Post by Symoon »

Thanks, I was sure it was hiding somewhere ;)
(sorry for being a noob there)

Post Reply