Jump to content
uniserver

Booting 7.0.1 From:ROM (Mac IIsi) /W Apps! My New Toaster:-)

Recommended Posts

A behaviour according to existing standards would be most preferable, like firstly check for some Alt-key depressed to invoke a custom boot drive selection and (if that is not the case) secondly look up boot disk settings stored in PRAM. Probably one could allow to optionally directly address a boot partition like with HDT formatted drives, or even better pick a System Folder from a selection of disks or partitions }:)

Formerly used shortcuts to influence the boot drive selection should work, still. It is always nice to allow experienced users to utilize their knowledge in evolving systems, still.

Are there any chances to make this hack available for other machines, like a PowerBook?

Share this post


Link to post
Share on other sites
Is it at all possible to have a color logo for the Happy Mac?
Interesting notion!

 

It probably won't work on some machines, such as the SE/30, which don't support color.

 

However, I don't see why not on color-capable Macs, such as the Mac II series.

 

c

Share this post


Link to post
Share on other sites
It probably won't work on some machines, such as the SE/30, which don't support color

Perhaps a greyscale happy Mac for an Exceed SE/30. }:)

Share this post


Link to post
Share on other sites

The PPC ROMs use Color QuickDraw to draw the color icons, which are stored as 'cicn' resources in the ROM's resource map. I believe adopting this approach would work for anything that has Color QuickDraw support (such as the IIsi ROM already being used), regardless of what the current monitor settings support (Color QuickDraw figures it all out for you). The PPC ROMs use the following cicn resource ids:

-20020 for happy mac

-20021 for "empty" floppy icon

-20022 for '?'

-20023 for 'X'

 

Backporting the code to do this to the IIsi ROM doesn't seem too bad. When adding new code to the ROM I've been reusing the space from the RAM test functions, which have been disabled, then bsr.l to it, using a hand calculated offset.

The more interesting aspect is modifying the ROM's resource map to accommodate the new 'cicn' color icon resources. The IIsi ROM's resource map header lives after the resources, and before the declrom. So, the resource map can't grow without displacing the Slot 0 declrom.

Basically the ROM looks like this:

header information

code

last resource entry (which happens to be the .netBOOT driver)

last-1 resource entry

...

first resource entry

resource map header

Slot 0 declaration ROM w/video drivers, etc.

 

The most scalable approach would be to move the declaration ROM out, figure out all the things that refer to it (hopefully just located via looking at the ROM length field in the ROM header), update those, move the resource map header out, update the offset to that, then add the icons, then add the color icon drawing routines, and make the system try calling those first, and if they fail, fall back to the current B&W icons. Growing the resource map will be necessary eventually anyway for adding other things in the future (drivers, cursors, fonts, whatever).

 

Or just put stuff in the framebuffer and hope it works. :)

Share this post


Link to post
Share on other sites

Is it something basic that's still supported in the older version of QuickDraw in System 7? Might pose a problem for System 6 unless the 32-bit QuickDraw init is put onto the ROM somehow.

Share this post


Link to post
Share on other sites

My next machine is going to be a IIci, I am trying hard to find one. Found a guy from ebay.

His name is captinbob, he has a MASSIVE apple collection, pretty much a 3 story house FULL :)

 

I personally feel it would be the ultimate machine that works with dougg3's ROM SIMM.

 

The IIci /w Cache card sounds like a fairly beastly 030 machine.

Share this post


Link to post
Share on other sites

Could this idea of having the OS and applications on ROM be used on the ROM chips in original 128k and 512k Macs? It would be mighty nice to have System 4.1 and MacWrite on a 512k Mac without needing a floppy (except to save to).

 

(If this can be done, I'm sure it has. Anybody got a thread link I could go check out? My search-fu is weak today.)

Share this post


Link to post
Share on other sites

No idea on what it would take to do a ROM disk on the older classic Macs. The ROM SIMM slot makes it easy to add extra ROM. Without that slot you'd probably have to hack onto certain address lines elsewhere on the logic board. I have no idea if any more space is even available through all the PALs and stuff on the logic board...

 

uniserver, I'm pretty sure the ROM SIMM should work fine on a IIcx. This picture implies it has a ROM SIMM slot:

 

snap21.jpg

 

I can't seem to tell if it has a ROM enable/disable jumper like the IIci has though. Have you tried it in a IIcx by any chance? It's a machine that the SIMM is thus far untested in.

Share this post


Link to post
Share on other sites

I will tell you in 15 minutes, babies have been asleep, and I just opened my package from SCOTT, that arrived today,

Scott sent me a IIcx, it's right here, I just have to put my IIsi away for a bit, and pop dougg3's simm in this new IIcx, I'll see what happens :)

Share this post


Link to post
Share on other sites
Could this idea of having the OS and applications on ROM be used on the ROM chips in original 128k and 512k Macs? It would be mighty nice to have System 4.1 and MacWrite on a 512k Mac without needing a floppy (except to save to).

 

Yes it could. But it does not work now.

I'm interested in this, partly due to having just acquired a pile of these old machines. I've also got several other things going right now, so if someone else wanted to jump on this, go for it!

 

Some more investigation is necessary, but here's just off the top of my head:

pre-Plus systems have more potential due to not having the SCSI registers in the way. 128k/512k/512ke have 5MB of contiguous space from ROM to the SCC registers.

 

It is my understanding that A1-A16 go to the ROM sockets and the two 8 bit ROMs are interleaved (one being the high byte and one being the low byte of the 16bit bus).

I don't know offhand what is being used for their output enable & chip select lines. It'd probably be a good idea to figure that out. :)

 

