Here’s what I’ve done so far to try to get PowerPutt working outside of a real “Nighthawk” arcade machine — I only have the CID 21 and I/O board. I know a lot of people say PowerPutt is super picky about hardware, but since it looks like it's running something very close to Linux From Scratch, I figured maybe we can run it on more common hardware.
-
I purchased a hard drive from a “Power Putt 3 course” that had a label:
PP1.00.06 08-25-08When I examined it, I saw: Nighthawk V9.11, Boot Agent V1.30, and Software 21‑V1.00.08. -
I pulled an image (
.img) from the drive. -
I converted the image to a VirtualBox disk (VDI) using:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" convertfromraw --format=VDI E:\pp3cdump.img E:\pp3cdump.vdi -
I attached the VDI to a VirtualBox VM — but it would not boot.
LILO got stuck at:
LILO Loading ITLINUX
…
Decompressing Linux... Ok, booting the kernel.
-
So, after some trial-and-error, I discovered:
It doesn’t accept AHCI → had to switch the VM to IDE (so VirtualBox presents the disk as IDE).
Because of that, the kernel needs to use /dev/hda instead of /dev/sda.
-
My GRUB command line (in the VM) that does boot:
set root=(hd0,msdos2)
linux /boot/bzImage root=/dev/hda2 rw nolapic noapic init=/bin/sh
boot
Interesting discovery: The init scripts look almost exactly like LFS-style init.
- I modified /etc/rc.d/init.d/HardDriveBuild so I can choose between SATA and IDE, because it kept forcing sda when I needed hda:
echo "Select drive type for build:"
echo " 1) SATA (/dev/sda)"
echo " 2) IDE (/dev/hda)"
read -t 10 choice # 10‑second timeout
case "$choice" in
1) MYDEV=/dev/sda; MYDEV_NAME=SATA ;;
2) MYDEV=/dev/hda; MYDEV_NAME=IDE ;;
*) echo "No selection, defaulting to SATA"; MYDEV=/dev/sda; MYDEV_NAME=SATA ;;
esac
export MYDEV MYDEV_NAME
- To make this bootable more “cleanly,” I used a Live CD (GParted Live) and ran:
sudo mount /dev/sda2 /mnt
sudo grub-install --boot-directory=/mnt/boot /dev/sda
- Because grub-probe wasn’t working nicely (probably due to overlays / weird mount), I manually created a GRUB config:
nano /mnt/boot/grub/grub.cfg
My grub.cfg:
set timeout=10
set default=0
menuentry "PowerPutt" {
insmod part_msdos
insmod ext2
set root=(hd0,msdos2)
linux /boot/bzImage root=/dev/hda2 rw nolapic noapic
# initrd /boot/initramfs.img # if using an initrd
}
- When I boot under VirtualBox, I sometimes have to select the IDE drive a few times (because of how VirtualBox’s IDE controller is exposed), but eventually it boots.
My next step: try booting this on real hardware (bare‑metal) and see what new challenges pop up.
Update: I was unable to get it to boot on a Dell optiplex 9020. I tried ahci/ide with the root set as sda2 and hda2, no luck. I have been toying with using a more modern kernel but I suspect I'll have issues with the usb CID chip or IO board.