diff options
Diffstat (limited to 'bin86-0.3/as/asm')
-rw-r--r-- | bin86-0.3/as/asm/calljmp.asm | 70 | ||||
-rw-r--r-- | bin86-0.3/as/asm/ea.asm | 109 | ||||
-rw-r--r-- | bin86-0.3/as/asm/each.asm | 145 | ||||
-rw-r--r-- | bin86-0.3/as/asm/easlow.as | 1219 | ||||
-rw-r--r-- | bin86-0.3/as/asm/f.asm | 114 | ||||
-rw-r--r-- | bin86-0.3/as/asm/fadd.asm | 271 | ||||
-rw-r--r-- | bin86-0.3/as/asm/farcall.asm | 10 | ||||
-rw-r--r-- | bin86-0.3/as/asm/group1.asm | 31 | ||||
-rw-r--r-- | bin86-0.3/as/asm/group6.asm | 24 | ||||
-rw-r--r-- | bin86-0.3/as/asm/group7.asm | 34 | ||||
-rw-r--r-- | bin86-0.3/as/asm/imul.asm | 33 | ||||
-rw-r--r-- | bin86-0.3/as/asm/incdec.asm | 83 | ||||
-rw-r--r-- | bin86-0.3/as/asm/inher.asm | 127 | ||||
-rw-r--r-- | bin86-0.3/as/asm/inout.asm | 25 | ||||
-rw-r--r-- | bin86-0.3/as/asm/movspec.asm | 246 | ||||
-rw-r--r-- | bin86-0.3/as/asm/pushpop.asm | 86 | ||||
-rw-r--r-- | bin86-0.3/as/asm/seg.asm | 6 | ||||
-rw-r--r-- | bin86-0.3/as/asm/shdouble.asm | 34 | ||||
-rw-r--r-- | bin86-0.3/as/asm/shift.asm | 119 | ||||
-rw-r--r-- | bin86-0.3/as/asm/summary.as | 385 | ||||
-rw-r--r-- | bin86-0.3/as/asm/xchg.asm | 103 |
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] |