for building, you need Docker, a POSIX compatible shell, and a C toolchain for your host system (used for building the bootloader installer tool)
before building the kernel or userland you'll need to build the Docker build environment. this can be done by running build.sh
in the buildenv directory.
after that you can run build.sh
in the uClinux
and user
directories to build the kernel and userland respectively
you can run buildfs.sh
in the user directory to generate a bootable disk image (64 MB by default, can be changed by changing the SIZE variable in the file).
you can change the arguments passed to the kernel by editing user/cmdline
, if for example the root partition ends up being on a different drive than the default of /dev/sda1
.
if buildfs.sh
hasn't been run yet this file won't exist, simply copy the file user/cmdline.default
to user/cmdline
and then edit it as normal
in order to boot from the bootable image generated by user/buildfs.sh
, you'll need a Mac Plus, either real or emulated.
if you choose to emulate, you'll need to use an emulator that supports the Mac Plus' SCSI controller, like MAME for example. unfortunately, Mini vMac won't work because it doesn't emulate the Mac's SCSI controller
you can boot the image in MAME by running a command like mame macplus -hard1 $(pwd)/root.img
(in the user
directory, of course)
- framebuffer
- keyboard
- SCSI controller
- sound
- mouse
- floppy drives
- serial
- a bunch more things, probably