Rewrote mode 4 fix

This commit is contained in:
pagefault
2002-06-13 22:45:47 +00:00
parent 529cf3b003
commit 107dd8aa80
2 changed files with 15 additions and 42 deletions

View File

@@ -2887,11 +2887,11 @@ EXTSYM drawmode7ngextbg,drawmode7ngextbg2
shr edx,3
shl edx,6
xor eax,eax
cmp byte[BGMA+ebx],4
je .offsetmode4
mov ax,[BGPT3+ebx*2]
.offsetmode4
cmp dx,0
jl .isneg
add ax,dx
.isneg
xor edx,edx
mov dx,[BG3SXl+ebx*2]
and dx,0F8h
@@ -2955,21 +2955,6 @@ EXTSYM drawmode7ngextbg,drawmode7ngextbg2
add eax,ecx
add [ofsmtptr],ecx
mov [ofsmmptr],eax
mov word[bgtxadd2],0
cmp word[BGPT3X+ebx*2],0
je .yesoverfl
mov cx,word[BG3SXl+ebx*2]
add cx,16
test cx,100h
jz .notoverfl
add dword[ofsmcptr],800h
sub word[bgtxadd2],800h
jmp .yesoverfl
.notoverfl
add word[bgtxadd2],800h
.yesoverfl
mov dword[ofshvaladd],0
mov ecx,[BGOPT1+ebx*2+%1*512]
mov edx,[BGMA+ebx]
@@ -3254,11 +3239,11 @@ EXTSYM drawmode7ngextbg,drawmode7ngextbg2
shr edx,3
shl edx,6
xor eax,eax
cmp byte[BGMA+ebx],4
je .offsetmode4
mov ax,[BGPT3+ebx*2]
.offsetmode4
cmp dx,0
jl .isneg
add ax,dx
.isneg
xor edx,edx
mov dx,[BG3SXl+ebx*2]
and dx,0F8h
@@ -3290,21 +3275,6 @@ EXTSYM drawmode7ngextbg,drawmode7ngextbg2
mov eax,[BGPT1+ebx*2+%1*512]
mov [ofsmtptr],eax
mov [ofsmtptrs],eax
mov word[bgtxadd2],0
cmp word[BGPT3X+ebx*2],0
je .yesoverfl
mov cx,word[BG3SXl+ebx*2]
add cx,16
test cx,100h
jz .notoverfl
add dword[ofsmcptr],800h
sub word[bgtxadd2],800h
jmp .yesoverfl
.notoverfl
add word[bgtxadd2],800h
.yesoverfl
mov ecx,[BG1SXl+ebx*2+%1*512]
mov edx,[BGPT1X+ebx*2+%1*512]
test ecx,100h

View File

@@ -3131,7 +3131,10 @@ EXTSYM osm2dis
shl edx,6
xor eax,eax
mov ax,[BGPT3+ebx*2]
cmp dx,0
jl .isneg1
add ax,dx
.isneg1
xor edx,edx
mov dx,[BG3SXl+ebx*2]
and dx,0F8h
@@ -3299,11 +3302,11 @@ EXTSYM osm2dis
shr edx,3
shl edx,6
xor eax,eax
cmp byte[BGMA+ebx],4
je .offsetmode4
mov ax,[BGPT3+ebx*2]
.offsetmode4
cmp dx,0
jl .isneg2
add ax,dx
.isneg2
xor edx,edx
mov dx,[BG3SXl+ebx*2]
and dx,0F8h
@@ -3705,11 +3708,11 @@ EXTSYM osm2dis
shr edx,3
shl edx,6
xor eax,eax
cmp byte[BGMA+ebx],4
je .offsetmode4
mov ax,[BGPT3+ebx*2]
.offsetmode4
cmp dx,0
jl .isneg3
add ax,dx
.isneg3
xor edx,edx
mov dx,[BG3SXl+ebx*2]
and dx,0F8h