Ideally a small adapter PCB would be made, but a home-made job could be done out of two DIP28 sockets.

Take two 29F040 or something similar, use the socket(s) to make sure VCC doesn't go to the wrong pin on the 29F040, then solder wires from the additional address pins on the 29F040's to the appropriate address lines on the 68000. People do something similar for C64 systems, although there they typically use it with a switch on the extra address lines to allow selecting between several different ROM images.

 

Anyway, if someone wanted to try that, and then use macsbug or microbug or something to inspect the contents of the address space to make sure it showed up right, that'd be a good first step. That'd get you 1MB of space (minus 64k or 128k for the actual rom contents), which isn't too shabby for these machines. It'd be enough to boot and have some recovery apps. Like the Serial Disk driver. ;)

 

Once you've got something where you can put stuff into the address space, then it's just a Simple Matter of Programming to make the driver work. And then wedge it into the ROM somewhere.

 

Heck, just figuring out a test rig for these machines would be handy, like the ATX extension cable trick for the SE/30, so one could work on the board on a bench without having to constantly swap it in and out of the case.

Share this post


Link to post
Share on other sites

ok, for some reason the IIcx will not see anything higher then 8mb ram, also when i boot an os, in memory it doesn't give me the option of 32bit mode, this is with 64 meg installed.

 

so i found the jumper for the onboard rom on/off, and no dice douggs rom give bad chime instantly.

 

under the psu there are 2 jumpers that are jumped, i don't know what they are... doubt they are some kind of over 8meg ram cut off thing.

that is what i have so far...

LEM and Everymac Both say this is a 128meg ram capable... this thing was re-capped... maybe that has something to do with it... ? dunno...

 

there are 4 rom chips on this mainboard of the IIcx just like the IIci.

Share this post


Link to post
Share on other sites

The IIcx's stock ROM is the same as the IIx and SE/30 -- i.e. not 32-bit clean. So that's why you don't get the option of 32-bit mode with the stock ROM. You either need a 32-bit clean ROM or something like MODE32 to use more than 8 MB.

 

Interesting that the ROM SIMM gives an error chime. We'll have to see if it can boot if the SIMM is programmed with a stock IIcx ROM. If you're even getting a death chime at all and the ROM SIMM jumper is correctly disabling the onboard ROMs, it means instructions are definitely executing from the SIMM so the SIMM itself is probably working. Can you verify that you've truly disabled the onboard ROMs to the point where if the ROM SIMM isn't installed nothing happens on power up?

 

Maybe the IIsi ROM can't boot a IIcx. I consider that unlikely, but I'm just throwing ideas out there...

Share this post


Link to post
Share on other sites

ok this is what i got, the thing will not see anything more then 8mb period,

also the jumper is correct, jumper on, onboard rom is on, jumper onboard rom is off, if you turn it on , with jumper off it comes on, black screen and does nothing...

 

if i insert the 8mb hacked rom, it will boot up, Mac Sound, waits about 10 seconds then makes the chime of death.

i tried doing nothing, i tried holding down r and ra, with same result... seems like this rom simm is not working in the IIcx for some reason.

Share this post


Link to post
Share on other sites

OK, that means the SIMM itself is working fine. I'm 99% sure that if the SIMM was burned with a stock IIcx ROM it would boot from the hard drive with no problems. I'm thinking there's something about the IIsi ROM programmed onto it that is causing it to crash, but I don't know enough about the ROM to know for sure.

Share this post


Link to post
Share on other sites

That poor IIcx is wandering off to see if there are monitor sense lines active on a port that doesn't exist yet, to set up the buffering circuitry (to be made available in the next model release) for the setting aside of the correct amount of RAM in Bank A, to suck it out for use as a frame buffer it absolutely doesn't need and then dying a gruesome and sudden death in its attempts to figure out which is its elbow and which is its @$ . . .

Share this post


Link to post
Share on other sites

so what you are saying is the IIci,IIsi and SE/30 all have onboard video,

and because the IIcx has a video card, that could be what is causing the issue??

 

i've not tested with the IIx but i think they have, this rom should work with the IIx, that has no onboard graphics.

Unless i am misunderstanding something :)

Share this post


Link to post
Share on other sites

Yeah, I don't think the lack of onboard video is the problem. bbraun tests the hacked ROM on a IIx and it works fine, so it should be pretty much the same as the IIcx I'm thinking.

 

You'll have to experiment with various ROM images on the SIMM and see what works and what doesn't...

Share this post


Link to post
Share on other sites

In the Mac IIcx,

I replaced the big (3) 470uf caps and the 220uf one, now all is working fine,

64 megs of ram shows up, Hacked ROMM Simm works, soft power is working great

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×