summaryrefslogtreecommitdiff
path: root/bin86-0.3/as/asm
diff options
context:
space:
mode:
Diffstat (limited to 'bin86-0.3/as/asm')
-rw-r--r--bin86-0.3/as/asm/calljmp.asm70
-rw-r--r--bin86-0.3/as/asm/ea.asm109
-rw-r--r--bin86-0.3/as/asm/each.asm145
-rw-r--r--bin86-0.3/as/asm/easlow.as1219
-rw-r--r--bin86-0.3/as/asm/f.asm114
-rw-r--r--bin86-0.3/as/asm/fadd.asm271
-rw-r--r--bin86-0.3/as/asm/farcall.asm10
-rw-r--r--bin86-0.3/as/asm/group1.asm31
-rw-r--r--bin86-0.3/as/asm/group6.asm24
-rw-r--r--bin86-0.3/as/asm/group7.asm34
-rw-r--r--bin86-0.3/as/asm/imul.asm33
-rw-r--r--bin86-0.3/as/asm/incdec.asm83
-rw-r--r--bin86-0.3/as/asm/inher.asm127
-rw-r--r--bin86-0.3/as/asm/inout.asm25
-rw-r--r--bin86-0.3/as/asm/movspec.asm246
-rw-r--r--bin86-0.3/as/asm/pushpop.asm86
-rw-r--r--bin86-0.3/as/asm/seg.asm6
-rw-r--r--bin86-0.3/as/asm/shdouble.asm34
-rw-r--r--bin86-0.3/as/asm/shift.asm119
-rw-r--r--bin86-0.3/as/asm/summary.as385
-rw-r--r--bin86-0.3/as/asm/xchg.asm103
21 files changed, 0 insertions, 3274 deletions
diff --git a/bin86-0.3/as/asm/calljmp.asm b/bin86-0.3/as/asm/calljmp.asm
deleted file mode 100644
index 36a6ea4..0000000
--- a/bin86-0.3/as/asm/calljmp.asm
+++ /dev/null
@@ -1,70 +0,0 @@
- CALL 0x10:0x20 ; not implemented
- CALL AL; ; illeg
- CALL DS ; illeg
-
- CALL REL16
-
- CALL AX
- CALL BX
- CALL CX
- CALL DX
- CALL SP
- CALL BP
- CALL SI
- CALL DI
-
- CALL BYTE [BX] ; illeg
- CALL [BX]
- CALL WORD [BX]
-
- USE32
- CALL REL32
-
- USE16
- CALL EAX
- CALL EBX
- CALL ECX
- CALL EDX
- CALL ESP
- CALL EBP
- CALL ESI
- CALL EDI
-
- CALL DWORD [BX]
-
- JMP 0x10:0x20 ; not implemented
- JMP AL; ; illeg
- JMP DS ; illeg
-
- JMP REL16
-
- JMP AX
- JMP BX
- JMP CX
- JMP DX
- JMP SP
- JMP BP
- JMP SI
- JMP DI
-
- JMP BYTE [BX] ; illeg
- JMP [BX]
- JMP WORD [BX]
-
- USE32
- JMP REL32
-
- USE16
- JMP EAX
- JMP EBX
- JMP ECX
- JMP EDX
- JMP ESP
- JMP EBP
- JMP ESI
- JMP EDI
-
- JMP DWORD [BX]
-
-REL16:
-REL32:
diff --git a/bin86-0.3/as/asm/ea.asm b/bin86-0.3/as/asm/ea.asm
deleted file mode 100644
index 8717a73..0000000
--- a/bin86-0.3/as/asm/ea.asm
+++ /dev/null
@@ -1,109 +0,0 @@
- MOV AX,[BX+SI]
- MOV AX,[BX+DI]
- MOV AX,[BP+SI]
- MOV AX,[BP+DI]
- MOV AX,[SI]
- MOV AX,[DI]
- MOV AX,[0x1234]
- MOV AX,[BX]
-
- MOV AX,[BX+SI+0x12]
- MOV AX,[BX+DI+0x12]
- MOV AX,[BP+SI+0x12]
- MOV AX,[BP+DI+0x12]
- MOV AX,[SI+0x12]
- MOV AX,[DI+0x12]
- MOV AX,[BP+0x12]
- MOV AX,[BX+0x12]
-
- MOV AX,[BX+SI+0x1234]
- MOV AX,[BX+DI+0x1234]
- MOV AX,[BP+SI+0x1234]
- MOV AX,[BP+DI+0x1234]
- MOV AX,[SI+0x1234]
- MOV AX,[DI+0x1234]
- MOV AX,[BP+0x1234]
- MOV AX,[BX+0x1234]
-
- MOV AL,AL
- MOV AL,AH
- MOV AL,BL
- MOV AL,BH
- MOV AL,CL
- MOV AL,CH
- MOV AL,DL
- MOV AL,DH
-
- MOV AX,AX
- MOV AX,CX
- MOV AX,DX
- MOV AX,BX
- MOV AX,SP
- MOV AX,BP
- MOV AX,SI
- MOV AX,DI
-
- MOV AX,[EAX]
- MOV AX,[ECX]
- MOV AX,[EDX]
- MOV AX,[EBX]
-
- MOV AX,[0x12345678]
- MOV AX,[ESI]
- MOV AX,[EDI]
-
- MOV AX,[EAX+0x12]
- MOV AX,[ECX+0x12]
- MOV AX,[EDX+0x12]
- MOV AX,[EBX+0x12]
-
- MOV AX,[EBP+0x12]
- MOV AX,[ESI+0x12]
- MOV AX,[EDI+0x12]
-
- MOV AX,[EAX+0x12345678]
- MOV AX,[ECX+0x12345678]
- MOV AX,[EDX+0x12345678]
- MOV AX,[EBX+0x12345678]
-
- MOV AX,[EBP+0x12345678]
- MOV AX,[ESI+0x12345678]
- MOV AX,[EDI+0x12345678]
-
- MOV EAX,EAX
- MOV EAX,ECX
- MOV EAX,EDX
- MOV EAX,EBX
- MOV EAX,ESP
- MOV EAX,EBP
- MOV EAX,ESI
- MOV EAX,EDI
-
- MOV AX,[EAX+ESI*2]
- MOV AX,[ECX+ESI*2]
- MOV AX,[EDX+ESI*2]
- MOV AX,[EBX+ESI*2]
- MOV AX,[ESP+ESI*2]
- MOV AX,[ESI*2+0x12345678]
- MOV AX,[ESI+ESI*2]
- MOV AX,[EDI+ESI*2]
-
- MOV AX,[EAX+ESI*2+0x12]
- MOV AX,[ECX+ESI*2+0x12]
- MOV AX,[EDX+ESI*2+0x12]
- MOV AX,[EBX+ESI*2+0x12]
- MOV AX,[ESP+ESI*2+0x12]
- MOV AX,[ESP+0x12]
- MOV AX,[EBP+ESI*2+0x12]
- MOV AX,[ESI+ESI*2+0x12]
- MOV AX,[EDI+ESI*2+0x12]
-
- MOV AX,[EAX+ESI*2+0x12345678]
- MOV AX,[ECX+ESI*2+0x12345678]
- MOV AX,[EDX+ESI*2+0x12345678]
- MOV AX,[EBX+ESI*2+0x12345678]
- MOV AX,[ESP+ESI*2+0x12345678]
- MOV AX,[ESP+0x12345678]
- MOV AX,[EBP+ESI*2+0x12345678]
- MOV AX,[ESI+ESI*2+0x12345678]
- MOV AX,[EDI+ESI*2+0x12345678]
diff --git a/bin86-0.3/as/asm/each.asm b/bin86-0.3/as/asm/each.asm
deleted file mode 100644
index 2145489..0000000
--- a/bin86-0.3/as/asm/each.asm
+++ /dev/null
@@ -1,145 +0,0 @@
-aaa
-aad
-aam
-aas
-adc bx,[esi*4]
-add bx,[esi*4]
-and bx,[esi*4]
-arpl [esi*4],bx
-bound bx,[esi*4]
-bsf bx,[esi*4]
-bsr bx,[esi*4]
-bswap ebx
-bt [esi*4],bx
-btc [esi*4],bx
-btr [esi*4],bx
-bts [esi*4],bx
-call [esi*4]
-cbw
-cwde
-clc
-cld
-cli
-clts
-cmc
-cmp bx,[esi*4]
-cmpsb
-cmpsw
-cmpsd
-cmpxchg [esi*4],bx
-cwd
-cdq
-daa
-das
-dec [esi*4]
-div [esi*4]
-enter 0x200,3
-hlt
-idiv [esi*4]
-imul [esi*4]
-in al,0x20
-inc [esi*4]
-insb
-insw
-insd
-int 0x20
-into
-invd
-invlpg [esi*4]
-iret
-iretd
-jnz many
-many:
-jmp [esi*4]
-lahf
-lar bx,[esi*4]
-lea bx,[esi*4]
-leave
-lgdt [esi*4]
-lidt [esi*4]
-lds bx,[esi*4]
-les bx,[esi*4]
-lfs bx,[esi*4]
-lgs bx,[esi*4]
-lss bx,[esi*4]
-lldt [esi*4]
-lmsw [esi*4]
-lock
-lodsb
-lodsw
-lodsd
-loop alot
-alot:
-lsl bx,[esi*4]
-ltr [esi*4]
-mov ax,[esi*4]
-mov bx,[esi*4]
-mov cr0,eax
-movsb
-movsw
-movsd
-movsx bx,byte [esi*4]
-movzx bx,byte [esi*4]
-mul [esi*4]
-neg [esi*4]
-nop
-not [esi*4]
-or bx,[esi*4]
-out 0x20,al
-outsb
-outsw
-outsd
-pop [esi*4]
-popa
-popad
-popf
-popfd
-push [esi*4]
-pusha
-pushad
-pushf
-pushfd
-rcl [esi*4],1
-rcr [esi*4],1
-rol [esi*4],1
-ror [esi*4],1
-rep
-repe
-repz
-repne
-repnz
-ret
-retf
-sahf
-sal [esi*4],1
-sar [esi*4],1
-shl [esi*4],1
-shr [esi*4],1
-sbb bx,[esi*4]
-scasb
-scasw
-scasd
-setnz byte [esi*4]
-sgdt [esi*4]
-sidt [esi*4]
-shld [esi*4],bx,1
-shrd [esi*4],bx,1
-sldt [esi*4]
-smsw [esi*4]
-stc
-std
-sti
-stosb
-stosw
-stosd
-str [esi*4]
-sub bx,[esi*4]
-test bx,[esi*4]
-verr [esi*4]
-verw [esi*4]
-wait
-wbinvd
-xadd [esi*4],bx
-xchg bx,[esi*4]
-xlat
-xor bx,[esi*4]
diff --git a/bin86-0.3/as/asm/easlow.as b/bin86-0.3/as/asm/easlow.as
deleted file mode 100644
index 75d71e2..0000000
--- a/bin86-0.3/as/asm/easlow.as
+++ /dev/null
@@ -1,1219 +0,0 @@
- MOV AL,[0]
- MOV AH,[1]
- MOV BL,[-1] ; illeg
- MOV BH,[127]
- MOV CL,[-128] ; illeg
- MOV CH,[128]
- MOV DL,[-129] ; illeg
- MOV DH,[32767]
- MOV AL,[-32768] ; illeg
- MOV AH,[32768]
- MOV BL,[-32769] ; illeg
- MOV BH,[$7FFFFFFF] ; illeg
- MOV CL,[$80000000] ; illeg
-
- MOV AL,AL
- MOV AL,AH
- MOV AL,BL
- MOV AL,BH
- MOV AL,CL
- MOV AL,CH
- MOV AL,DL
- MOV AL,DH
-
- MOV AL,AX ; illeg
- MOV AL,BX ; illeg
- MOV AL,CX ; illeg
- MOV AL,DX ; illeg
- MOV AL,BP ; illeg
- MOV AL,DI ; illeg
- MOV AL,SI ; illeg
- MOV AL,SP ; illeg
-
- MOV AH,AL
- MOV AH,AH
- MOV AH,BL
- MOV AH,BH
- MOV AH,CL
- MOV AH,CH
- MOV AH,DL
- MOV AH,DH
-
- MOV AH,AX ; illeg
- MOV AH,BX ; illeg
- MOV AH,CX ; illeg
- MOV AH,DX ; illeg
- MOV AH,BP ; illeg
- MOV AH,DI ; illeg
- MOV AH,SI ; illeg
- MOV AH,SP ; illeg
-
- MOV BL,AL
- MOV BL,AH
- MOV BL,BL
- MOV BL,BH
- MOV BL,CL
- MOV BL,CH
- MOV BL,DL
- MOV BL,DH
-
- MOV BL,AX ; illeg
- MOV BL,BX ; illeg
- MOV BL,CX ; illeg
- MOV BL,DX ; illeg
- MOV BL,BP ; illeg
- MOV BL,DI ; illeg
- MOV BL,SI ; illeg
- MOV BL,SP ; illeg
-
- MOV BH,AL
- MOV BH,AH
- MOV BH,BL
- MOV BH,BH
- MOV BH,CL
- MOV BH,CH
- MOV BH,DL
- MOV BH,DH
-
- MOV BH,AX ; illeg
- MOV BH,BX ; illeg
- MOV BH,CX ; illeg
- MOV BH,DX ; illeg
- MOV BH,BP ; illeg
- MOV BH,DI ; illeg
- MOV BH,SI ; illeg
- MOV BH,SP ; illeg
-
- MOV CL,AL
- MOV CL,AH
- MOV CL,BL
- MOV CL,BH
- MOV CL,CL
- MOV CL,CH
- MOV CL,DL
- MOV CL,DH
-
- MOV CL,AX ; illeg
- MOV CL,BX ; illeg
- MOV CL,CX ; illeg
- MOV CL,DX ; illeg
- MOV CL,BP ; illeg
- MOV CL,DI ; illeg
- MOV CL,SI ; illeg
- MOV CL,SP ; illeg
-
- MOV CH,AL
- MOV CH,AH
- MOV CH,BL
- MOV CH,BH
- MOV CH,CL
- MOV CH,CH
- MOV CH,DL
- MOV CH,DH
-
- MOV CH,AX ; illeg
- MOV CH,BX ; illeg
- MOV CH,CX ; illeg
- MOV CH,DX ; illeg
- MOV CH,BP ; illeg
- MOV CH,DI ; illeg
- MOV CH,SI ; illeg
- MOV CH,SP ; illeg
-
- MOV DL,AL
- MOV DL,AH
- MOV DL,BL
- MOV DL,BH
- MOV DL,CL
- MOV DL,CH
- MOV DL,DL
- MOV DL,DH
-
- MOV DL,AX ; illeg
- MOV DL,BX ; illeg
- MOV DL,CX ; illeg
- MOV DL,DX ; illeg
- MOV DL,BP ; illeg
- MOV DL,DI ; illeg
- MOV DL,SI ; illeg
- MOV DL,SP ; illeg
-
- MOV DH,AL
- MOV DH,AH
- MOV DH,BL
- MOV DH,BH
- MOV DH,CL
- MOV DH,CH
- MOV DH,DL
- MOV DH,DH
-
- MOV DH,AX ; illeg
- MOV DH,BX ; illeg
- MOV DH,CX ; illeg
- MOV DH,DX ; illeg
- MOV DH,BP ; illeg
- MOV DH,DI ; illeg
- MOV DH,SI ; illeg
- MOV DH,SP ; illeg
-
- MOV AL,[AL] ; illeg
- MOV AH,[AH] ; illeg
- MOV BL,[BL] ; illeg
- MOV BH,[BH] ; illeg
- MOV CL,[CL] ; illeg
- MOV CH,[CH] ; illeg
- MOV DL,[DL] ; illeg
- MOV DH,[DH] ; illeg
-
- MOV AL,[AX] ; illeg
- MOV AH,[BX]
- MOV BL,[CX] ; illeg
- MOV BH,[DX] ; illeg
- MOV CL,[BP]
- MOV CH,[DI]
- MOV DL,[SI]
- MOV DH,[SP] ; illeg
-
- MOV AL,[AX+1] ; illeg
- MOV AH,[BX+1]
- MOV BL,[CX+1] ; illeg
- MOV BH,[DX+1] ; illeg
- MOV CL,[BP+1]
- MOV CH,[DI+1]
- MOV DL,[SI+1]
- MOV DH,[SP+1] ; illeg
-
- MOV AL,[AX-1] ; illeg
- MOV AH,[BX-1]
- MOV BL,[CX-1] ; illeg
- MOV BH,[DX-1] ; illeg
- MOV CL,[BP-1]
- MOV CH,[DI-1]
- MOV DL,[SI-1]
- MOV DH,[SP-1] ; illeg
-
- MOV AL,[AX+127] ; illeg
- MOV AH,[BX+127]
- MOV BL,[CX+127] ; illeg
- MOV BH,[DX+127] ; illeg
- MOV CL,[BP+127]
- MOV CH,[DI+127]
- MOV DL,[SI+127]
- MOV DH,[SP+127] ; illeg
-
- MOV AL,[AX-128] ; illeg
- MOV AH,[BX-128]
- MOV BL,[CX-128] ; illeg
- MOV BH,[DX-128] ; illeg
- MOV CL,[BP-128]
- MOV CH,[DI-128]
- MOV DL,[SI-128]
- MOV DH,[SP-128] ; illeg
-
- MOV AL,[AX+128] ; illeg
- MOV AH,[BX+128]
- MOV BL,[CX+128] ; illeg
- MOV BH,[DX+128] ; illeg
- MOV CL,[BP+128]
- MOV CH,[DI+128]
- MOV DL,[SI+128]
- MOV DH,[SP+128] ; illeg
-
- MOV AL,[AX-129] ; illeg
- MOV AH,[BX-129]
- MOV BL,[CX-129] ; illeg
- MOV BH,[DX-129] ; illeg
- MOV CL,[BP-129]
- MOV CH,[DI-129]
- MOV DL,[SI-129]
- MOV DH,[SP-129] ; illeg
-
- MOV AL,[AX+32767] ; illeg
- MOV AH,[BX+32767]
- MOV BL,[CX+32767] ; illeg
- MOV BH,[DX+32767] ; illeg
- MOV CL,[BP+32767]
- MOV CH,[DI+32767]
- MOV DL,[SI+32767]
- MOV DH,[SP+32767] ; illeg
-
- MOV AL,[AX-32768] ; illeg
- MOV AH,[BX-32768]
- MOV BL,[CX-32768] ; illeg
- MOV BH,[DX-32768] ; illeg
- MOV CL,[BP-32768]
- MOV CH,[DI-32768]
- MOV DL,[SI-32768]
- MOV DH,[SP-32768] ; illeg
-
- MOV AL,[AX+32768] ; illeg
- MOV AH,[BX+32768]
- MOV BL,[CX+32768] ; illeg
- MOV BH,[DX+32768] ; illeg
- MOV CL,[BP+32768]
- MOV CH,[DI+32768]
- MOV DL,[SI+32768]
- MOV DH,[SP+32768] ; illeg
-
- MOV AL,[AX-32769] ; illeg
- MOV AH,[BX-32769]
- MOV BL,[CX-32769] ; illeg
- MOV BH,[DX-32769] ; illeg
- MOV CL,[BP-32769]
- MOV CH,[DI-32769]
- MOV DL,[SI-32769]
- MOV DH,[SP-32769] ; illeg
-
- MOV AL,[AX+$7FFFFFFF] ; illeg
- MOV AH,[BX+$7FFFFFFF] ; illeg (bounds)
- MOV BL,[CX+$7FFFFFFF] ; illeg
- MOV BH,[DX+$7FFFFFFF] ; illeg
- MOV CL,[BP+$7FFFFFFF] ; illeg (bounds)
- MOV CH,[DI+$7FFFFFFF] ; illeg (bounds)
- MOV DL,[SI+$7FFFFFFF] ; illeg (bounds)
- MOV DH,[SP+$7FFFFFFF] ; illeg
-
- MOV AL,[AX-$80000000] ; illeg
- MOV AH,[BX-$80000000] ; illeg (bounds)
- MOV BL,[CX-$80000000] ; illeg
- MOV BH,[DX-$80000000] ; illeg
- MOV CL,[BP-$80000000] ; illeg (bounds)
- MOV CH,[DI-$80000000] ; illeg (bounds)
- MOV DL,[SI-$80000000] ; illeg (bounds)
- MOV DH,[SP-$80000000] ; illeg
-
- MOV AL,[AX+AX] ; illeg
- MOV AH,[AX+BX] ; illeg
- MOV BL,[AX+CX] ; illeg
- MOV BH,[AX+DX] ; illeg
- MOV CL,[AX+BP] ; illeg
- MOV CH,[AX+DI] ; illeg
- MOV DL,[AX+SI] ; illeg
- MOV DH,[AX+SP] ; illeg
-
- MOV AL,[BX+AX] ; illeg
- MOV AH,[BX+BX] ; illeg
- MOV BL,[BX+CX] ; illeg
- MOV BH,[BX+DX] ; illeg
- MOV CL,[BX+BP] ; illeg
- MOV CH,[BX+DI]
- MOV DL,[BX+SI]
- MOV DH,[BX+SP] ; illeg
-
- MOV AL,[CX+AX] ; illeg
- MOV AH,[CX+BX] ; illeg
- MOV BL,[CX+CX] ; illeg
- MOV BH,[CX+DX] ; illeg
- MOV CL,[CX+BP] ; illeg
- MOV CH,[CX+DI] ; illeg
- MOV DL,[CX+SI] ; illeg
- MOV DH,[CX+SP] ; illeg
-
- MOV AL,[DX+AX] ; illeg
- MOV AH,[DX+BX] ; illeg
- MOV BL,[DX+CX] ; illeg
- MOV BH,[DX+DX] ; illeg
- MOV CL,[DX+BP] ; illeg
- MOV CH,[DX+DI] ; illeg
- MOV DL,[DX+SI] ; illeg
- MOV DH,[DX+SP] ; illeg
-
- MOV AL,[BP+AX] ; illeg
- MOV AH,[BP+BX] ; illeg
- MOV BL,[BP+CX] ; illeg
- MOV BH,[BP+DX] ; illeg
- MOV CL,[BP+BP] ; illeg
- MOV CH,[BP+DI]
- MOV DL,[BP+SI]
- MOV DH,[BP+SP] ; illeg
-
- MOV AL,[DI+AX] ; illeg
- MOV AH,[DI+BX]
- MOV BL,[DI+CX] ; illeg
- MOV BH,[DI+DX] ; illeg
- MOV CL,[DI+BP]
- MOV CH,[DI+DI] ; illeg
- MOV DL,[DI+SI] ; illeg
- MOV DH,[DI+SP] ; illeg
-
- MOV AL,[SI+AX] ; illeg
- MOV AH,[SI+BX]
- MOV BL,[SI+CX] ; illeg
- MOV BH,[SI+DX] ; illeg
- MOV CL,[SI+BP]
- MOV CH,[SI+DI] ; illeg
- MOV DL,[SI+SI] ; illeg
- MOV DH,[SI+SP] ; illeg
-
- MOV AL,[SP+AX] ; illeg
- MOV AH,[SP+BX] ; illeg
- MOV BL,[SP+CX] ; illeg
- MOV BH,[SP+DX] ; illeg
- MOV CL,[SP+BP] ; illeg
- MOV CH,[SP+DI] ; illeg
- MOV DL,[SP+SI] ; illeg
- MOV DH,[SP+SP] ; illeg
-
- MOV AL,[AX+AX+1] ; illeg
- MOV AH,[AX+BX+1] ; illeg
- MOV BL,[AX+CX+1] ; illeg
- MOV BH,[AX+DX+1] ; illeg
- MOV CL,[AX+BP+1] ; illeg
- MOV CH,[AX+DI+1] ; illeg
- MOV DL,[AX+SI+1] ; illeg
- MOV DH,[AX+SP+1] ; illeg
-
- MOV AL,[BX+AX+1] ; illeg
- MOV AH,[BX+BX+1] ; illeg
- MOV BL,[BX+CX+1] ; illeg
- MOV BH,[BX+DX+1] ; illeg
- MOV CL,[BX+BP+1] ; illeg
- MOV CH,[BX+DI+1]
- MOV DL,[BX+SI+1]
- MOV DH,[BX+SP+1] ; illeg
-
- MOV AL,[CX+AX+1] ; illeg
- MOV AH,[CX+BX+1] ; illeg
- MOV BL,[CX+CX+1] ; illeg
- MOV BH,[CX+DX+1] ; illeg
- MOV CL,[CX+BP+1] ; illeg
- MOV CH,[CX+DI+1] ; illeg
- MOV DL,[CX+SI+1] ; illeg
- MOV DH,[CX+SP+1] ; illeg
-
- MOV AL,[DX+AX+1] ; illeg
- MOV AH,[DX+BX+1] ; illeg
- MOV BL,[DX+CX+1] ; illeg
- MOV BH,[DX+DX+1] ; illeg
- MOV CL,[DX+BP+1] ; illeg
- MOV CH,[DX+DI+1] ; illeg
- MOV DL,[DX+SI+1] ; illeg
- MOV DH,[DX+SP+1] ; illeg
-
- MOV AL,[BP+AX+1] ; illeg
- MOV AH,[BP+BX+1] ; illeg
- MOV BL,[BP+CX+1] ; illeg
- MOV BH,[BP+DX+1] ; illeg
- MOV CL,[BP+BP+1] ; illeg
- MOV CH,[BP+DI+1]
- MOV DL,[BP+SI+1]
- MOV DH,[BP+SP+1] ; illeg
-
- MOV AL,[DI+AX+1] ; illeg
- MOV AH,[DI+BX+1]
- MOV BL,[DI+CX+1] ; illeg
- MOV BH,[DI+DX+1] ; illeg
- MOV CL,[DI+BP+1]
- MOV CH,[DI+DI+1] ; illeg
- MOV DL,[DI+SI+1] ; illeg
- MOV DH,[DI+SP+1] ; illeg
-
- MOV AL,[SI+AX+1] ; illeg
- MOV AH,[SI+BX+1]
- MOV BL,[SI+CX+1] ; illeg
- MOV BH,[SI+DX+1] ; illeg
- MOV CL,[SI+BP+1]
- MOV CH,[SI+DI+1] ; illeg
- MOV DL,[SI+SI+1] ; illeg
- MOV DH,[SI+SP+1] ; illeg
-
- MOV AL,[SP+AX+1] ; illeg
- MOV AH,[SP+BX+1] ; illeg
- MOV BL,[SP+CX+1] ; illeg
- MOV BH,[SP+DX+1] ; illeg
- MOV CL,[SP+BP+1] ; illeg
- MOV CH,[SP+DI+1] ; illeg
- MOV DL,[SP+SI+1] ; illeg
- MOV DH,[SP+SP+1] ; illeg
-
- MOV AL,[AX+AX-1] ; illeg
- MOV AH,[AX+BX-1] ; illeg
- MOV BL,[AX+CX-1] ; illeg
- MOV BH,[AX+DX-1] ; illeg
- MOV CL,[AX+BP-1] ; illeg
- MOV CH,[AX+DI-1] ; illeg
- MOV DL,[AX+SI-1] ; illeg
- MOV DH,[AX+SP-1] ; illeg
-
- MOV AL,[BX+AX-1] ; illeg
- MOV AH,[BX+BX-1] ; illeg
- MOV BL,[BX+CX-1] ; illeg
- MOV BH,[BX+DX-1] ; illeg
- MOV CL,[BX+BP-1] ; illeg
- MOV CH,[BX+DI-1]
- MOV DL,[BX+SI-1]
- MOV DH,[BX+SP-1] ; illeg
-
- MOV AL,[CX+AX-1] ; illeg
- MOV AH,[CX+BX-1] ; illeg
- MOV BL,[CX+CX-1] ; illeg
- MOV BH,[CX+DX-1] ; illeg
- MOV CL,[CX+BP-1] ; illeg
- MOV CH,[CX+DI-1] ; illeg
- MOV DL,[CX+SI-1] ; illeg
- MOV DH,[CX+SP-1] ; illeg
-
- MOV AL,[DX+AX-1] ; illeg
- MOV AH,[DX+BX-1] ; illeg
- MOV BL,[DX+CX-1] ; illeg
- MOV BH,[DX+DX-1] ; illeg
- MOV CL,[DX+BP-1] ; illeg
- MOV CH,[DX+DI-1] ; illeg
- MOV DL,[DX+SI-1] ; illeg
- MOV DH,[DX+SP-1] ; illeg
-
- MOV AL,[BP+AX-1] ; illeg
- MOV AH,[BP+BX-1] ; illeg
- MOV BL,[BP+CX-1] ; illeg
- MOV BH,[BP+DX-1] ; illeg
- MOV CL,[BP+BP-1] ; illeg
- MOV CH,[BP+DI-1]
- MOV DL,[BP+SI-1]
- MOV DH,[BP+SP-1] ; illeg
-
- MOV AL,[DI+AX-1] ; illeg
- MOV AH,[DI+BX-1]
- MOV BL,[DI+CX-1] ; illeg
- MOV BH,[DI+DX-1] ; illeg
- MOV CL,[DI+BP-1]
- MOV CH,[DI+DI-1] ; illeg
- MOV DL,[DI+SI-1] ; illeg
- MOV DH,[DI+SP-1] ; illeg
-
- MOV AL,[SI+AX-1] ; illeg
- MOV AH,[SI+BX-1]
- MOV BL,[SI+CX-1] ; illeg
- MOV BH,[SI+DX-1] ; illeg
- MOV CL,[SI+BP-1]
- MOV CH,[SI+DI-1] ; illeg
- MOV DL,[SI+SI-1] ; illeg
- MOV DH,[SI+SP-1] ; illeg
-
- MOV AL,[SP+AX-1] ; illeg
- MOV AH,[SP+BX-1] ; illeg
- MOV BL,[SP+CX-1] ; illeg
- MOV BH,[SP+DX-1] ; illeg
- MOV CL,[SP+BP-1] ; illeg
- MOV CH,[SP+DI-1] ; illeg
- MOV DL,[SP+SI-1] ; illeg
- MOV DH,[SP+SP-1] ; illeg
-
- MOV AL,[AX+AX+127] ; illeg
- MOV AH,[AX+BX+127] ; illeg
- MOV BL,[AX+CX+127] ; illeg
- MOV BH,[AX+DX+127] ; illeg
- MOV CL,[AX+BP+127] ; illeg
- MOV CH,[AX+DI+127] ; illeg
- MOV DL,[AX+SI+127] ; illeg
- MOV DH,[AX+SP+127] ; illeg
-
- MOV AL,[BX+AX+127] ; illeg
- MOV AH,[BX+BX+127] ; illeg
- MOV BL,[BX+CX+127] ; illeg
- MOV BH,[BX+DX+127] ; illeg
- MOV CL,[BX+BP+127] ; illeg
- MOV CH,[BX+DI+127]
- MOV DL,[BX+SI+127]
- MOV DH,[BX+SP+127] ; illeg
-
- MOV AL,[CX+AX+127] ; illeg
- MOV AH,[CX+BX+127] ; illeg
- MOV BL,[CX+CX+127] ; illeg
- MOV BH,[CX+DX+127] ; illeg
- MOV CL,[CX+BP+127] ; illeg
- MOV CH,[CX+DI+127] ; illeg
- MOV DL,[CX+SI+127] ; illeg
- MOV DH,[CX+SP+127] ; illeg
-
- MOV AL,[DX+AX+127] ; illeg
- MOV AH,[DX+BX+127] ; illeg
- MOV BL,[DX+CX+127] ; illeg
- MOV BH,[DX+DX+127] ; illeg
- MOV CL,[DX+BP+127] ; illeg
- MOV CH,[DX+DI+127] ; illeg
- MOV DL,[DX+SI+127] ; illeg
- MOV DH,[DX+SP+127] ; illeg
-
- MOV AL,[BP+AX+127] ; illeg
- MOV AH,[BP+BX+127] ; illeg
- MOV BL,[BP+CX+127] ; illeg
- MOV BH,[BP+DX+127] ; illeg
- MOV CL,[BP+BP+127] ; illeg
- MOV CH,[BP+DI+127]
- MOV DL,[BP+SI+127]
- MOV DH,[BP+SP+127] ; illeg
-
- MOV AL,[DI+AX+127] ; illeg
- MOV AH,[DI+BX+127]
- MOV BL,[DI+CX+127] ; illeg
- MOV BH,[DI+DX+127] ; illeg
- MOV CL,[DI+BP+127]
- MOV CH,[DI+DI+127] ; illeg
- MOV DL,[DI+SI+127] ; illeg
- MOV DH,[DI+SP+127] ; illeg
-
- MOV AL,[SI+AX+127] ; illeg
- MOV AH,[SI+BX+127]
- MOV BL,[SI+CX+127] ; illeg
- MOV BH,[SI+DX+127] ; illeg
- MOV CL,[SI+BP+127]
- MOV CH,[SI+DI+127] ; illeg
- MOV DL,[SI+SI+127] ; illeg
- MOV DH,[SI+SP+127] ; illeg
-
- MOV AL,[SP+AX+127] ; illeg
- MOV AH,[SP+BX+127] ; illeg
- MOV BL,[SP+CX+127] ; illeg
- MOV BH,[SP+DX+127] ; illeg
- MOV CL,[SP+BP+127] ; illeg
- MOV CH,[SP+DI+127] ; illeg
- MOV DL,[SP+SI+127] ; illeg
- MOV DH,[SP+SP+127] ; illeg
-
- MOV AL,[AX+AX-128] ; illeg
- MOV AH,[AX+BX-128] ; illeg
- MOV BL,[AX+CX-128] ; illeg
- MOV BH,[AX+DX-128] ; illeg
- MOV CL,[AX+BP-128] ; illeg
- MOV CH,[AX+DI-128] ; illeg
- MOV DL,[AX+SI-128] ; illeg
- MOV DH,[AX+SP-128] ; illeg
-
- MOV AL,[BX+AX-128] ; illeg
- MOV AH,[BX+BX-128] ; illeg
- MOV BL,[BX+CX-128] ; illeg
- MOV BH,[BX+DX-128] ; illeg
- MOV CL,[BX+BP-128] ; illeg
- MOV CH,[BX+DI-128]
- MOV DL,[BX+SI-128]
- MOV DH,[BX+SP-128] ; illeg
-
- MOV AL,[CX+AX-128] ; illeg
- MOV AH,[CX+BX-128] ; illeg
- MOV BL,[CX+CX-128] ; illeg
- MOV BH,[CX+DX-128] ; illeg
- MOV CL,[CX+BP-128] ; illeg
- MOV CH,[CX+DI-128] ; illeg
- MOV DL,[CX+SI-128] ; illeg
- MOV DH,[CX+SP-128] ; illeg
-
- MOV AL,[DX+AX-128] ; illeg
- MOV AH,[DX+BX-128] ; illeg
- MOV BL,[DX+CX-128] ; illeg
- MOV BH,[DX+DX-128] ; illeg
- MOV CL,[DX+BP-128] ; illeg
- MOV CH,[DX+DI-128] ; illeg
- MOV DL,[DX+SI-128] ; illeg
- MOV DH,[DX+SP-128] ; illeg
-
- MOV AL,[BP+AX-128] ; illeg
- MOV AH,[BP+BX-128] ; illeg
- MOV BL,[BP+CX-128] ; illeg
- MOV BH,[BP+DX-128] ; illeg
- MOV CL,[BP+BP-128] ; illeg
- MOV CH,[BP+DI-128]
- MOV DL,[BP+SI-128]
- MOV DH,[BP+SP-128] ; illeg
-
- MOV AL,[DI+AX-128] ; illeg
- MOV AH,[DI+BX-128]
- MOV BL,[DI+CX-128] ; illeg
- MOV BH,[DI+DX-128] ; illeg
- MOV CL,[DI+BP-128]
- MOV CH,[DI+DI-128] ; illeg
- MOV DL,[DI+SI-128] ; illeg
- MOV DH,[DI+SP-128] ; illeg
-
- MOV AL,[SI+AX-128] ; illeg
- MOV AH,[SI+BX-128]
- MOV BL,[SI+CX-128] ; illeg
- MOV BH,[SI+DX-128] ; illeg
- MOV CL,[SI+BP-128]
- MOV CH,[SI+DI-128] ; illeg
- MOV DL,[SI+SI-128] ; illeg
- MOV DH,[SI+SP-128] ; illeg
-
- MOV AL,[SP+AX-128] ; illeg
- MOV AH,[SP+BX-128] ; illeg
- MOV BL,[SP+CX-128] ; illeg
- MOV BH,[SP+DX-128] ; illeg
- MOV CL,[SP+BP-128] ; illeg
- MOV CH,[SP+DI-128] ; illeg
- MOV DL,[SP+SI-128] ; illeg
- MOV DH,[SP+SP-128] ; illeg
-
- MOV AL,[AX+AX+128] ; illeg
- MOV AH,[AX+BX+128] ; illeg
- MOV BL,[AX+CX+128] ; illeg
- MOV BH,[AX+DX+128] ; illeg
- MOV CL,[AX+BP+128] ; illeg
- MOV CH,[AX+DI+128] ; illeg
- MOV DL,[AX+SI+128] ; illeg
- MOV DH,[AX+SP+128] ; illeg
-
- MOV AL,[BX+AX+128] ; illeg
- MOV AH,[BX+BX+128] ; illeg
- MOV BL,[BX+CX+128] ; illeg
- MOV BH,[BX+DX+128] ; illeg
- MOV CL,[BX+BP+128] ; illeg
- MOV CH,[BX+DI+128]
- MOV DL,[BX+SI+128]
- MOV DH,[BX+SP+128] ; illeg
-
- MOV AL,[CX+AX+128] ; illeg
- MOV AH,[CX+BX+128] ; illeg
- MOV BL,[CX+CX+128] ; illeg
- MOV BH,[CX+DX+128] ; illeg
- MOV CL,[CX+BP+128] ; illeg
- MOV CH,[CX+DI+128] ; illeg
- MOV DL,[CX+SI+128] ; illeg
- MOV DH,[CX+SP+128] ; illeg
-
- MOV AL,[DX+AX+128] ; illeg
- MOV AH,[DX+BX+128] ; illeg
- MOV BL,[DX+CX+128] ; illeg
- MOV BH,[DX+DX+128] ; illeg
- MOV CL,[DX+BP+128] ; illeg
- MOV CH,[DX+DI+128] ; illeg
- MOV DL,[DX+SI+128] ; illeg
- MOV DH,[DX+SP+128] ; illeg
-
- MOV AL,[BP+AX+128] ; illeg
- MOV AH,[BP+BX+128] ; illeg
- MOV BL,[BP+CX+128] ; illeg
- MOV BH,[BP+DX+128] ; illeg
- MOV CL,[BP+BP+128] ; illeg
- MOV CH,[BP+DI+128]
- MOV DL,[BP+SI+128]
- MOV DH,[BP+SP+128] ; illeg
-
- MOV AL,[DI+AX+128] ; illeg
- MOV AH,[DI+BX+128]
- MOV BL,[DI+CX+128] ; illeg
- MOV BH,[DI+DX+128] ; illeg
- MOV CL,[DI+BP+128]
- MOV CH,[DI+DI+128] ; illeg
- MOV DL,[DI+SI+128] ; illeg
- MOV DH,[DI+SP+128] ; illeg
-
- MOV AL,[SI+AX+128] ; illeg
- MOV AH,[SI+BX+128]
- MOV BL,[SI+CX+128] ; illeg
- MOV BH,[SI+DX+128] ; illeg
- MOV CL,[SI+BP+128]
- MOV CH,[SI+DI+128] ; illeg
- MOV DL,[SI+SI+128] ; illeg
- MOV DH,[SI+SP+128] ; illeg
-
- MOV AL,[SP+AX+128] ; illeg
- MOV AH,[SP+BX+128] ; illeg
- MOV BL,[SP+CX+128] ; illeg
- MOV BH,[SP+DX+128] ; illeg
- MOV CL,[SP+BP+128] ; illeg
- MOV CH,[SP+DI+128] ; illeg
- MOV DL,[SP+SI+128] ; illeg
- MOV DH,[SP+SP+128] ; illeg
-
- MOV AL,[AX+AX-129] ; illeg
- MOV AH,[AX+BX-129] ; illeg
- MOV BL,[AX+CX-129] ; illeg
- MOV BH,[AX+DX-129] ; illeg
- MOV CL,[AX+BP-129] ; illeg
- MOV CH,[AX+DI-129] ; illeg
- MOV DL,[AX+SI-129] ; illeg
- MOV DH,[AX+SP-129] ; illeg
-
- MOV AL,[BX+AX-129] ; illeg
- MOV AH,[BX+BX-129] ; illeg
- MOV BL,[BX+CX-129] ; illeg
- MOV BH,[BX+DX-129] ; illeg
- MOV CL,[BX+BP-129] ; illeg
- MOV CH,[BX+DI-129]
- MOV DL,[BX+SI-129]
- MOV DH,[BX+SP-129] ; illeg
-
- MOV AL,[CX+AX-129] ; illeg
- MOV AH,[CX+BX-129] ; illeg
- MOV BL,[CX+CX-129] ; illeg
- MOV BH,[CX+DX-129] ; illeg
- MOV CL,[CX+BP-129] ; illeg
- MOV CH,[CX+DI-129] ; illeg
- MOV DL,[CX+SI-129] ; illeg
- MOV DH,[CX+SP-129] ; illeg
-
- MOV AL,[DX+AX-129] ; illeg
- MOV AH,[DX+BX-129] ; illeg
- MOV BL,[DX+CX-129] ; illeg
- MOV BH,[DX+DX-129] ; illeg
- MOV CL,[DX+BP-129] ; illeg
- MOV CH,[DX+DI-129] ; illeg
- MOV DL,[DX+SI-129] ; illeg
- MOV DH,[DX+SP-129] ; illeg
-
- MOV AL,[BP+AX-129] ; illeg
- MOV AH,[BP+BX-129] ; illeg
- MOV BL,[BP+CX-129] ; illeg
- MOV BH,[BP+DX-129] ; illeg
- MOV CL,[BP+BP-129] ; illeg
- MOV CH,[BP+DI-129]
- MOV DL,[BP+SI-129]
- MOV DH,[BP+SP-129] ; illeg
-
- MOV AL,[DI+AX-129] ; illeg
- MOV AH,[DI+BX-129]
- MOV BL,[DI+CX-129] ; illeg
- MOV BH,[DI+DX-129] ; illeg
- MOV CL,[DI+BP-129]
- MOV CH,[DI+DI-129] ; illeg
- MOV DL,[DI+SI-129] ; illeg
- MOV DH,[DI+SP-129] ; illeg
-
- MOV AL,[SI+AX-129] ; illeg
- MOV AH,[SI+BX-129]
- MOV BL,[SI+CX-129] ; illeg
- MOV BH,[SI+DX-129] ; illeg
- MOV CL,[SI+BP-129]
- MOV CH,[SI+DI-129] ; illeg
- MOV DL,[SI+SI-129] ; illeg
- MOV DH,[SI+SP-129] ; illeg
-
- MOV AL,[SP+AX-129] ; illeg
- MOV AH,[SP+BX-129] ; illeg
- MOV BL,[SP+CX-129] ; illeg
- MOV BH,[SP+DX-129] ; illeg
- MOV CL,[SP+BP-129] ; illeg
- MOV CH,[SP+DI-129] ; illeg
- MOV DL,[SP+SI-129] ; illeg
- MOV DH,[SP+SP-129] ; illeg
-
- MOV AL,[AX+AX+32767] ; illeg
- MOV AH,[AX+BX+32767] ; illeg
- MOV BL,[AX+CX+32767] ; illeg
- MOV BH,[AX+DX+32767] ; illeg
- MOV CL,[AX+BP+32767] ; illeg
- MOV CH,[AX+DI+32767] ; illeg
- MOV DL,[AX+SI+32767] ; illeg
- MOV DH,[AX+SP+32767] ; illeg
-
- MOV AL,[BX+AX+32767] ; illeg
- MOV AH,[BX+BX+32767] ; illeg
- MOV BL,[BX+CX+32767] ; illeg
- MOV BH,[BX+DX+32767] ; illeg
- MOV CL,[BX+BP+32767] ; illeg
- MOV CH,[BX+DI+32767]
- MOV DL,[BX+SI+32767]
- MOV DH,[BX+SP+32767] ; illeg
-
- MOV AL,[CX+AX+32767] ; illeg
- MOV AH,[CX+BX+32767] ; illeg
- MOV BL,[CX+CX+32767] ; illeg
- MOV BH,[CX+DX+32767] ; illeg
- MOV CL,[CX+BP+32767] ; illeg
- MOV CH,[CX+DI+32767] ; illeg
- MOV DL,[CX+SI+32767] ; illeg
- MOV DH,[CX+SP+32767] ; illeg
-
- MOV AL,[DX+AX+32767] ; illeg
- MOV AH,[DX+BX+32767] ; illeg
- MOV BL,[DX+CX+32767] ; illeg
- MOV BH,[DX+DX+32767] ; illeg
- MOV CL,[DX+BP+32767] ; illeg
- MOV CH,[DX+DI+32767] ; illeg
- MOV DL,[DX+SI+32767] ; illeg
- MOV DH,[DX+SP+32767] ; illeg
-
- MOV AL,[BP+AX+32767] ; illeg
- MOV AH,[BP+BX+32767] ; illeg
- MOV BL,[BP+CX+32767] ; illeg
- MOV BH,[BP+DX+32767] ; illeg
- MOV CL,[BP+BP+32767] ; illeg
- MOV CH,[BP+DI+32767]
- MOV DL,[BP+SI+32767]
- MOV DH,[BP+SP+32767] ; illeg
-
- MOV AL,[DI+AX+32767] ; illeg
- MOV AH,[DI+BX+32767]
- MOV BL,[DI+CX+32767] ; illeg
- MOV BH,[DI+DX+32767] ; illeg
- MOV CL,[DI+BP+32767]
- MOV CH,[DI+DI+32767] ; illeg
- MOV DL,[DI+SI+32767] ; illeg
- MOV DH,[DI+SP+32767] ; illeg
-
- MOV AL,[SI+AX+32767] ; illeg
- MOV AH,[SI+BX+32767]
- MOV BL,[SI+CX+32767] ; illeg
- MOV BH,[SI+DX+32767] ; illeg
- MOV CL,[SI+BP+32767]
- MOV CH,[SI+DI+32767] ; illeg
- MOV DL,[SI+SI+32767] ; illeg
- MOV DH,[SI+SP+32767] ; illeg
-
- MOV AL,[SP+AX+32767] ; illeg
- MOV AH,[SP+BX+32767] ; illeg
- MOV BL,[SP+CX+32767] ; illeg
- MOV BH,[SP+DX+32767] ; illeg
- MOV CL,[SP+BP+32767] ; illeg
- MOV CH,[SP+DI+32767] ; illeg
- MOV DL,[SP+SI+32767] ; illeg
- MOV DH,[SP+SP+32767] ; illeg
-
- MOV AL,[AX+AX-32768] ; illeg
- MOV AH,[AX+BX-32768] ; illeg
- MOV BL,[AX+CX-32768] ; illeg
- MOV BH,[AX+DX-32768] ; illeg
- MOV CL,[AX+BP-32768] ; illeg
- MOV CH,[AX+DI-32768] ; illeg
- MOV DL,[AX+SI-32768] ; illeg
- MOV DH,[AX+SP-32768] ; illeg
-
- MOV AL,[BX+AX-32768] ; illeg
- MOV AH,[BX+BX-32768] ; illeg
- MOV BL,[BX+CX-32768] ; illeg
- MOV BH,[BX+DX-32768] ; illeg
- MOV CL,[BX+BP-32768] ; illeg
- MOV CH,[BX+DI-32768]
- MOV DL,[BX+SI-32768]
- MOV DH,[BX+SP-32768] ; illeg
-
- MOV AL,[CX+AX-32768] ; illeg
- MOV AH,[CX+BX-32768] ; illeg
- MOV BL,[CX+CX-32768] ; illeg
- MOV BH,[CX+DX-32768] ; illeg
- MOV CL,[CX+BP-32768] ; illeg
- MOV CH,[CX+DI-32768] ; illeg
- MOV DL,[CX+SI-32768] ; illeg
- MOV DH,[CX+SP-32768] ; illeg
-
- MOV AL,[DX+AX-32768] ; illeg
- MOV AH,[DX+BX-32768] ; illeg
- MOV BL,[DX+CX-32768] ; illeg
- MOV BH,[DX+DX-32768] ; illeg
- MOV CL,[DX+BP-32768] ; illeg
- MOV CH,[DX+DI-32768] ; illeg
- MOV DL,[DX+SI-32768] ; illeg
- MOV DH,[DX+SP-32768] ; illeg
-
- MOV AL,[BP+AX-32768] ; illeg
- MOV AH,[BP+BX-32768] ; illeg
- MOV BL,[BP+CX-32768] ; illeg
- MOV BH,[BP+DX-32768] ; illeg
- MOV CL,[BP+BP-32768] ; illeg
- MOV CH,[BP+DI-32768]
- MOV DL,[BP+SI-32768]
- MOV DH,[BP+SP-32768] ; illeg
-
- MOV AL,[DI+AX-32768] ; illeg
- MOV AH,[DI+BX-32768]
- MOV BL,[DI+CX-32768] ; illeg
- MOV BH,[DI+DX-32768] ; illeg
- MOV CL,[DI+BP-32768]
- MOV CH,[DI+DI-32768] ; illeg
- MOV DL,[DI+SI-32768] ; illeg
- MOV DH,[DI+SP-32768] ; illeg
-
- MOV AL,[SI+AX-32768] ; illeg
- MOV AH,[SI+BX-32768]
- MOV BL,[SI+CX-32768] ; illeg
- MOV BH,[SI+DX-32768] ; illeg
- MOV CL,[SI+BP-32768]
- MOV CH,[SI+DI-32768] ; illeg
- MOV DL,[SI+SI-32768] ; illeg
- MOV DH,[SI+SP-32768] ; illeg
-
- MOV AL,[SP+AX-32768] ; illeg
- MOV AH,[SP+BX-32768] ; illeg
- MOV BL,[SP+CX-32768] ; illeg
- MOV BH,[SP+DX-32768] ; illeg
- MOV CL,[SP+BP-32768] ; illeg
- MOV CH,[SP+DI-32768] ; illeg
- MOV DL,[SP+SI-32768] ; illeg
- MOV DH,[SP+SP-32768] ; illeg
-
- MOV AL,[AX+AX+32768] ; illeg
- MOV AH,[AX+BX+32768] ; illeg
- MOV BL,[AX+CX+32768] ; illeg
- MOV BH,[AX+DX+32768] ; illeg
- MOV CL,[AX+BP+32768] ; illeg
- MOV CH,[AX+DI+32768] ; illeg
- MOV DL,[AX+SI+32768] ; illeg
- MOV DH,[AX+SP+32768] ; illeg
-
- MOV AL,[BX+AX+32768] ; illeg
- MOV AH,[BX+BX+32768] ; illeg
- MOV BL,[BX+CX+32768] ; illeg
- MOV BH,[BX+DX+32768] ; illeg
- MOV CL,[BX+BP+32768] ; illeg
- MOV CH,[BX+DI+32768]
- MOV DL,[BX+SI+32768]
- MOV DH,[BX+SP+32768] ; illeg
-
- MOV AL,[CX+AX+32768] ; illeg
- MOV AH,[CX+BX+32768] ; illeg
- MOV BL,[CX+CX+32768] ; illeg
- MOV BH,[CX+DX+32768] ; illeg
- MOV CL,[CX+BP+32768] ; illeg
- MOV CH,[CX+DI+32768] ; illeg
- MOV DL,[CX+SI+32768] ; illeg
- MOV DH,[CX+SP+32768] ; illeg
-
- MOV AL,[DX+AX+32768] ; illeg
- MOV AH,[DX+BX+32768] ; illeg
- MOV BL,[DX+CX+32768] ; illeg
- MOV BH,[DX+DX+32768] ; illeg
- MOV CL,[DX+BP+32768] ; illeg
- MOV CH,[DX+DI+32768] ; illeg
- MOV DL,[DX+SI+32768] ; illeg
- MOV DH,[DX+SP+32768] ; illeg
-
- MOV AL,[BP+AX+32768] ; illeg
- MOV AH,[BP+BX+32768] ; illeg
- MOV BL,[BP+CX+32768] ; illeg
- MOV BH,[BP+DX+32768] ; illeg
- MOV CL,[BP+BP+32768] ; illeg
- MOV CH,[BP+DI+32768]
- MOV DL,[BP+SI+32768]
- MOV DH,[BP+SP+32768] ; illeg
-
- MOV AL,[DI+AX+32768] ; illeg
- MOV AH,[DI+BX+32768]
- MOV BL,[DI+CX+32768] ; illeg
- MOV BH,[DI+DX+32768] ; illeg
- MOV CL,[DI+BP+32768]
- MOV CH,[DI+DI+32768] ; illeg
- MOV DL,[DI+SI+32768] ; illeg
- MOV DH,[DI+SP+32768] ; illeg
-
- MOV AL,[SI+AX+32768] ; illeg
- MOV AH,[SI+BX+32768]
- MOV BL,[SI+CX+32768] ; illeg
- MOV BH,[SI+DX+32768] ; illeg
- MOV CL,[SI+BP+32768]
- MOV CH,[SI+DI+32768] ; illeg
- MOV DL,[SI+SI+32768] ; illeg
- MOV DH,[SI+SP+32768] ; illeg
-
- MOV AL,[SP+AX+32768] ; illeg
- MOV AH,[SP+BX+32768] ; illeg
- MOV BL,[SP+CX+32768] ; illeg
- MOV BH,[SP+DX+32768] ; illeg
- MOV CL,[SP+BP+32768] ; illeg
- MOV CH,[SP+DI+32768] ; illeg
- MOV DL,[SP+SI+32768] ; illeg
- MOV DH,[SP+SP+32768] ; illeg
-
- MOV AL,[AX+AX-32769] ; illeg
- MOV AH,[AX+BX-32769] ; illeg
- MOV BL,[AX+CX-32769] ; illeg
- MOV BH,[AX+DX-32769] ; illeg
- MOV CL,[AX+BP-32769] ; illeg
- MOV CH,[AX+DI-32769] ; illeg
- MOV DL,[AX+SI-32769] ; illeg
- MOV DH,[AX+SP-32769] ; illeg
-
- MOV AL,[BX+AX-32769] ; illeg
- MOV AH,[BX+BX-32769] ; illeg
- MOV BL,[BX+CX-32769] ; illeg
- MOV BH,[BX+DX-32769] ; illeg
- MOV CL,[BX+BP-32769] ; illeg
- MOV CH,[BX+DI-32769]
- MOV DL,[BX+SI-32769]
- MOV DH,[BX+SP-32769] ; illeg
-
- MOV AL,[CX+AX-32769] ; illeg
- MOV AH,[CX+BX-32769] ; illeg
- MOV BL,[CX+CX-32769] ; illeg
- MOV BH,[CX+DX-32769] ; illeg
- MOV CL,[CX+BP-32769] ; illeg
- MOV CH,[CX+DI-32769] ; illeg
- MOV DL,[CX+SI-32769] ; illeg
- MOV DH,[CX+SP-32769] ; illeg
-
- MOV AL,[DX+AX-32769] ; illeg
- MOV AH,[DX+BX-32769] ; illeg
- MOV BL,[DX+CX-32769] ; illeg
- MOV BH,[DX+DX-32769] ; illeg
- MOV CL,[DX+BP-32769] ; illeg
- MOV CH,[DX+DI-32769] ; illeg
- MOV DL,[DX+SI-32769] ; illeg
- MOV DH,[DX+SP-32769] ; illeg
-
- MOV AL,[BP+AX-32769] ; illeg
- MOV AH,[BP+BX-32769] ; illeg
- MOV BL,[BP+CX-32769] ; illeg
- MOV BH,[BP+DX-32769] ; illeg
- MOV CL,[BP+BP-32769] ; illeg
- MOV CH,[BP+DI-32769]
- MOV DL,[BP+SI-32769]
- MOV DH,[BP+SP-32769] ; illeg
-
- MOV AL,[DI+AX-32769] ; illeg
- MOV AH,[DI+BX-32769]
- MOV BL,[DI+CX-32769] ; illeg
- MOV BH,[DI+DX-32769] ; illeg
- MOV CL,[DI+BP-32769]
- MOV CH,[DI+DI-32769] ; illeg
- MOV DL,[DI+SI-32769] ; illeg
- MOV DH,[DI+SP-32769] ; illeg
-
- MOV AL,[SI+AX-32769] ; illeg
- MOV AH,[SI+BX-32769]
- MOV BL,[SI+CX-32769] ; illeg
- MOV BH,[SI+DX-32769] ; illeg
- MOV CL,[SI+BP-32769]
- MOV CH,[SI+DI-32769] ; illeg
- MOV DL,[SI+SI-32769] ; illeg
- MOV DH,[SI+SP-32769] ; illeg
-
- MOV AL,[SP+AX-32769] ; illeg
- MOV AH,[SP+BX-32769] ; illeg
- MOV BL,[SP+CX-32769] ; illeg
- MOV BH,[SP+DX-32769] ; illeg
- MOV CL,[SP+BP-32769] ; illeg
- MOV CH,[SP+DI-32769] ; illeg
- MOV DL,[SP+SI-32769] ; illeg
- MOV DH,[SP+SP-32769] ; illeg
-
- MOV AL,[AX+AX+$7FFFFFFF] ; illeg
- MOV AH,[AX+BX+$7FFFFFFF] ; illeg
- MOV BL,[AX+CX+$7FFFFFFF] ; illeg
- MOV BH,[AX+DX+$7FFFFFFF] ; illeg
- MOV CL,[AX+BP+$7FFFFFFF] ; illeg
- MOV CH,[AX+DI+$7FFFFFFF] ; illeg
- MOV DL,[AX+SI+$7FFFFFFF] ; illeg
- MOV DH,[AX+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[BX+AX+$7FFFFFFF] ; illeg
- MOV AH,[BX+BX+$7FFFFFFF] ; illeg
- MOV BL,[BX+CX+$7FFFFFFF] ; illeg
- MOV BH,[BX+DX+$7FFFFFFF] ; illeg
- MOV CL,[BX+BP+$7FFFFFFF] ; illeg
- MOV CH,[BX+DI+$7FFFFFFF] ; illeg (bounds)
- MOV DL,[BX+SI+$7FFFFFFF] ; illeg (bounds)
- MOV DH,[BX+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[CX+AX+$7FFFFFFF] ; illeg
- MOV AH,[CX+BX+$7FFFFFFF] ; illeg
- MOV BL,[CX+CX+$7FFFFFFF] ; illeg
- MOV BH,[CX+DX+$7FFFFFFF] ; illeg
- MOV CL,[CX+BP+$7FFFFFFF] ; illeg
- MOV CH,[CX+DI+$7FFFFFFF] ; illeg
- MOV DL,[CX+SI+$7FFFFFFF] ; illeg
- MOV DH,[CX+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[DX+AX+$7FFFFFFF] ; illeg
- MOV AH,[DX+BX+$7FFFFFFF] ; illeg
- MOV BL,[DX+CX+$7FFFFFFF] ; illeg
- MOV BH,[DX+DX+$7FFFFFFF] ; illeg
- MOV CL,[DX+BP+$7FFFFFFF] ; illeg
- MOV CH,[DX+DI+$7FFFFFFF] ; illeg
- MOV DL,[DX+SI+$7FFFFFFF] ; illeg
- MOV DH,[DX+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[BP+AX+$7FFFFFFF] ; illeg
- MOV AH,[BP+BX+$7FFFFFFF] ; illeg
- MOV BL,[BP+CX+$7FFFFFFF] ; illeg
- MOV BH,[BP+DX+$7FFFFFFF] ; illeg
- MOV CL,[BP+BP+$7FFFFFFF] ; illeg
- MOV CH,[BP+DI+$7FFFFFFF] ; illeg (bounds)
- MOV DL,[BP+SI+$7FFFFFFF] ; illeg (bounds)
- MOV DH,[BP+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[DI+AX+$7FFFFFFF] ; illeg
- MOV AH,[DI+BX+$7FFFFFFF] ; illeg (bounds)
- MOV BL,[DI+CX+$7FFFFFFF] ; illeg
- MOV BH,[DI+DX+$7FFFFFFF] ; illeg
- MOV CL,[DI+BP+$7FFFFFFF] ; illeg (bounds)
- MOV CH,[DI+DI+$7FFFFFFF] ; illeg
- MOV DL,[DI+SI+$7FFFFFFF] ; illeg
- MOV DH,[DI+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[SI+AX+$7FFFFFFF] ; illeg
- MOV AH,[SI+BX+$7FFFFFFF] ; illeg (bounds)
- MOV BL,[SI+CX+$7FFFFFFF] ; illeg
- MOV BH,[SI+DX+$7FFFFFFF] ; illeg
- MOV CL,[SI+BP+$7FFFFFFF] ; illeg (bounds)
- MOV CH,[SI+DI+$7FFFFFFF] ; illeg
- MOV DL,[SI+SI+$7FFFFFFF] ; illeg
- MOV DH,[SI+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[SP+AX+$7FFFFFFF] ; illeg
- MOV AH,[SP+BX+$7FFFFFFF] ; illeg
- MOV BL,[SP+CX+$7FFFFFFF] ; illeg
- MOV BH,[SP+DX+$7FFFFFFF] ; illeg
- MOV CL,[SP+BP+$7FFFFFFF] ; illeg
- MOV CH,[SP+DI+$7FFFFFFF] ; illeg
- MOV DL,[SP+SI+$7FFFFFFF] ; illeg
- MOV DH,[SP+SP+$7FFFFFFF] ; illeg
-
- MOV AL,[AX+AX-$80000000] ; illeg
- MOV AH,[AX+BX-$80000000] ; illeg
- MOV BL,[AX+CX-$80000000] ; illeg
- MOV BH,[AX+DX-$80000000] ; illeg
- MOV CL,[AX+BP-$80000000] ; illeg
- MOV CH,[AX+DI-$80000000] ; illeg
- MOV DL,[AX+SI-$80000000] ; illeg
- MOV DH,[AX+SP-$80000000] ; illeg
-
- MOV AL,[BX+AX-$80000000] ; illeg
- MOV AH,[BX+BX-$80000000] ; illeg
- MOV BL,[BX+CX-$80000000] ; illeg
- MOV BH,[BX+DX-$80000000] ; illeg
- MOV CL,[BX+BP-$80000000] ; illeg
- MOV CH,[BX+DI-$80000000] ; illeg (bounds)
- MOV DL,[BX+SI-$80000000] ; illeg (bounds)
- MOV DH,[BX+SP-$80000000] ; illeg
-
- MOV AL,[CX+AX-$80000000] ; illeg
- MOV AH,[CX+BX-$80000000] ; illeg
- MOV BL,[CX+CX-$80000000] ; illeg
- MOV BH,[CX+DX-$80000000] ; illeg
- MOV CL,[CX+BP-$80000000] ; illeg
- MOV CH,[CX+DI-$80000000] ; illeg
- MOV DL,[CX+SI-$80000000] ; illeg
- MOV DH,[CX+SP-$80000000] ; illeg
-
- MOV AL,[DX+AX-$80000000] ; illeg
- MOV AH,[DX+BX-$80000000] ; illeg
- MOV BL,[DX+CX-$80000000] ; illeg
- MOV BH,[DX+DX-$80000000] ; illeg
- MOV CL,[DX+BP-$80000000] ; illeg
- MOV CH,[DX+DI-$80000000] ; illeg
- MOV DL,[DX+SI-$80000000] ; illeg
- MOV DH,[DX+SP-$80000000] ; illeg
-
- MOV AL,[BP+AX-$80000000] ; illeg
- MOV AH,[BP+BX-$80000000] ; illeg
- MOV BL,[BP+CX-$80000000] ; illeg
- MOV BH,[BP+DX-$80000000] ; illeg
- MOV CL,[BP+BP-$80000000] ; illeg
- MOV CH,[BP+DI-$80000000] ; illeg (bounds)
- MOV DL,[BP+SI-$80000000] ; illeg (bounds)
- MOV DH,[BP+SP-$80000000] ; illeg
-
- MOV AL,[DI+AX-$80000000] ; illeg
- MOV AH,[DI+BX-$80000000] ; illeg (bounds)
- MOV BL,[DI+CX-$80000000] ; illeg
- MOV BH,[DI+DX-$80000000] ; illeg
- MOV CL,[DI+BP-$80000000] ; illeg (bounds)
- MOV CH,[DI+DI-$80000000] ; illeg
- MOV DL,[DI+SI-$80000000] ; illeg
- MOV DH,[DI+SP-$80000000] ; illeg
-
- MOV AL,[SI+AX-$80000000] ; illeg
- MOV AH,[SI+BX-$80000000] ; illeg (bounds)
- MOV BL,[SI+CX-$80000000] ; illeg
- MOV BH,[SI+DX-$80000000] ; illeg
- MOV CL,[SI+BP-$80000000] ; illeg (bounds)
- MOV CH,[SI+DI-$80000000] ; illeg
- MOV DL,[SI+SI-$80000000] ; illeg
- MOV DH,[SI+SP-$80000000] ; illeg
-
- MOV AL,[SP+AX-$80000000] ; illeg
- MOV AH,[SP+BX-$80000000] ; illeg
- MOV BL,[SP+CX-$80000000] ; illeg
- MOV BH,[SP+DX-$80000000] ; illeg
- MOV CL,[SP+BP-$80000000] ; illeg
- MOV CH,[SP+DI-$80000000] ; illeg
- MOV DL,[SP+SI-$80000000] ; illeg
- MOV DH,[SP+SP-$80000000] ; illeg
diff --git a/bin86-0.3/as/asm/f.asm b/bin86-0.3/as/asm/f.asm
deleted file mode 100644
index c067bf9..0000000
--- a/bin86-0.3/as/asm/f.asm
+++ /dev/null
@@ -1,114 +0,0 @@
-; [fadd fdiv fdivr fmul fsub fsubr] [mem4r mem8r st,st(i) st(i),st]
- fadd qword [ebx]
- fadd dword [ebx]
- fadd st,st(1)
- fadd st(1),st
- fdiv qword [ebx]
- fdiv dword [ebx]
- fdiv st,st(1) ; special swapping for this
-
-; [faddp fdivp fdivrp fmulp fsubp fsubrp] st(i),st
- faddp st(1),st
-
-; [fbld fbstp] mem10r
- fbld tbyte [ebx]
- fbstp tbyte [ebx]
-
-; [fcom fcomp] [mem4r mem8r optional-st(i)]
- fcom dword [ebx]
- fcom qword [ebx]
- fcom
- fcom st(1)
-
-; ffree st(i)
- ffree st(1)
-
-; [fucom fucomp fxch] optional-st(i)
- fucom
- fucom st(1)
-
-; [fiadd ficom ficomp fidiv fidivr fimul fist fisub fisubr] [mem2i mem4i]
- fiadd word [ebx]
- fiadd dword [ebx]
-
-; [fild fistp] [mem2i mem4i mem8i]
- fild word [ebx]
- fild dword [ebx]
- fild qword [ebx]
-
-; [fld fstp] [mem4r mem8r mem10r st(i)]
- fld dword [ebx]
- fld qword [ebx]
- fld tbyte [ebx]
- fld st(1)
-
-; [fldcw fnstcw] mem2i
- fldcw word [ebx]
- fnstcw word [ebx]
-
-; [fldenv fnsave fnstenv frstor] mem
- fldenv [ebx]
- fnsave [ebx]
- fnstenv [ebx]
- frstor [ebx]
-
-; fnstsw [mem2i ax]
- fnstsw word [ebx]
- fnstsw ax
-
-; fst [mem4r mem8r st(i)]
- fst dword [ebx]
- fst qword [ebx]
- fst st(1)
-
-; fstcw mem2i (wait)
- fstcw word [ebx]
-
-; fstsw [mem2i ax] (wait)
- fstsw word [ebx]
- fstsw ax
-
-; [fsave fstenv] mem (wait)
- fsave [ebx]
- fstenv [ebx]
-
-; [fxxx] (no operands)
- fnop ; D9D0
- fchs ; D9E0
- fabs ; D9E1
- ftst ; D9E4
- fxam ; D9E5
- fld1 ; D9E8
- fldl2t ; D9E9
- fldl2e ; D9EA
- fldpi ; D9EB
- fldlg2 ; D9EC
- fldln2 ; D9ED
- fldz ; D9EE
- f2xm1 ; D9F0
- fyl2x ; D9F1
- fptan ; D9F2
- fpatan ; D9F3
- fxtract ; D9F4
- fprem1 ; D9F5
- fdecstp ; D9F6
- fincstp ; D9F7
- fprem ; D9F8
- fyl2xp1 ; D9F9
- fsqrt ; D9FA
- fsincos ; D9FB
- frndint ; D9FC
- fscale ; D9FD
- fsin ; D9FE
- fcos ; D9FF
- fucompp ; DAE9
- feni ; 9BDBE0
- fneni ; DBE0
- fdisi ; 9BDBE1
- fndisi ; DBE1
- fclex ; 9BDBE2
- fnclex ; DBE2
- finit ; 9BDBE3
- fninit ; DBE3
- fsetpm ; DBE4
- fcompp ; DED9
diff --git a/bin86-0.3/as/asm/fadd.asm b/bin86-0.3/as/asm/fadd.asm
deleted file mode 100644
index d18f002..0000000
--- a/bin86-0.3/as/asm/fadd.asm
+++ /dev/null
@@ -1,271 +0,0 @@
-_fadd:
- PUSH BP
- MOV BP,SP
- MOV EAX,DWORD PTR [BP+4]
- MOV EDX,DWORD PTR [BP+8]
- MOV EBX,DWORD PTR [BP+12]
- MOV ECX,DWORD PTR [BP+16]
- CALL faddfxfy
- MOV DWORD PTR _facc,EAX
- MOV DWORD PTR _facc+4,EDX
- POP BP
- RET
-
-fsubfxfy:
- XOR ECX,#$80000000 ; complement sign bit, fall into add routine
-faddfxfy:
- PUSH EBP
- PUSH EDI
- PUSH ESI
- MOV EDI,ECX ; free CL for shifts
- MOV ESI,EDX ; this mainly for consistent naming
- AND ESI,#$7FFFFFFF ; discard sign so comparison is simple
- AND EDI,#$7FFFFFFF
-
- CMP ESI,EDI
- JA XBIG
- JB SWAP
- CMP EAX,EBX
- JAE XBIG
-SWAP:
- XCHG EDX,ECX
- XCHG ESI,EDI
- XCHG EAX,EBX
-XBIG:
- AND ESI,#$000FFFFF ; discard exponent
- AND EDI,#$000FFFFF
- OR ESI,#$00100000 ; normalize
- OR EDI,#$00100000
-
- SHR ECX,32-(1+11)
- SHR EDX,32-(1+11)
- MOV EBP,ECX ; prepare to compare signs (want high bits 0)
- SUB CX,DX ; get difference of signs in CX
- NEG CX ; D holds sign and exponent of both throughout
- CMP CX,#(64-11)+2
- JAE TO_DONE1 ; x dominates y
- XOR BP,DX
- AND BP,#$0800 ; see if signs are same
- JNZ TO_SUBTRACT ; else roundoff reg EBP is 0
-
- CMP CL,#32
- JAE TO_ADD_BIGSHIFT
- SHRD EBP,EBX,CL
- SHRD EBX,EDI,CL
- SHR EDI,CL
- ADD EAX,EBX
- ADC ESI,EDI
- SUB EBX,EBX
-
-; result DX(1+11):SI:AX:BP:BX but needs normalization
-
-NORMALIZE:
- MOV CX,DX
- AND CX,#$07FF
- TEST ESI,#$00200000
- JZ NORMALIZE2
- BR LOVERFLOW
-
-TO_DONE1:
- JMP DONE1
-
-TO_SUBTRACT:
- BR SUBTRACT
-
-TO_ADD_BIGSHIFT:
- BR ADD_BIGSHIFT
-
-TO_NORMLITTLE:
- BR NORMLITTLE
-
-; result DX(1):CX(11):SI:AX:BP:BX
-
-NORMALIZE2:
- SHRD EDI,ESI,32-11
- ; top 11 bits of ESI known 0 and BSR is slooow
- BSR EDI,EDI ; index of leading 1 bit in EDI is 11..31 in DI
- JZ TO_NORMLITTLE ; ESI is zero (flag wrong in Intel Manual)
- SUB DI,#31
- NEG DI
- PUSH CX ; gr
- MOV CX,DI ; rr
- SHLD ESI,EAX,CL
- SHLD EAX,EBP,CL
- SHLD EBP,EBX,CL
- SHL EBX,CL
- POP CX ; rr
- SUB CX,DI
- JC UNDERFLOW
-
-ROUND:
- CMP EBP,#$80000000 ; test roundoff register
- JA ROUNDUP
- JB DONE ; no rounding
- TEST EBX,EBX
- JNZ ROUNDUP
- TEST AL,#1 ; ambiguous case, round to even
- JZ DONE ; even, no rounding
-ROUNDUP:
- ADD EAX,#1
- ADC ESI,#0
- SUB EBP,EBP
- SUB EBX,EBX
- TEST ESI,#$00200000
- JNZ LOVERFLOW ; rounding may cause overflow!
-
-DONE:
- AND DX,#$0800 ; extract sign of largest and result
- OR DX,CX ; include exponent with sign
-DONE1:
- SHL EDX,32-(1+11)
- AND ESI,#$000FFFFF ; discard normalization bit
- OR EDX,ESI
- POP ESI
- POP EDI
- POP EBP
- RET
-
-UNDERFLOW: ; should have error message here
-ANSWER0:
- SUB EDX,EDX
- MOV EAX,EDX
- POP ESI
- POP EDI
- POP EBP
- RET
-
-LOVERFLOW: ; carry bit must be right-shifted back in
- SHR ESI,1
- RCR EAX,1
- RCR EBP,1
- RCR EBX,1
- INC CX
- CMP CX,#$0800
- JNZ ROUND
-
-OVERFLOW: ; should have error message here
- MOV EDX,#$FFE00000 ; + infinity
- SUB EAX,EAX
- POP ESI
- POP EDI
- POP EBP
- RET
-
-ADD_BIGSHIFT:
- SUB CL,#32
- SHRD EBP,EBX,CL
- SHRD EBX,EDI,CL
- SHR EDI,CL
- ADD EAX,EDI
- ADC ESI,#0
- XCHG EBP,EBX
- BR NORMALIZE
-
-NORMLITTLE:
- SHLD ESI,EAX,32-(1+11)
- SHLD EAX,EBP,32-(1+11)
- SHLD EBP,EBX,32-(1+11)
- SHL EBX,20
- SUB CL,#32-(1+11)
- JC UNDERFLOW
- BR NORMALIZE2
-
-SUBTRACT:
- SUB EBP,EBP ; set up roundoff register
- CMP CL,#32
- JAE SUBTRACT_BIGSHIFT
- SHRD EBP,EBX,CL
- SHRD EBX,EDI,CL
- SHR EDI,CL
- NEG EBP
- SBB EAX,EBX
- SBB ESI,EDI
- SUB EBX,EBX
- MOV CX,DX
- AND CX,#$07FF
- BR NORMALIZE2
-
-SUBTRACT_BIGSHIFT:
- SUB CL,#32
- SHRD EBP,EBX,CL
- SHRD EBX,EDI,CL
- SHR EDI,CL
- NEG EBX
- NEG EBP
- SBB EBX,#0
- SBB EAX,EDI
- SBB ESI,#0
- XCHG EBP,EBX
- MOV CX,DX
- AND CX,#$07FF
- BR NORMALIZE2
-
-TO_ANSWER0:
- BR ANSWER0
-
-TO_OVERFLOW:
- JMP TO_OVERFLOW
-
-TO_UNDERFLOW:
- BR UNDERFLOW
-
-fmulfxfy:
- PUSH EBP
- PUSH EDI
- PUSH ESI
- MOV ESI,EDX ; free DX for multiplications
- MOV EDI,ECX ; this mainly for consistent naming
- SHR EDX,32-(1+11)
- SHR ECX,32-(1+11)
- MOV BP,DX
- XOR BP,CX
- AND BP,#$0800 ; extract sign
- AND DX,#$07FF ; exp(x)
- JZ TO_ANSWER0
- AND CX,#$07FF ; exp(y)
- JZ TO_ANSWER0
- ADD CX,DX
- SUB CX,#$0400
- JB TO_UNDERFLOW
- CMP CX,#$07FF
- JA TO_OVERFLOW ; probably not quite right
-
- AND ESI,#$000FFFFF ; discard sign and exponent
- AND EDI,#$000FFFFF
- OR ESI,#$00100000 ; normalize
- OR EDI,#$00100000
-
-; exponent is in CX, sign in BP, operands in ESI:EAX and EDI:EBX, DX is free
-; product to go in ESI:EAX:EBP:EBX
-; terminology: x * y = (x32:x0) * (y32:y0) = x32y32 + x32y0 + x0y32 +x0y0
-
- PUSH CX
- PUSH BP
- MOV ECX,EAX
- MUL EBX ; x0y0
- MOV EBP,EDX ; x0y0.high in EBP
- XCHG EBX,EAX ; x0y0.low in EBX (final), y0 in EAX
- MUL ESI ; x32y0
- PUSH EAX ; x32y0.low on stack
- PUSH EDX ; x32y0.high on stack
- MOV EAX,ESI
- MUL EDI ; x32y32
- MOV ESI,EDX ; x32y32.high in ESI (final except carries)
- XCHG ECX,EAX ; x32y32.low in ECX, x0 in EAX
- MUL EDI ; x0y32
-
- ADD EBP,EAX ; x0y0.high + x0y32.low
- POP EAX ; x32y0.high
- ADC EAX,EDX ; x32y0.high + x0y32.high
- ADC ESI,#0
- POP EDX ; x32y0.low
- ADD EBP,EDX ; (x0y0.high + x0y32.low) + x32y0.low
- ADC EAX,ECX ; (x32y0.high + x0y32.high) + x32y32.low
- ADC ESI,#0
- POP DX ; sign
- POP CX ; exponent
- ADD CX,#13 ; temp fixup
- BR NORMALIZE2
-
-_facc:
- .word 0,0
diff --git a/bin86-0.3/as/asm/farcall.asm b/bin86-0.3/as/asm/farcall.asm
deleted file mode 100644
index 6a779d9..0000000
--- a/bin86-0.3/as/asm/farcall.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-call 1:2
-call far [1]
-use32
-call far [1]
-
-use16
-jmp 1:2
-jmp far [1]
-use32
-jmp far [1]
diff --git a/bin86-0.3/as/asm/group1.asm b/bin86-0.3/as/asm/group1.asm
deleted file mode 100644
index fe2fb45..0000000
--- a/bin86-0.3/as/asm/group1.asm
+++ /dev/null
@@ -1,31 +0,0 @@
- ADD AL,#3
- ADD AX,#$1234
- ADD EAX,#$12345678
- ADD BL,#3
- ADD BX,#$1234
- ADD EBX,#$12345678
- ADD BYTE [BX],#3
- ADD BYTE 3[BX],#4
- ADD BYTE [BX+SI],#4
- ADD WORD [BX],#$1234
- ADD DWORD [BX],#$12345678
- ADD BYTE [BX],#3
- ADD WORD [BX],#-3
- ADD DWORD [BX],#-3
- ADD CL,BL
- ADD CX,BX
- ADD ECX,EBX
- ADD [BX],CL
- ADD [BX],CX
- ADD [BX],ECX
- ADD CL,[BX]
- ADD CX,[BX]
- ADD ECX,[BX]
-
- ADC CL,BL
- AND CL,BL
- CMP CL,BL
- OR CL,BL
- SUB CL,BL
- SBB CL,BL
- XOR CL,BL
diff --git a/bin86-0.3/as/asm/group6.asm b/bin86-0.3/as/asm/group6.asm
deleted file mode 100644
index f742672..0000000
--- a/bin86-0.3/as/asm/group6.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-; group6.asm
-; 0F 00 /nnn
-
-; LLDT r/m16 nnn = 010
-; LTR r/m16 nnn = 011
-; SLDT r/m16 nnn = 000
-; STR r/m16 nnn = 001
-; VERR r/m16 nnn = 100
-; VERW r/m16 nnn = 101
-
- LLDT AL ; illeg size
- LLDT EAX ; illeg size
- LLDT WORD $1234 ; immed not allowed
- LLDT DS ; segreg not allowed
-
- LLDT AX
- LLDT [BX]
- LLDT [EAX]
-
- LTR BX
- SLDT [BP]
- STR [EBX]
- VERR CX
- VERW [SI]
diff --git a/bin86-0.3/as/asm/group7.asm b/bin86-0.3/as/asm/group7.asm
deleted file mode 100644
index 0df497c..0000000
--- a/bin86-0.3/as/asm/group7.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-; group7.asm
-; 0F 01 /nnn
-
-; INVLPG m nnn = 111
-; LGDT m16&32 nnn = 010
-; LIDT m16&32 nnn = 011
-; LMSW r/m16 nnn = 110
-; SGDT m nnn = 000
-; SIDT m nnn = 001
-; SMSW r/m16 nnn = 100
-
- LGDT EAX ; register not allowed
- LGDT #$1234 ; immed not allowed
- LGDT WORD PTR [BX] ; illegal size
-
- LGDT [BX]
- LGDT PWORD PTR [BX]
- LGDT FWORD PTR [BX]
- LGDT [EAX]
-
- INVLPG [EDI]
- SGDT [BP]
- SIDT [EBX]
-
- LMSW AL ; illeg size
- LMSW EAX ; illeg size
- LMSW #$1234 ; immed not allowed
- LMSW DS ; segreg not allowed
-
- LMSW AX
- LMSW [BX]
- LMSW [EAX]
-
- SMSW BX
diff --git a/bin86-0.3/as/asm/imul.asm b/bin86-0.3/as/asm/imul.asm
deleted file mode 100644
index e2772c2..0000000
--- a/bin86-0.3/as/asm/imul.asm
+++ /dev/null
@@ -1,33 +0,0 @@
- use32
-
- imul bl
- imul byte ptr [esi]
- imul bx
- imul word ptr [esi]
- imul ebx
- imul dword ptr [esi]
-
- imul ax,bx
- imul ax,[esi]
- imul eax,ebx
- imul eax,[esi]
-
- imul ax,bx,22
- imul ax,[esi],22
- imul eax,ebx,22
- imul eax,[esi],22
-
- imul ax,[22]
- imul eax,[22]
- imul ax,#22
- imul eax,#22
-
- imul ax,bx,300
- imul ax,[esi],300
- imul eax,ebx,300000
- imul eax,[esi],300000
-
- imul ax,[300]
- imul eax,[300000]
- imul ax,#300
- imul eax,#300000
diff --git a/bin86-0.3/as/asm/incdec.asm b/bin86-0.3/as/asm/incdec.asm
deleted file mode 100644
index 573861c..0000000
--- a/bin86-0.3/as/asm/incdec.asm
+++ /dev/null
@@ -1,83 +0,0 @@
- INC AL
- INC AH
- INC BL
- INC BH
- INC CL
- INC CH
- INC DL
- INC DH
- INC #1 ; illeg
- INC BYTE #1 ; illeg
- INC [BX] ; illeg
- INC BYTE [BX]
-
- INC AX
- INC BX
- INC CX
- INC DX
- INC SP
- INC BP
- INC SI
- INC DI
- INC CS ; illeg
- INC DS ; illeg
- INC ES ; illeg
- INC FS ; illeg
- INC GS ; illeg
- INC #$1234 ; illeg
- INC WORD #$1234 ; illeg
- INC WORD [BX]
-
- INC EAX
- INC EBX
- INC ECX
- INC EDX
- INC ESP
- INC EBP
- INC ESI
- INC EDI
- INC #$12345678 ; illeg
- INC DWORD #$12345678 ; illeg
- INC DWORD [BX]
-
- DEC AL
- DEC AH
- DEC BL
- DEC BH
- DEC CL
- DEC CH
- DEC DL
- DEC DH
- DEC #1 ; illeg
- DEC BYTE #1 ; illeg
- DEC [BX] ; illeg
- DEC BYTE [BX]
-
- DEC AX
- DEC BX
- DEC CX
- DEC DX
- DEC SP
- DEC BP
- DEC SI
- DEC DI
- DEC CS ; illeg
- DEC DS ; illeg
- DEC ES ; illeg
- DEC FS ; illeg
- DEC GS ; illeg
- DEC #$1234 ; illeg
- DEC WORD #$1234 ; illeg
- DEC WORD [BX]
-
- DEC EAX
- DEC EBX
- DEC ECX
- DEC EDX
- DEC ESP
- DEC EBP
- DEC ESI
- DEC EDI
- DEC #$12345678 ; illeg
- DEC DWORD #$12345678 ; illeg
- DEC DWORD [BX]
diff --git a/bin86-0.3/as/asm/inher.asm b/bin86-0.3/as/asm/inher.asm
deleted file mode 100644
index f1343fa..0000000
--- a/bin86-0.3/as/asm/inher.asm
+++ /dev/null
@@ -1,127 +0,0 @@
-; INHER.ASM
-
-; INHER opcodes
-
- AAA
- AAS
-
- CLC
- CLD
- CLI
- CLTS
- CMC
- CMPSB
-
- DAA
- DAS
-
- HLT
-
- INTO
- INSB
-
- LAHF
- LEAVE
- LOCK
- LODSB
-
- MOVSB
-
- NOP
-
- OUTSB
-
- REP
- REPE
- REPNE
-
- SAHF
- SCASB
- STC
- STD
- STI
- STOSB
-
- WAIT
-
-; INHER16 and INHER32 opcodes
-
- USE16
-
- CBW
- CWD
- CWDE
- CDQ
- CMPSW
- CMPSD
-
- INSW
- INSD
- IRET
- IRETD
-
- LODSW
- LODSD
-
- MOVSW
- MOVSD
-
- OUTSW
- OUTSD
-
- POPA
- POPAD
- POPF
- POPFD
- PUSHA
- PUSHAD
- PUSHF
- PUSHFD
-
- SCASW
- SCASD
- STOSW
- STOSW
-
- XLAT
- XLATB
-
- USE32
-
- CBW
- CWD
- CWDE
- CDQ
- CMPSW
- CMPSD
-
- INSW
- INSD
- IRET
- IRETD
-
- LODSW
- LODSD
-
- MOVSW
- MOVSD
-
- OUTSW
- OUTSD
-
- POPA
- POPAD
- POPF
- POPFD
- PUSHA
- PUSHAD
- PUSHF
- PUSHFD
-
- SCASW
- SCASD
- STOSW
- STOSW
-
- XLAT
- XLATB
diff --git a/bin86-0.3/as/asm/inout.asm b/bin86-0.3/as/asm/inout.asm
deleted file mode 100644
index 3f0a3f2..0000000
--- a/bin86-0.3/as/asm/inout.asm
+++ /dev/null
@@ -1,25 +0,0 @@
- IN EAX,DX ; plain IN is no longer allowed
- INB
- IN AL,DX
- INW
- IN AX,DX
- IN EAX,DX
- IN AL,$20
- IN AL,$101
- IN AX,$20
- IN AX,$101
- IN EAX,$20
- IN EAX,$101
-
- OUTB DX,EAX ; plain OUT is no longer allowed
- OUTB
- OUT DX,AL
- OUTW
- OUT DX,AX
- OUT DX,EAX
- OUT $20,AL
- OUT $101,AL
- OUT $20,AX
- OUT #101,AX
- OUT $20,EAX
- OUT $101,EAX
diff --git a/bin86-0.3/as/asm/movspec.asm b/bin86-0.3/as/asm/movspec.asm
deleted file mode 100644
index a4f9c15..0000000
--- a/bin86-0.3/as/asm/movspec.asm
+++ /dev/null
@@ -1,246 +0,0 @@
-mov eax,cr0
-mov eax,cr2
-mov eax,cr3
-mov eax,dr0
-mov eax,dr1
-mov eax,dr2
-mov eax,dr3
-mov eax,dr6
-mov eax,dr7
-mov eax,tr3
-mov eax,tr4
-mov eax,tr5
-mov eax,tr6
-mov eax,tr7
-
-mov cr0,eax
-mov cr2,eax
-mov cr3,eax
-mov dr0,eax
-mov dr1,eax
-mov dr2,eax
-mov dr3,eax
-mov dr6,eax
-mov dr7,eax
-mov tr3,eax
-mov tr4,eax
-mov tr5,eax
-mov tr6,eax
-mov tr7,eax
-
-
-mov ebx,cr0
-mov ebx,cr2
-mov ebx,cr3
-mov ebx,dr0
-mov ebx,dr1
-mov ebx,dr2
-mov ebx,dr3
-mov ebx,dr6
-mov ebx,dr7
-mov ebx,tr3
-mov ebx,tr4
-mov ebx,tr5
-mov ebx,tr6
-mov ebx,tr7
-
-mov cr0,ebx
-mov cr2,ebx
-mov cr3,ebx
-mov dr0,ebx
-mov dr1,ebx
-mov dr2,ebx
-mov dr3,ebx
-mov dr6,ebx
-mov dr7,ebx
-mov tr3,ebx
-mov tr4,ebx
-mov tr5,ebx
-mov tr6,ebx
-mov tr7,ebx
-
-
-mov ecx,cr0
-mov ecx,cr2
-mov ecx,cr3
-mov ecx,dr0
-mov ecx,dr1
-mov ecx,dr2
-mov ecx,dr3
-mov ecx,dr6
-mov ecx,dr7
-mov ecx,tr3
-mov ecx,tr4
-mov ecx,tr5
-mov ecx,tr6
-mov ecx,tr7
-
-mov cr0,ecx
-mov cr2,ecx
-mov cr3,ecx
-mov dr0,ecx
-mov dr1,ecx
-mov dr2,ecx
-mov dr3,ecx
-mov dr6,ecx
-mov dr7,ecx
-mov tr3,ecx
-mov tr4,ecx
-mov tr5,ecx
-mov tr6,ecx
-mov tr7,ecx
-
-
-mov edx,cr0
-mov edx,cr2
-mov edx,cr3
-mov edx,dr0
-mov edx,dr1
-mov edx,dr2
-mov edx,dr3
-mov edx,dr6
-mov edx,dr7
-mov edx,tr3
-mov edx,tr4
-mov edx,tr5
-mov edx,tr6
-mov edx,tr7
-
-mov cr0,edx
-mov cr2,edx
-mov cr3,edx
-mov dr0,edx
-mov dr1,edx
-mov dr2,edx
-mov dr3,edx
-mov dr6,edx
-mov dr7,edx
-mov tr3,edx
-mov tr4,edx
-mov tr5,edx
-mov tr6,edx
-mov tr7,edx
-
-
-mov esi,cr0
-mov esi,cr2
-mov esi,cr3
-mov esi,dr0
-mov esi,dr1
-mov esi,dr2
-mov esi,dr3
-mov esi,dr6
-mov esi,dr7
-mov esi,tr3
-mov esi,tr4
-mov esi,tr5
-mov esi,tr6
-mov esi,tr7
-
-mov cr0,esi
-mov cr2,esi
-mov cr3,esi
-mov dr0,esi
-mov dr1,esi
-mov dr2,esi
-mov dr3,esi
-mov dr6,esi
-mov dr7,esi
-mov tr3,esi
-mov tr4,esi
-mov tr5,esi
-mov tr6,esi
-mov tr7,esi
-
-
-mov edi,cr0
-mov edi,cr2
-mov edi,cr3
-mov edi,dr0
-mov edi,dr1
-mov edi,dr2
-mov edi,dr3
-mov edi,dr6
-mov edi,dr7
-mov edi,tr3
-mov edi,tr4
-mov edi,tr5
-mov edi,tr6
-mov edi,tr7
-
-mov cr0,edi
-mov cr2,edi
-mov cr3,edi
-mov dr0,edi
-mov dr1,edi
-mov dr2,edi
-mov dr3,edi
-mov dr6,edi
-mov dr7,edi
-mov tr3,edi
-mov tr4,edi
-mov tr5,edi
-mov tr6,edi
-mov tr7,edi
-
-
-mov esp,cr0
-mov esp,cr2
-mov esp,cr3
-mov esp,dr0
-mov esp,dr1
-mov esp,dr2
-mov esp,dr3
-mov esp,dr6
-mov esp,dr7
-mov esp,tr3
-mov esp,tr4
-mov esp,tr5
-mov esp,tr6
-mov esp,tr7
-
-mov cr0,esp
-mov cr2,esp
-mov cr3,esp
-mov dr0,esp
-mov dr1,esp
-mov dr2,esp
-mov dr3,esp
-mov dr6,esp
-mov dr7,esp
-mov tr3,esp
-mov tr4,esp
-mov tr5,esp
-mov tr6,esp
-mov tr7,esp
-
-
-mov ebp,cr0
-mov ebp,cr2
-mov ebp,cr3
-mov ebp,dr0
-mov ebp,dr1
-mov ebp,dr2
-mov ebp,dr3
-mov ebp,dr6
-mov ebp,dr7
-mov ebp,tr3
-mov ebp,tr4
-mov ebp,tr5
-mov ebp,tr6
-mov ebp,tr7
-
-mov cr0,ebp
-mov cr2,ebp
-mov cr3,ebp
-mov dr0,ebp
-mov dr1,ebp
-mov dr2,ebp
-mov dr3,ebp
-mov dr6,ebp
-mov dr7,ebp
-mov tr3,ebp
-mov tr4,ebp
-mov tr5,ebp
-mov tr6,ebp
-mov tr7,ebp
diff --git a/bin86-0.3/as/asm/pushpop.asm b/bin86-0.3/as/asm/pushpop.asm
deleted file mode 100644
index b45117a..0000000
--- a/bin86-0.3/as/asm/pushpop.asm
+++ /dev/null
@@ -1,86 +0,0 @@
- PUSH AL ; illeg
- PUSH AH ; illeg
- PUSH BL ; illeg
- PUSH BH ; illeg
- PUSH CL ; illeg
- PUSH CH ; illeg
- PUSH DL ; illeg
- PUSH DH ; illeg
- PUSH #1 ; illeg
- PUSH BYTE #1 ; illeg
- PUSH [BX] ; illeg
- PUSH BYTE [BX] ; illeg
- PUSH WORD #-1 ; right way to push a signed byte value
-
- PUSH AX
- PUSH BX
- PUSH CX
- PUSH DX
- PUSH SP
- PUSH BP
- PUSH SI
- PUSH DI
- PUSH CS
- PUSH DS
- PUSH ES
- PUSH FS
- PUSH GS
- PUSH SS
- PUSH #$1234 ; illeg
- PUSH WORD #$1234
- PUSH WORD [BX]
-
- PUSH EAX
- PUSH EBX
- PUSH ECX
- PUSH EDX
- PUSH ESP
- PUSH EBP
- PUSH ESI
- PUSH EDI
- PUSH #$12345678 ; illeg
- PUSH DWORD #$12345678
- PUSH DWORD [BX]
-
- POP AL ; illeg
- POP AH ; illeg
- POP BL ; illeg
- POP BH ; illeg
- POP CL ; illeg
- POP CH ; illeg
- POP DL ; illeg
- POP DH ; illeg
- POP #1 ; illeg
- POP BYTE #1 ; illeg
- POP [BX] ; illeg
- POP BYTE [BX] ; illeg
-
- POP AX
- POP BX
- POP CX
- POP DX
- POP SP
- POP BP
- POP SI
- POP DI
- POP CS ; illeg
- POP DS
- POP ES
- POP FS
- POP GS
- POP SS
- POP #$1234 ; illeg
- POP WORD #$1234 ; illeg
- POP WORD [BX]
-
- POP EAX
- POP EBX
- POP ECX
- POP EDX
- POP ESP
- POP EBP
- POP ESI
- POP EDI
- POP #$12345678 ; illeg
- POP DWORD #$12345678 ; illeg
- POP DWORD [BX]
diff --git a/bin86-0.3/as/asm/seg.asm b/bin86-0.3/as/asm/seg.asm
deleted file mode 100644
index 0394615..0000000
--- a/bin86-0.3/as/asm/seg.asm
+++ /dev/null
@@ -1,6 +0,0 @@
- SEG CS
- SEG DS
- SEG ES
- SEG FS
- SEG GS
- SEG SS
diff --git a/bin86-0.3/as/asm/shdouble.asm b/bin86-0.3/as/asm/shdouble.asm
deleted file mode 100644
index 1080ece..0000000
--- a/bin86-0.3/as/asm/shdouble.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-; SHDOUBLE.ASM
-
-ILLEGALS EQU 1
-
-; 0F A4 SHLD r/m16,r16,imm8 3/7
-; 0F A4 SHLD r/m32,r32,imm8 3/7
-; 0F A5 SHLD r/m16,r16,CL 3/7
-; 0F A5 SHLD r/m32,r32,CL 3/7
-
-; 0F AC SHRD r/m16,r16,imm8 3/7
-; 0F AC SHRD r/m32,r32,imm8 3/7
-; 0F AD SHRD r/m16,r16,CL 3/7
-; 0F AD SHRD r/m32,r32,CL 3/7
-
-IF ILLEGALS
- SHLD AL,BL,8 ; byte size
- SHLD AX,8,8 ; immediate source
- SHLD AX,DS,8 ; segment register
- SHLD AX,[BX],8 ; non-register source
- SHLD AX,BX,256 ; shift count too big
- SHLD AL,BL,8 ; byte size
-ENDIF
-
- SHLD BX,CX,3
- SHLD EDX,ESI,1
- SHLD CX,BX,CL
- SHLD ESI,EDX,1
- SHLD [BX],CX,3
- SHLD [BX],ECX,1
- SHLD [SI],BX,CL
- SHLD [SI],EBX,CL
-
- SHRD BX,CX,3
- SHRD CX,BX,CL
diff --git a/bin86-0.3/as/asm/shift.asm b/bin86-0.3/as/asm/shift.asm
deleted file mode 100644
index 35cc23f..0000000
--- a/bin86-0.3/as/asm/shift.asm
+++ /dev/null
@@ -1,119 +0,0 @@
- RCL AL,CL
- RCL AH,CL
- RCL BL,CL
- RCL BH,CL
- RCL CL,CL
- RCL CH,CL
- RCL DL,CL
- RCL DH,CL
- RCL #1,CL ; illeg
- RCL [BX],CL ; illeg
- RCL BYTE [BX],CL
-
- RCL AX,CL
- RCL BX,CL
- RCL CX,CL
- RCL DX,CL
- RCL SP,CL
- RCL BP,CL
- RCL SI,CL
- RCL DI,CL
- RCL CS,CL ; illeg
- RCL DS,CL ; illeg
- RCL ES,CL ; illeg
- RCL FS,CL ; illeg
- RCL GS,CL ; illeg
- RCL WORD [BX],CL
-
- RCL EAX,CL
- RCL EBX,CL
- RCL ECX,CL
- RCL EDX,CL
- RCL ESP,CL
- RCL EBP,CL
- RCL ESI,CL
- RCL EDI,CL
- RCL DWORD [BX],CL
-
- RCL AL,1
- RCL AH,1
- RCL BL,1
- RCL BH,1
- RCL CL,1
- RCL CH,1
- RCL DL,1
- RCL DH,1
- RCL #1,1 ; illeg
- RCL [BX],1 ; illeg
- RCL BYTE [BX],1
-
- RCL AX,1
- RCL BX,1
- RCL CX,1
- RCL DX,1
- RCL SP,1
- RCL BP,1
- RCL SI,1
- RCL DI,1
- RCL CS,1 ; illeg
- RCL DS,1 ; illeg
- RCL ES,1 ; illeg
- RCL FS,1 ; illeg
- RCL GS,1 ; illeg
- RCL WORD [BX],1
-
- RCL EAX,1
- RCL EBX,1
- RCL ECX,1
- RCL EDX,1
- RCL ESP,1
- RCL EBP,1
- RCL ESI,1
- RCL EDI,1
- RCL DWORD [BX],1
-
- RCL AL,15
- RCL AH,15
- RCL BL,15
- RCL BH,15
- RCL CL,15
- RCL CH,15
- RCL DL,15
- RCL DH,15
- RCL #1,15 ; illeg
- RCL [BX],15 ; illeg
- RCL BYTE [BX],15
- RCL AL,$1000
-
- RCL AX,15
- RCL BX,15
- RCL CX,15
- RCL DX,15
- RCL SP,15
- RCL BP,15
- RCL SI,15
- RCL DI,15
- RCL CS,15 ; illeg
- RCL DS,15 ; illeg
- RCL ES,15 ; illeg
- RCL FS,15 ; illeg
- RCL GS,15 ; illeg
- RCL WORD [BX],15
-
- RCL EAX,15
- RCL EBX,15
- RCL ECX,15
- RCL EDX,15
- RCL ESP,15
- RCL EBP,15
- RCL ESI,15
- RCL EDI,15
- RCL DWORD [BX],15
-
- RCR AX,7
- ROL AX,7
- ROR AX,7
- SAL AX,7
- SAR AX,7
- SHL AX,7
- SHR AX,7
diff --git a/bin86-0.3/as/asm/summary.as b/bin86-0.3/as/asm/summary.as
deleted file mode 100644
index cd62e37..0000000
--- a/bin86-0.3/as/asm/summary.as
+++ /dev/null
@@ -1,385 +0,0 @@
-general:
- ; AL,imm8
- ; AX,imm16
- ; EAX,imm32
- ; r/m8,imm8
- ; r/m16,imm16
- ; r/m32.imm32
- ; r/m16,signed imm8
- ; r/m32,signed imm8
- ; r/m8,r8
- ; r/m16,r16
- ; r/m32,r32
- ; r8,r/m8
- ; r16,r/m16
- ; r32,r/m32
-
-shiftcount:
- ; 1
- ; CL
- ; imm8
-unary alterable:
- ; r/m8
- ; r/m16
- ; r/m32
-
- AAA
- AAD ; [unsupported base]
- AAM ; [unsupported base]
- AAS
- ADC ; general
- ADD ; general
- AND ; general
- ARPL ; r/m16,r16
- BOUND ; r16,m16&16
- BOUND ; r32,m32&32
- BSF ; r16,r/m16
- BSF ; r32,r/m32
- BSR ; r16,r/m16
- BSR ; r32,r/m32
- BSWAP ; r32
- BT ; r/m16,r16
- BT ; r/m32,r32
- BT ; r/m16,imm8
- BT ; r/m32,imm8
- BTC ; r/m16,r16
- BTC ; r/m32,r32
- BTC ; r/m16,imm8
- BTC ; r/m32,imm8
- BTR ; r/m16,r16
- BTR ; r/m32,r32
- BTR ; r/m16,imm8
- BTR ; r/m32,imm8
- BTS ; r/m16,r16
- BTS ; r/m32,r32
- BTS ; r/m16,imm8
- BTS ; r/m32,imm8
- CALL ; rel16
- CALL ; r/m16
- CALL ; ptr16:16
- CALL ; m16:16
- CALL ; rel32
- CALL ; r/m32
- CALL ; ptr16:32
- CALL ; m16:32
- CBW
- CDQ
- CLC
- CLD
- CLI
- CLTS
- CMC
- CMP ; general
- CMPS ; [segreg:]m8,m8
- CMPS ; [segreg:]m16,m16
- CMPS ; [segreg:]m32,m32
- CMPSB
- CMPSW
- CMPSD
- CMPXCHG ; r/m8,r8
- CMPXCHG ; r/m16,r16
- CMPXCHG ; r/m32,r32
- CWD
- CWDE
- DAA
- DAS
- DEC ; unary alterable
- DEC ; r16
- DEC ; r32
- DIV ; AL,r/m8
- DIV ; AX,r/m16
- DIV ; EAX,r/m32
- ENTER ; imm16,imm8
- HLT
- IDIV ; AL,r/m8
- IDIV ; AX,r/m16
- IDIV ; EAX,r/m32
- IMUL ; r/m8
- IMUL ; r/m16
- IMUL ; r/m32
- IMUL ; r16,r/m16
- IMUL ; r32,r/m32
- IMUL ; r16,r/m16,imm8
- IMUL ; r32,r/m32,imm8
- IMUL ; r16,imm8
- IMUL ; r32,imm8
- IMUL ; r16,r/m16,imm16
- IMUL ; r32,r/m32,imm32
- IMUL ; r16,imm16
- IMUL ; r32,imm32
- IN ; AL,imm8
- IN ; AX,imm8
- IN ; EAX,imm8
- IN ; AL,DX
- IN ; AX,DX
- IN ; EAX,DX
- INC ; unary alterable
- INC ; r16
- INC ; r32
- INSB
- INSW
- INSD
- INT ; imm8
- INTO
- INVD
- INVLPG ; m
- IRET
- IRETD
- JCC ; rel8
- JCC ; rel16/32
- JA
- JAE
- JB
- JBE
- JC
- JCXZ
- JECXZ
- JE
- JG
- JGE
- JL
- JLE
- JNA
- JNAE
- JNB
- JNBE
- JNC
- JNE
- JNG
- JNGE
- JNL
- JNLE
- JNO
- JNP
- JNS
- JNZ
- JO
- JP
- JPE
- JPO
- JS
- JZ
- JMP ; rel8
- JMP ; rel16
- JMP ; r/m16
- JMP ; ptr16:16
- JMP ; m16:16
- JMP ; rel32
- JMP ; r/m32
- JMP ; ptr16:32
- JMP ; m16:32
- LAHF
- LAR ; r16,r/m16
- LAR ; r32,r/m32
- LEA ; r16,m
- LEA ; r32,m
- LEAVE
- LGDT ; m16&32
- LIDT ; m16&32
- LDS ; r16,m16:16
- LDS ; r32,m16:32
- LES ; r16,m16:16
- LES ; r32,m16:32
- LFS ; r16,m16:16
- LFS ; r32,m16:32
- LGS ; r16,m16:16
- LGS ; r32,m16:32
- LSS ; r16,m16:16
- LSS ; r32,m16:32
- LLDT ; r/m16
- LMSW ; r/m16
- LOCK
- LODS ; [segreg:]m8
- LODS ; [segreg:]m16
- LODS ; [segreg:]m32
- LODSB
- LODSW
- LODSD
- LOOP ; rel8
- LOOPE ; rel8
- LOOPZ ; rel8
- LOOPNE ; rel8
- LOOPNZ ; rel8
- LSL ; r16,r/m16
- LSL ; r32,r/m32
- LTR ; r/m16
- MOV ; r/m8,r8
- MOV ; r/m16,r16
- MOV ; r/m32,r32
- MOV ; r8,r/m8
- MOV ; r16,r/m16
- MOV ; r32,r/m32
- MOV ; r/m16,Sreg
- MOV ; Sreg,r/m16
- MOV ; AL,moffs8
- MOV ; AX,moffs16
- MOV ; EAX,moffs32
- MOV ; moffs8,AL
- MOV ; moffs16,AX
- MOV ; moffs32,EAX
- MOV ; r8,imm8
- MOV ; r16,imm16
- MOV ; r32,imm32
- MOV ; r32,CR0/CR2/CR3
- MOV ; r/m8,imm8
- MOV ; r/m16,imm16
- MOV ; r/m32,imm32
- MOV ; r32,CR0/CR2/CR3
- MOV ; CR0/CR2/CR3,r32
- MOV ; r32,DR0/DR1/DR2/DR3/DR6/DR7
- MOV ; DR0/DR1/DR2/DR3/DR6/DR7,r32
- MOV ; r32,TR6/TR7
- MOV ; TR6/TR7,r32
- MOVS ; [segreg:]m8,m8
- MOVS ; [segreg:]m16,m16
- MOVS ; [segreg:]m32,m32
- MOVSB
- MOVSW
- MOVSD
- MOVSX ; r16,r/m8
- MOVSX ; r32,r/m8
- MOVSX ; r32,r/m16
- MOVZX ; r16,r/m8
- MOVZX ; r32,r/m8
- MOVZX ; r32,r/m16
- MUL ; AL,r/m8
- MUL ; AX,r/m16
- MUL ; EAX,r/m32
- NEG ; unary alterable
- NOP
- NOT ; unary alterable
- OR ; general
- OUT ; imm8,AL
- OUT ; imm8,AX
- OUT ; imm8,EAX
- OUT ; DX,AL
- OUT ; DX,AX
- OUT ; DX,EAX
- OUTS ; [segreg:]m8
- OUTS ; [segreg:]m16
- OUTS ; [segreg:]m32
- OUTSB
- OUTSW
- OUTSD
- POP ; m16
- POP ; m32
- POP ; r16
- POP ; r32
- POP ; DS
- POP ; ES
- POP ; FS
- POP ; GS
- POP ; SS
- POPA
- POPAD
- POPF
- POPFD
- PUSH ; m16
- PUSH ; m32
- PUSH ; r16
- PUSH ; r32
- PUSH ; imm8
- PUSH ; imm16
- PUSH ; imm32
- PUSH ; CS
- PUSH ; DS
- PUSH ; ES
- PUSH ; FS
- PUSH ; GS
- PUSH ; SS
- PUSHA
- PUSHAD
- PUSHF
- PUSHFD
- RCL ; shiftcount
- RCR ; shiftcount
- ROL ; shiftcount
- ROR ; shiftcount
- REP ; INS/MOVS/OUTS/STOS
- REPE ; CMPS/SCAS
- REPNE ; CMPS/SCAS
- RET
- RET ; imm16
- SAHF
- SAL ; shiftcount
- SAR ; shiftcount
- SHL ; shiftcount
- SHR ; shiftcount
- SBB ; general
- SCASB
- SCASW
- SCASD
- SETA ; r/m8
- SETAE ; r/m8
- SETB ; r/m8
- SETBE ; r/m8
- SETC ; r/m8
- SETE ; r/m8
- SETG ; r/m8
- SETGE ; r/m8
- SETL ; r/m8
- SETLE ; r/m8
- SETNA ; r/m8
- SETNAE ; r/m8
- SETNB ; r/m8
- SETNBE ; r/m8
- SETNC ; r/m8
- SETNE ; r/m8
- SETNG ; r/m8
- SETNGE ; r/m8
- SETNL ; r/m8
- SETNLE ; r/m8
- SETNO ; r/m8
- SETNP ; r/m8
- SETNS ; r/m8
- SETNZ ; r/m8
- SETO ; r/m8
- SETP ; r/m8
- SETPE ; r/m8
- SETPO ; r/m8
- SETS ; r/m8
- SETZ ; r/m8
- SGDT ; m
- SHLD ; r/m16,r16,imm8
- SHLD ; r/m32,r32,imm8
- SHLD ; r/m16,r16,CL
- SHLD ; r/m32,r32,CL
- SHRD ; r/m16,r16,imm8
- SHRD ; r/m32,r32,imm8
- SHRD ; r/m16,r16,CL
- SHRD ; r/m32,r32,CL
- SIDT ; m
- SLDT ; r/m16
- SMSW ; r/m16
- STC
- STD
- STI
- STOSB
- STOSW
- STOSD
- STR ; r/m16
- SUB ; general
- TEST ; AL,imm8
- TEST ; AX,imm16
- TEST ; EAX,imm32
- TEST ; r/m8,imm8
- TEST ; r/m16,imm16
- TEST ; r/m32,imm32
- TEST ; r/m8,r8
- TEST ; r/m16,r16
- TEST ; r/m32/r32
- VERR ; r/m16
- VERW ; r/m16
- WAIT
- WBINVD
- XADD ; r/m8,r8
- XADD ; r/m16,r16
- XADD ; r/m32,r32
- XCHG ; AX,r16
- XCHG ; EAX,r32
- XCHG ; r/m8,r8
- XCHG ; r/m16,r16
- XCHG ; r/m32,r32
- XLAT ; [segreg:]m8
- XLATB
- XOR ; general
diff --git a/bin86-0.3/as/asm/xchg.asm b/bin86-0.3/as/asm/xchg.asm
deleted file mode 100644
index f05157f..0000000
--- a/bin86-0.3/as/asm/xchg.asm
+++ /dev/null
@@ -1,103 +0,0 @@
- XCHG AX,BL ; illeg
- XCHG AX,BYTE [BX] ; illeg
- XCHG AX,DS ; illeg
- XCHG AX,#1 ; illeg
-
- XCHG AX,AX
- XCHG AX,BX
- XCHG AX,CX
- XCHG AX,DX
- XCHG AX,SP
- XCHG AX,BP
- XCHG AX,SI
- XCHG AX,DI
-
- XCHG AX,AX
- XCHG BX,AX
- XCHG CX,AX
- XCHG DX,AX
- XCHG SP,AX
- XCHG BP,AX
- XCHG SI,AX
- XCHG DI,AX
-
- XCHG EAX,EAX
- XCHG EAX,EBX
- XCHG EAX,ECX
- XCHG EAX,EDX
- XCHG EAX,ESP
- XCHG EAX,EBP
- XCHG EAX,ESI
- XCHG EAX,EDI
-
- XCHG EAX,EAX
- XCHG EBX,EAX
- XCHG ECX,EAX
- XCHG EDX,EAX
- XCHG ESP,EAX
- XCHG EBP,EAX
- XCHG ESI,EAX
- XCHG EDI,EAX
-
- XCHG AL,AL
- XCHG AL,AH
- XCHG AL,BL
- XCHG AL,BH
- XCHG BL,CL
- XCHG BL,CH
- XCHG BL,DL
- XCHG BL,DH
-
- XCHG [BX],AL
- XCHG [BX],AH
- XCHG [BX],BL
- XCHG [BX],BH
- XCHG [BX],CL
- XCHG [BX],CH
- XCHG [BX],DL
- XCHG [BX],DH
-
- XCHG AL,[BX]
- XCHG AH,[BX]
- XCHG BL,[BX]
- XCHG BH,[BX]
- XCHG CL,[BX]
- XCHG CH,[BX]
- XCHG DL,[BX]
- XCHG DH,[BX]
-
- XCHG [BX],AX
- XCHG [BX],BX
- XCHG [BX],CX
- XCHG [BX],DX
- XCHG [BX],SP
- XCHG [BX],BP
- XCHG [BX],SI
- XCHG [BX],DI
-
- XCHG AX,[BX]
- XCHG BX,[BX]
- XCHG CX,[BX]
- XCHG DX,[BX]
- XCHG SP,[BX]
- XCHG BP,[BX]
- XCHG SI,[BX]
- XCHG DI,[BX]
-
- XCHG [BX],EAX
- XCHG [BX],EBX
- XCHG [BX],ECX
- XCHG [BX],EDX
- XCHG [BX],ESP
- XCHG [BX],EBP
- XCHG [BX],ESI
- XCHG [BX],EDI
-
- XCHG AX,[EBX]
- XCHG BX,[EBX]
- XCHG CX,[EBX]
- XCHG DX,[EBX]
- XCHG SP,[EBX]
- XCHG BP,[EBX]
- XCHG SI,[EBX]
- XCHG DI,[EBX]