Stumped on a Cartridge Repair
Re: Stumped on a Cartridge Repair
Interesting, as 3D-Slime is a supercharged SuperBASIC program (as far as I know). Would be interesting to see, how the author has managed a protection scheme.
7000 4E75
Re: Stumped on a Cartridge Repair
It’s made up of several files and I suspect only the main game file is supercharged. This snippet isn’t from the main game file. I don’t even know for sure it relates to the protection but it is a starting point as it seems oddRalfR wrote: Mon Feb 10, 2025 6:16 pm Interesting, as 3D-Slime is a supercharged SuperBASIC program (as far as I know). Would be interesting to see, how the author has managed a protection scheme.
I’m not looking to break the protection, just to understand how to repair my original cart
Re: Stumped on a Cartridge Repair
Actually I guess the simplest way to see what it reads will be to assemble the code snippet and look at what’s read in
Will give it a go tomorrow
Will give it a go tomorrow
Re: Stumped on a Cartridge Repair
Your code simply reads the first 80bytes of the mdv1_ directory (what's a bit weird is that it's reading 1 1/3 file headers from there, so only the first 64 bytes are really useful.)
ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
Re: Stumped on a Cartridge Repair
I wondered if it was reading the 16 bytes sector header then the 64 bytes of the first entry to make 80 (so 16+64 rather than 64+16)tofro wrote: Mon Feb 10, 2025 7:08 pm Your code simply reads the first 80bytes of the mdv1_ directory (what's a bit weird is that it's reading 1 1/3 file headers from there, so only the first 64 bytes are really useful.)
I haven’t worked out what it does with whatever it reads yet, I guess that’s my next bit of disassembly to look at then
Re: Stumped on a Cartridge Repair
Nope. FS.LOAD doesn't touch any low-level structures like headers. What you get ist the contents of the file or directory.t0nyt wrote: Mon Feb 10, 2025 7:16 pmI wondered if it was reading the 16 bytes sector header then the 64 bytes of the first entry to make 80 (so 16+64 rather than 64+16)tofro wrote: Mon Feb 10, 2025 7:08 pm Your code simply reads the first 80bytes of the mdv1_ directory (what's a bit weird is that it's reading 1 1/3 file headers from there, so only the first 64 bytes are really useful.)
I haven’t worked out what it does with whatever it reads yet, I guess that’s my next bit of disassembly to look at then
ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
- XorA
- Site Admin
- Posts: 1581
- Joined: Thu Jun 02, 2011 11:31 am
- Location: Shotts, North Lanarkshire, Scotland, UK
Re: Stumped on a Cartridge Repair
3D slime copy protection is based purely on the funny characters in filename!
Re: Stumped on a Cartridge Repair
Not the cartridge from Chr$: https://qxl.win/3d_slime.htmXorA wrote: Mon Feb 10, 2025 9:17 pm3D slime copy protection is based purely on the funny characters in filename!
But there seem to be a file with no name, which was/is possible with Microdrives. Save "mdv1_" works. Even if it is a long SB file. Was used earlier in the early version of TT's Software Production Kit (see Wiki) (later changed to "mdv1_ ").
7000 4E75
- XorA
- Site Admin
- Posts: 1581
- Joined: Thu Jun 02, 2011 11:31 am
- Location: Shotts, North Lanarkshire, Scotland, UK
Re: Stumped on a Cartridge Repair
Code: Select all
❯ ls -l 3dslime/
.rw-r--r-- 25k graeme 10 Feb 21:46 '-noASCII-!Game_bIN A!Maps_BIN'
.rw-r--r-- 640 graeme 10 Feb 21:46 -noASCII-A
.rw-r--r-- 26k graeme 10 Feb 21:46 3Dslime_pic
.rw-r--r-- 380 graeme 10 Feb 21:46 boot
.rw-r--r-- 22k graeme 10 Feb 21:46 Game_EXE
.rw-r--r-- 20k graeme 10 Feb 21:46 Game_red
.rw-r--r-- 112 graeme 10 Feb 21:46 h_s__dl1
.rw-r--r-- 46k graeme 10 Feb 21:46 QLG1_OBJ_V24