Fray Turbo-R Carnivore2 & Sofarun

Page 3/3
1 | 2 |

By jepmsx

Master (170)

jepmsx's picture

12-08-2022, 06:46

My ST is only 256kb. I used to play it using the disks I had and later with MegaSCSI without problem.
Unfortunately after many years without using it, the floppy disk doesn't work (I replaced the belt) and neither does MegaSCSI. This is why I bought a Carnivore2.
Thanks Louthrax for the version, I'll try it.

By gdx

Enlighted (5704)

gdx's picture

12-08-2022, 14:06

jepmsx wrote:

My ST is only 256kb. I used to play it using the disks

Obviously it works using the disks. We speak about using DSK images concatenated.

By sdsnatcher73

Prophet (3532)

sdsnatcher73's picture

12-08-2022, 16:07

So Microcabin most likely loads game data into the 256kB mapper as that was the minimum spec of the turbo R and as such overwrites SofaRunIt’s BDOS in RAM.

I wonder if SofaRunIt could use R800/Z80 DRAM mode to replace the original disk ROM on a turbo R? Could this improve its compatibility?

By Pentarou

Champion (451)

Pentarou's picture

12-08-2022, 16:53

Wouldn't the OP's Carnivore2 1MB RAM expansion take care of the 256KB minimum RAM?

By sdsnatcher73

Prophet (3532)

sdsnatcher73's picture

12-08-2022, 18:50

sdsnatcher73 wrote:

So Microcabin most likely loads game data into the 256kB mapper as that was the minimum spec of the turbo R and as such overwrites SofaRunIt’s BDOS in RAM.

I wonder if SofaRunIt could use R800/Z80 DRAM mode to replace the original disk ROM on a turbo R? Could this improve its compatibility?

I’ve since learned from spacemoai that the BDOS is not copied to RAM (as it is always executed by the Z80).

By sdsnatcher73

Prophet (3532)

sdsnatcher73's picture

12-08-2022, 18:28

Pentarou wrote:

Wouldn't the OP's Carnivore2 1MB RAM expansion take care of the 256KB minimum RAM?

The Microcabin code (running in R800) mode will just use the internal RAM, but SofaRunIt could probably be modified to use the external mapper if there is one.

By Louthrax

Prophet (2432)

Louthrax's picture

12-08-2022, 20:49

Ah, this thread brings me back to the origin of SofaRunIt (that was based on the existing NearDark's RunIt toolSmile).

Quote:

So Microcabin most likely loads game data into the 256kB mapper as that was the minimum spec of the turbo R and as such overwrites SofaRunIt’s BDOS in RAM.

Exactly!

At he begining of SofaRunIt, I was stuck because of the disk "hooks", calling routines in an external slot. Those hooks are required for MSX-BASIC support. I then started to change completely the architecure of SofaRunIt, having a "real" MSX-DOS driver in a separate slot. That implied calling SofaROM to flash the driver (or check it is already present somewhere).

Also, I still needed extra memory to keep the original MSX-DOS 2 environment alive (on top of the newly created MSX-DOS environment). The MSX-DOS 2 environment is using 32KB or more, and it was not easy to move it to external RAM.

I finally found a workaround to modify the hooks to call internal RAM (using a "CD xx xx [bios routine to call]" taking 5 bytes like the regular "RST ss aa aa" or something pattern). That worked well, and was not requiring external flash device or RAM, so I stayed on this approach.

The original "MSX-DOS driver in a slot" approach could still be interesting. Some games are calling MSX-DOS routines directly in the slot (not using hooks), that would make them work. But patching them has not been very difficult so far (most of the disk patches you can find on my site are related to that). And moving the MSX-DOS 2 environement to another slot will probably be a real pain... Also, as the memory mapper segments would not be affected when calling disk function, no painfull code to restore them properly as described here would be needed.

But that idea stays in my mind. IIRC, there are some tools that allow to switch the main RAM slot to another external slot (forgot the name). Maybe on turboR, this could be used to make the existing SofaRunIt work, but the overall performance of the game would be affected...

Page 3/3
1 | 2 |