The 3D engine from the book "Amiga Real-Time 3D Graphics".
To build and run the Amiga demos, you must first install the following tools:
- FS-UAE Amiga Emulator
- Amiga Kickstart ROM file - support Amiga Forever
- AsmOne
- Wine (for installing Amiga Forever)
For cross-compiling the Amiga demos, you can install the following tools:
Follow the instructions here, alternatively download a generic package here
Follow the instructions here, alternatively download a generic package here
-
Create FS-UAE run-configuration directory
$ mkdir -p ~/FS-UAE/Configurations
-
Create default Amiga run-configuration files
Create a file called
~/FS-UAE/Configurations/A1200.fs-uae
with the following contents:[fs-uae] amiga_model = A1200/020 floppy_drive_volume_empty = 0 hard_drive_0 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/hdf/workbench-311.hdf hard_drive_1 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/dir/Work hard_drive_2 = $HOME/git/github/amiga-realtime3d hard_drive_2_label = Sources joystick_port_1_mode = nothing
Create a file called
~/FS-UAE/Configurations/A500+.fs-uae
with the following contents:[fs-uae] amiga_model = A500+ chip_memory = 1024 floppy_drive_volume_empty = 0 hard_drive_0 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/hdf/workbench-211.hdf hard_drive_1 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/dir/Work hard_drive_2 = $HOME/git/github/amiga-realtime3d hard_drive_2_label = Sources joystick_port_1_mode = nothing
Create a file called
~/FS-UAE/Configurations/A500.fs-uae
with the following contents:[fs-uae] chip_memory = 1024 floppy_drive_volume_empty = 0 hard_drive_0 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/hdf/workbench-135.hdf hard_drive_1 = $HOME/FS-UAE/AmigaForever/Amiga Files/Shared/dir/Work hard_drive_2 = $HOME/git/github/amiga-realtime3d hard_drive_2_label = Sources joystick_port_1_mode = nothing
$ sudo zypper install wine
$ sudo apt install wine
-
Execute the Amiga Forever installation program
$ env WINEPREFIX="$HOME/.wine-amigaforever" wine start AmigaForever7Plus.msi
-
Copy the installed Amiga Forever files to the FS-UAE working directory
$ mkdir -p ~/FS-UAE/AmigaForever $ cp -a ~/.wine-amigaforever/drive_c/users/Public/Documents/"Amiga Files" ~/FS-UAE/AmigaForever/
-
Download AsmOne
$ curl -O http://www.theflamearrows.info/ftp/asmonev149-RC2.lha
-
Unpack the AsmOne archive into the FS-UAE working directory
$ lha xw=~/FS-UAE/AmigaForever/"Amiga Files"/Shared/dir/Work/AsmOne/ asmonev149-RC2.lha
-
Start FS-UAE with the A1200 run-configuration
$ fs-uae ~/FS-UAE/Configurations/A1200.fs-uae
-
Start AsmOne
Open the
Work
disk and executeAsmOne
Enter
Chip
and200
to allocate 200 KB of chip memory -
Open demo source file
Enter
r
to open fileEnter
sources:src/Program_01.s
to open demo source file -
Build demo source file
Enter
a
to assemble demoEnter
wo sources:build/Program_01
to write demo to disk
-
Download vasm
$ curl -O http://sun.hasenbraten.de/vasm/release/vasm.tar.gz
-
Build vasm
$ make CPU=m68k SYNTAX=mot
The build will generate a binary
vasmm68k_mot
. Put this binary in a user-reachable location (for example~/bin/
).
To build the Amiga demo programs, run:
$ ninja
A build
directory will be created, containing the demo programs.
Licensed under Creative Commons Attribution Share Alike 4.0 International. See LICENSE for more information.
- Johan Gardhage
- General ideas and code from Andrew Tyler's book Amiga Real-Time 3D Graphics
- Original source code and a scanned pdf of the book can be found here