Commit Graph

90 Commits

Author SHA1 Message Date
gamer147
4e42b57970 Decode STINIT map and object placement data 2026-07-23 00:22:03 -04:00
gamer147
5903357260 Extract and profile STINIT stage records 2026-07-22 23:50:43 -04:00
gamer147
9efa56c210 Expose semantic INIT column names 2026-07-22 23:15:33 -04:00
gamer147
b536e91fbc Join item and skill message semantics 2026-07-22 23:04:24 -04:00
gamer147
b828c07ff7 Recover signed INIT data semantics 2026-07-22 21:05:48 -04:00
gamer147
24fac92676 Model linked INIT record tables 2026-07-22 16:57:59 -04:00
gamer147
b466c36f8a Correct INIT extraction and profile item fields 2026-07-22 16:44:53 -04:00
gamer147
1625b3bf54 Document performance baselines and native animation cadence 2026-07-22 12:06:54 -04:00
gamer147
740e10c550 Harden movie playback lifecycle and diagnostics 2026-07-22 09:44:57 -04:00
gamer147
633e3b3085 Prevent failed combat movies from blocking 2026-07-21 20:46:10 -04:00
gamer147
983c7d0bb0 Correct native packed resource addressing docs 2026-07-21 20:14:07 -04:00
gamer147
f6e48907d9 Implement deployment card numeric rendering 2026-07-21 17:31:57 -04:00
gamer147
8aa58c4c3d Document BUNKI menu opcode contracts 2026-07-21 16:26:39 -04:00
gamer147
fe1531097a Document numeric HUD opcode contracts 2026-07-21 15:40:46 -04:00
gamer147
274744e9b6 Implement movie surface stop-time queries 2026-07-21 14:43:24 -04:00
gamer147
f0e31343a0 Document ADV system menu input path 2026-07-21 11:01:50 -04:00
gamer147
be586ca988 Implement script-configured input bindings 2026-07-21 10:32:37 -04:00
gamer147
490243705b Document SYS4 logical input bindings 2026-07-21 10:07:21 -04:00
gamer147
cffc75c64d Implement ROOM fades and character voices 2026-07-21 00:47:29 -04:00
gamer147
7a9fe52a9d Document packed raw SFX addressing 2026-07-20 18:32:56 -04:00
gamer147
9b35fc9e61 Document B0 natural boot control spine 2026-07-20 17:29:38 -04:00
gamer147
b7e92bdb2f Document opcode 0x1fe current rotation 2026-07-20 16:51:30 -04:00
gamer147
bc5763e65e Implement ADV skip lifecycle 2026-07-20 16:41:44 -04:00
gamer147
f5663ec595 Reverse shared SAVE.DAT integer opcodes 2026-07-20 13:33:27 -04:00
gamer147
c8303babf5 Reverse opcode 0x1ad save resume boundary 2026-07-20 12:06:02 -04:00
gamer147
3fa07c0ae5 Implement ADV text publication service 2026-07-20 10:18:10 -04:00
gamer147
96e4448796 Implement AGE text line spacing 2026-07-19 23:32:38 -04:00
gamer147
7c110d762b Implement History mouse wheel navigation 2026-07-19 21:38:34 -04:00
gamer147
81155c5e1c Implement History timed callback scrolling 2026-07-19 21:15:15 -04:00
gamer147
d3698a0612 Implement ADV History voice replay 2026-07-19 14:11:49 -04:00
gamer147
2c6bf9a4cd Correct ADV History layout addressing 2026-07-19 10:43:52 -04:00
gamer147
7dec791876 Implement ADV History data navigation 2026-07-18 23:41:23 -04:00
gamer147
bd6c92519c Document ADV History retained-record model 2026-07-18 23:16:50 -04:00
gamer147
66b13315f2 Correct ADV Hide Window restore behavior 2026-07-18 22:23:06 -04:00
gamer147
ad022ace51 Implement native ADV Hide Window path 2026-07-18 21:14:06 -04:00
gamer147
b76f175333 Document ADV history and remaining button paths 2026-07-18 20:28:36 -04:00
gamer147
dc50acaa9b Implement native ADV message skip 2026-07-18 17:32:12 -04:00
gamer147
4bf98cc7af Implement ADV controls and native Auto timing 2026-07-18 17:16:06 -04:00
gamer147
8c7c7158a7 Fix retained background lifecycle 2026-07-12 00:00:45 -04:00
gamer147
3aca514497 feat: add runtime ADV page locator 2026-07-11 22:52:26 -04:00
gamer147
2a49a0697c fix(gfx): restore third CG glow 2026-07-11 20:05:51 -04:00
gamer147
2232216832 Implement native-backed SC0000 SFX lifecycle 2026-07-11 02:15:17 -04:00
gamer147
921c91474f Implement native ADV retained text 2026-07-10 22:46:27 -04:00
gamer147
f94bca4ba5 Refresh retained presentation references 2026-07-10 21:56:57 -04:00
gamer147
85a66afe20 Fix native retained presentation batching 2026-07-10 21:37:42 -04:00
gamer147
768863b48e feat: add affine rotation rendering and timeline diagnostics 2026-07-10 17:54:33 -04:00
gamer147
4d225618f9 fix: align animation pacing and transforms with native 2026-07-10 15:41:17 -04:00
gamer147
f2797d5ab7 feat: model ADV coroutines and retained effect teardown 2026-07-10 09:45:43 -04:00
gamer147
f3fc25debf feat: scene-entry state capture -> auto-seed for single-scene runs
capture_global_writes.py hooks vm_operand_write@0x425fb0 (plaintext values,
before the obfuscated store — sidesteps the shelved flat-scan problem) and folds
the engine's global-int writes into a GameSession snapshot. --spawn captures from
boot (packer-aware: polls until the code unpacks, then attaches — AGE.EXE unpacks
in-place so a spawn-time hook hits packed bytes; also kills the spawned pid if
setup fails so no suspended orphan). Age.Cli 'trace ... --state <snap>' runs a
scene from the captured state.

Validated: a real boot->new-game->SC0000 capture (34008 globals incl. G[0x6c1]=1)
seeds the VM to match the engine's ENTIRE opening (542 ops, no non-realignable
fork) with zero manual seeding. Residual: a 2-op color detour (0x202/0x203)
unfixed by state = a real branch diff to chase. Engine 81/81, diff 5/5.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-09 13:30:14 -04:00
gamer147
029b77c67c re: diff_optrace resync-tolerant alignment (blind spots vs real forks)
Strict lockstep over-reported: the operand hook misses any op whose operands
aren't fetched via vm_operand_fetch (comment 0x1a7, set-string 0x192, the
0x1c7/0x1cc/0x131/... string-op cluster) — the engine executes them (they sit
after non-branching ops) but they're absent from its trace. New align() resyncs
over such one-sided insertions and reports only NON-realignable forks; it
separates VM-only blind spots (artifacts) from engine-only detours (real,
reconverging branch/state gaps, surfaced honestly). +2 tests (7/7).

Result: with G[0x6c1] seeded the SC0000 opening has NO non-realignable fork
across all 539 VM ops (was: false 'diverge at 0x8d'); residual = a 2-op
engine-only color detour (0x202/0x203 @ 0x122d0). Cold's first real fork is a
later G[0x6c1] gate. Validates the pre-scene-state theory end-to-end.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-09 12:55:21 -04:00