Linux, ARM64 & Handhelds — Target Hardware & Input Matrix
Target Hardware Matrix — Linux, ARM64 and Handhelds
Every port on Good Old Games Dev — Jagged Alliance 2, Warlords III: Darklords Rising, Anno 1503 A.D. — Royal Edition, and Arcanum — is engineered against a shared cross-platform C++ & SDL2 hardware baseline:
| Platform Tier | Target Devices | CPU & OS — Graphics & Audio Stack |
|---|---|---|
| Linux x86_64 Handhelds | MSI Claw (Intel Core Ultra), Steam Deck, ROG Ally | x86_64 — Void Linux / SteamOS / Arch — Native SDL2 (Wayland / KMSDRM / X11) + PipeWire / ALSA |
| ARM64 Micro-Console | Khadas VIM1S (Amlogic S905Y4, 2 GB RAM) | aarch64 (Cortex-A35) — Custom OverlayFS OS — Direct KMS/DRM (meson-drm) + Panfrost / Lima + ALSA HDMI audio |
| macOS Apple Silicon | MacBook Air / Pro, Mac mini, Mac Studio (M1–M4) | arm64 (macOS 14+) — Native SDL2 Metal backend + CoreAudio |
| Linux Desktop & SBCs | Desktop PCs, Raspberry Pi 5, RK3588 boards | x86_64 & aarch64 (glibc / musl) — Native SDL2 (Vulkan / OpenGL ES 3.1) |
Handheld Input and Ergonomics Layer
Classic late-1990s strategy games and CRPGs were designed for high-precision desktop mice and full 104-key keyboards. To make them feel native on handhelds (MSI Claw, Steam Deck) and couch consoles (Khadas VIM1S), all four ports share a unified SDL2 GameController input layer:
- Dual-Curve Analog Cursor: Left or right stick drives the tactical cursor with sub-pixel precision at low deflection and fast map panning at full deflection, plus Left Trigger (
L2) precision slow-down. - Tactical & Radial Shortcuts: D-pad and shoulder buttons (
L1/R1) cycle squad members, stances (Stand / Crouch / Prone in JA2), zoom levels (Anno 1503), and quick-save/quick-load slots. - Integer & Aspect-Aware Scaling: Classic
640×480,800×600, and1024×768pixel art is scaled cleanly to1920×1080and1280×800displays without shimmer or aspect distortion.

