hardware

A Green Jade Upgrade: RAM Upgrades, Custom ROMs, and running Mac OS 8 on an SE/30

Screen Shot 2020-04-23 at 7.40.06 AM

I recently posted about restoring an SE/30 – but the story didn’t end there. Since then, I’ve made some additional modifications including more RAM (more than double the Apple-supported amount), a custom Rominator II 32-bit clean ROM, and an installation of an unsupported Mac OS 8. Along the way I uncovered some interesting SE/30 nuances about RAM installations and custom ROMs that I’d like to share. Additionally, I have the steps required to install Mac OS 8 on unsupported 030s like the SE/30. Read on!

Making the SE/30 32-bit clean

The SE/30 can support a massive (for its time) amounts of RAM, although the SE/30’s stock ROM is not 32-bit clean – meaning it cannot actually address all of that RAM without a system extension like “Mode 32”. This prevents it from running software like System 7.6 or Mac OS 8.

There are a few solutions to make the SE/30 32-bit clean. One way is by transplanting the ROM from a Mac IIsi or IIfx – but an even more fun way is using a custom ROM like the Mac ROM-inator II. Not only does this ROM make the Mac 32-bit clean, but it also contains other goodies like a super-fast bootable ROM drive, support for HD20s, faster boot time, and some other goodies like a custom happy mac icon and startup chime.

The Danger Zone!

Before we go any further, just a reminder: Safety first. Working inside the SE/30 or any compact mac means you’ll be working around an exposed CRT which can contain dangerous voltages and explosive vacuum pressure. Any time you work in these machines you must be familiar with CRT safety. It’s also easy to break things inadvertently if you’re not careful. Generally speaking, familiarize yourself with safety precautions before even thinking of opening a compact Mac. If you are following along, do any work at your own risk.

Here’s a super-quick rundown on getting at the logic board…

To get at the logic board, remove the programmer switch, remove the 4 torx screws on the outside of the case, and slide the case off. (This, by the way, is when you’re supposed to safely discharge the CRT!) Next up, there may/should be thin metallic shielding covering the board that comes off next. You may also want to remove the metal bracket that’s used for mounting expansion cards, it’s held on to the chasis by three philips screws. Now, carefully remove the SCSI cable, floppy cable, and main logic board connector (the most difficult – held in place with a small tab) from the board. The board at this point will slide out of the guides/notches it sits on. As you remove the logic board, detach the speaker wire to free it completely.

Installing the ROMinator in the SE/30

Screen Shot 2020-04-23 at 7.37.38 AM

Installation is theoretically simple, however I did run into some challenges. Essentially, the ROMinator should drop into a ROM SIMM slot, replacing the stock module – much like replacing a RAM SIMM. I started off optimistically adding in the ROMinator along with the new memory I purchased. And to my dismay – I flicked the power on and saw a stripe garbage pattern.

I went through various trial and error combinations with the RAM and the ROM with no luck. Turns out, I should have just R.T.F.M. – read the documentation on the ROMinator, that is.

In the documentation it specifically mentions that the ROM slot on the SE/30 is different, in some way, than the II-series… and ROMinator doesn’t stay seated. The documentation shows this:

Screen Shot 2020-04-23 at 7.38.41 AM

I wasn’t loving the idea of a loose paperclip in the machine, but I did use a rubber band to apply some pressure to the ROM simm – and guess what, it worked!

Screen Shot 2020-04-23 at 7.32.37 PM

With the ROMinator in place, I can now hold “R” to boot to a super-fast ROM image, sort of reminiscent of the Macintosh Classic ROM image (did you know it had that?) I can also run in 32-bit memory addressing mode and use my new RAM!

A few other things that I had to do:

  • My System 7.5 system suitcase needed to be modified in ResEdit to boot up, as per the ROMinator documentation. (In ‘gusd’ resource, id 1, offset 000018, change the “0008 0003 0009 0003” to “0008 0003 0009 0005“)
  • I had to remove the Mode 32 extensions, which would not be needed now anyways
  • I had a separate SCSI2SD drive with 7.1 which continued to work normally.
  • To get the 32-bit support and native access to all of the memory, I turned on 32-bit addressing in the memory control panel

Upgrading the SE/30’s RAM with twice the supported amount

The SE/30 has 8 ram slots accepting 32-pin SIMMs. (120ns or faster) The 8 slots are divided into two banks (called banks A & B). Within each bank, all four slots must have the same sized simm. For example, for 1 mb you would need 4 matching 256k simms. Also, bank A must have RAM installed, where as bank B can be left empty in many cases.

Now that’s already pretty complicated, but I found there’s even a bit more than that. Apple’s official memory guide from the era describes this, and mentions the SE/30 can only support up to 32 mb (banks A&B filled with 4mb simms), but in reality it can support much more. (128 mb or maybe more!)

Maybe simms larger than 4 mb were just really exotic at that point in time.

