.w 31
.a 26 30
.s 
dr	0
dpc	1
dir	2
dmar	3
dmdr	4
sr	5
spc	6
sir:ads	7
smar	8
smdr	9
st	10
ir:r0	11
ir:r1	12
ir:r2	13
ir:r12	14
pass1	15
add	16
sub	17
add1	18
mrd	19
mwr	20
pc+1	21
u	22
mrdy	23
testcc	24
decode	25
.m
:ifetch	dmar spc ;
:w0	mrd mrdy /w0 ;
	dir smdr pc+1 decode ;
:load	dmar sir:ads ;
:w1	mrd mrdy /w1 ;
	dr smdr ir:r0 u /ifetch ;
:store	dmar sir:ads ;
	dmdr sr ir:r0 ;
:w2	mwr mrdy /w2 ;
	u /ifetch ;
:loadr 	dmar sr ir:r1 ;
:w3	mrd mrdy /w3 ;
	dr smdr ir:r2 u /ifetch ;
:storer	dmar sr ir:r2 ;
	dmdr sr ir:r1 ;
:w4	mwr mrdy /w4 ;
	u /ifetch ;
:mov	ir:r12 pass1 ;
	dr st ir:r2 u /ifetch ;
:add	ir:r12 add	 ;
	dr st ir:r1 u /ifetch ;
:cmp	ir:r12 sub u /ifetch ;
:inc	ir:r12 add1 ;
	dr st ir:r1 u /ifetch ;
:jmp	testcc /ifetch ;
	dpc sir:ads u /ifetch ;
:jal	dr spc ir:r0 ;
	dpc sir:ads u /ifetch ;
:jr	dpc sr ir:r1 u /ifetch ;
.e
