<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sl0pboy.git/src/cpu.c, branch master</title>
<subtitle>sl0pboy - a Game Boy Color emulator (companion to the gbos OS)</subtitle>
<id>https://git.sl0p.foo/sl0pboy.git/atom/src/cpu.c?h=master</id>
<link rel='self' href='https://git.sl0p.foo/sl0pboy.git/atom/src/cpu.c?h=master'/>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pboy.git/'/>
<updated>2026-07-17T17:47:02Z</updated>
<entry>
<title>cpu: log the $ED poweroff opcode with pc/registers</title>
<updated>2026-07-17T17:47:02Z</updated>
<author>
<name>gbc dev</name>
<email>gbc@localhost</email>
</author>
<published>2026-07-17T17:47:02Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pboy.git/commit/?id=ef07ad11bb0a20f137682e901a0a6beacfc08968'/>
<id>urn:sha1:ef07ad11bb0a20f137682e901a0a6beacfc08968</id>
<content type='text'>
The clean-exit opcode used to print nothing, so any guest crash that
walked into a stray $ED byte was indistinguishable from a silent
socket death (one of the kill vectors in the link-drop investigation).
Now it identifies itself on stderr with pc/af/bc/de/hl/sp.
</content>
</entry>
<entry>
<title>headless: $ED opcode = clean power-off (exit + battery save)</title>
<updated>2026-07-16T10:49:02Z</updated>
<author>
<name>gbc dev</name>
<email>gbc@localhost</email>
</author>
<published>2026-07-16T10:49:02Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pboy.git/commit/?id=ca6f9bb91893cf50c8e09bf7396085a7d69e80ab'/>
<id>urn:sha1:ca6f9bb91893cf50c8e09bf7396085a7d69e80ab</id>
<content type='text'>
The unused SM83 opcode $ED now sets gb-&gt;poweroff, which breaks the headless
loop so the normal cart_free()-&gt;cart_save() path runs. Lets a guest OS shut the
emulator down cleanly (and flush its .sav) instead of relying on an external
timeout/SIGTERM, which could SIGKILL before the save. run_frame() also stops on
poweroff so exit is immediate.
</content>
</entry>
<entry>
<title>core emulator: SM83 CPU, MMU, timer, PPU, CGB support</title>
<updated>2026-07-04T20:11:10Z</updated>
<author>
<name>gbc dev</name>
<email>gbc@localhost</email>
</author>
<published>2026-07-04T20:11:10Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/sl0pboy.git/commit/?id=bc48df9f7162a4a816fdc0edaa6ed08304008c9c'/>
<id>urn:sha1:bc48df9f7162a4a816fdc0edaa6ed08304008c9c</id>
<content type='text'>
Passes blargg cpu_instrs (all 11), instr_timing, mem_timing.
</content>
</entry>
</feed>
