Jump to content
Mac128

Mac startup sequence

Recommended Posts

I was recently shown a gaping hole in my understanding of the Mac boot sequence in the thread regarding the (IMHO) overpriced 128K.

 

I have always understood the Happy Mac to represent the successful discovery of a valid system file. However, my intent to prove that the afore mentioned 128K had a an 800K drive and 128K ROMs was quashed by pulling out my own stock 128K and using an 800K HFS 6.0.4 System Disk which resulted in a Happy Mac before defaulting to the familiar Sad Mac 0F0064 error code. I was shocked by that actually. Maybe I never really paid attention to it before.

 

But logically speaking the 800K disk was formatted in a method completely differently than the 64K ROMs are familiar with. So, not only would it not recognize the disk header information, the first volume info byte is completely different with 162 bytes vs. 37 odd bytes in a completely different organization. So how could the 64K ROMs even locate a System file, much less a valid one?

 

According to Inside Macintosh Volume IV, there is very little the 64K ROM would understand on an HFS disk. Unfortunately Apple Family Hardware share little detail of exactly when the Happy Mac appears during it's detailed accounting of the startup sequence. Inside Macintosh indicates that the MFS system is a subset of the HFS system, so is it possible that the 64K ROM somehow finds and reads the system file without understanding the volume structure?

 

So what triggers the Happy Mac? A successful hardware test? A valid System file? Recognition of some kind of basic recognizable Macintosh formatting in the disk header? I'm really stumped now. Also, did the Happy Mac event trigger change in later ROMs?

Share this post


Link to post
Share on other sites

Scott, I posted the error code above, but THAT IS NOT THE POINT. And yes we all know System 6 won't work on a 128K Mac. The question is NOT about the Sad Mac or the error code.

 

The question is why would the Happy Mac appear at all on a 128K Mac, when an HFS 800K System 6 disk is inserted? I want want to know what test when passed first triggers the Happy Mac, since clearly it's not finding a valid System. Thanks.

Share this post


Link to post
Share on other sites

Given that no Happy Mac appears in the absence of a System File, it must somehow be finding it or at least becoming aware of its presence.

 

I'd suggest formatting an 800K disk, copying System 1 onto it (presumably only using the "first" 400K), and then seeing how far the boot up process gets. If at least the Happy Mac appears, I'd then delete the System File and ensure that it appears no longer.

 

I always understood that where there was overlap, HFS control structures were expansions of MFS ones. If that is the case, it is not surprising that the 64K ROMs can make some sense of an 800K disk.

 

Ken

Share this post


Link to post
Share on other sites

I understand where Mac128 is coming from - I thought the 400KB floppy drive used a completely *different* process to read data from a disk. Seems to me that a 400KB wouldn't look at an 800KB disk much different than a PB&J sandwich, let alone get data from it. :)

Share this post


Link to post
Share on other sites

My apologies for the confusion...but here's a possible theory.

 

A 400K drive will read the first side of the disk only. Could it be that all or part of the system file is stored on that side and it's reading that and is somehow getting past the "obscure" headers and whatnot?

Share this post


Link to post
Share on other sites

It has always been my belief, well borne out in practice, that Happy Mac's significance is that Start Manager has found the boot blocks on a startup volume (and that a SCSI device driver is loading, if that is the case). Silverlining corroborates this latter with its own splash screen.

 

That's all. If those boot blocks point to no valid System Folder, or a corrupt System Folder, that fourth signpost (chime, raster, pointer, HM) is the end of the startup process. Never mind splash screen, mouse tracking, desktop or other comforting signs of normality.

 

MacWEEK's Upgrading and Repairing Your Mac, Lisa Lee, 1995, goes into some detail about the Startup sequence and the alternative Stopup sequence. As a digest of the process it is a handy reference.

 

de

Share this post


Link to post
Share on other sites

I just tried starting up my 128K Mac with an 800K 6.0.8 system disk - and I may as well have put in a slice of toast. It found absolutely nothing of interest - no Happy Mac, just eject and the flashing X.

 

Ken

Share this post


Link to post
Share on other sites
I just tried starting up my 128K Mac with an 800K 6.0.8 system disk - no Happy Mac, just eject and the flashing X.

 

See, that's what I was expecting.

 

So, equill, you are saying in your ever eloquent prose, that all the Happy Mac signifies with 64K ROMs is that it found boot blocks it understood? That would suggest that boot blocks have a commonality between MFS & HFS (at least up to 6.0.4), in particular some signature by the Macintosh File Manager/Initialization Package, that tells it "I am for you Macintosh", which for whatever reason is the same between the two formats. Inside Macintosh shows that the first sections of the disk is an area called System Startup Info, even before it gets to the Volume info. However, it goes into no detail about this, presumably because it is proprietary date a developer cannot change.

 

So a Happy Mac means, "I'm OK and you stuck a recognizable Macintosh disk into my pie-hole"?

Share this post


Link to post
Share on other sites

