A/UX Apple UNIX for 68k Macintosh

Apple A/UX was an early port of Unix to Apple’s 68k based Macintosh platform. It featured a full Unix system with a MacOS GUI and the ability to run classic MacOS applications. I have never heard of it until I have stumbled on it by accident on https://winworldpc.com/product/a-ux/3x 

Since I have not seen any Linux specific instructions on how to get this up and running (apart from Neozeed’s excellent articles here https://virtuallyfun.com/wordpress/category/aux/ ) this is a short howto to get one going.

We will be running a so called ShoeBill – it is an all-new, BSD-licensed Macintosh II emulator designed from the ground up with the singular goal of running A/UX.


Lets prepare the environment first for the build  (Either download the A/UX 3.0.0 or 3.0.1)

$ mkdir -p $HOME/AUX 
$ cd $HOME/AUX 
$ sudo su 
# apt-get install build-essential libsdl2-dev  uuid-dev p7zip-full wget git 
# exit 
$ 7z e 'Apple AUX'
$ rm -rf 'Apple AUX 3.0.1' 'Apple AUX'  'www.betaarchive.co.uk.info'
$ mv AUX_3.0.1_Install.iso aux.img 
$ wget https://github.com/nyteshade/mini-vmac-setup/raw/master/MacII.ROM

So lets pull the ShoeBill sources now and build it

$ cd $HOME/AUX
$ git clone https://github.com/pruten/shoebill.git
$ cd shoebill/sdl-gui
$ ./lin_build.sh

gcc -O3 -ggdb -flto adb.post.c fpu.post.c mc68851.post.c mem.post.c via.post.c floppy.post.c core_api.post.c cpu.post.c dis.post.c ../core/SoftFloat/softfloat.c ../core/atrap_tab.c ../core/coff.c ../core/exception.c ../core/macii_symbols.c ../core/redblack.c ../core/scsi.c ../core/video.c ../core/filesystem.c ../core/alloc_pool.c ../core/toby_frame_buffer.c ../core/ethernet.c ../core/sound.c sdl.c -lpthread -lm -lSDL2 -lGL -o shoebill
fpu.post.c: In function ‘_native_tentox’:
fpu.post.c:821:9: warning: type of ‘a’ defaults to ‘int’ [-Wimplicit-int]
 double  _native_tentox(a) {
/tmp/cctaC1Cr.ltrans1.ltrans.o: In function `printf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:104: warning: `sys_errlist' is deprecated; use `strerror' or `strerror_r' instead

$ cp shoebill $HOME/AUX
$ cd $HOME/AUX

Now we are ready to run ShoeBill on Linux (networking TUN/TAP support does not currently work)

$ cd $HOME/AUX
$ ./shoebill rom=./Mac-II.ROM disk0=aux.img  width=1024 height=768 ram=64

And ShoeBill should boot (to release the mouse cursor simply press the right mouse button)

Since networking is not working we can use the following way how to transfer files to and from the system (copy the aux.img to aux2.img)

$ cd $HOME/AUX
$ cp aux.img aux2.img 
$ sudo su 
#  apt-get install hfsutils

# mkdir -p /mnt/disk
# losetup --find --show ./aux2.img
# partprobe /dev/loop1
# mount -t hfs -o rw /dev/loop1p3 /mnt/disk

This way we can delete some files on the /mnt/disk (free up about 10 MB space) 
And copy some files over once we unmount the drive, attach it to the emulator
and re-execute ShoeBill

# umount /mnt/disk 
# exit 
$ cd $HOME/AUX
$ ./shoebill rom=./Mac-II.ROM disk0=aux.img  disk1=aux2.img width=1024 height=768 ram=64

This is a dirty hack and Im not sure its really worth it :)



About astr0baby

Please run Adblock or similar... we have been told to do so since Carl Sagan wrote the Contact .
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.