aboutsummaryrefslogtreecommitdiffstats
path: root/gbctl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* rebrand: gbc -> sl0pboy (binary, README, tooling)gbc dev5 days1-3/+3
|
* main: options-first CLI with --help, and wire up display/boot flagsgbc dev5 days1-1/+1
| | | | | | | | | | | | - Rewrite argument handling: the ROM is now the final argument and options precede it (parsed in argv[1..argc-2] so optional-value flags never swallow the ROM). Add grouped --help/-h, unknown-option errors, and clear 'missing value'/'no ROM' diagnostics. - Add --chrome, --palette/--green, and --bios flags; set the display/capture options before the --shot and recording paths so screenshots and recordings honor them. Make --shot dump the composited capture frame. - gbctl: pass the ROM last when spawning the emulator. - gitignore the (copyrighted) bios/ directory; document all new flags.
* gbctl: 'hud' kills any existing HUD pane before spawning (no double-HUD)gbc dev7 days1-1/+26
| | | | | | gbctl hud now scans tmux for panes started with gbhud.py and kills them before spawning, so there's never more than one HUD (fixes the double-spawn flicker). Added 'gbctl hud --kill' to just tear the HUD down.
* tools: live debug HUD (gbhud.py) + 'gbctl hud'gbc dev7 days1-1/+17
| | | | | | | Reads WRAM over the control socket, resolves addresses from pokeyellow.sym, and pretty-prints game state (location, player pos/facing, movement+collision debug, player name/money/badges, party nicknames/levels/HP bars) refreshing ~5Hz. 'gbctl hud' spawns it in a tmux split bound to the live instance.
* control: socket-based debug channel + gbctl CLI drivergbc dev7 days1-0/+362
Replace the input-only FIFO's limitations with a Unix-domain socket control channel (--sock) that is a superset of the button vocabulary plus emulator introspection: read/write bus memory, get/set CPU context, single-step, PC breakpoints, value-change watchpoints, run/pause. Being a socket it replies to each command and broadcasts async 'event stop ...' lines; a stored last-stop record (stopinfo) lets per-request clients recover a missed event. Add gbctl: a stdlib-python CLI that spawns a tmux pane running the emulator on a ROM, auto-resolves the socket, and drives it with terse verbs (cpu/read/write/ reg/step/break/watch/continue/pause/press/hold/screen/stop). The FIFO stays as legacy input-only.