; test sim21
.symbol
	array  50
	offset 54
.code 0
:start	ld r1 array
	ld r2 offset
	ld r3 @1 r1
	ld r4 +r1 r2
	st r5 array
	add r5 r5 #1
	st r1 @1 r5
	add r5 r5 r5
	st r1 +r2 r5
	or r3 r5 r0
	xor r3 r3 #-1
	add r0 r1 #1
	or r5 r0 r0
	sub r5 r1 #2
	mul r5 r1 r2
	div r5 r1 r2
	add r5 r0 #15
	and r5 r5 #3
	mov r4 r5
	mov r4 #200
	mov r5 #11
	push r4 r5
	pop r4 r6
	ne r6 r7 r8
	jt r6 exit
	jal r31 subr
	jmp exit
:subr	or r5 r0 #16
	shl r5 r5 #2
	shr r5 r5 r2
	ret r31
:exit	trap r0 #0
.data 50
	50 22 33 44	; array
	3		; offset
.end

