More Details
Ant64 treats advanced graphics, audio, and I/O as first-class hardware citizens — not software libraries.
Ant64 is a modern, hardware-first computer inspired by the design philosophy of classic systems — the Commodore Amiga, Atari 8-bit line, Jaguar, and Sega Saturn — reimagined with today's FPGA capacity, memory bandwidth, and integration techniques.
The system is designed to excel at games, creative tools, and system-level experimentation. The main custom chipset, implemented in FPGA, is called FireStorm.
Major Chips and Roles
| Chip | Role |
|---|---|
| FireStorm | FPGA graphics & audio SoC |
| SG2000 | Primary CPU SoC — OS, apps, networking |
| Pulse | RP2350 — real-time I/O and MIDI |
| DeMon | RP2350 — supervisor and recovery |
| Sticky | AVR — 5V I/O and joypad ports |
FireStorm — FPGA Graphics & Audio SoC
FireStorm is treated as a memory-mapped device by all CPUs. It contains:
- Layered 2D/2.5D graphics pipeline
- Sprite, tilemap, vector, voxel, raycasting, and command-list rendering
- Hardware Copper and command processors
- Audio synthesis and mixing
- Multiple video outputs
DDR3 RAM (FireStorm side)
| Model | Capacity | Width | Peak bandwidth |
|---|---|---|---|
| Ant64 | 1GB | 256M × 32 | 3.2 GB/s |
| Ant64C | 2GB | 512M × 32 | 3.2 GB/s |
Used for: large tilemaps, isometric maps, voxels, raycasting grids, command lists, streaming assets, cartridge/SD data.
SRAM (FireStorm side)
Two independent memory buses, each with 4.5MB of fast SRAM (1M × 36 bits) — true random access with deterministic latency.
Used for: active layer data, sprite lists, Z-buffer, Copper lists, scanline compositing, text layers.
Graphics Layer System
Up to 16 independent layers, each independently typed. Per-layer controls:
- Scanline start · Enable/disable
- Z-buffer participation · Blend mode · Palette mode
Layer Types
| Layer Type | Key Features |
|---|---|
| Tilemap | Orthogonal, isometric, or side-view · depth extrusion · hardware scrolling · Z-buffer participation |
| Sprite | 4-bit+ colour · scaling · rotation · Z-aware (inside the world, not just on top) |
| Text | 3-bit glyph indices · per-layer colour registers · optimised for UI and system text |
| Bitmap | 12-bit 4-4-4 true colour · 12-bit indexed (64 palettes × 64 colours) |
| Command List | GPU-style command stream · ImGui compatible · Copper can inject commands |
| Vector | Lines, curves, polygons · optional instancing as sprites |
| Raycasting / Voxel | Hardware ray queries · collision distance · voxel column rendering |
Layer Merging and Z-Buffering
Per-pixel Z-buffer stored in SRAM, layers merged per scanline. Each layer can obey or ignore the Z-buffer:
- Sprites embedded in depth tilemaps
- 2.5D effects for side-scrollers (Mario-style depth)
- Isometric worlds with verticality
Copper and Update Units
Copper list (tied to scanline position)
|
├── Modify layer registers
├── Modify palettes
└── Inject into command lists
Update Units
|
├── Burst updates
├── Dirty-flagging
└── Cached descriptors
Audio and Copper update units share the same optimisations.
Audio System
- Multi-channel sample playback with hardware mixing
- DMA from SRAM or DDR3
- MIDI-driven synthesis via Pulse Sequencer
Video Outputs
| Output | Resolution | Notes |
|---|---|---|
| Analog RGB | 240p–480p | RGB 6-6-6 with H/V sync — SCART, VGA, etc. |
| HDMI | 1080p/60 | Standard HDMI TV or monitor |
| DisplayPort | 4K/60 | Ant64C only — active cable to HDMI if needed |
All outputs support:
- Independent layer selection per output
- Line buffering and pixel repetition
- DP capable of 4K-class output with reduced layer set
SG2000 — Primary CPU SoC
- Runs the main OS (AntOS) and applications
- Accesses FireStorm via QSPI as memory-mapped hardware
- Handles filesystem, networking, and higher-level logic
- 512MB 16-bit wide DDR3 RAM
- FreeRTOS with Luau scripting and ImGui interface
Programming Languages
Assembly · BASIC (with built-in macro assembler) · ReAction! · Forth · Python · Luau
Pulse — RP2350 Real-Time I/O and MIDI
- Traditional MIDI — DIN / DOUT / DTHRU — and USB MIDI
- USB mouse support
- 6 analog potentiometer dials
- Round auxiliary TFT display
- SPI slave to SG2000 and DeMon
- Aggregates joypad, mouse, and control data
Sticky — AVR 5V I/O & Joypads
- 4 joypad ports — Atari/C64 compatible · Sega compatible · Paddle support
- Electrically isolated from the FPGA
- Cheap, replaceable, and robust
- Talks only to Pulse Sequencer
DeMon — RP2350 Supervisor & Recovery
- System supervisor and recovery controller
- Keyboard interface · 4" portrait touchscreen
- Internet access via ESP32-C5
- NFC reader · Real-time clock · Cartridge interface
What DeMon Can Reprogram
- FireStorm FPGA (QSPI + JTAG)
- Pulse Sequencer
- Sticky
- SG2000 (bootstrap)
- ESP32-C5
Cartridge & Personality System
Cartridges may contain FPGA images, OS ROMs, game images, or CPU configuration data.
Ant64 can temporarily become a different classic system — often massively enhanced.
This is the personality cartridge system: slot in a cartridge and the hardware reconfigures itself around it.