ForumsCodeASMImpact Inc packs bootblock explanation RSS

 

Madj

Avatar
Well, everything started with the #44 of the Impact Inc pack series (1990). As this disk is not available on Kestra, i dumped it last week from my collection. The menu is the same as the one used from #39 to the last known (#60 or 61). Even if there is plenty of pack series, and no gem on this one, the menu is one of my favorite ever : pure & sober design, great musics & font, beautiful water effect and sinescroll. I dump on PC with a kryoflux (no more amiga :'( ) and test in WinUAE. First of all, some errors appeared during the dump. I knew there was some errors on some of those disks, still at the time. So, no real surprise. 3/6 files have RW errors : - Two 'No Limits' demos - 'Green Surprise' from Atron/Scoopex >> Loading starts but ends with a fatal error 1. I've replaced both 'No Limits' prods with files (with same size) from other packs. => OK 2. Then i've tried with the Scoopex one (207 Kb version, not the 3xx Kb) : the disk crashes during the boot. 3. At the start of the SCX boot, a cli message is displayed 'Scoopex presents...' on a good file, but the message has been erased in the Impact Inc one. I tried to change it on the a good file, but it does change anything (it loads and works well alone). Looking at the hexa, a good file and the bad one (both with same size) only differ on this CLI sentence and at the end of the files. 4. I then thought about a control in the bootblock, like a checksum ? Some bytes seems to repeat, so that it make me think about a kind of file list. But no ASM knowlegde and no OS knowledge let me stucked at this point. So now, here is my question : Can someone explain me how works the custom bootblock from another pack from this serie, maybe in a tut way, so that i could try to understand and fix the disk by myself ? Thanks for taking some time reading this long long long story :) and maybe for your help
 

musashi9

The #44 pack disk has no boot menu? and you want to fix it? BTW they made a little trainer menu using that menu http://www.flashtro.com/index.php?e=page&c=Amiga&id=2737
 

Madj

Avatar
Sorry, it was not clear. The boot menu is there, but if i replace the corrupted file by another good one (it fits on the disk), the disk crashes when booting, before the menu starts. That is what makes me think about some checksum controls in the boot menu.
 

musashi9

Ah ok you are overwriting the boot menu which is on the first track, so when you add a new file the system thinks the first track is empty and overwrites the boot menu. What do you do when you replace the file? Delete it first or just a straight overwrite?
 

WayneK

No, I don't think he is touching the boot menu - I think he is replacing one of the demos on the disk which has a read/write error (Scoopex demo), but once it is replaced it fails to load from the menu. Maybe a list of filename/filelen in the menu that doesn't match? Or some other wierdness, I downloaded 2 other packs with the same menu to have a look but they both fail to load anything, trying to load/execute a file called ALAN which doesn't exist on the disk :P
 

musashi9

The one I downloaded (pack # before his one) The boot menu is contained within the bootblock 0-$400 + the next $5400 bytes. Only one way to check. Can you upload your image?
 

Madj

Avatar
Right WayneK, i just try to replace a file (with RW errors) contained in my ADF image, by another working one. I don't touch the BB, only the files contained in the ADF envelope. Before that the menu works fine. After replacing the file, the system does not boot anymore. I suppose there is a file control (checksum, len, name or maybe some tags in the files ?), but i don't have the knowledge and practice to go further (disassembling with AR...). Thanks for you help, i'll dwnl the image soon.
 

aLpHa oNe

Moin, is the menu itself trackloaded from the bootblock? If yes, simply deleting an old file and rewriting a new can crash the data blocks on the disk that were reserved for the menu. :p I think they first put all the stuff (intros...) on the disk and then at the end looking for some free bytes to hack the menu in by hand. So AmigaDOS doesn't know these blocks are reserved and though, are perhaps overwritten when replacing the corrupt exe. So only solution, create a new blank disk, copy all dos files over, rip the menu from the disk and relocate it on the new disk incl. changing some bytes in the bootblock. If you answered my first question with NO, forget about all this nonsense. Cheers! :-)
 

Madj

Avatar
That's it Alpha One, I understand now. I didn't imagine it could be a so complicated work. I'm gonna try before pasing the relay :P. thanks to all
 

-TCB!-

WK: "Alan" seems to be the coder (at least of the trainer version of this packmenu). Custom loader?
 

mr.spiv

There are many disk utilities that allow you to modify the OFS/FFS bitmap, which tells the filesystem reserved/available sector information. What I did in past with my trackloading menus was to reserve space for it before writing any normal files to the disk. That way you could be sure no file messes with your boot menu.
 
..more coffee..