Skip to content

Lua 5.4.6 for Apple IIgs — v0.3.0

Latest

Choose a tag to compare

@artgreen artgreen released this 26 Sep 02:05

Lua 5.4.6 for Apple IIgs — 0.3.0

The maintainer reported successful acceptance testing on September 25, 2026,
and approved publication. HARDWARE-ACCEPTANCE.json records the accepted candidate
and executable hashes. Individual kit results and a new detailed hardware
transcript were not supplied with that report.

This distribution organizes the working IIgs port into a clean source and
download layout. Runtime, compiler, library, and host artifacts remain
byte-identical to the preserved baseline. The language version is Lua 5.4.6.

Downloads:

  • LUA.SHK / lua.po: full interpreter, LUAC, thirteen examples, smoke test,
    and installation, usage, compatibility, and example guides.
  • LUASMALL.SHK / luasmall.po: compact bytecode-only interpreter, LUAC, greeting.
  • lua-iigs-0.3.0-sdk.zip: full/compact libraries, matching headers and VM
    objects, embedding example containers, and guides.
  • lua-iigs-0.3.0-diagnostics.zip: traced interpreter plus the suite, lua,
    small, luac, and host kits. LUATRACE is also included in the lua kit.
  • lua-iigs-0.3.0-source.zip: buildable source with originating commit and hashes.
  • Manifests, test report, and SHA256SUMS: provenance and integrity information.

Extract SHK containers with GS ShrinkIt, or copy from ProDOS images preserving
file types. From an ORCA-compatible shell, run lua -E hello.lua, then
lua -E hwsmoke.lua. Transfer images are not boot disks.

Examples include games, an adventure, Life, mazes, Mandelbrot text art,
N-queens, shortest routes, coroutine workers, word counts, and a pager.

Local validation: 80 tooling tests within 74 executed checks, container readback
and metadata checks, and thirteen packaged examples compiled with LUAC.
Selected demos also run on LUASMALL. A source-ZIP rebuild reproduces all 34
baseline artifacts. memfree is built but requires hardware to execute.
GoldenGate checks are distinct from hardware acceptance; see docs/VALIDATION.md.

Compatibility: 32-bit Lua integers, SANE extended floating point, bounded native
stack, no default utf8 library, dynamic C-module loading, or io.popen. Desktop
Lua bytecode is incompatible. Compile on the IIgs when native floating-point
constant folding matters.

The original purpose remains: give back to the Apple community by bringing a
powerful tool to the Apple IIgs. Powered by ORCA/C, GoldenGate, and Lua.