Updated video code again to fix compile problems
This commit is contained in:
@@ -15,6 +15,8 @@
|
||||
;along with this program; if not, write to the Free Software
|
||||
;Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
ALIGN32
|
||||
|
||||
%include "macros.mac"
|
||||
|
||||
EXTSYM vesa2selec,vidbuffer,GUIOn,MMXSupport,resolutn,En2xSaI,antienab,scanlines
|
||||
@@ -38,7 +40,6 @@ NEWSYM copy640x480x16bwin
|
||||
cmp byte[curblank],40h
|
||||
jne .startcopy
|
||||
ret
|
||||
ALIGN4
|
||||
.startcopy
|
||||
push es
|
||||
mov ax,ds
|
||||
@@ -74,7 +75,6 @@ ALIGN4
|
||||
cmp byte[newengen],0
|
||||
je .loopa
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopa
|
||||
mov ecx,256
|
||||
cmp byte[ebx],1
|
||||
@@ -118,11 +118,9 @@ ALIGN4
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmx2
|
||||
ret
|
||||
ALIGN4
|
||||
.mmx2
|
||||
emms
|
||||
ret
|
||||
ALIGN4
|
||||
.yeshires
|
||||
mov byte[ebx],0
|
||||
test byte[res512switch],1
|
||||
@@ -140,7 +138,6 @@ ALIGN4
|
||||
pop ebx
|
||||
add edi,[NumBytesPerLine]
|
||||
jmp .return
|
||||
ALIGN4
|
||||
.rightside
|
||||
push ebx
|
||||
mov ebx,[NumBytesPerLine]
|
||||
@@ -155,7 +152,6 @@ ALIGN4
|
||||
pop ebx
|
||||
add edi,[NumBytesPerLine]
|
||||
jmp .return
|
||||
ALIGN4
|
||||
.mmx
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,64
|
||||
@@ -192,12 +188,10 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .mmxr2
|
||||
jmp .return
|
||||
ALIGN4
|
||||
.yeshiresng
|
||||
call HighResProc
|
||||
jmp .return
|
||||
|
||||
ALIGN4
|
||||
.bng
|
||||
mov eax,[esi+75036*4-2]
|
||||
mov ax,[esi]
|
||||
@@ -219,7 +213,6 @@ ALIGN4
|
||||
jnz .bngb
|
||||
jmp .return
|
||||
|
||||
ALIGN4
|
||||
.scanlines
|
||||
mov ebx,hirestiledat+1
|
||||
cmp byte[GUIOn],1
|
||||
@@ -227,7 +220,6 @@ ALIGN4
|
||||
cmp byte[newengen],0
|
||||
je .loopab
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopab
|
||||
mov ecx,256
|
||||
cmp byte[ebx],1
|
||||
@@ -236,7 +228,6 @@ ALIGN4
|
||||
jbe .ignorehrb
|
||||
call HighResProc
|
||||
jmp .returnb
|
||||
ALIGN4
|
||||
.ignorehrb
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmxsl
|
||||
@@ -253,7 +244,6 @@ ALIGN4
|
||||
add esi,64
|
||||
add edi,[AddEndBytes]
|
||||
mov ecx,256
|
||||
ALIGN4
|
||||
.fslloop
|
||||
mov dword[edi],0
|
||||
add edi,4
|
||||
@@ -268,7 +258,7 @@ ALIGN4
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmx2
|
||||
ret
|
||||
ALIGN4
|
||||
|
||||
.yeshiresb
|
||||
mov byte[ebx],0
|
||||
test byte[res512switch],1
|
||||
@@ -281,7 +271,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .bb
|
||||
jmp .returnb
|
||||
ALIGN4
|
||||
.rightsideb
|
||||
.cb
|
||||
mov ax,[esi]
|
||||
@@ -291,7 +280,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .cb
|
||||
jmp .returnb
|
||||
ALIGN4
|
||||
.mmxsl
|
||||
mov ecx,64
|
||||
.mmxrsl
|
||||
@@ -308,7 +296,6 @@ ALIGN4
|
||||
jnz .mmxrsl
|
||||
jmp .returnb
|
||||
|
||||
ALIGN4
|
||||
.halfscanlines
|
||||
mov ebx,hirestiledat+1
|
||||
cmp byte[GUIOn],1
|
||||
@@ -316,13 +303,11 @@ ALIGN4
|
||||
cmp byte[newengen],0
|
||||
je .loopabh
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopabh
|
||||
cmp byte[ebx],1
|
||||
jbe .ignorehrbh
|
||||
call HighResProc
|
||||
jmp .returnbh
|
||||
ALIGN4
|
||||
.ignorehrbh
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmxslh
|
||||
@@ -360,7 +345,6 @@ ALIGN4
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmx2
|
||||
ret
|
||||
ALIGN4
|
||||
.mmxslh
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,64
|
||||
@@ -407,7 +391,6 @@ ALIGN4
|
||||
jnz .mmxr2h
|
||||
jmp .returnbh
|
||||
|
||||
ALIGN4
|
||||
.quartscanlines
|
||||
mov [lineleft],dl
|
||||
mov ebx,hirestiledat+1
|
||||
@@ -416,13 +399,11 @@ ALIGN4
|
||||
cmp byte[newengen],0
|
||||
je .loopabh2
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopabh2
|
||||
cmp byte[ebx],1
|
||||
jbe .ignorehrbh2
|
||||
call HighResProc
|
||||
jmp .returnbh2
|
||||
ALIGN4
|
||||
.ignorehrbh2
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmxslh2
|
||||
@@ -464,7 +445,6 @@ ALIGN4
|
||||
cmp byte[MMXSupport],1
|
||||
je .mmx2
|
||||
ret
|
||||
ALIGN4
|
||||
.mmxslh2
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,64
|
||||
@@ -511,7 +491,6 @@ ALIGN4
|
||||
jnz .mmxr2h2
|
||||
jmp .returnbh2
|
||||
|
||||
ALIGN4
|
||||
HighResProc:
|
||||
mov ecx,256
|
||||
cmp byte[ebx],3
|
||||
@@ -544,7 +523,6 @@ HighResProc:
|
||||
add edi,[NumBytesPerLine]
|
||||
.nofielde
|
||||
ret
|
||||
ALIGN4
|
||||
.hiresmode7
|
||||
cmp byte[MMXSupport],1
|
||||
je .yeshiresngmmxmode7
|
||||
@@ -572,7 +550,6 @@ ALIGN4
|
||||
jnz .a2b
|
||||
sub esi,75036*4
|
||||
ret
|
||||
ALIGN4
|
||||
.yeshiresngmmxmode7
|
||||
mov ecx,64
|
||||
.mmxr
|
||||
@@ -605,7 +582,6 @@ ALIGN4
|
||||
jnz .mmxrb
|
||||
sub esi,75036*4
|
||||
ret
|
||||
ALIGN4
|
||||
.hires
|
||||
cmp byte[MMXSupport],1
|
||||
je .yeshiresngmmx
|
||||
@@ -626,7 +602,6 @@ ALIGN4
|
||||
add edi,[NumBytesPerLine]
|
||||
.lowerfield
|
||||
ret
|
||||
ALIGN4
|
||||
.nofieldb
|
||||
cmp byte[scanlines],1
|
||||
je .scanlines
|
||||
@@ -646,10 +621,8 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .bngb
|
||||
ret
|
||||
ALIGN4
|
||||
.scanlines
|
||||
ret
|
||||
ALIGN4
|
||||
.yeshiresngmmx
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,64
|
||||
@@ -678,7 +651,6 @@ ALIGN4
|
||||
add edi,[NumBytesPerLine]
|
||||
.lowerfieldb
|
||||
ret
|
||||
ALIGN4
|
||||
.nofieldc
|
||||
cmp byte[scanlines],1
|
||||
je .scanlines
|
||||
@@ -711,7 +683,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .mmxr2
|
||||
ret
|
||||
ALIGN4
|
||||
.antialias
|
||||
add edi,[AddEndBytes]
|
||||
mov eax,[spritetablea]
|
||||
@@ -745,7 +716,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .mmxr2aa
|
||||
ret
|
||||
ALIGN4
|
||||
.halfscanlines
|
||||
add edi,[AddEndBytes]
|
||||
sub esi,256*2
|
||||
@@ -762,7 +732,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .abhs
|
||||
ret
|
||||
ALIGN4
|
||||
.quartscanlines
|
||||
add edi,[AddEndBytes]
|
||||
sub esi,256*2
|
||||
@@ -782,7 +751,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .abhs2
|
||||
ret
|
||||
ALIGN4
|
||||
.halfscanlinesmmx
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,32
|
||||
@@ -811,7 +779,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .mmxr2h
|
||||
ret
|
||||
ALIGN4
|
||||
.quartscanlinesmmx
|
||||
mov eax,[spritetablea]
|
||||
mov ecx,64
|
||||
@@ -841,7 +808,6 @@ ALIGN4
|
||||
jnz .mmxr2h2
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
Process2xSaIwin:
|
||||
mov ebx,hirestiledat+1
|
||||
cmp byte[GUIOn],1
|
||||
@@ -849,7 +815,6 @@ Process2xSaIwin:
|
||||
cmp byte[newengen],0
|
||||
je .loopabi
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopabi
|
||||
mov [InterPtr],ebx
|
||||
|
||||
@@ -881,7 +846,6 @@ ALIGN4
|
||||
jnz .nextb
|
||||
pop ebx
|
||||
jmp .returninterp
|
||||
ALIGN4
|
||||
.ignorehr
|
||||
|
||||
;srcPtr equ 8
|
||||
@@ -911,11 +875,9 @@ ALIGN4
|
||||
je .super2xSaI
|
||||
call _2xSaILineW
|
||||
jmp .normal
|
||||
ALIGN4
|
||||
.supereagle
|
||||
call _2xSaISuperEagleLineW
|
||||
jmp .normal
|
||||
ALIGN4
|
||||
.super2xSaI
|
||||
call _2xSaISuper2xSaILineW
|
||||
.normal
|
||||
@@ -930,7 +892,6 @@ ALIGN4
|
||||
jnz .next
|
||||
mov ecx,256
|
||||
sub edi,[NumBytesPerLine]
|
||||
ALIGN4
|
||||
.loop
|
||||
mov dword[es:edi],0
|
||||
add edi,4
|
||||
@@ -939,7 +900,6 @@ ALIGN4
|
||||
pop es
|
||||
emms
|
||||
ret
|
||||
ALIGN4
|
||||
.returninterp
|
||||
add esi,64
|
||||
inc dword[InterPtr]
|
||||
@@ -951,7 +911,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
MMXInterpolwin:
|
||||
mov ebx,hirestiledat+1
|
||||
cmp byte[GUIOn],1
|
||||
@@ -959,7 +918,6 @@ MMXInterpolwin:
|
||||
cmp byte[newengen],0
|
||||
je .loopab
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopab
|
||||
|
||||
mov dl,[resolutn]
|
||||
@@ -1013,7 +971,6 @@ ALIGN4
|
||||
call HighResProc
|
||||
movq mm2,[HalfTransC]
|
||||
jmp .returninterp
|
||||
ALIGN4
|
||||
.ignorehr
|
||||
mov eax,[esi+510]
|
||||
mov ecx,64
|
||||
@@ -1090,7 +1047,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlines
|
||||
inc dl
|
||||
mov [lineleft],dl
|
||||
@@ -1104,7 +1060,6 @@ ALIGN4
|
||||
call HighResProc
|
||||
movq mm2,[HalfTrans]
|
||||
jmp .returninterps
|
||||
ALIGN4
|
||||
.ignorehrs
|
||||
.a
|
||||
movq mm0,[esi]
|
||||
@@ -1131,7 +1086,6 @@ ALIGN4
|
||||
add esi,64
|
||||
add edi,[AddEndBytes]
|
||||
mov ecx,256
|
||||
ALIGN4
|
||||
.fslloop
|
||||
mov dword[edi],0
|
||||
add edi,4
|
||||
@@ -1146,7 +1100,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlineshalf
|
||||
inc dl
|
||||
mov [lineleft],dl
|
||||
@@ -1157,7 +1110,6 @@ ALIGN4
|
||||
call HighResProc
|
||||
movq mm2,[HalfTrans]
|
||||
jmp .returninterphs
|
||||
ALIGN4
|
||||
.ignorehrhs
|
||||
mov eax,[esi+510]
|
||||
mov ecx,64
|
||||
@@ -1212,7 +1164,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlinesquart
|
||||
inc dl
|
||||
mov [lineleft],dl
|
||||
@@ -1223,7 +1174,6 @@ ALIGN4
|
||||
call HighResProc
|
||||
movq mm2,[HalfTransC]
|
||||
jmp .returninterpqs
|
||||
ALIGN4
|
||||
.ignorehrqs
|
||||
mov eax,[esi+510]
|
||||
mov ecx,64
|
||||
@@ -1292,7 +1242,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
NEWSYM interpolate640x480x16bwin
|
||||
cmp byte[MMXSupport],1
|
||||
je MMXInterpolwin
|
||||
@@ -1303,7 +1252,6 @@ NEWSYM interpolate640x480x16bwin
|
||||
cmp byte[newengen],0
|
||||
je .loopabi
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopabi
|
||||
mov [InterPtr],ebx
|
||||
|
||||
@@ -1338,14 +1286,12 @@ ALIGN4
|
||||
add esi,66
|
||||
add edi,[AddEndBytes]
|
||||
add edi,4
|
||||
ALIGN4
|
||||
.loopb
|
||||
mov ebx,[InterPtr]
|
||||
cmp byte[ebx],1
|
||||
jbe .ignorehr
|
||||
call HighResProc
|
||||
jmp .returninterp
|
||||
ALIGN4
|
||||
.ignorehr
|
||||
mov ecx,255
|
||||
mov edx,[spritetablea]
|
||||
@@ -1389,7 +1335,6 @@ ALIGN4
|
||||
jnz .loopb
|
||||
pop es
|
||||
ret
|
||||
ALIGN4
|
||||
.returninterp
|
||||
add esi,64
|
||||
inc dword[InterPtr]
|
||||
@@ -1399,7 +1344,6 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlines
|
||||
xor eax,eax
|
||||
mov ebx,hirestiledat+1
|
||||
@@ -1408,7 +1352,6 @@ ALIGN4
|
||||
cmp byte[newengen],0
|
||||
je .loopabis
|
||||
mov ebx,SpecialLine+1
|
||||
ALIGN4
|
||||
.loopabis
|
||||
.loopab
|
||||
mov ecx,255
|
||||
@@ -1416,7 +1359,6 @@ ALIGN4
|
||||
jbe .ignorehrs
|
||||
call HighResProc
|
||||
jmp .returninterps
|
||||
ALIGN4
|
||||
.ignorehrs
|
||||
cmp byte[ebx],1
|
||||
je .yeshiresb
|
||||
@@ -1441,7 +1383,6 @@ ALIGN4
|
||||
add edi,4
|
||||
add edi,[AddEndBytes]
|
||||
mov ecx,256
|
||||
ALIGN4
|
||||
.fslloop
|
||||
mov dword[edi],0
|
||||
add edi,4
|
||||
@@ -1454,7 +1395,6 @@ ALIGN4
|
||||
pop es
|
||||
xor byte[res512switch],1
|
||||
ret
|
||||
ALIGN4
|
||||
.yeshiresb
|
||||
mov byte[ebx],0
|
||||
test byte[res512switch],1
|
||||
@@ -1467,7 +1407,6 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .bb
|
||||
jmp .returnb
|
||||
ALIGN4
|
||||
.rightsideb
|
||||
.cb
|
||||
mov ax,[esi]
|
||||
@@ -1477,13 +1416,12 @@ ALIGN4
|
||||
dec ecx
|
||||
jnz .cb
|
||||
jmp .returnb
|
||||
ALIGN4
|
||||
.returninterps
|
||||
add esi,64
|
||||
inc dword[InterPtr]
|
||||
add edi,[AddEndBytes]
|
||||
mov ecx,256
|
||||
ALIGN4
|
||||
|
||||
.fslloop2
|
||||
mov dword[edi],0
|
||||
add edi,4
|
||||
@@ -1495,18 +1433,15 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlineshalf
|
||||
xor eax,eax
|
||||
mov [lineleft],dl
|
||||
ALIGN4
|
||||
.loopab2
|
||||
mov ebx,[InterPtr]
|
||||
cmp byte[ebx],1
|
||||
jbe .ignorehrhs
|
||||
call HighResProc
|
||||
jmp .returninterphs
|
||||
ALIGN4
|
||||
.ignorehrhs
|
||||
mov ecx,255
|
||||
mov edx,[spritetablea]
|
||||
@@ -1548,7 +1483,6 @@ ALIGN4
|
||||
jnz .loopab2
|
||||
pop es
|
||||
ret
|
||||
ALIGN4
|
||||
.returninterphs
|
||||
add esi,64
|
||||
inc dword[InterPtr]
|
||||
@@ -1558,18 +1492,16 @@ ALIGN4
|
||||
pop es
|
||||
ret
|
||||
|
||||
ALIGN4
|
||||
.scanlinesquart
|
||||
xor eax,eax
|
||||
mov [lineleft],dl
|
||||
ALIGN4
|
||||
|
||||
.loopab3
|
||||
mov ebx,[InterPtr]
|
||||
cmp byte[ebx],1
|
||||
jbe .ignorehrqs
|
||||
call HighResProc
|
||||
jmp .returninterpqs
|
||||
ALIGN4
|
||||
.ignorehrqs
|
||||
mov ecx,255
|
||||
mov edx,[spritetablea]
|
||||
@@ -1615,7 +1547,6 @@ ALIGN4
|
||||
jnz .loopab3
|
||||
pop es
|
||||
ret
|
||||
ALIGN4
|
||||
.returninterpqs
|
||||
add esi,64
|
||||
inc dword[InterPtr]
|
||||
|
||||
Reference in New Issue
Block a user