Quantcast
Channel: Astr0baby's not so random thoughts _____ rand() % 100;
Viewing all articles
Browse latest Browse all 183

A/UX Apple UNIX for 68k Macintosh

$
0
0

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.

Prerequisites

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 3.0.1.7z'
$ rm -rf 'Apple AUX 3.0.1' 'Apple AUX 3.0.1.7z'  '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
/dev/loop1
# 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 :)

 


Viewing all articles
Browse latest Browse all 183

Trending Articles