Fix to cpu emulation mode
This commit is contained in:
@@ -393,6 +393,7 @@ NEWSYM joinflags
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -448,6 +449,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
@@ -537,6 +539,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -592,6 +595,7 @@ COPemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
|
||||
@@ -382,6 +382,7 @@ EXTSYM dmadata
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -437,6 +438,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
@@ -535,6 +537,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -590,6 +593,7 @@ COPemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
|
||||
@@ -392,6 +392,7 @@ EXTSYM dmadata
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -447,6 +448,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
@@ -545,6 +547,7 @@ BRKemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpb]
|
||||
mov [eax+ebx],cl
|
||||
@@ -600,6 +603,7 @@ COPemulmode
|
||||
sub ebx,eax
|
||||
mov [xpc],bx
|
||||
mov eax,[wramdata]
|
||||
xor ebx,ebx
|
||||
mov bx,[xs]
|
||||
mov cl,[xpc+1]
|
||||
mov [eax+ebx],cl
|
||||
|
||||
@@ -1903,8 +1903,13 @@ COp5B: ; TCD i
|
||||
endloop
|
||||
COp1B: ; TCS i
|
||||
mov ax,[xa]
|
||||
test byte[xe],1
|
||||
jnz .emul
|
||||
mov [xs],ax
|
||||
endloop
|
||||
.emul
|
||||
mov [xs],al
|
||||
endloop
|
||||
COp7B: ; TDC i
|
||||
mov ax,[xd]
|
||||
mov [xa],ax
|
||||
|
||||
@@ -1896,8 +1896,13 @@ COp5B: ; TCD i
|
||||
endloop
|
||||
COp1B: ; TCS i
|
||||
mov ax,[xa]
|
||||
test byte[xe],1
|
||||
jnz .emul
|
||||
mov [xs],ax
|
||||
endloop
|
||||
.emul
|
||||
mov [xs],al
|
||||
endloop
|
||||
COp7B: ; TDC i
|
||||
mov ax,[xd]
|
||||
mov [xa],ax
|
||||
|
||||
@@ -1896,8 +1896,13 @@ COp5B: ; TCD i
|
||||
endloop
|
||||
COp1B: ; TCS i
|
||||
mov ax,[xa]
|
||||
test byte[xe],1
|
||||
jnz .emul
|
||||
mov [xs],ax
|
||||
endloop
|
||||
.emul
|
||||
mov [xs],al
|
||||
endloop
|
||||
COp7B: ; TDC i
|
||||
mov ax,[xd]
|
||||
mov [xa],ax
|
||||
|
||||
@@ -152,6 +152,7 @@ NEWSYM NMIemulmode
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov [xpb],bh
|
||||
mov bl,[xpb]
|
||||
xor eax,eax
|
||||
mov ax,[nmiv8]
|
||||
@@ -320,6 +321,7 @@ NEWSYM IRQemulmode
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov [xpb],bh
|
||||
mov bl,[xpb]
|
||||
xor eax,eax
|
||||
mov ax,[irqv8]
|
||||
@@ -428,6 +430,7 @@ NEWSYM IRQemulmodedeb
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov [xpb],bh
|
||||
mov bl,[xpb]
|
||||
xor eax,eax
|
||||
mov ax,[irqv8]
|
||||
@@ -534,6 +537,7 @@ NEWSYM NMIemulmodedeb
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov [xpb],bh
|
||||
mov bl,[xpb]
|
||||
xor eax,eax
|
||||
mov ax,[nmiv8]
|
||||
|
||||
Reference in New Issue
Block a user