aboutsummaryrefslogtreecommitdiffstats
path: root/gbctl
diff options
context:
space:
mode:
authorgbc dev <gbc@localhost>2026-07-17 00:27:46 +0200
committergbc dev <gbc@localhost>2026-07-17 00:27:46 +0200
commit6c906a750675910323710b293f939a5f26dadd58 (patch)
treed60d58afe47dfb6077cc12924cf84a9be5d91d93 /gbctl
parentrecord: capture the displayed frame (chrome + palette) (diff)
downloadsl0pboy-6c906a750675910323710b293f939a5f26dadd58.tar.gz
sl0pboy-6c906a750675910323710b293f939a5f26dadd58.tar.xz
sl0pboy-6c906a750675910323710b293f939a5f26dadd58.zip
main: options-first CLI with --help, and wire up display/boot flags
- 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.
Diffstat (limited to 'gbctl')
-rwxr-xr-xgbctl2
1 files changed, 1 insertions, 1 deletions
diff --git a/gbctl b/gbctl
index 287b16a..b926461 100755
--- a/gbctl
+++ b/gbctl
@@ -200,7 +200,7 @@ def cmd_spawn(argv):
if "TMUX" not in os.environ:
die("not inside tmux; gbctl spawn needs a tmux session")
- cmd = [BIN, rom, "--sock", sock_path] + emu_args
+ cmd = [BIN, "--sock", sock_path] + emu_args + [rom] # ROM is the final arg
# exec via a shell wrapper so the pane stays around & shows a title
shell_cmd = "printf '\\033]2;gbc %s\\007'; exec %s" % (
os.path.basename(rom), " ".join(_shquote(c) for c in cmd))