instructions 102996, context ranges 4112, {'dbr_known': 25105, 'dbr_unknown': 1786, 'd_known': 17216, 'd_unknown': 870}; source {'dbr_runtime': 35586, 'dbr_static': 67410, 'd_runtime': 35586, 'd_static': 67410}
instructions 5824, context ranges 395, {'dbr_known': 353, 'dbr_unknown': 1111, 'd_known': 387, 'd_unknown': 828}; source {'dbr_runtime': 0, 'dbr_static': 5824, 'd_runtime': 0, 'd_static': 5824}
== 1. export markup of /ct_sample.sfc
ExportMarkup65816.java> ExportMarkup65816: ct_sample.sfc (65816:LE:24:snes): functions 2705, labels 369, comments 278, data 158, equates 0, bookmarks 0, types 42 -> /mnt/work/digitalarch/ghidra-65816/migration/ct/out/markup_sm.json + /mnt/work/digitalarch/ghidra-65816/migration/ct/out/markup_sm.gdt  
ExportMarkup65816.java> ExportMarkup65816: 1 applied, 0 failed  
== 2. import /ct_sm_65816.sfc
Snes65816Map.java> Snes65816Map: hirom, 4194304 bytes, header map byte $31, SRAM 8 KB  
Snes65816Map.java> Snes65816Map: bank-0 mirror reads identical to ROM = true  
ApplyRuns65816.java> ApplyRuns65816: context ranges set 4112/4112; runs disassembled 6258, already present 0, blocked 0, tiling failures 0; instructions 0 -> 102996  
ApplyRuns65816.java> ApplyRuns65816: DBR/D context verified on 102996 instructions, mismatches 0  
CtApplyFlow.java> CtApplyFlow: tables 131, computed refs added 2833  
CtApplyFlow.java> CtApplyFlow: function count 0 -> 2400; instructions 102996 -> 102996  
OverlayImage65816.java> OverlayImage65816: created ov_7e3000_c3scenes at ov_7e3000_c3scenes::7e3000 len 18770  
ApplyRuns65816.java> ApplyRuns65816: context ranges set 395/395; runs disassembled 262, already present 0, blocked 0, tiling failures 0; instructions 102996 -> 108820  
ApplyRuns65816.java> ApplyRuns65816: DBR/D context verified on 5824 instructions, mismatches 0  
CtApplyOverlay.java> CtApplyOverlay: runs disassembled 0, present 262, blocked 0, tiling failures 0  
CtApplyOverlay.java> CtApplyOverlay: tables 1, refs 20  
CtApplyOverlay.java> CtApplyOverlay: functions created 178, existed 0, entry not insn 1, failed 0; count 2400 -> 2578  
ImportMarkup65816.java> ImportMarkup65816: source ct_sample.sfc (65816:LE:24:snes), register translation ghidra-snes -> ghidra-65816  
ImportMarkup65816.java> ImportMarkup65816: types resolved 45  
ImportMarkup65816.java> ImportMarkup65816: functions created 128, renamed 447, calling conventions 0, prototypes 217  
ImportMarkup65816.java> ImportMarkup65816: labels 57  
ImportMarkup65816.java> ImportMarkup65816: data 46  
ImportMarkup65816.java> ImportMarkup65816: comments 250  
ImportMarkup65816.java> ImportMarkup65816: equate references 0  
ImportMarkup65816.java> ImportMarkup65816: bookmarks 0  
ImportMarkup65816.java> ImportMarkup65816: skipped 28 x comment: already present  
ImportMarkup65816.java> ImportMarkup65816: skipped 112 x data: already present  
ImportMarkup65816.java> ImportMarkup65816: skipped 312 x label: already present  
ImportMarkup65816.java> ImportMarkup65816: 1145 applied, 0 failed  
CtFixOrphans.java> CtFixOrphans: orphan bytes 278 -> 0; functions 2706 -> 2706  
TailCalls65816.java> TailCalls65816: new function at c20000 (JML target from c0006e)  
TailCalls65816.java> TailCalls65816: new function at c30000 (JML target from c033f0)  
TailCalls65816.java> TailCalls65816: new function at fdfff1 (JML target from c033f8)  
TailCalls65816.java> TailCalls65816: new function at fdffeb (JML target from c03400)  
TailCalls65816.java> TailCalls65816: new function at fdffe8 (JML target from c03408)  
TailCalls65816.java> TailCalls65816: new function at fdffe5 (JML target from c0340c)  
TailCalls65816.java> TailCalls65816: new function at c00000 (JML target from c224e0)  
TailCalls65816.java> TailCalls65816: new function at c0000e (JML target from fdc7d3)  
TailCalls65816.java> TailCalls65816: long-jump targets made functions 8  
TailCalls65816.java> TailCalls65816: CALL_RETURN set 214, already 0, cleared 0; functions 2706 -> 2715, instructions 108820 -> 108820  
CtFixOrphans.java> CtFixOrphans: orphan bytes 407 -> 0; functions 2715 -> 2719  
JumpTableOverrides65816.java> JumpTableOverrides65816: overrides 54, computed jumps with no known destinations 9, not in a function 0  
SetCallConventions65816.java> SetCallConventions65816: set {__jsl=116, __jsr=2475, __rti=14}, user-set kept 46, RTS+RTL mixed (left) 0  
Analyzed65816.java> Analyzed65816: analyzers switched off 17 (all)  
CtExportListing.java> CtExportListing: total insn bytes 237622, bound 237622, orphan 0, functions 2719, instructions 108820, ERROR bookmarks 0  
REPORT: Execute script: FunctionSnapshot.java '--save' '/mnt/work/digitalarch/ghidra-65816/migration/ct/out/m_sm_snapshot.tsv'  (HeadlessAnalyzer)  
SCRIPT: /home/ryou/ghidra_scripts/FunctionSnapshot.java (HeadlessAnalyzer)  
FunctionSnapshot.java> saved 2719 functions to /mnt/work/digitalarch/ghidra-65816/migration/ct/out/m_sm_snapshot.tsv  
FunctionSnapshot.java> FunctionSnapshot: 2719 applied, 0 failed  
FunctionSnapshot.java> === SCRIPT COMPLETED SUCCESSFULLY ===  
== 3. check
old: functions 2705 labels 369 comments 278 data 158 equates 0 | new: functions 2719 labels 698 comments 278 data 158
markup check: everything in the old program is present in the new one
ghidra 108820, model 108820, only-ghidra 0, only-model 0, length mismatches 0, ctx mismatches 5, mnemonic mismatches 0
 ctx C28017 g=(1, 1, 0, 0, 'PHD') p=(1, 1, 1, 0, 'PHD')
 ctx C28018 g=(1, 1, 0, 0, 'PHB') p=(1, 1, 1, 0, 'PHB')
 ctx C28019 g=(1, 1, 0, 0, 'PHP') p=(1, 1, 1, 0, 'PHP')
 ctx C2801A g=(2, 1, 0, 0, 'SEP') p=(2, 1, 1, 0, 'SEP')
 ctx C2801C g=(2, 1, 0, 0, 'REP') p=(2, 1, 1, 0, 'REP')
 mnemonic pairs: []
done: new program /ct_sm_65816.sfc in /tmp/claude-1000/ctcopy/Chrono Trigger.gpr (old /ct_sample.sfc untouched)
