No description
Find a file
Nikolaus Sperat 9071bd9710 initial
2026-09-10 22:36:59 +02:00
port/gtasa-zero28 initial 2026-09-10 22:36:59 +02:00
research initial 2026-09-10 22:36:59 +02:00
scripts initial 2026-09-10 22:36:59 +02:00
.gitignore initial 2026-09-10 22:36:59 +02:00
AGENTS.md initial 2026-09-10 22:36:59 +02:00
README.md initial 2026-09-10 22:36:59 +02:00

GTA San Andreas on MagicX Zero 28 / PortMaster

Experimental project to get the classic Android release of Grand Theft Auto: San Andreas running as a PortMaster-style port on the MagicX Zero 28 under KNULLI.

Target device:

  • MagicX Zero 28
  • Allwinner A133/A133P family, ARM Cortex-A53
  • PowerVR GE8300
  • KNULLI
  • PortMaster

Goal

Start from the existing community GTA SA Linux wrapper work (R36S/R36SWiki / Vita-derived Android libGTASA.so loading approach), reproduce it in a clean repository, then adapt the launcher/runtime for the Zero 28.

The immediate milestones are:

  1. Inspect the Zero 28's KNULLI/PortMaster environment over SSH.
  2. Establish provenance and requirements of the existing community gtasa loader.
  3. Supply locally-owned GTA SA Android v2.10 game files without committing copyrighted Rockstar data.
  4. Launch from SSH first and capture logs/errors.
  5. Get graphics, audio and controls working on A133/PowerVR/KNULLI.
  6. Package the result using current PortMaster conventions.

Repository state

This repository intentionally does not contain Rockstar game data or an unverified community loader binary.

Expected user-supplied files will eventually include the classic Android release's game data and libGTASA.so. Keep all proprietary files out of Git.

Device setup

Set the SSH destination once:

export ZERO28_HOST=root@<zero28-ip>

Optional override for the KNULLI ROM root:

export ZERO28_ROMS=/userdata/roms

Inspect the device:

./scripts/inspect-device.sh

Deploy the current port tree:

./scripts/deploy-knulli.sh

The deploy script copies the launch script and port directory to:

/userdata/roms/ports/

by default.

PortMaster layout

Current PortMaster expects a port package broadly shaped like:

port/gtasa-zero28/
├── port.json
├── README.md
├── screenshot.png        # later, once it runs
├── GTA San Andreas.sh
└── gtasa-zero28/
    └── ...runtime files...

Do not invent port.json metadata until the runtime path is proven; use a current accepted PortMaster port as the template.

Development loop

edit locally
   ↓
./scripts/deploy-knulli.sh
   ↓
launch on device / via KNULLI UI
   ↓
./scripts/collect-state.sh
   ↓
inspect logs + latest screenshot
   ↓
patch and repeat

See AGENTS.md for the workflow expected from coding agents.

Upstream/reference projects

  • PortMaster-New: current packaging repository and validation tooling
  • PortMaster-GUI: runtime/device detection and platform helpers
  • R36SWiki GTA SA community wrapper work: provenance to document before redistribution
  • Vita GTA SA port: useful reference for the Android libGTASA.so compatibility approach

Do not commit or redistribute Rockstar APK/OBB files, libGTASA.so, game assets, or any other proprietary GTA SA content. Users must provide their own legally obtained game files.