aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authoruser <user@clank>2026-07-18 22:11:07 +0200
committeruser <user@clank>2026-07-18 22:11:07 +0200
commit6450173e19d93547f4e67a345df0b8c262ad6efc (patch)
treef92d6225af0355e3cd6477926fd3c1f9b90d45dd /tools
parentkernel: CGB double-speed mode - 2x everything (1.99x measured) (diff)
downloadgbos-6450173e19d93547f4e67a345df0b8c262ad6efc.tar.gz
gbos-6450173e19d93547f4e67a345df0b8c262ad6efc.tar.xz
gbos-6450173e19d93547f4e67a345df0b8c262ad6efc.zip
demo: boot through the CGB BIOS + double-speed ROM in the README gif
spawn --bios shows the real power-on show (logo drop + splash) before gbos boots; gbdemo resolves a bare --bios to the emulator's bundled boot ROM by absolute path (the tmux pane cwd is wherever the user is). The screen-synced waitfor absorbs the extra ~4s - only the first prompt timeout got a bump. Regenerated with the double-speed kernel: same demo, boots and scrolls visibly snappier.
Diffstat (limited to '')
-rwxr-xr-xtools/gbdemo6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/gbdemo b/tools/gbdemo
index e2b8e13..956c9f3 100755
--- a/tools/gbdemo
+++ b/tools/gbdemo
@@ -130,6 +130,12 @@ def hub_type(payload: bytes):
def v_spawn(args):
nohub = "--nohub" in args # offline: no link (script smoke-tests)
args = [a for a in args if a != "--nohub"]
+ # bare --bios: resolve the emulator's default boot ROM to an absolute path
+ # (the tmux pane's cwd is wherever the user happens to be)
+ if "--bios" in args:
+ i = args.index("--bios")
+ if i + 1 >= len(args) or args[i + 1].startswith("-"):
+ args.insert(i + 1, os.path.join(GBC, "bios/gbc_bios.bin"))
if not nohub and not os.path.exists(HUB):
die("no hub at %s - start it first: sudo tools/gbhub --daemon" % HUB)
rom = "/tmp/gbdemo_%d.gb" % os.getpid() # private copy: no .sav clashes