What is AMOS Basic in the first place ?
The BASIC is an all purpose language, designed in 1964, for IT beginners and students.
Back in 1988 the Atari ST and the Commodore Amiga were the most advanced home-computers available. (...) François Lionet produced with Constantin Sotiropoulos one of the first game programming language ever written: STOS & AMOS Basic - published by Europress Software Ltd. It proved to be an immediate success: STOS & AMOS allowed anyone, regardless of their programming experience, to have their first sprite moving on the screen with a few instructions. STOS & AMOS filled a big gap in the market. Home users wanted to be able to release their creativity and produce their own games without learning difficult languages like C or machine code.
Copyright (c) Clickteam 2004
The Amos demo disc
In 1990, prior to the launch of AMOS Basic on the Amiga computer, a series of ads were published in the UK press (including the issue 06 of Amiga Format, page 69).
One of these ads was a coupon to be sent to Mandarin Software in exchange of a preview & demo disc of the Amos Basic. On the disc was a technical demo of both the Amiga computer and the AMOS Basic capabilities, demonstrating scrolling, sprites, bobs and soundtracker music. The demo was written by Peter Hickman, the music composed by Allister Brimble (also known for his huge contribution to the video game culture)
As this might have been the starting point of so many gamedev wanabees (including yours truly), I thought this piece of history deserved to be revisited using the Harfang framework.
The Amos demo remade with Harfang
Rebooting this demo was mainly reading the original Basic source code (it can be found on the disc), translating what could be translated into Python (it could have been done in Lua too).
Some parts of the original code were completely recreated from scratch, as the whole visual paradigm completely changed in 25 years.
Most of the visual assets of this demo were converted into PNG files, and displayed directly, thanks to the Plus API provided by Harfang.
The original music was simply converted into an XM file, and is replayed directly by Harfang through one of his plugins.
There is no such thing as hardware scrolling or hardware/blitter sprites, obviously. However, the concept of sprite remains, using GPU accelerated quads.
As for the last part of the demo, the fonts show off was completely reinterpreted using TTF fonts.
The resulting demo is here :
The source code can be found on my Github :
A video capture of the original Amiga demo is here :