• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

What program do I use to modify IIci ROM?

olePigeon

68040
I'm trying to disable the memory check on my DougG3 ROM for my IIci.  I think I found instructions on what to change, but I don't know what program I'm supposed to use to make the changes.

Also, maybe this is wishful thinking and I'm remember absolutely everything wrong, but wasn't there an app that let you check boxes to enable and disable certain features, including copying/pasting a boot icon?  I'm probably just remembering everything completely wrong, and were just suggestions I made for laymen like me.

I have the programmer board and downloaded the software, but all I can do is either export or write the ROM (and upgrade the board's firmware.)

 
Last edited by a moderator:
If you just want to replace a few instructions with NOPs, then I would use a binary/hex editor. I personally like xvi32.

If you want to write some new 68K assembly code to patch a section of the ROM, then you'll need a 68K assembler. There are a bunch of different options, including ones that run on modern hardware or vintage development tools that would run on your IIci. That would give you a binary file, which you'd have to patch into the original ROM image with xvi32 or a similar tool.

FYI, dougg3 and I have arranged for me to take over manufacturing and sales of his ROM SIMM, and that's in progress now. It's been out of stock on his web site for several months, and I think he got kind of burnt-out on the whole effort. So this is really a win-win for everyone... I am excited!

 
So to do this mod:  https://mac68k.info/forums/thread.jspa?threadID=82

Is it possible to do it with a hex editor?  Looks like assembly, though.

I exported the ROM using the programmer tool, but when I open it with the Hex editor, I can't get to any of the offsets mentioned in the modification.  I'm guessing I'm using the completely wrong tool.

 
Last edited by a moderator:
Yeah, try xvi32. When those instructions you linked to say "at location 0x64A96, I have replaced 0x7000 with 0x4ED6" then you should scroll down to address 0x64A96 (by default, I think the address for every 16 bytes is displayed at the left), or use the "Go to Address" menu command (or whatever it's called, I'm not at the PC now) to go to 0x64A96. The next two bytes starting from that address should be 0x7000. Change those bytes to 0x4ED6, save, and burn a new ROM SIMM.

There are probably other, better tools for this than xvi32. It just happens to be the one I know.

FYI, when you see a listing like:

46A96  7000           E_19:      MoveQ.L   $0, D0
46A98  72FF                      MoveQ.L   $-1, D1
46A9A  2448                      Move.L    A0, A2
0x46A96 is the address. 0x7000 are the bytes stored at that address. E_19 MoveQ.L $0,D0 is what those bytes mean when interpreted as 68K code.

 
Edit:  Oops, seems to be Windows only.  I'll need to find an OS X alternative.

 
Last edited by a moderator:
OK, I'm doing something wrong.  I'm not seeing anything remotely resembling the above with any hex editor I've downloaded.  Maybe I exported the wrong thing?  I have no idea.

I go to offset 0x46A96, and it's just a bunch of 00 00 00 00 00 00.  It's not 70 00.  Maybe the IIci ROM memory location is different?  Maybe mine is different because I already have a bunch of stuff added?

I guess I'll have to shelve it, no idea where to look or what to do.

 
Which program do I use on System 7 to modify it?

If someone wouldn't mind modifying it for me, that would be awesome, but ideally I'd like to learn how to do it myself.

 
Turns out that the DayStar control panel has a hidden option to disable memory check, so I didn't need to modify the ROM.

 
Back
Top