Files
2026-05-11 18:38:53 +10:00

1.5 KiB

Amiga Complete System Demo

Author: Jason Bou-Samra (Paragon)

A nostalgic, hardware-accelerated image viewer written in Ada using the SDL2 (Simple DirectMedia Layer) bindings. This project serves as a demonstration of window initialization and texture rendering on modern systems while paying homage to the Amiga era.


🚀 Features

  • Hardware Acceleration: Utilizes SDL2's Accelerated renderer flags.
  • V-Sync Support: Includes Present_V_Sync to ensure smooth, tear-free image display.
  • Asset Loading: Leverages SDL_image to handle PNG file formats.
  • Event Handling: A dedicated event loop captures the Quit signal to close the window gracefully.
  • Nostalgia: Specifically designed to showcase Amiga-themed graphical assets.

📸 Screenshot

Complete System


🛠 Prerequisites

To compile and run this program, you will need:

  1. GNAT Compiler (e.g., GNAT Community or FSF GNAT).
  2. SDL2 Libraries: SDL2 and SDL2_image development packages.
  3. SDLAda Bindings: The Ada-specific wrappers for SDL2.
  4. pkg-config: To handle library flags during compilation.

⚙️ Compilation

The project is configured to be built with gprbuild. Use the following command to link the necessary SDL2 libraries:

gprbuild -largs $(pkg-config sdl2 SDL2_image --libs)

Alternatively, using gnatmake:

gnatmake main.adb -largs -lSDL2 -lSDL2_image