A
00000000
ALU
00000000
B
00000000
PC
0000
MAR
0000
BUS
00000000
CONTROL WORD
0
HLT
0
MI
0
RI
0
RO
0
IO
0
II
0
AI
0
AO
0
ΣO
0
SU
0
BI
0
OI
0
CE
0
CO
0
_J
0
FI

These signals caused the machine to step into the current state.
FLAGS
0
CF
0
ZF
OUT
0000
RAM
0000
00000000
0001
00000000
0010
00000000
0011
00000000
0100
00000000
0101
00000000
0110
00000000
0111
00000000
1000
00000000
1001
00000000
1010
00000000
1011
00000000
1100
00000000
1101
00000000
1110
00000000
1111
00000000
IR
0000
INST
0000
DATA
DECODER
000
SC
--
0000
INST
--

Maps to next control word.

This is an example emulation of the Simple-As-Possible 1 CPU (SAP-1), as described in the amazing youtube series by Ben Eater. It includes a simple assembler that makes use of the machine code pneumonics laid out in the videos. Each RAM cell can be edited by clicking on it. I tried to include some tooltips that give simple explanations of the control signals.

This site is built with NPM for ease of organization (mostly just for require), along with a library for the tooltip functionality; tooltipster. Code for the site can be found here.