0xrsydn
bb409f27b1
feat(demo): exercise windows blending and brightness
2026-10-05 12:58:40 +07:00
0xrsydn
52194cd38b
feat(demo): exercise Mode 4 and 5 page switching
2026-10-05 12:58:39 +07:00
0xrsydn
cf9ee0ca65
feat(demo): exercise affine transforms and raster distortion
2026-10-05 12:58:39 +07:00
0xrsydn
169fab9bf6
feat(demo): run CPU-driven bitmap tile and sprite scenes
...
Add original ARM graphics programs, input controls, DMA initialization, and a bounded frame runner.
2026-10-05 12:58:39 +07:00
0xrsydn
0280563430
feat(bios): expand packed units with BitUnPack
...
Add SWI 0x10, packed-unit widths, conditional offsets, complete word stores, and independent bit-level tests.
2026-10-05 12:58:39 +07:00
0xrsydn
5984551784
feat(bios): decode run-length streams through ARM instructions
...
Add RLUnCompWram and RLUnCompVram with block bounds, word-independent buffering, and device-progress tests.
2026-10-05 12:58:39 +07:00
0xrsydn
17e9351371
feat(bios): decode LZ77 streams through ARM instructions
...
Add byte and buffered-halfword output, overlapping references, argument diagnostics, and a reusable output routine.
2026-10-05 12:58:39 +07:00
0xrsydn
096bcfe314
feat(bios): implement division and integer square root
...
Add Div, DivArm, and Sqrt with emitted ARM algorithms and independent arithmetic references.
2026-10-05 12:58:39 +07:00
0xrsydn
04e4599677
feat(bios): add original boot IRQ waits and memory services
...
Generate original ARM firmware for minimal boot, IRQ callbacks, HALT, IntrWait, CpuSet, and CpuFastSet.
2026-10-05 12:58:39 +07:00
0xrsydn
bfab05b34d
feat(video): bound per-row sprite preparation work
...
Apply nominal 1210/954-cycle allowances, affine setup costs, OAM-order allocation, and partial sprite prefixes.
2026-10-05 12:58:38 +07:00
0xrsydn
52c77193cb
feat(video): capture scanlines and prepare sprites one row ahead
...
Add cycle40 preparation, deferred diagnostics, HBlank capture, VBlank presentation, and affine history tests.
2026-10-05 12:58:38 +07:00
0xrsydn
1cba1510d0
feat(video): render regular and affine sprites
...
Add OAM sampling, affine canvases, tile mapping, priority metadata, OBJ windows, and mosaic composition.
2026-10-05 12:58:38 +07:00
0xrsydn
45b45e5c52
feat(video): track background and sprite mosaic state
...
Add vertical mosaic counters and background/sprite sampling regressions.
2026-10-05 12:58:38 +07:00
0xrsydn
9d14dd7cf4
feat(video): track windows and compose color effects
...
Add persistent window comparators, region masks, alpha blending, and brightness effects.
2026-10-05 12:58:38 +07:00
0xrsydn
fad034ae74
feat(video): render tiled affine and bitmap backgrounds
...
Add Mode 0-5 composition, palettes, tile maps, affine sampling, and framebuffer diagnostics.
2026-10-05 12:58:38 +07:00
0xrsydn
bb6784615a
feat(machine): schedule display DMA IRQs and HALT
...
Integrate nominal bus timing, device clocks, display events, DMA transfers, keypad state, and interrupt delivery.
2026-10-05 12:58:38 +07:00
0xrsydn
156f1eb839
feat(memory): map GBA memory and device registers
...
Add memory mirrors, video-bus write rules, I/O latches, timers, and interrupt registers.
2026-10-05 12:58:38 +07:00
0xrsydn
535c69e09f
feat(cpu): implement ARM7TDMI ARM and Thumb execution
...
Add ALU, transfers, banked status, exceptions, instruction timing, and CPU regression tests.
2026-10-05 12:58:38 +07:00
0xrsydn
85bc2de6e7
chore(dev): bootstrap Rust and Nix environments for Darwin
...
Configure direnv, native Darwin compiler flags, and pinned desktop dependencies. Exclude build outputs, local environments, ROMs, and saves.
Start an ordered import of existing work. Feature chunks share dependencies; validate the integrated stack, not each intermediate import.
2026-10-05 12:58:37 +07:00