/* * title "SheepShaver Install Debian" * author "Dylan Lom" * link stylesheet /main.css * charset utf8 */ # $(echo "$title") So I [found out][0] about [MacintoshGarden][1], and was interested in trying a couple of the games. I had a (not very) good time setting up the emulator (as someone who's not super familiar with Mac history or anything), and thought I'd write it down here. ## Building 1. Grab the source code, I used [kanjitalk755's repo][2], for no real good reason except the [main guide][3] I was looking at used it. 2. Run the commands as listed in the Linux/SheepShaver section, I needed to install `libsdl2-dev` as well. 3. When running `make` after configuring, I got `undefined reference to symbol 'XDisplayName'`, which you can fix by sticking `-lX11` on the end of line 23 of the makefile: `LIBS = -lpthread -lm -lSDL2 -lX11` ## Running 1. At this point make succeeded, but I needed a ROM. I grabbed the `newworld86.ro At this point make succeeded, but I needed a ROM. I grabbed the `newworld86.rom.zip` from [Redundant Robot's guide][4], as well as `OS9.0.0.iso` (you could probably go straight for the [installer][7], but I ran the pre-installed image first for testing and stuff). 3. First run: `Cannot map Low Memory Globals: Invalid agument` error, this can be [fixed temporarily][5] by running `sysctl -w vm.mmap_min_addr="0"` as root 4. I ran `SheepShaver --rom newworld86.rom`, and got `ERROR: Cannot obtain appropriate X visual.`, the forums didn't really help, got the usual 'run it as sudo :)' fix (which didn't work anyway). The error message seems to only be used once, at `video_x.cpp:923`. A bit of poking around in that file made me realise I should probably recompile with the `DEBUG` macro set to 1. When I did that... it worked..., I think maybe the build failing had somehow borked it? I disabled debug, cleaned and ran again and I got a window with a laggy cursor! 5. Now run `SheepShaver --rom newworld86.rom --cdrom OS9.img` 6. Oops, apparently there isn't enough ram available to run `Shutdown`, better fix that (and also the cursor): `SheepShaver --rom newworld86.rom --cdrom OS9.img --ramsize 1000000000 --harcursor true` ([1 GB seemed sufficiently more than the average user would've had][6]) just gave it a gb /shrug). 7. Now to install the OS ourselves 1. Grab the [Mac OS 9.0.0.toast][7] image from MacintoshGarden 2. Create a (10gb) disk image with this command `dd if=/dev/zero of=OS9_drive.img bs=1032192 count=10000` 3. Run with `--drive OS9_drive.img --cdrom Mac\ OS\ 9.0.0.toast` 4. You'll get a prompt about formating the drive (I'm glad it's not running as root!). 5. Run through the installer, I added in the japanese language pack under options 6. Reboot without `--cdrom`, with `--disk OS9_drive.img` ## Configuration You can edit preferences at `~/.sheepsaver_prefs`, I suppose sheepshaver automatically sets it at first run, here are the lines I set myself hardcursor true scale_integer true scale_nearest true rom /home/djl/doc/emu/mac/newworld86.rom disk /home/djl/doc/emu/mac/OS9_disk.img ramsize 1000000000 ## TODO I still haven't got networking or sound to work... but I'm going to bed for now ;) I'll update this when I get that stuff working ------ $(sign) [0]: https://www.youtube.com/watch?v=IE4PrIGtoO0 [1]: https://macintoshgarden.org/ [2]: https://github.com/kanjitalk755/macemu [3]: https://www.emaculation.com/doku.php/compiling_sheepshaver_basilisk#building_basiliskii_and_sheepshaver_in_linux [4]: https://www.redundantrobot.com/sheepshaver [5]: https://wiki.debian.org/mmap_min_addr [6]: https://en.wikipedia.org/wiki/Power_Macintosh_9500#Hardware [7]: https://macintoshgarden.org/apps/macintosh-system-922-1021-power-macintosh-g4-mirrored-drive-doors-mdd