aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorgbc dev <gbc@localhost>2026-09-23 16:59:27 +0200
committergbc dev <gbc@localhost>2026-09-23 16:59:27 +0200
commitb8fe8823c43dcd279d1376608b92303ce3455c2e (patch)
treec2e41c86bd3128002671fefcd7c0501f78a327da /src
parentweb: refresh the demo ROM story - gbos now serves IRC and HTTP (diff)
downloadsl0pboy-b8fe8823c43dcd279d1376608b92303ce3455c2e.tar.gz
sl0pboy-b8fe8823c43dcd279d1376608b92303ce3455c2e.tar.xz
sl0pboy-b8fe8823c43dcd279d1376608b92303ce3455c2e.zip
web: the switch builds itself a small network on arrival
An empty switch is a blank page. The lab now stands up a four-machine demo by itself: one Game Boy runs ircd, one runs httpd, and two more use them - an irc client that joins #gb and says hello, and a web client that wgets the server and pings it. Cards carry a role badge so the shape is readable at a glance. Nothing is faked: every step is a command typed into a real shell over the link port, which is why you can take it over afterwards and keep typing. New controls: "restart demo" and "empty the switch"; "+ plug in a Game Boy" still works the same. Booting four machines at real speed would be a minute of watching banners, so each one is fast-forwarded (6 frames per tick) until it has a lease, then drops back to real time for the part worth watching. Only one is ever boosted at a time - the scenario is sequential - which keeps the total inside the ~12x-realtime budget a single thread has. Whole thing is ready in ~22s. deploy.sh now also refreshes the gitignored web/roms/gbos.gb dev copy. That copy had silently gone stale by two gbos releases, and a local demo run kept reporting "ircd: not found" for a program that was plainly in the ROM - the page was fine, the ROM behind it was from before ircd existed. Verified against the live site: 4/4 leases, roles .2-.5, 60fps each, ircd logs "<gbchat> hello from the other Game Boy", httpd logs "200 /", wget prints the HTML and ping gets 4/4, no exceptions.
Diffstat (limited to 'src')
0 files changed, 0 insertions, 0 deletions