Yes, right through to 9.2.2. The Mac has sighted an approaching pie-man with a tray. But toast, whether high-fibre white or multigrain, just Will Not Do. The taste of the pies is the next hurdle in the sequence.

 

SCSI, FDD and Sound were all initialized just before pointer appeared, so the Start Manager asks PRAM for the address of a startup volume, failing which it polls the internal and external FDDs and serial HDD, and then cycles for a SCSI HDD or other available device in the order SCSI ID 6 to 0. The first Pluses didn't cycle, which had its limitations if spin-up was delayed. Then, more-or-less all-at-once, boot blocks are read, Happy Mac appears, SCSI drivers are loaded and pies are taste-tested. Splash screen appears only if the pies are pleasing.

 

The abovementioned Silverlining splash screens, one for each SCSI bus, precede the Happy Mac's appearance, and then show the drivers being installed at the previously specified SCSI IDs while Happy Mac is ogling the pie-tray.

 

de

Share this post


Link to post
Share on other sites

Mac128,

 

It's the boot blocks. They are in the expected location on the 6.0.4 disk and the boots blocks indicate a system is present. When the 64K ROMS try to find it, it can't thus the error code.

Share this post


Link to post
Share on other sites

Great analogies, colleagues!

 

We need to remember that the 64KB ROMs assume use of a 400KB floppy drive for booting. 64KB ROMs also include a driver for the Lisa Widget drive, which we can ignore -- credit to Mac128 for this particular fact. So the 64KB ROM startup sequence was based around finding 400KB floppy boot blocks. No error checking, no file system checking, just look for blocks at a geometrical point on the disk. Hence the ability to discover boot blocks on an 800KB floppy disk before collapsing in a heap.

 

When using the HD20, we have to boot from floppy disk, load the HD20 INIT, and then the 512K boots from the HD20. To the best of my knowledge, all third party serial port drives worked in a similar way.

 

But if designing a disk for the 128K or 512K today, are we stuck with the same limitations? Is it feasible to create a disk controller that emulated a 400KB floppy with appropriate Mac system software, which patched the ROM before booting from a disk with different geometry to a 400KB floppy?

Share this post


Link to post
Share on other sites

CharlieMan,

 

In theory yes you could. But you would be limited to MFS and a large drive (20 MB) would soon bog down with all the files in the root. That is why Apple brought out HFS. MFS is for floppies.

 

A 5mb device lile a ProFile might work ok under MFS but why bother?

 

I just run my un-hacked 128k Mac with two 400 K floppies and enjoy the sound of those variable speed drives! [:D]]'>

Share this post


Link to post
Share on other sites
But you would be limited to MFS and a large drive (20 MB) would soon bog down with all the files in the root.

 

For a Mac 512K, the HD20 INIT (on a virtual 400KB system floppy) would provide HFS on the "real" hard disk.

 

Support for the 128K would be more difficult, as you say, because MFS is not appropriate for big disks. The hard disk work around in the 128K days was to provide a utility that partitioned a large disk into more useable volumes. Only one volume was online at any time, but the user could manually mount and dismount volumes on demand.

Share this post


Link to post
Share on other sites
In theory yes you could. But you would be limited to MFS and a large drive (20 MB) would soon bog down with all the files in the root. That is why Apple brought out HFS. MFS is for floppies.

 

Is there even 20MB worth of software that will run on a 128K???

Share this post


Link to post
Share on other sites
Is there even 20MB worth of software that will run on a 128K???

 

You've got a skewed perspective, Luddite. You're thinking about how many apps you can load onto a disk. Content creators think about data: backups, documents, databases and huge Macpaint images ;-) But seriously, data security and sharing were the driving forces that delivered big hard disks.

Share this post


Link to post
Share on other sites
You've got a skewed perspective, Luddite.

There's never been any doubt ;)

You're thinking about how many apps you can load onto a disk. Content creators think about data: backups, documents, databases and huge Macpaint images ;-) But seriously, data security and sharing were the driving forces that delivered big hard disks.

You're right, I'm thinking from a hobbyist perspective... forgetting that at one time a 128K was a "pro" machine.

Share this post


Link to post
Share on other sites

I just run my un-hacked 128k Mac with two 400 K floppies and enjoy the sound of those variable speed drives! [:D]]'>

 

As much as I enjoy the off-tune sing-song of the 400K drives, sometimes a 400K disk isn't enough. That's why I sometimes use an MFS formatted Apple 3.5 800K drive with my 128K.

 

And since I can format an HD20 MFS, one of these days I'm gonna stick 128K ROMs into my 128K RAM Mac and see just what happens with 20MB of MFS space!

 

Either way, 20MB of storage would be more than welcome on the 128K. I mean I have about 20 odd 400K disks with various programs on them. So that's almost 10MB right there. Would be nice not to have to maintain the floppy's and swap 'em out everytime I want to run one. Heck, with Disk Based MacWrite, I could write several 500 page novels.

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

×