A new multiROM cartridge? work in progress....

Modding and Technical Issues

Moderator: Moderators

Post Reply
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

A new multiROM cartridge? work in progress....

Post by MCes »

VIC20 carts backup anthology (prototype)
P_20201121_085356.jpg
The target of the project is a "clean" realization for contening about 200 SW
into 2MByte M27C160 EEPROM using 16K space only for sw that use two BLKs.
It allow: fitting inside more programs than before, both NTSC+PAL versions (menù can also autodetect the machine TV system and filter the list: only 1 multiROM cart for both standards...), free space can be used also for sw that originally are not into a cart but on tape or disk (for unexpanded VIC20, without multiload)

For me it's just a technical challenge, but can it be interesting for other people?

Now I have to test the correctness of the hw strategy used.

More details:
VIC20 carts backup anthology (prototipo)
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

Re: A new multiROM cartridge? work in progress....

Post by MCes »

Good news!
The prototype works as expected:
it locks the selected rom(s) image(s) and, for the 16k images, it emulates the cart on original blocks locations.

On "power on" (or HW reset, like pressing the onboard button) the HW will start a 16k area where the menù SW has to be, I'm thinking of 16k because 8K can be used for 256 titles (32 bytes each).

Into 32 byte, I can store the title characters, the pointer for the EPROM selection register, and other information like the attribute (PAL/NTSC/paddle/etc.) which will be used (in the future!) to sort and filter titles.

With this kind of organization, new cart ROM images can be added (in different time: revisions) simply putting them at the start of free EPROM space, without respecting the others images alphabetical order: only the 8k names table has to be kept in the right order, and this is easier than maintaining 2MB of 8/16k segmented storing areas sorted!

These are just a few thoughts, does anyone have any ideas on how to optimize it?
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: A new multiROM cartridge? work in progress....

Post by orion70 »

Great news, now for the list of games or programs :) . I'll check whether some games I have in mind can fit into an 8 or 16k RAM configuration, and propose to you some.

For example, with his permission, Miklos' trainers would be a great idea for this cart - i think at least cartridge game hacks may fit the memory in the very same way of the originals.

We really should have a running poll here in Denial to build the final list of titles.

Is there a way to easily check if a program can be fit into your multicart Max? I was thinking about using VICE with the appropriate RAM blocks turned on (which ones?), and see if a certain game loads and plays properly. If so, it should be suitable for the cartridge. Correct?
groepaz
Vic 20 Scientist
Posts: 1188
Joined: Wed Aug 25, 2010 5:30 pm

Re: A new multiROM cartridge? work in progress....

Post by groepaz »

As soon as you have some sort of ROM Image, don't forget to ping me so i can add support to VICE :)
I'm just a Software Guy who has no Idea how the Hardware works. Don't listen to me.
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

Re: A new multiROM cartridge? work in progress....

Post by MCes »

GOOD NEWS on GOOD NEWS!

The original idea was that 2MB EPROM space is cut into 128x16k slices because 16k (2 BLKs) is the maximum size of standard cartridges, but each slice can also be used as a dual 8K memory image (16K= 2xSWs of 8k) to better fit the memory space.

This type of flexible storage can contain all cartridges that I've seen before without filling the whole EPROM, so further SW can be stored in the residual space. This cart has no RAM on board, so I'm thinking to add also some SW designed for the unexpanded configuration (no multi-loading), as already told.

The last good news is that (without HW mods) I have found a way, for this little SWs, for using portions deep 4k. What does it mean?

1) a 16k slice can contain 4 fractions of 4k
2) an 8k slice can contain 2 fractions of 4k
3) any 4k fraction of free space can hold one small program, including residual free 4k portions from a 16k slice only partially occupied by a 12k (or 4k) cart image!

This implies that the titles could be a lot more than the 200 estimated, reaching 300 or more.

So I think that the title space (32BytesTitle * 256 titles= 8k) will be filled with titles 24 Bytes deep (for a maximum of 341 titles in 8K). A good use of these 24 Bytes produces a list of alphanumeric titles 20 or 21 characters long, alphabetically sorted.

Side note: is there any cartridge covering 3 or 4 BLKs at once?
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
cobracon
Vic 20 Dabbler
Posts: 74
Joined: Thu Nov 11, 2010 5:46 pm

Re: A new multiROM cartridge? work in progress....

Post by cobracon »

Fantastic job. Any idea what ballpark price on this will be once finished? Also will you be adding images of the super expander and program monitor? This could end up being an amazing product.
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

Re: A new multiROM cartridge? work in progress....

Post by MCes »

cobracon wrote: Sun Dec 06, 2020 2:39 pm Fantastic job. Any idea what ballpark price on this will be once finished?
(....)
This could end up being an amazing product.
(Thanks a lot) A target of mine is "cheap & easy", I'm trying to remain into a 25€ limit (to end user), but it's only a development target.......
cobracon wrote: Sun Dec 06, 2020 2:39 pm Also will you be adding images of the super expander and program monitor?
The multicart will be ROM only , no RAM will be onboard, then the "super-expander" is not implementable, because it needs extra RAM.
Other tools .BIN can be found.... http://www.zimmers.net/anonftp/pub/cbm/ ... oms/tools/
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
User avatar
MCes
Vic 20 Afficionado
Posts: 458
Joined: Fri Jul 24, 2015 1:19 am
Location: Italy

Re: A new multiROM cartridge? work in progress....

Post by MCes »

MCes wrote: Sun Dec 06, 2020 1:04 pm Side note: is there any cartridge covering 3 or 4 BLKs at once?
Into "Game" thread I have realized that some new games fit into 3 or 4 BLKs cartridges.

For my multirom cart architecture it is "easy & cheap" to implement the possibility of 4 blocks-SW, and with the residual IC logical resources it is also possible to implement the selections of two EPROMs, for future realization of 2+2=4MBytes multi cartridge.....

Now is the time to count ....
For example, here is possible to find (all?) the VIC20 games:
http://www.zimmers.net/anonftp/pub/cbm/ ... index.html
Into the "cart collection" (ROMS .BIN) there are 236 files: 1 is a doubled ".BAK", 1 is the "loader", 4 of them are doubled size (the "adventures"), implies that this collection represents games that need resource for 238 blocks, my SW menù will be 2 blocks: the used blocks become 240 of 256.

Also remember that the "no-cart SW" intended for the unexpanded VIC 20 (no multi-load) can be placed within 4k of free space, I counted about 44 of this type of "free space" within the games collection, so within the 240 blocks I CAN ALSO PLACE 44 "small SW" (total of 284 titles).

At this point 16 blocks of free space remain... SUGGESTIONS?
"Two things are infinite, the universe and human stupidity, and I am not yet completely sure about the universe." (Albert Einstein)
Post Reply