Screen Shot 2020-04-23 at 7.41.27 AM

All bets are off when going over 32 mb. I purchased 4 new 16mb simms (for a total of 64mb) and noticed a few oddities:

  • The SE/30 did not like them in bank A. I tried a few variations, but what ultimately worked was the 4×16 mb SIMMs in bank B, with 4×1 mb SIMMs in bank A. In most configurations in the official guide, the “higher” ram modules go in bank A, but with my configuration this was not the case. I suspect this is due to needing to address the first 1 mb for video memory. More on the subject here.
  • The height of the SIMMs I ordered were actually too tall. The taller SIMMs would have been fine clearance-wise in bank A since it it closer to the edge of the logic board / front of the case, but as I mentioned, they needed to go in bank B. This means my board actually sits outside the groove it’s supposed to slide into on one side – but after introducing rubber bands into the machine, I figure this is minor. Ultimately, it’s snug and everything is perfect when the case is closed up.

A quick CRT adjustment

I also adjusted my CRT while everything was open. (Again, this is dangerous!) On the SE/30 there are adjustments on the backside of the analog board and two rings on the CRT’s yoke. (A lot less convenient than the Mac Classic which has an access panel so you can do these adjustments with the case safely closed!) This means that I had to make my adjustments with the case off and the machine powered on.

The primary thing I needed to adjust, that I could not find out anywhere online, was the horizontal alignment adjustment. Essentially, my picture was right up against the side bezel; completely viewable but annoyingly un-centered. There isn’t a nob on the rear side of the analog board for this, you have to use the rings around the yoke of the CRT. To make this adjustment I used a wooden chop stick and carefully nudged the ring until the picture was centered.

Below is a close-up of the yoke and the adjustment rings circled in green:

Screen Shot 2020-04-23 at 7.44.11 AM

 

Installing Mac OS 8 on an SE/30… or any 030-based Mac

Screen Shot 2020-04-23 at 7.40.25 AM

At this point, the SE/30 was happily booting with it’s new RAM and custom ROM – and the possibility to install a 32-bit clean OS is now on the table. As I mentioned earlier, I had to use ResEdit to modify my system suitcase to allow 7.5 to boot up. There are some steps like this we need to do in order to run later OSes like 7.5, 7.6, 8.0, or 8.1.

Before we jump in, let me say that the process will be much easier if you have multiple volumes, but it’s not a requirement. We need a working System 7 volume as a starting point to kick off the installs. You could potentially create a System 7 boot disk or use a utility called “System Picker” if you’re stuck with a single volume.

You will also need a patch for OS 8 called the os8-030patch. I got my copy from here.

Now onto the process:

  • Boot the SE/30 up in System 7. We need to install a few things onto this drive so unfortunately we can’t use the Rominator’s read-only ROM image.
  • Install the “Wish I Were” utility which allows your Mac to report itself as a different model. In our case we’re going to pick “Quadra 700”, which was a 68040-based Mac and eligible for System 7.6.x and Mac OS 8/8.1. (Reboot.)
  • Now, we can kick off the Mac OS 8 install which should see the machine as a Quadra 700. The install should work normally.
  • After the install, it won’t be initially bootable until we edit the system suitcase file. If you don’t have multiple volumes available try a boot disk with ResEdit, or use the ROMinator’s ROM disk which already has ResEdit to make the updates.
  • For Mac OS 8 to boot, we need to modify a resource in the newly created system suitcase. Find the ‘gusd’ resource, open ID 1, locate offset 000010 and change the value “0016 0006” to “0009 0005”.
  • Next open the os8-030patch.rsrc file in ResEdit. Locate the resource ‘gbly’ and replace ID -16385 with the same -16385 resource found in os8-030patch.rsrc.
  • You may want to weed out control panels that won’t work on the SE/30 – for example “Monitors and Sound” you’ll have to delete and use the separate versions in the “Apple Extras” folder. Other items like energy saver, QuickTime MPEG, and any monitor accelerators will probably have to go as well.
  • At this point you should be able to use System Picker – or just the plain old “Startup Disk” control panel to select the Mac OS 8 volume to start from.

To give credit where credit’s due, I used the information found on the bigmessowires website, here.

Mac OS 8 runs surprisingly well on the SE/30 with this configuration. It makes me wonder why Apple blocked out 030 users back then, the processor can clearly handle it. Maybe it was just done to pressure customers off the 68k platform… 😦

Final Thoughts

Screen Shot 2020-04-23 at 7.40.06 AM

Overall, I’m really happy with these mods and upgrades. The ROMinator is great, and it improves upon an already legendary Mac. I wish there was a 3d-printed shim for the SE/30 to help seat the rom module, but for now a rubber band does the job.

The RAM upgrade allows me to ditch virtual memory and crank up my disk cache. And no more Mode 32 software needed anymore!

Now I’m on the look out for accelerator cards, ethernet cards, or external display adapters!

Standard