Реализованы основные функции, такие как:mov(movb),add, tst(tstb), br(...), sob, ...
Также реализована большая трассировка(-T):
001000 012701: MOV #200, R1 R1 <- [1002] = 200
nzc 0:000000 1:000000 2:000000 3:000000 4:000200 5:000000 sp:000000 pc:001004
001004 112100: MOVb (R1)+, R0 R0 <- [200] = 110
nzc 0:000110 1:000000 2:000000 3:000000 4:000201 5:000000 sp:000000 pc:001006
001006 001406: BEQ 1024
nzc 0:000110 1:000000 2:000000 3:000000 4:000201 5:000000 sp:000000 pc:001010
001010 105737: TSTb @#177564 [177564] = 200
...
Которая выводит значения регистров ,флаги, адрес, код функции, расшифровку функции и раскрывает функции mov и movb на каждом шагу.
Малая трассировка(-t):
001000 012701: MOV #200, R1 R1 <- [1002] = 200
001004 112100: MOVb (R1)+, R0 R0 <- [200] = 110
001006 001406: BEQ 1024
001010 105737: TSTb @#177564 [177564] = 200
001014 100375: BPL 1010
001016 110037: MOVb R0, @#177566 [177566] <- R0 = 110 <H>
001022 000770: BR 1004
...
Которая выводит все кроме значений регистров и флагов на каждом шагу.
Без трассировки исполнение выглядит так:
======================== running ==============================
Hello, world!
======================== halted ===============================
R0 = 000000 R2 = 000000 R4 = 000000 sp = 000000
R1 = 000216 R3 = 000000 R5 = 000000 pc = 001026
Данный пример разобран на основе теста №8 (putstr.o)