Playing roms based games on disk

Door emul8this

Supporter (15)

afbeelding van emul8this

28-11-2004, 01:12

Hello all,

this is my second topic since I got my Turbo R ST

I have some old carts but I don't want to plug-in plug-out to damage my connectors. Since the Turbo R ST has 256k ram and most of the games are Megaroms 1MB, is there a way to convert them to a floppy?

Aangemeld of registreer om reacties te plaatsen

Van Sonic_aka_T

Enlighted (4130)

afbeelding van Sonic_aka_T

28-11-2004, 02:24

You won't damage the connector by normal use. The cartridge slot is pretty much designed to put cartridges in... Well, assuming ofcourse they're MSX cartridges and the power is off Wink

Van Sonic_aka_T

Enlighted (4130)

afbeelding van Sonic_aka_T

28-11-2004, 02:26

But to answer your question, yes, you can put them on a floppy, but you'd have to insert the cartridges for that tho Tongue Perhaps BiFi can explain how this works, since he knows a lot about that kind of stuff. I would just play them from the carts tho, assuming they are in good working condition they're really not going to damage your computer in any way...

Van MSXHinter

Expert (77)

afbeelding van MSXHinter

28-11-2004, 08:27

Maybe a slotexpander is the solution ?

Van BiFi

Enlighted (4348)

afbeelding van BiFi

28-11-2004, 09:09

I agree with Sonic the cartridge slot is designed to put carts in. Though he may imply I hacked a lot of those games in the past... which I didn't. But to explain a bit what to do to get a ROM running from disk, here goes:

1. You can use a program to play the ROM images you made from your cartridge. One program that enables you to do this by making all necessary adjustments is LOADROM by Trunks. To determine which type its mapper is it uses a file that links the settings to the filename. Otherwise it asumes the Konami method by default.
2. You can also doing things youself. You still need to have a ROM image of the game and it takes some knowledge of how things are done. A list of what you should know:

  • the type of the mapper: Konami games use 1 of 2 types: one with SCC and one without. There's also an ASCII mapper. There are also 2 types, though these differ in size of blocks
  • block size: Konami always uses 8 KB blocks for their games. ASCII has and 8 KB mapper and a 16 KB mapper. MSX always uses 16 KB for the memory mapper. This means 16 KB mapped games are easier to run from RAM than 8 KB ones
  • setup of mappers: to be more specific, which address(-range) switches a block to which range?

    Konami without SCC:

    &H4000 -> &H4000 - &H5FFF
    &H6000 -> &H6000 - &H7FFF
    &H8000 -> &H8000 - &H9FFF
    &HA000 -> &HA000 - &HBFFF

    Konami with SCC:

    &H5000 -> &H4000 - &H5FFF
    &H7000 -> &H6000 - &H7FFF
    &H9000 -> &H8000 - &H9FFF
    &HB000 -> &HA000 - &HBFFF

    ASCII 8 KB:

    &H6000 - &H67FF -> &H4000 - &H5FFF
    &H6800 - &H6FFF -> &H6000 - &H7FFF
    &H7000 - &H77FF -> &H8000 - &H9FFF
    &H7800 - &H7FFF -> &HA000 - &HBFFF

    ASCII 16 KB:

    &H6000 -> &H4000 - &H7FFF
    &H7000 -> &H8000 - &HBFFF

    MSX memory mapper (16 KB):

    I/O port &HFD -> &H4000 - &H7FFF
    I/O port &HFE -> &H8000 - &HBFFF

You need to save the blocks seperately (8192 bytes or 16384 bytes) to be able make 16 KB blocks for RAM later. For 8 KB mapped games you first need to find out which two blocks make up a 16 KB block. This also means a block can be in a combination more than once. Then you need to replace the instructions writing to the mapper (basically writing to ROM) with the instructions for switching of the memory mapper. You also need to change block (combinations) to the memory mapper blocks containing those ROM blocks.

Then make a loader filling the memory mapper blocks accordingly and boot the game.

All this does require knowledge of Z80 machine language.

Van Sonic_aka_T

Enlighted (4130)

afbeelding van Sonic_aka_T

28-11-2004, 13:56

Hehe, I didn't mean to imply your nickname was starcracks or anything Tongue I just thought you had developed this program called ROMLOAD and figured you must know a lot about the subject since it must be somewhat similar to trying to dump ROMs...