Macintosh Portable SLIM cards

Digging around in the ROM and source code, Apple originally planned to include removable disk cards on the Macintosh Portable. This would have predated PCMCIA cards.

In the source file, EDiskDriver.a, Gary Davidian ("GGD") appears to have begun work on EDisks around June of 1988. He first refers to SLIM EDisks around September of that year.

; <1.2> 2/21/89 GGD Added support for immediate calls, and KillIO. Made the Apple
; look better in SLIM Icon. Added support for new SLIM interface
; adapter.
; <1.5> 11/2/88 GGD Added code to post events to drive some sort of user interface
; for the lack of an eject/locking mechanism (currently, and
; hopefully permanently, disabled). Added support for internal ROM
; Disks (untested). Removed drivers need to staticly know its
; driver refnum, no code needs to change if refnum needs to
; change. Storage is now only allocated for drives that exist.
; EDiskHeader format and signature changed. Probably lots of other
; improvements too.
; <1.3> 9/1/88 GGD Added official drive icons. Added partial support for ROM disks.
; Added DriveInfo support. Changed drive queue order and numbering
; to interface better with the Startup Device CDEV. Optimized a
; few routines. Deleted code associated with normandy work around.
; Deleted support for Non-Battery-Backed-Up SLIM EDisks. Added
; special RAM Disk format code to erase and delete from drive
; queue.
; <1.1> 6/21/88 GGD Changed Internal EDisk size computation and space allocation to
; be in 64KB blocks ending at MemTop. Changed FormatVerify to
; check checksums if present, otherwise NoErr. Changed Format to
; call TestManager to test RAM.

It was anticipated that there would be two SLIM drives.

; EDisks are installed in the following order, Slim1 (lower),
; Slim0 (upper), ROM Disk, RAM Disk. This is the order that
; the start code will attempt to boot from them, unless this
; has been overriden with the Startup Device CDEV. This order
; was chosen as follows, removable devices first, fixed devices
; last. For Slims, the lower Slim is checked first to be consistent
; with the two drive Mac SE / Harpo Floppy drive search order,
; which checks the lower drive first. For ROM/RAM disks, the RAM
; disk is searched first, and then the ROM disks are searched. The
; user can still override this order, by picking one with the CDEV.
; Also, gaps may be left in the drive numbering for drive which
; aren't found, when installing them in the drive queue, because
; the startup device drive number is saved in parameter ram,
; and we don't want it moving around across boots.

SLIMs could be battery-backed RAM, or they could be ROM based (or write protected). His code checks for both possibilities. They can be up to 2 MB in 512KB increments.

Unfortunately, the leaked source code is far enough after the release of the Portable that parts of the code to support the Portable had already been removed. And specifically of interest to this topic, Gary's SLIM icons had been removed from the source. However, by peeking into the actual Portable ROM at offset 2A53A, we find the following four icons.

1768170091433.png

It appears the Apple logo had been removed from Gary's icon by the time the Portable ROM was built. Nevertheless, this is what a SLIM card was supposed to look like. It also appears that these were intended to be located in the upper bay, where the hard drive or second floppy drive currently resides.

Although untested, the ROM code and memory mapping is set up to support SLIM cards. It might be possible to hack them in. The PowerBook 100 also has this code in its ROM.

Apple would have been ahead of the market and the Portable would have been slightly lighter if these had come into fruition back in 1989.

Does anyone else know anything about them?

- David
 
Well I don't know much about the cards, but as for the icons, non-HD equipped models were able to be equipped with two internal 1.4 drives, and that is what the Icons 130 and 131 are used to represent in the system.
 
They do work just fine since the entire driver is in ROM:

Screenshot 2026-01-11 at 2.47.28 PM.png
Screenshot 2026-01-11 at 2.47.08 PM.png

Getting it in the Powerbook 100 would be tricky, since you need both access to the bus as well as the signals from the CPU GLU, at least to implement it the way Apple intended.


As I understand the SLIM cards got delayed because they couldn't get the right hardware for auto-eject, and there wasn't really much sense in releasing them later as technology advanced. There was another Mac system that was planned to revolve around them as well that never came out.
 
Very cool. How were you able to trigger it and generate that screenshot?
This is just in the Snow emulator at the moment.

You could likely fake it on real hardware if you have between 5.5-9MB of RAM, but you would need to fake some of the hardware. You would need to pull high bit 3 of 0xFC0200 and bit 3 of 0xF00000 and/or 0xF00030, and likely make sure other bits aren't floating.

There is a bit more to the actual implementation, as it has a whole RAM mapping system for assigning the cards to specific CS lines.
 
Back
Top