Upstream emulator foundation
Reference: Oboromi by 0xNikilite. The browser example executes its own eight-bit instruction set.Read the original source
Languages & compilers
Work at the boundaries of IPC, CPU execution, and emulator diagnostics.
Interactive study
Explore the exampleAn emulator has to make instruction execution, memory, and failure conditions agree. That makes its boundaries especially interesting: parse the wrong packet or let a register overflow, and the rest of the system inherits the mistake. My Oboromi work focuses on those boundaries and on diagnostics that make them visible.
My local contributions cover IPC packet and schema parsing, bounded CPU configuration, shader diagnostics, and USB research tools. The browser example uses an original eight-bit instruction set to show successful execution, overflow, and a step-limit failure. Oboromi is the upstream experimental emulator.
Run the same instruction set through successful execution, arithmetic overflow, and a step-limit failure. Each result shows where execution stops.
The machine has one eight-bit register. Checked addition stops an overflow, and the step limit bounds execution. A successful program reaches HALT within that limit.
LOAD 7
ADD 5
HALT
step limit: 8register trace: [0, 7, 12]
result: 12
state: HaltedThe machine has one eight-bit register. Checked addition stops an overflow, and the step limit bounds execution. A successful program reaches HALT within that limit.
LOAD 250
ADD 10
HALT
step limit: 8state: Rejected
reason: Register overflowThe machine has one eight-bit register. Checked addition stops an overflow, and the step limit bounds execution. A successful program reaches HALT within that limit.
LOAD 7
ADD 5
HALT
step limit: 1state: Rejected
reason: Step limit reachedRust executes this original eight-bit instruction set and records the register trace. The next example uses an IPC packet from the local Oboromi parser work. 0xNikilite authors Oboromi.
Reference: Oboromi by 0xNikilite. The browser example executes its own eight-bit instruction set.Read the original source
Add an IPC packet example from the local parser contributions and show the decoded fields beside the source bytes.
How does an executor stop overflow and enforce a step limit?
Rust executes an original instruction set with one eight-bit register, checked addition, and a step limit.
Compare a complete program, arithmetic overflow, and a step-limit failure.
Rust executes the eight-bit example and records its register trace.
0xNikilite authors Oboromi. My local contributions cover parser boundaries, runtime checks, and research tools.