I’ve been busy. The Pippinizer is going to take me longer than I expected to put together into a releasable form, so I wrote a small utility that should tide folks over until that’s ready.
Introducing Pippin Kickstart. This is a small, carefully-crafted boot disc for the Pippin that circumvents the console’s built-in security and instead offers the choice to boot from an unsigned volume. It works on 1.0, 1.2, and 1.3 Pippins (so, every known retail Pippin ROM out there as of the time of this writing) without any modification.
To use it, simply download the Pippin Kickstart disc image available here, burn it to CD, and use that disc to boot the Pippin. Pippin Kickstart will identify what ROM and RAM it detects, eject itself, and then immediately begin searching for a bootable volume candidate. The Pippin will boot from CD-ROM using only its internal drive, but other types of removable media may work as well assuming that they can boot a regular Mac without special drivers. It also has been tested working using an external hard drive.
“But Keith, I thought 1.3 Pippins don’t do the authentication check at startup. Why would I use Pippin Kickstart with a 1.3 Pippin?” While it is true that ROM 1.3 does away with the signing check, it is still hardcoded to boot only using the Pippin’s internal CD-ROM drive. Pippin Kickstart offers owners of 1.3 Pippins the ability to boot from other media sources such as a hard drive, providing itself as a sort of “launch pad.”
The Pippin Kickstart disc is a hybrid HFS/ISO image containing the source code, a short README, and—just for fun—a few extra “goodies” that I found useful during its development:
- MacRelix ROM Copier by Josh Juran, used to dump the ROM of my own 1.2 Pippin
- tbxi by Elliot Nunn, a project which evolved from an early tool Elliot wrote that I used to extract the ‘rvpr’ resource kicking off this whole mess
- FDisasm and FindCode by Paul Pratt, indispensable tools used to locate and examine code within the Pippin’s ROM
All of these extras are licensed according to their respective authors.
I’ve licensed the Pippin Kickstart bootloader under the GPLv2. Source code is available on my Bitbucket: https://bitbucket.org/blitter/pippin-kickstart
UPDATE (20210209): I’ve updated Pippin Kickstart to version 1.1, which patches the SCSI Manager on units equipped with ROM 1.0 so that they too may boot from external SCSI volumes. It is available here (I’ve updated the rest of this post as well) and a detailed explanation is available here.
2 thoughts on “Exploring the Pippin ROM(s), part 9: Kickstart”
I am admiring of this work that you realize for the pippin! I wanted to know what was the limitation on HDD. Is it possible to put eg several games on the hard disk (launching by a menu)? Or is it just possible to load a single ISO?
Thanking you again!
When formatted HFS, the HDD is booted the same as an HFS partition on the Pippin’s internal CD-ROM. The only limitation I know of is that because Pippin OS is based on System 7.5.2, the maximum size of a single HFS volume/partition is 2GB. You can install as many games as the drive can accommodate, but the Pippin cannot “switch launch” to another OS installation without rebooting.
Installing games on a modded Xbox works in a similar fashion. The Pippin cannot boot from a disc image file on the hard drive, but the application contained on a mounted disc image should run assuming it is compatible with the OS installed on the hard drive. I recommend installing applications directly to the hard drive though, as mounting disc images can incur a memory cost on an already strained configuration.