Evoke 2017

Evoke 2017

Today I attended the Evoke 2017 demoparty in Cologne, Germany. The organizers of Evoke had asked me to present a seminar on Docker-ized cross-compilation and emulation for Amiga software development at this year's event.

You can find the material that I used for my presentation here.

A1200 Reloaded vs. Vampire V4

Until yesterday, I ignored the Vampire line of accelerator / expansion cards for classic Amiga computers because they had no offering for my Amiga 1200. But yesterday the Apollo Team announced the Vampire V4. And this new model will also be available for the Amiga 1200. So here are my thoughts on the Vampire V4.

While the Vampire V4 for Amiga 1200, just like the previous Vampire products for other classic Amiga computers before it, is a card that is put into a classic Amiga 1200 it does not really do what such cards normally do. Instead of just putting a more powerful CPU (along with more RAM) onto the computer's bus it basically replaces most (if not all) of the computer's hardware.

Using FPGA chip(s), the Vampire V4 implements a Motorola 68000 family CPU, the 68080, that never existed as well as a graphics chipset named SAGA that is compatible with AGA. As far as I understand, when a Vampire board is used then basically no original chip is used. Against this background, it should come as no surprise that a standalone version of Vampire V4 will be offered that requires neither an original mainboard nor original chips.

The approach taken by Jens Schönfeld for the Commodore A1200 Reloaded makes more sense to me. I already wrote about this project earlier, for instance here and here. The Commodore A1200 Reloaded will be a state-of-the-art mainboard for the classic Amiga 1200 hardware with a couple of useful enhancements such as modern connectors and support for RTG.

Speaking at Evoke 2017

The organizers of the Evoke demoparty asked me to present a seminar on Docker-ized cross-compilation and emulation for Amiga software development at this year's event.

Here's the abstract I submitted for the seminar:

Amiga Software Development in 2017

Two years ago, at Evoke 2015, I shared my experience of turning on my Amiga 1200 for the first time after 17 years of not using it. This year I return to show how you can develop software for AmigaOS using Assembler and C on Linux. We will cover cross-compilation with GCC and vasm as well as emulation with fs-uae and vamos, for instance, and use Docker to containerize our toolchain.

See you in Cologne in August!

Transparent Amiga 1200 Case

Transparent Amiga 1200 Case

Back in September 2015, I supported a Kickstarter campaign that had the production of new Amiga 1200 cases as its goal.

Last week (while I was out of the country on a business trip), my transparent Amiga 1200 case was finally delivered.

This case will eventually house a Commodore A1200 Reloaded motherboard.

Dockerized Emulation

I created a simple shell script that makes it easy to execute an AmigaOS binary using FS-UAE:

#!/bin/bash

if [ -z $1 ]
  then
    echo "$0 "
    exit 1
fi

if [ ! -f $1 ]; then
    echo "$1 not found"
    exit 1
fi

amiga=`mktemp -d`

mkdir "$amiga/C"
cp $1 "$amiga/C"

mkdir "$amiga/S"
echo "C:$1" > "$amiga/S/startup-sequence"

docker run -it \
  -e DISPLAY=$DISPLAY \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  -v $HOME/.config/fs-uae/:/home/fsuae/config \
  -v $amiga:/amiga \
  jamesnetherton/fs-uae \
  --amiga_model=A1200 \
  --hard_drive_0=/amiga \
  > /dev/null

rm -rf $amiga

This creates a temporary directory that is used as the emulated Amiga's hard drive. The binary to be executed is copied to that hard drive's C: directory and a S:startup-sequence script that executes the binary on boot is created.

This approach is a lot simpler than what I described in my previous post.

Update

The script shown above can now be downloaded.