Idea of RAM expansion cartridge

Page 1/3
| 2 | 3

By Eugeny_Brychkov

Paragon (1150)

Eugeny_Brychkov's picture

02-03-2020, 11:23

Not sure if it will be useful; not sure if any software (developer) will want to support it.

The cartridge will contain the following hardware:

  • max 256 MB of SDRAM;
  • max 128 MB of flash memory.

SDRAM will act as a conventional memory for the MSX, and its excess over 4 MB (256x16 kB pages) will be controlled through I/O ports F8-FB at the low level, and EXTBIO mechanism at the BIOS/operating system level.

Flash memory will be controlled through EXTBIO mechanism.

I plan to use one additional I/O port for configuring the device (e.g. port 5D - I see this port is assigned to MSXPi interface, but the project website seems to be broken).

The API must be loaded externally (be built into the application or be loaded as a driver). API driver can be located in the GR8NET ROM if GR8NET is installed into the system and cart may be logically put into the subslot 1 in composite mapper modes (8-14, with internal GR8NET mapped RAM disabled and available for game mapper), thus in the solution with GR8NET will not occupy additional slot.

Must be defined: how flash is presented to the system (raw space, disk image or anything else - and at which level - firmware/software). It can not be used as real time storage as serial interface is slow, and usage of WAIT is not desired, but can be used as data/code storage to load (shadow) into the RAM.

Looking for your feedback. Project will require considerable investment, thus I want to validate its viability.

Login or register to post comments

By gdx

Prophet (3561)

gdx's picture

02-03-2020, 11:57

I am not at all interested in this large amount of RAM and flashROM. I would prefer a project that simplifies the use of our software, or why not something original.

By OeiOeiVogeltje

Paragon (1352)

OeiOeiVogeltje's picture

02-03-2020, 12:28

to be honest i think most, if not all, current msx users have all the ram they need

a HDMI cart would be an awesome thing!
(just a wild fantasy..)

By salutte

Expert (68)

salutte's picture

02-03-2020, 14:24

While it is true that most practical RAM needs are already covered by today's cartridges, having a humongous amounts of ram in a cartridge may open new avenues and opportunities. Do you have any idea in mind?

It would take around 30 minutes for a z80 to copy 256 MBytes (without doing anything useful with it).

By Pencioner

Scribe (1136)

Pencioner's picture

02-03-2020, 15:33

I can only think if both flash and RAM could be used as a fast ramdisk solution, having two RAMdisks of 128Mb, where 128Mb of data of one disk can be persistent and seeded from flash content on boot (on FPGA level, so no Z80 involved in copying such a huge amount of data), and thus the command to synchronize it back (on FPGA level) to make changes persistent should be implemented. Then it could be useful for anyone who do development for MSX on MSX (not crossplatform or on emulator), or do media production on MSX with programs such as PSG/SCC/OPL4 trackers. Otherwise as said before, there are almost no software which uses that much of RAM (only a few vgm tracks for OPNB aka Neotron are > 8Mb in size, and if needed the vgmplayer can be improved to load samples directly into Neotron without prior loading to RAM).
Also, for audio and video playback the bitrate of media suitable to show on MSX VDP is in par with SD/CF cards speed, so it doesn't bring much of improvements here too. I have no more ideas of using that much of RAM on MSX at the moment.

By sdsnatcher73

Paladin (975)

sdsnatcher73's picture

02-03-2020, 16:39

Well vgmplay would be a good candidate, I like that it could give more than 4MB RAM in a non primary slot. 256 MB seems a bit much though. Why did you go for 256MB? Is that ‘cheapest’ way to go beyond 4MB? Would 16MB be feasible and cheaper option?

By Eugeny_Brychkov

Paragon (1150)

Eugeny_Brychkov's picture

02-03-2020, 17:00

256 MB is the maximum with 8 chips by 32 MB. There're chips of 8 MB, and I think it is minimum size.

By spacemoai1973

Master (165)

spacemoai1973's picture

02-03-2020, 17:54

I don't see a compelling use case for this complicated approach.

By Giangiacomo Zaffini 2

Master (211)

Giangiacomo Zaffini 2's picture

02-03-2020, 19:36

First 4Mbytes of flash could be any type of MegaROM, first 4Mbyte of SDRAM could be managed with MSX-DOS 2 routines for memory mapped RAM, exceding RAM could be used as buffer for i/o with any other filesystem of any mass storage device MSX is not aware of but that could be treated by means of external device to be devised, like a synthetic filesystem device, like Samba.
Maybe I don't know what I'm saying though. oO

By spacemoai1973

Master (165)

spacemoai1973's picture

02-03-2020, 19:42

Giangiacomo Zaffini 2 wrote:

Maybe I don't know what I'm saying though. oO

Clearly. Wink

In seriousness, the things you mentioned would prevent it from working in a subslot again. For MegaROM there is no added value compared to any of the other devices. Someone else will want SCC, and FM-PAC and etc etc and in the end it'll just be yet another frankenstein hardware device which is incompatible with all the others.

By erpirao

Paragon (1061)

erpirao's picture

02-03-2020, 20:06

You may call me crazy, but I think if this card were accompanied by a cpu like the z380 or a z180 that managed the RAM and / or could be used like the old Z380 by Leonardo Padial, it would be very interesting.
I think it may be a good time to recover this z380 project, or implement an advanced z80 cpu in fpga.

Page 1/3
| 2 | 3