• 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.

SE Hardware Details?

I've been getting into really low-level and rudimentary OS programming, but the only systems I have that are well documented enough to work with are my lame old PCs.

Folks, the 386 and above is just an outright terrible processor IMHO. everything in modern computers is so cobbled together nothing makes any sense and the complex "features" of the processor are just a giant pain in the tuchus.

I'd like to go a little more exotic and play around in my SE. But the problem is that I can't really do anything on the SE without knowing the boot procedure and where all the important addresses are. I know I finally found a place that documented the classic mac boot process, but I've since forgotten it and can't seem to find it again. Does anyone know where I can get this kind of detailed information? Thankee kindly.

 
But the problem is that I can't really do anything on the SE without knowing the boot procedure and where all the important addresses are.
Ah, you can moan about PCs because there is much information about how they go about their business.

Where as the Mac it's all closed apart from the bits Apple thinks you need to know.

Nobody I know boots a 68k Mac by themselves, it's all done through Mac OS ROMs first, so A/UX, NetBSD, Linux all really use System 7 as a first stage boot loader.

That said, the SE is a fairly simple beast and it depends what hardware you want to drive, note that NetBSD etc all don't bother with floppy on 68k, it's SCSI, IDE or nothing.

So what are you *really* trying to do?

 
You know, honestly, I really haven't decided yet. For some reason I have an odd hankering to play around with the framebuffer with no toolbox. Plus I think it would be nice to have a little floppy-bootable demo just because it's so cool to stick your disk in and watch it commandeer the system at your whim. So I guess that basically I just want to know what the SE looks like from a memory map point of view for no good reason other than it seems interesting and it confuses me that I can't seem to find the information anywhere seeing as there's more than one OS project playing directly with all the hardware.

I know the floppy boot process for 68k macs is more complicated than the PC floppy boot process (though there's not a lot more simple than that), but I also know I've seen docs on that before and besides that there's EMILE so I know you can do it with a little elbow grease.

 
I would suggest taking a look at the inside Macintosh set of book.

There is also a book on Macintosh hardware. I used to have a copy of it but I can't remember its name. If I remember correctly I sold it to II2II.

 
Theoretically you could have more control if you started at the ROM level. You could remove the ROM board (if that model has it on a removable board) and then you make a new board with an adequate EEPROM or something easy to work with. You could start from absolute square 1 with this approach in 68k ASM. You could even have your own custom startup sound this way if you so choose. By default there will be no startup sound until you "recreate" it.

If you get a chip large enough, you can make your whole OS right there onto the ROM, and it would be LIGHTNING fast. This would be a huge undertaking, though, to say the absolute least. I guess this approach is similar to making ROM cartridges for Commodore 64. You could easily skip the whole OS concept and program an application directly that will be running immediately when the machine is switched on.

If you connected some sort of external connector and made cartridges, the original ROM could go in a cart for normal Mac functionality, and you could make all separate carts for all your neat ideas and experiments that you could easily swap out. This would be an ideal way of getting those technical details you're looking for. Unhindered experimentation is possible, and really I don't think you could hurt anything this way except maybe your self-esteem after a while.

 
I believe that on an SE support for HFS is in the ROM.

What happens is the machine boots from the drive, and runs the program called "Finder", so.....

Write a program and call it Finder!

Also with 68k Mac, the threads provided by ThreadsLib are truely preemptive.

 
Also, you wouldn't go far wrong looking at the low memory globals. The addresses of the screen buffers are here. The is no law that says you have to use QuickDraw but note that in order to stop screen flicker the mac synchronises some updates with the retrace flybacks.

Much of what is done in hardware on a PC is done in software on Macintoshes.

 
Actually, the boot process is a tad more complicated than that. If I remember correctly, mac floppies don't actually use HFS but a similar one. I could be wrong on that, and with me that's always a pretty big possibility. But I remember in the booting docs I came across that there's actually a header in one of the first (if not -the- first) sector of the disk which contains a definition of a sector on the disk containing your bootstrap code for the system to load into memory on boot. I was surprised, I thought it was a higher-level system that essentially just executed finder, but there is a bootstrap in the FS.

I like the idea of programming my own ROM. That sounds fun, I didn't know the SE had a removable ROM but I suppose that makes a lot of sense.

I realize just how much work in the system is carried out by software. The Mac 128k/512k technical details page on wikipedia explained that to me and I found it very interesting.

Oh, and I know about being humbled. I'm a seeming perpetual hardware and software novice with aspirations always a little bit too big for my ability.

 
I like the idea of programming my own ROM. That sounds fun, I didn't know the SE had a removable ROM but I suppose that makes a lot of sense.
I'm not sure if it is removable or not. If it isn't, you could still work with that; you'd just come up with some sort of socket.

Wouldn't that be COOL to have a cartridge-based Mac?? You loose all of the nice things Apple gave you, but you could bring parts of it back with some excessive hacking. I believe there are COMMENTED, disassembled versions of most very old ROMs like that. You take the original ROM, run it though some program, and it disassembles and adds all the comments. This would be very helpful for Mac ROM hacking.

A more modest project which could be just as interesting would be to take the existing ROM and just modify the startup sound, happy Mac, and background texture. I have done this with a ROM image file and used it on Basilisk II. Unfortunately Basilisk II doesn't play the startup sound, but I have a pretty nifty 1-bit white Apple logo outline with the rest of the screen totally black in place of the happy Mac. Kind of reminiscent of Mac OS X although the black background makes you wonder for a moment if you have a sad Mac! The background could easily be changed to any 1-bit 8x8 texture. Actually I believe I still have that somewhere. You could totally burn it and use it in a real Mac.

 
Back
Top