Retro Coding

Program thirty-something hardware with modern tools. That’s the goal I set for myself in this retro programming project. Program thirty-year-old machines, mixing modern techniques with older tools.

&Nbsp;

Commodore Amiga and its Graphics.library

The starting point for this project was exploring the multimedia possibilities of the graphics.library from Dale Luck . The graphics.library is an integral part of the Commodore Amiga computer as it was sold to the general public since 1985. It is a library exposing the very specific graphical possibilities of the Amiga through a C API. This library foreshadowed more modern APIs like DirectX or OpenGL with the aim of facilitating and accelerating the development of video applications or video games.

However, like any hardware abstraction layer, it performed inferior to what was achieved by directly addressing the hardwares registers. For this reason, almost all the games made on Amiga have used the graphics.library very little. This potential not realized in the history of the machine pushed me to experiment this API. I tried to find the limits through achievements in the tradition of demoscene .

&Nbsp;

Unusual Suspects

2nd prize of the “Oldschool” competition at the Evoke 2014, Cologne, Germany .
Demonstration programmed in C89 for the Commodore Amiga 500 personal computer equipped with AmigaOS 3.0.

This demo has been designed to work in multitasking, ie in full cooperation with the operating system. The desktop and all user functions of the machine are available while the demo is started. What seems obvious today was an exception for a mass-market machine sold in the mid-1980s.

I used as a graphic material a gallery of 16 portraits made by Sven ‘Ptoing’ Ruthner , on which I dubbed parodic biographies, extrapolating the universe to which each character could have belonged.
Each portrait is preceded by a very basic 3D modeling, in connection with the biography of the character.

François Gutherz: programming.
Eric Kernin : music.
Sven Ruthner : graphics.
Jean-Marie Lamarche: 3D modeling

Tools: Sublime Text, Git, WinUAE, SAS / C, Python 2.7 / Python 3.

Download: Amiga OS 3.0 version , source code
&Nbsp;

System Zoetrope

3rd prize of the “Wild” competition at the Outline Party 2015, Netherlands.
Demonstration programmed in C89 for the Commodore Amiga 500 personal computer equipped with a Motorola 68000 @ 7,14Mhz and 1 Megabyte of RAM.

Exploring more graphics.library, I imposed myself an additional constraint: use the oldest version of the API, available in the (almost) initial version of AmigaDOS 1.3.

François Gutherz: programming, graphic design.
Luca De Bernardi : music.

Tools: Sublime Text, Git, WinUAE, SAS / C, Python 3, 3DSMax, Photoshop, PPaint.

Download: AmigaDOS 1.3 Version , source code

 

SEGA Megadrive

Zsenilia

4th place in the “Oldschool” competition at UC 2015, Gernsheim, Germany
Short demonstration programmed in C99 for the SEGA Megadrive video game console equipped with a Motorola 68000 @ 7,14Mhz and 128K of RAM.

François Gutherz: programming
David Vigh: graphics
David Vandensteen: music

Tools: Sublime Text, Git, Kega Fusion, GCC, Python 3.

Download: Megadrive ROM , source code

&Nbsp;

Malabars Bumper

4th place of the “Oldschool” competition at the Solskogen Party 2016, Norway
Demonstration programmed in C99 for the SEGA Megadrive video game console equipped with a Motorola 68000 @ 7,14Mhz and 128K of RAM.

Tools: Sublime Text, Git, Kega Fusion, GCC, Harfang3D, Python 3.

Download: Megadrive ROM , source code

Post navigation

1 comment for “Retro Coding

Leave a Reply

Your email address will not be published. Required fields are marked *