Request for "Cas2Rom" utility.

Pagina 2/2
1 |

Van Louthrax

Prophet (2076)

afbeelding van Louthrax

05-03-2017, 01:30

Too bad that CAS2ROM tool has been lost. Anyway, it should not be too hard to re-create it starting from Martos' LOADCAS.COM (just using ROM pages to store the .CAS dump instead of mapper pages). Compatiblity rate should be the same.

Van Wlcracks

Champion (317)

afbeelding van Wlcracks

05-03-2017, 08:30

I am an idot, no life... Here we go again..

ROM stands for Read Only Memory.
So if a game, most likely a cas game, isnt designed for running in ROM, it will work in RAM dump yes.
But if you want to burn them in e.g. EPROM, again it wont work.
Dumping ram and getting an execution adress and just jump to it will work in 90% of the cases.
If this "utility" has been lost why dont we just "download" the converted games?

Like everybody else i guess, i would like to see every MSX game in ROM. These file are easy to handle, run in eproms, flash carts, dos and emulators.

But for example lets get this first game "180" from "luppie" list.
I never heard of it, looks like a nice game, searched the ROM file, couldnt find it, just the cas: and disk. I would love to see this ROM file!

I am kinda rusty not working a MSX for 20 years, so please be gentle.
Loaded with bluemsx. 2 bin files so that was easy.

First part about 22k
Second part about 13k
Kinda big for a 32K ROM?? But will see.

First part loaded at 0x8800 to 0xE1B0. Executed at 0x8803.
Basically the loader moves block 0x8A00 to 0x0100 with a length of 0x5800. (bit much 0xE200 ?)
This block will be located at 0x0100 to 0x5900.
Second part loaded at 0x8A00 to 0xBD00. Executed at 0x8800 code left from the first loader.
This code is doesnt moved stuff, just enables the RAM at page 0, and executes at 0x0100.

Summary
0x0000 - 0x5900 First Block in page 0
0x8A00 - 0xBD00 Second Block in page 2
Kinda spread out for building a it into a ROM 32KROM, but wutever.
Lets check the code where it executes.
0x0100:

0100: di
0101: ld sp,#ffff
0104: ld a,#c3
0106: ld (#0038),a
0109: ld hl,#10c1
010C: ld (#0039),hl
010F: ei

Looks like first thing they do is set the Interrupt to 0x10C1.
So page 0 has to be RAM but the code is running there also.
Moving to page 1 (0x4000-0x7FFF) could be done from the first looks, but it would overwrite possibly the second part.

I would be very happy see an SINGLE utility run this cassette game to ROM!!!
RAM dump could be done i guess. Unefficient and ugly but wutever, it could work.

Van Louthrax

Prophet (2076)

afbeelding van Louthrax

05-03-2017, 12:04

Wlcracks wrote:

But if you want to burn them in e.g. EPROM, again it wont work.

Hi WIcracks,

To give a little background on these tools (LOADCAS.COM and CAS2ROM): they store the dump of the tape (ususally .CAS files), in mapper for LOADCAS.COM (or in ROM for CAS2ROM), and then create a patched copy of the BIOS in RAM that accesses this dump instead of the real cassette player. The game is launched by simply doing a RUN "CAS:" or BLOAD in BASIC.

This allows to run games with special loaders or different parts on tape. The only drawback with that approach is that the BIOS is in RAM, and that area is somtimes used by the game itself, or the slot is dismissed, etc...

Van Wlcracks

Champion (317)

afbeelding van Wlcracks

05-03-2017, 12:17

ok cool thanks for the info. i guess you need more ram slots with that approach.

Van diedel

Resident (48)

afbeelding van diedel

23-07-2019, 22:49

Could someone who has those roms share them? Louthrax?

Pagina 2/2
1 |