header pc post byte 8 word 2 dc b a:8 dc w a:16 defmt a:8 ii 0xf111 mac "MCS-86" % labels ax 0b000 cx 0b001 dx 0b010 bx 0b011 sp 0b100 bp 0b101 si 0b110 di 0b111 al 0b000 cl 0b001 dl 0b010 bl 0b011 ah 0b100 ch 0b101 dh 0b110 bh 0b111 es 0b00 cs 0b01 ss 0b10 ds 0b11 % formats 0 o:8 0 o:16 1 o:8a:8 2 o:6#0b1011:4a:3b:3 1 o:5a:3 2 o:6#0b1000:4a:3#0b110:3r8b:16 2 n:7#0b11:3o:3a:3b:8 2 o:6#0b0:4a:3#0b110:3r8b:16 2 n:7#0b0:3o:3#0b110:3b:8r8a:16 2 o:6#0b1111:4a:3b:3 2 o:6#0b1100:4a:3#0b110:3r8b:16 2 o:7#0b111:3o:3a:3b:16 2 o:6#0b100:4a:3#0b110:3r8b:16 2 n:7#0b100:3o:3#0b110:3b:16r8a:16 3 o:6#0b1010:4a:3c:3r8b:16 3 o:6#0b0010:4a:3c:3r8b:16 3 n:7#0b110:3o:3b:3c:16r8a:16 3 n:7#0b010:3o:3b:3c:8r8a:16 3 o:6#0b1110:4a:3c:3r8b:16 3 o:6#0b0110:4a:3c:3r8b:16 1 o:8pa:8 1 n:8#0x0:2o:3#0b110:3r8a:16 1 n:8#0b11:2o:3a:3 1 o:8r8a:16 % args " " expr { 0b0010 0 1 0 %expr , %expr { 0b0011 0 2 3 %expr { 0b0010 0 4 4 %expr , expr { 0b0011 0 2 5 %expr , :expr { 0b0011 0 3 6 expr , %expr { 0b0011 0 2 7 expr , :expr { 0b0011 0 3 8 $expr , $expr { 0b0011 0 2 9 $expr , expr { 0b0011 0 2 10 $expr , #expr { 0b0011 0 3 11 expr , $expr { 0b0011 0 2 12 expr , #expr { 0b0011 0 3 13 %expr , expr(expr) { 0b0011 0 2 14 expr(expr) , %expr { 0b0011 0 2 15 expr(expr) , #expr { 0b0011 0 3 16 expr(expr) , :expr { 0b0011 0 3 17 $expr , expr(expr) { 0b0011 0 2 18 expr(expr) , $expr { 0b0011 0 2 19 % opcodes class 5 mov 0 0xf111 0 0xf111 0 0x0022 0 0x0063 0 0xf111 push 0 0xf111 21 0x06ff 0 0xf111 0 0xf111 4 0x000a pop 0 0xf111 21 0x008f 0 0xf111 0 0xf111 4 0x000b xchg 0 0xf111 0 0xf111 0 0x0021 0 0xf111 4 0x0012 in 0 0x00ec 2 0x00e4 0 0xf111 0 0xf111 0 0xf111 inw 0 0x00ed 2 0x00e5 0 0xf111 0 0xf111 0 0xf111 out 0 0x00ee 2 0x00e6 0 0xf111 0 0xf111 0 0xf111 outw 0 0x00ef 2 0x00e7 0 0xf111 0 0xf111 0 0xf111 xlat 0 0x00d7 0 0xf111 0 0xf111 0 0xf111 0 0xf111 lea 0 0xf111 0 0xf111 0 0x008d 0 0xf111 0 0xf111 lds 0 0xf111 0 0xf111 0 0x00c5 0 0xf111 0 0xf111 les 0 0xf111 0 0xf111 0 0x00c4 0 0xf111 0 0xf111 lahf 0 0x009f 0 0xf111 0 0xf111 0 0xf111 0 0xf111 sahf 0 0x009e 0 0xf111 0 0xf111 0 0xf111 0 0xf111 pushf 0 0x009c 0 0xf111 0 0xf111 0 0xf111 0 0xf111 popf 0 0x009d 0 0xf111 0 0xf111 0 0xf111 0 0xf111 add 0 0xf111 0 0xf111 0 0x0000 0 0x0040 0 0xf111 adc 0 0xf111 0 0xf111 0 0x0004 0 0x0140 0 0xf111 inc 0 0xf111 21 0x00ff 0 0xf111 0 0xf111 4 0x000c incb 0 0xfeff 21 0x00ff 0 0xf111 0 0xf111 4 0x000c aaa 0 0x0037 0 0xf111 0 0xf111 0 0xf111 0 0xf111 daa 0 0x0027 0 0xf111 0 0xf111 0 0xf111 0 0xf111 sub 0 0xf111 0 0xf111 0 0x000a 0 0x02c0 0 0xf111 sbb 0 0xf111 0 0xf111 0 0x0006 0 0x01c0 0 0xf111 dec 0 0xf111 21 0x01ff 0 0xf111 0 0xf111 4 0x0009 decb 0 0xf111 21 0x01fe 0 0xf111 0 0xf111 4 0x0009 neg 0 0xf111 21 0x03f7 0 0xf111 0 0xf111 22 0x03f7 negb 0 0xf111 21 0x03f6 0 0xf111 0 0xf111 22 0x03f6 cmp 0 0xf111 0 0xf111 0 0x000e 0 0x03c0 0 0xf111 aas 0 0x003f 0 0xf111 0 0xf111 0 0xf111 0 0xf111 das 0 0x002f 0 0xf111 0 0xf111 0 0xf111 0 0xf111 mul 0 0xf111 21 0x04f7 0 0xf111 0 0xf111 22 0x04f7 mulb 0 0xf111 21 0x04f6 0 0xf111 0 0xf111 22 0x04f6 imul 0 0xf111 21 0x05f7 0 0xf111 0 0xf111 22 0x05f7 imulb 0 0xf111 21 0x05f6 0 0xf111 0 0xf111 22 0x05f6 aam 1 0xd40a 0 0xf111 0 0xf111 0 0xf111 0 0xf111 div 0 0xf111 21 0x06f7 0 0xf111 0 0xf111 22 0x06f7 divb 0 0xf111 21 0x06f6 0 0xf111 0 0xf111 22 0x06f6 idiv 0 0xf111 21 0x07f7 0 0xf111 0 0xf111 22 0x07f7 idivb 0 0xf111 21 0x07f6 0 0xf111 0 0xf111 22 0x07f6 aad 1 0xd50a 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cbw 0 0x0098 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cwd 0 0x0099 0 0xf111 0 0xf111 0 0xf111 0 0xf111 not 0 0xf111 21 0x02f7 0 0xf111 0 0xf111 22 0x02f7 notb 0 0xf111 21 0x02f6 0 0xf111 0 0xf111 22 0x02f6 shl 0 0xf111 21 0x04d1 0 0xf111 0 0xf111 22 0x04d1 shlb 0 0xf111 21 0x04d0 0 0xf111 0 0xf111 22 0x04d0 sal 0 0xf111 21 0x04d1 0 0xf111 0 0xf111 22 0x04d1 salb 0 0xf111 21 0x04d0 0 0xf111 0 0xf111 22 0x04d0 shr 0 0xf111 21 0x05d1 0 0xf111 0 0xf111 22 0x05d1 shrb 0 0xf111 21 0x05d0 0 0xf111 0 0xf111 22 0x05d0 sar 0 0xf111 21 0x07d1 0 0xf111 0 0xf111 22 0x07d1 sarb 0 0xf111 21 0x07d0 0 0xf111 0 0xf111 22 0x07d0 rol 0 0xf111 21 0x00d1 0 0xf111 0 0xf111 22 0x00d1 rolb 0 0xf111 21 0x00d0 0 0xf111 0 0xf111 22 0x00d0 ror 0 0xf111 21 0x01d1 0 0xf111 0 0xf111 22 0x01d1 rorb 0 0xf111 21 0x01d0 0 0xf111 0 0xf111 22 0x01d0 rcl 0 0xf111 21 0x02d1 0 0xf111 0 0xf111 22 0x02d1 rclb 0 0xf111 21 0x02d0 0 0xf111 0 0xf111 22 0x02d0 rcr 0 0xf111 21 0x03d1 0 0xf111 0 0xf111 22 0x03d1 rcrb 0 0xf111 21 0x03d0 0 0xf111 0 0xf111 22 0x03d0 and 0 0xf111 0 0xf111 0 0x0008 0 0x0240 0 0xf111 test 0 0xf111 0 0xf111 0 0x0021 0 0x007b 0 0xf111 or 0 0xf111 0 0xf111 0 0x0002 0 0x00c0 0 0xf111 xor 0 0xf111 0 0xf111 0 0x000c 0 0x0270 0 0xf111 repnz 0 0x00f2 0 0xf111 0 0xf111 0 0xf111 0 0xf111 repz 0 0x00f3 0 0xf111 0 0xf111 0 0xf111 0 0xf111 movb 0 0x00a4 0 0xf111 0 0xf111 0 0xf111 0 0xf111 movw 0 0x00a5 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cmpb 0 0x00a6 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cmpw 0 0x00a7 0 0xf111 0 0xf111 0 0xf111 0 0xf111 scab 0 0x00ae 0 0xf111 0 0xf111 0 0xf111 0 0xf111 scaw 0 0x00af 0 0xf111 0 0xf111 0 0xf111 0 0xf111 lodb 0 0x00ac 0 0xf111 0 0xf111 0 0xf111 0 0xf111 lodw 0 0x00ad 0 0xf111 0 0xf111 0 0xf111 0 0xf111 stob 0 0x00aa 0 0xf111 0 0xf111 0 0xf111 0 0xf111 stow 0 0x00ab 0 0xf111 0 0xf111 0 0xf111 0 0xf111 call 0 0xf111 23 0x00e8 0 0xf111 0 0xf111 0 0xf111 jmp 0 0xf111 23 0x00e9 0 0xf111 0 0xf111 0 0xf111 ret 0 0x00c3 23 0x00c2 0 0xf111 0 0xf111 0 0xf111 je 0 0xf111 20 0x0074 0 0xf111 0 0xf111 0 0xf111 jz 0 0xf111 20 0x0074 0 0xf111 0 0xf111 0 0xf111 jl 0 0xf111 20 0x007c 0 0xf111 0 0xf111 0 0xf111 jnge 0 0xf111 20 0x007c 0 0xf111 0 0xf111 0 0xf111 jle 0 0xf111 20 0x007e 0 0xf111 0 0xf111 0 0xf111 jng 0 0xf111 20 0x007e 0 0xf111 0 0xf111 0 0xf111 jb 0 0xf111 20 0x0072 0 0xf111 0 0xf111 0 0xf111 jnae 0 0xf111 20 0x0072 0 0xf111 0 0xf111 0 0xf111 jbe 0 0xf111 20 0x0076 0 0xf111 0 0xf111 0 0xf111 jna 0 0xf111 20 0x0076 0 0xf111 0 0xf111 0 0xf111 jp 0 0xf111 20 0x007a 0 0xf111 0 0xf111 0 0xf111 jpe 0 0xf111 20 0x007a 0 0xf111 0 0xf111 0 0xf111 jo 0 0xf111 20 0x0070 0 0xf111 0 0xf111 0 0xf111 js 0 0xf111 20 0x0078 0 0xf111 0 0xf111 0 0xf111 jne 0 0xf111 20 0x0075 0 0xf111 0 0xf111 0 0xf111 jnz 0 0xf111 20 0x0075 0 0xf111 0 0xf111 0 0xf111 jnl 0 0xf111 20 0x007d 0 0xf111 0 0xf111 0 0xf111 jge 0 0xf111 20 0x007d 0 0xf111 0 0xf111 0 0xf111 jnle 0 0xf111 20 0x007f 0 0xf111 0 0xf111 0 0xf111 jg 0 0xf111 20 0x007f 0 0xf111 0 0xf111 0 0xf111 jnb 0 0xf111 20 0x0073 0 0xf111 0 0xf111 0 0xf111 jae 0 0xf111 20 0x0073 0 0xf111 0 0xf111 0 0xf111 jnbe 0 0xf111 20 0x0077 0 0xf111 0 0xf111 0 0xf111 ja 0 0xf111 20 0x0077 0 0xf111 0 0xf111 0 0xf111 jnp 0 0xf111 20 0x007b 0 0xf111 0 0xf111 0 0xf111 jpo 0 0xf111 20 0x007b 0 0xf111 0 0xf111 0 0xf111 jno 0 0xf111 20 0x0071 0 0xf111 0 0xf111 0 0xf111 jns 0 0xf111 20 0x0079 0 0xf111 0 0xf111 0 0xf111 loop 0 0xf111 20 0x00e2 0 0xf111 0 0xf111 0 0xf111 loopz 0 0xf111 20 0x00e1 0 0xf111 0 0xf111 0 0xf111 loope 0 0xf111 20 0x00e1 0 0xf111 0 0xf111 0 0xf111 loopnz 0 0xf111 20 0x00e0 0 0xf111 0 0xf111 0 0xf111 loopne 0 0xf111 20 0x00e0 0 0xf111 0 0xf111 0 0xf111 jcxz 0 0xf111 20 0x00e3 0 0xf111 0 0xf111 0 0xf111 int 0 0x00cc 2 0x00cd 0 0xf111 0 0xf111 0 0xf111 into 0 0x00ce 0 0xf111 0 0xf111 0 0xf111 0 0xf111 iret 0 0x00cf 0 0xf111 0 0xf111 0 0xf111 0 0xf111 clc 0 0x00f8 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cmc 0 0x00f5 0 0xf111 0 0xf111 0 0xf111 0 0xf111 stc 0 0x00f9 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cld 0 0x00fc 0 0xf111 0 0xf111 0 0xf111 0 0xf111 std 0 0x00fd 0 0xf111 0 0xf111 0 0xf111 0 0xf111 cli 0 0x00fa 0 0xf111 0 0xf111 0 0xf111 0 0xf111 sti 0 0x00fb 0 0xf111 0 0xf111 0 0xf111 0 0xf111 hlt 0 0x00f4 0 0xf111 0 0xf111 0 0xf111 0 0xf111 wait 0 0x0096 0 0xf111 0 0xf111 0 0xf111 0 0xf111 lock 0 0x00f0 0 0xf111 0 0xf111 0 0xf111 0 0xf111 % end