{"version":"Amiga1200Trader — Musashi MC68020 + AGA","ram_size_kb":2048,"cpu":"MC68020","cpu_clock_mhz":14.18,"chipset":"AGA (Lisa + Alice + Paula)","kernel_address":"0x800","kernel_bytes":84,"tick_count":0,"total_cycles":0,"avg_cycles_per_tick":0,"position":"FLAT","entry_price":null,"realized_pnl_pct":0.0,"n_trades":0,"recent_trades":[],"last_decision":"HOLD","last_ma5":0.0,"last_ma20":0.0,"last_cycles":0,"last_wall_us":0.0,"aga_copper_list":[{"op":"WAIT","vpos":0,"hpos":0,"comment":"VBlank top"},{"op":"MOVE","register":"FMODE","value":15,"comment":"AGA 32-bit fetch (Lisa)"},{"op":"MOVE","register":"BPLCON0","value":25092,"comment":"8 bitplanes (AGA HAM-8)"},{"op":"MOVE","register":"BPLCON3","value":3072,"comment":"Palette bank 3 (AGA-only)"},{"op":"MOVE","register":"COLOR00","value":0,"comment":"Black background"},{"op":"MOVE","register":"COLOR01","value":3968,"comment":"Workbench AGA orange"},{"op":"WAIT","vpos":256,"hpos":0,"comment":"VBlank end"}],"kernel_disassembly":["TradingKernel:","    ; --- SUM ---","    LEA     $1FFF00,A0       ; price buffer (top of 2 MB Chip RAM)","    MOVEQ   #19,D2           ; 20 iterations","    CLR.L   D1               ; sum accumulator","sum_loop:","    MOVE.W  (A0)+,D3         ; 16-bit price","    EXT.L   D3               ; sign-extend","    ADD.L   D3,D1            ; 32-bit add","    DBRA    D2,sum_loop","    MOVE.L  D1,$1FFF40       ; store sum","    ; --- MA20 ---","    DIVU.W  #20,D1","    AND.L   #$FFFF,D1        ; mask quotient","    MOVE.L  D1,$1FFF48","    ; --- MA5 (last 5 prices) ---","    LEA     $1FFF1E,A0       ; offset 30","    MOVEQ   #4,D2","    CLR.L   D4","sum5_loop:","    MOVE.W  (A0)+,D3","    EXT.L   D3","    ADD.L   D3,D4","    DBRA    D2,sum5_loop","    DIVU.W  #5,D4","    AND.L   #$FFFF,D4","    MOVE.L  D4,$1FFF44","    ; --- DECISION (MA5 vs MA20 crossover, 68020 native 32-bit) ---","    MOVE.L  $1FFF50,D5       ; current position","    MOVE.L  $1FFF48,D1       ; reload MA20","    CMP.L   D1,D4            ; D4=MA5, D1=MA20","    BLE.S   maybe_sell","    TST.L   D5               ; if not already long...","    BNE.S   already_long","    MOVE.L  #1,$1FFF4C       ; decision = BUY","    MOVE.L  #1,$1FFF50       ; pos = long","    BRA.S   done","already_long:","    MOVE.L  #0,$1FFF4C       ; HOLD","    BRA.S   done","maybe_sell:","    BEQ.S   neutral_hold","    TST.L   D5","    BEQ.S   neutral_hold","    MOVE.L  #-1,$1FFF4C      ; SELL","    MOVE.L  #0,$1FFF50","    BRA.S   done","neutral_hold:","    MOVE.L  #0,$1FFF4C","done:","    MOVE.W  #$AC1A,D0        ; sentinel — \"ACIA\" the AGA homage","    RTS"],"kernel_hex":"41 F9 00 1F FF 00 74 13 42 81 36 18 48 C3 D2 83 51 CA FF F8 23 C1 00 1F FF 40 82 FC 00 14 02 81 00 00 FF FF 23 C1 00 1F FF 48 41 F9 00 1F FF 1E 74 04 42 84 36 18 48 C3 D8 83 51 CA FF F8 88 FC 00 05 02 84 00 00 FF FF 23 C4 00 1F FF 44 30 3C AC 1A 4E 75","aga_features":["256 colors from 24-bit palette (16M)","8-bitplane HAM-8 mode","32-bit DMA fetch (FMODE register)","BPLCON3 palette banks","Lisa replaces Denise (graphics)","Alice replaces Agnus (DMA, 2 MB Chip RAM)","Paula stays (4-channel audio)"]}