09 January 2013, 19:50 | #1 |
Registered User
Join Date: Feb 2008
Location: Federativnaya Respublika Germaniya
Posts: 4,994
|
BS1 intro
I have a Disk with a bootloading intro and i am not able to rip this intro.
Can someone check zoned disk please. |
09 January 2013, 20:13 | #2 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
The bootblock code looks like this:
Code:
dl ('DOS'<<8) dl $33164C37 dl 880 MOVEM.L D0-D7/A0-A6,-(SP) MOVEA.L (4).L,A6 MOVE.W #CMD_READ,(IO_COMMAND,A1) MOVE.L #$10000,(IO_DATA,A1) MOVE.L #$16A00,(IO_LENGTH,A1) MOVE.L #$76800,(IO_OFFSET,A1) JSR (_LVODoIO,A6) LEA ($10000).L,A0 MOVE.L #$16A00,D0 NotLoop NOT.B (A0)+ DBRA D0,NotLoop JMP ($10008).L dcb.l $EC,0 The decoded data is attached if anyone else wants to take a look. I'm guessing you could probably turn that into an executable pretty easily using an absolute-position cruncher. The decoded data looks to be crunched, hence the black & white display before the intro starts. I'll take a look and see if I can decrunch that data. |
09 January 2013, 20:19 | #3 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
It's ByteKiller crunched. And I'm in the process of converting the intro to standard executable (no absolute address cruncher required for this).
|
09 January 2013, 20:43 | #4 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
Standard AmigaDOS executable of the intro attached. It's a quick hack, no fixes etc. applied so intro needs OCS! Might do a proper fix later.
|
09 January 2013, 20:58 | #5 |
Unregistered User
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 44
Posts: 4,190
|
Just out of curiosity, which tools do you use to analyze the image and disassemble the code?
And does any good tools exist for Windows? |
09 January 2013, 20:59 | #6 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
ReSource for disassembling, AsmPro for the rest. For Windows you can try IDA Pro for disassembling, it supports Amiga/68k files.
|
09 January 2013, 21:07 | #7 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
Here's the decrunched demo data. Load to $20000, JSR to $20008.
Edit: the outer wrapper code points D0 to the demo scrolltext (plain ASCII) before calling $20008. Last edited by mark_k; 09 January 2013 at 21:33. |
09 January 2013, 21:26 | #8 |
Registered User
Join Date: Feb 2008
Location: Federativnaya Respublika Germaniya
Posts: 4,994
|
|
09 January 2013, 21:30 | #9 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
This was no executable file! This was loaded as binary, decrypted and started. To make it run as a stand-alone AmigaDOS executable, it needs to be located at the same address and it also needs a hunk header.
|
09 January 2013, 21:37 | #10 | |
Unregistered User
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 44
Posts: 4,190
|
Quote:
AsmPro looks alright, so I will give that a go as well. The main reason why I would prefer Windows is because it's so much easier to copy and paste stuff around. |
|
09 January 2013, 21:45 | #11 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
Reading the ReSource manual will really help. The manual is on Fish disk 232. While that document is for an earlier version of ReSource, it is mostly applicable to later versions too.
|
09 January 2013, 21:46 | #12 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
You can find the manual and the last version of ReSource (6.06) on my site: ReSource+manual.
|
09 January 2013, 22:10 | #13 |
Registered User
Join Date: Feb 2008
Location: Federativnaya Respublika Germaniya
Posts: 4,994
|
I wanted the intro rather for preservation(submitting to Bitworld).
What to do in such unusual case, any suggestion? |
09 January 2013, 22:16 | #14 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
My executable is the original version, the only difference is that it can be run from AmigaDOS. I also deliberately did not decrunch it as during the decrunching the credits are shown.
I've patched lots of intros like this for Bitworld. In this case you should wait for me doing a proper version though as I didn't disable the code which trackloads the game code after leaving the intro with LMB. |
09 January 2013, 22:30 | #15 | |
Unregistered User
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 44
Posts: 4,190
|
Quote:
|
|
09 January 2013, 22:38 | #16 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
The funny thing is, (as far as I can tell) the code which trackloads another 1KB of data after the intro is completely broken. It's lucky the machine doesn't crash.
It loads 1KB of data from offset $76400 to the address pointed to by A4. A4 contains whatever value was in there when the bootblock code was originally called. It then loads the bootblock (i.e. 1KB from offset 0) to address $FC00 but doesn't do anything with it. Then it decodes (NOTs) the code it loaded to (A4) and jumps to offset 12. The data at offset $76400 is probably supposed to be the disk's original bootblock, so the intro is supposed to chain-load that. But at least on this disk, it isn't. The data at offset $76400 looks to be a fragment of demo code. Maybe there's an uncorrupted/unmodified version of this disk somewhere??? |
09 January 2013, 22:47 | #17 |
move.l #$c0ff33,throat
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,865
|
The code is not broken (except for 1 word that's trashed in the decrypter due to dbf and not adapting the loop counter), a4 = bootblock address (OS 1.x only IIRC). There is nothing corrupted, at least not in the boot code. Also, it IS the original bootblock that is loaded, a bog standard DOS bootblock.
|
09 January 2013, 23:21 | #18 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,351
|
Whoops yeah, something must have gone wrong when I tried to decode that data the first time. And the reason the code loads the actual disk bootblock to a dummy address will be to get the heads to seek back to track 0.
|
10 January 2013, 20:14 | #19 |
Registered User
Join Date: Feb 2008
Location: Federativnaya Respublika Germaniya
Posts: 4,994
|
Thanks so far, Please dont forget to create a proper version, if i investigated correctly, then this intro is missing in Bitworld.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Intro ;) | diskers | Member Introductions | 2 | 19 September 2012 14:29 |
Intro | tomse | Member Introductions | 7 | 04 July 2010 09:40 |
no-intro? | Marcuz | project.TOSEC (amiga only) | 10 | 25 August 2008 22:30 |
What's the intro? | xtc | request.Demos | 4 | 14 February 2008 09:47 |
Can you name this intro?! | Quickbeam | Retrogaming General Discussion | 3 | 17 May 2003 10:54 |
|
|