SuperTux 0.1.3 — original Windows source readiness
2026-10-18, source-only new-game refill. No build, native guest, browser, installer execution, or licence-dialog response was performed.
Original provenance and recovery
The project's v0.1.3 release
publishes supertux-0.1.3-setup.exe (7,623,968 bytes). The historical
official download wiki
also identifies that Windows filename. Download directly from:
https://github.com/SuperTux/supertux/releases/download/v0.1.3/supertux-0.1.3-setup.exe
Observed SHA-256:
bc4893dbb84a02beb8958dab1c922a7f715aa08ed463d2a0efa6bc58d79c9a9b.
The release API supplies no upstream digest; this is an observed identity,
not an independently published checksum. file and innoextract identify
Inno Setup 4.2.2, not NSIS. 7z l failed without changing the source.
Retained directory on the coordinator:
/home/user/wine-assembly/scratch/runs/20261018-supertux-source/.
It contains the installer, archive-list.txt, extraction.log, inventory.json,
and extracted/app. Recovery requires only the pinned official installer and:
innoextract -d extracted supertux-0.1.3-setup.exe
Extraction produced 787 files, 16,107,101 bytes, with no installer execution.
The whole retained evidence occupies approximately 25 MiB. Original EXE:
extracted/app/supertux.exe, SHA-256
5930d9848beec72fcaea0687d745e1c9fc148245abbf3f856c208ed41d83265c.
inventory.json records every file's path, byte count and SHA-256.
Closure and selection
objdump -p checked the EXE and all six bundled DLLs: SDL.dll,
SDL_image.dll, SDL_mixer.dll, jpeg.dll, libpng1.dll, zlib.dll. Every non-system
import DLL is present. System imports are KERNEL32, MSVCRT, OPENGL32, WINMM,
USER32, GDI32, ADVAPI32 and CRTDLL, all classified in current
lib/dll-loader.js. This establishes file closure, not implemented API or
runtime compatibility. No missing payload path is currently known.
The original doc/COPYING is GPL version 2; doc/README describes the game and controls. No commercial activation or unanswered installer licence was encountered. Source-only extraction is the proposed launch preparation. This is not permission to publish a distribution.
Current-main registry/TODOS and the shared historical messageboard contain no SuperTux title/qualification. It is absent from DESKTOP_APPS. The previous refill report's already-qualified pool was preserved; SuperTux is a fresh title, not an alternate renderer of a qualified game.
Next ordinary action
Use the adjacent ../supertux-013-launch.json packet after the coordinator
grants the serialized runtime slot and pins current launcher source/module.
Launch the original executable with its entire extracted app tree and its
own --sdl --datadir data options, which occur in original EXE help strings.
Do not disable sound/music or alter game data. First 60-second passive CLI
run should establish the actual startup/menu or first fail-fast error.
Use the CLI internal wall-clock bound plus an 85-second last-resort owned
process guard, 8 MiB output ceiling and >2 GiB disk floor. Preserve outputs,
exit receipts and unchanged original hashes before releasing the slot.
Then inspect the actual menu before selecting Start Game using normal input. README documents arrow-key world-map navigation and Enter to enter a level, left/right movement and Esc for the menu. Confirm jump/run bindings in Options rather than guessing. Qualification needs reviewed actual level movement against idle/opposite input, not the menu or a screenshot alone. Browser, audio quality, FPS and full gameplay remain untested.
First passive launch, 2026-10-18 16:47Z
Root granted one passive original launch on source
b9c3480021a6d4ab696edc22ea50e08cd592da1b, module
9bf6051774ad0ebe29744e7ade39d902b4f4716661cf9d8e36c2a24b06ae2a29.
Preparation and evidence are respectively
scratch/runs/20261018-supertux-launch-prep and
scratch/runs/20261018-supertux-passive-startup on the coordinator.
The controller explicitly mounted all 787 original files at C:\SUPERTUX,
set that working directory, and used --sdl --datadir data. Source pins
covered 3,115 files with no missing selected paths. Bounds were 60 seconds
guest / 85 seconds hard, 8 MiB output, 2 GiB + 128 MiB disk admission and
2 GiB + 64 MiB early stop. No guest input or installer was executed.
SDL's original DllMain returned success, then batch 1 stopped at
UNIMPLEMENTED API: setbuf, EIP 0047e1b0, return 0046dbeb.
Crucially, the loader first warned three times that the real msvcrt.dll
was absent and imports fell back to WAT handlers. This run therefore does
not establish an emulator setbuf defect with the intended runtime closure.
There was no PNG or window/menu evidence before the failure.
Exact missing runtime fixture:
/tmp/wa-recovery-20261014/test/binaries/dlls/msvcrt.dll.
An existing corpus file is available at
/home/user/wine-assembly/test/binaries/dlls/msvcrt.dll, 278,581 bytes,
SHA-256 887eb5ce93edb7192ca3e9220f07f9ca0f94db02af5862ebcbdfcb852db99fd1.
Static objdump confirms it exports setbuf and imports only KERNEL32.
lib/dll-registry.js expects this real DLL. Next action is to stage and pin
that existing corpus dependency, verify real-PE selection, and prepare a
separately granted passive launch. Do not implement a silent setbuf stub
based on the incomplete runtime route. The game payload itself is complete.
Child 2191303 and controller 2191286 exited; child returned code 1 without
a signal at 16:47:46.557Z, approximately 140 ms after spawn. Controller
detected crash text and requested quit, without a hard timeout or guard kill.
Output was 5,797 bytes; minimum sampled free disk was 3,536,146,432 bytes.
All 3,115 source and 787 original fixture pins remained unchanged. Worker
independent postflight confirmed no owned process group; both PIDs were
also absent in a separate ps check. Root independently verifies release.
No retry, build, browser, gameplay, audio or FPS claim.
Complete real-DLL route, 2026-10-18 16:54–16:56Z
Two subsequent runs were separately granted by root. First restored the
existing corpus MSVCRT file to the exact missing integration path, without
overwriting a differing file. The original game tree stayed untouched.
20261018-supertux-crt-startup confirms actual MSVCRT mapped at 0070b000,
both DLL initializers returned success and setbuf passed. It then failed
at Mix_OpenAudio, EIP 0046d3d0, return 0043b9c7, before drawing.
Child 2197313 exited 1 without signal in approximately 157 ms; controller
2197303 and child were independently absent. All 3,116 source/runtime and
787 original pins remained unchanged; disk minimum 3,532,296,192 bytes.
Source audit found that normal EXE discovery filters DLL names through
lib/dll-registry.js: SDL is listed, but SDL_image/SDL_mixer/jpeg/libpng1/zlib
are not. A VFS mount does not declare a DLL for static PE loading.
test/run.js supports repeated --dll-seed=NAME, passed to shared
resolveDllGraph; explicit seeds bypass only that discovery-name filter.
Pure-JS graph replay reproduced automatic [sdl.dll, msvcrt.dll] versus all
seven real DLLs when the six originals were declared. No production source,
API stub, sound-disable switch or alternate DLL was introduced.
The corrected route adds these arguments to the original packet:
--dll-seed=SDL.dll --dll-seed=SDL_image.dll --dll-seed=SDL_mixer.dll
--dll-seed=jpeg.dll --dll-seed=libpng1.dll --dll-seed=zlib.dll
Fresh preparation: scratch/runs/20261018-supertux-dll-launch-prep.
Fresh run: scratch/runs/20261018-supertux-dll-startup, source
8c2b5bf6127333ffd5e450c8585b2d70863fd70d, same module 9bf60517…,
3,117 source/runtime pins including the restored CRT, same 787 originals.
The log confirms all seven actual DLL mappings and EXE/cross-DLL patches.
Reviewed sample-0.png visibly shows the SuperTux main menu (Start Game,
Bonus Levels, Options, Level Editor, Credits, Quit). Main-menu reachability
is established; no gameplay input was sent. Root must grant the next normal
Start Game/world-map/level navigation and reviewed input comparison before
this title can qualify as player-controlled gameplay.
Final.png also reviewed: same main menu with naturally animated background. Child 2198516 exited 0 without signal at 16:56:09.968Z, approximately 60.189 seconds after spawn; controller 2198506 exited 0. Both independently absent; worker independent postflight has no owned survivors and all pins unchanged. No hard kill or disk/log guard fired. Minimum free disk was 3,525,369,856 bytes and output 1,167,194 bytes. Valid result.json records only main-menu success. Evidence checker has no new invalid/missing records; its sole containment error is the unrelated historical Zuma run.
Ordinary level input, 2026-10-18 17:00–17:03Z
Root granted a fresh interactive CLI run, 180 seconds guest / 210 seconds
hard, with the same 8 MiB log and disk guards. Source was
e33cf8735212c944b96e25f53923774219dc8e61, unchanged 9bf60517… module,
3,117 source/runtime pins and 787 original files. Preparation is
scratch/runs/20261018-supertux-gameplay-prep; complete evidence is
scratch/runs/20261018-supertux-gameplay. Atomic numbered JSON requests
fed ordinary CLI keydown/keyup commands, with independent host timers
releasing each held key after 100–201 ms. Before/held/released PNGs were
requested for every hold. No game file, memory or clock was changed.
Reviewed normal route: Enter on Start Game; Enter on Slot 1; inspect the
world map; Down to its first red node, labelled "Welcome to Antarctica";
Enter into that level. An earlier Enter on the starting white node did
not enter a level. level-ready.png shows the actual platform level.
level-right-before.png shows Tux at approximately x115 near the starting
grass patch. During ordinary Right (200 ms), level-right-held.png shows
Tux around x255 while the world camera has advanced substantially: the
initial question blocks have scrolled left and new foreground appears.
level-left-before.png later shows Tux back near x115 on the starting
ground; ordinary Left (200 ms) turns him left and moves him to the left
edge in level-left-held.png and level-left-released.png, against the
same fixed nearby scenery. These establish scoped directional response
in actual gameplay, not just movement in the animated title background.
Limits matter here: the default batch-derived CLI clock advances the
level timer quickly during agent think-time. Timeout/respawn occurred
between observations, so this is not a clean same-life opposite/idle
comparison. released-idle.png reset to the starting position and is
rejected as an idle baseline; short-right-* was already back at the
main menu and is excluded. No jump key was sent; the airborne pose in
right-released is not jump evidence. No logical FPS or audio measurement.
review.json lists the exact 17 images inspected and these limitations.
Eight host keydown/keyup pairs are balanced in issued.ndjson; all release
timers fired. The trace window suppressed later CLI control replies, so
recorded host times are publication times, not individual guest execution
acknowledgments. The causal visual changes provide input-response evidence.
Child 2204602 and controller 2204591 both exited 0 after requested normal
quit at 17:03:14.063Z, 135.401 seconds after spawn. Both independently absent,
owned group empty, all pins unchanged, no guard kill; minimum free disk
3,494,961,152 bytes, output 1,165,523 bytes. Root independently reviews the
evidence before qualification. Original failed/menu-only runs are preserved.
Next durable product step is a local-only registered route declaring these same six DLL seeds and original file manifest. Sustained control should use a separately measured suitable CLI clock or ordinary browser timing; changing clock parameters during this evidence run was not authorized or performed. Jump bindings, complete controls, physical touch, audio and FPS remain separate follow-ups. No public deployment.