Reworked the way sprites are handled under subscreen conditions
This commit is contained in:
@@ -2552,28 +2552,31 @@ NEWSYM drawbg4linepr116b
|
|||||||
; FillSubScr bit 0 sets to 1 if there is no subscreen present
|
; FillSubScr bit 0 sets to 1 if there is no subscreen present
|
||||||
; ms,wms,wm,ws
|
; ms,wms,wm,ws
|
||||||
; FillSubScr scadtng
|
; FillSubScr scadtng
|
||||||
NEWSYM drawsprng16b
|
<pagefault> NEWSYM drawsprng16b
|
||||||
test byte[BGMS1+ebx*2],10h
|
<pagefault> test byte[BGMS1+ebx*2],10h
|
||||||
jz .nosubmain
|
<pagefault> jz .nosubmain
|
||||||
test byte[FillSubScr+ebx],1
|
<pagefault> mov edi,[CSubWinScr]
|
||||||
jnz near drawsprng16bt
|
<pagefault> cmp byte[edi+ebx+4*256],0
|
||||||
.nosubmain
|
<pagefault> je .nosubmain
|
||||||
mov ebp,[cpalval+ebx*4]
|
<pagefault> test byte[FillSubScr+ebx],1
|
||||||
xor eax,eax
|
<pagefault> jnz near drawsprng16bt
|
||||||
mov edi,[CMainWinScr]
|
<pagefault> .nosubmain
|
||||||
test byte[FillSubScr+ebx],1
|
<pagefault> mov ebp,[cpalval+ebx*4]
|
||||||
jz .main2
|
<pagefault> xor eax,eax
|
||||||
test byte[BGMS1+ebx*2],10h
|
<pagefault> mov edi,[CMainWinScr]
|
||||||
jnz .main2
|
<pagefault> test byte[FillSubScr+ebx],1
|
||||||
mov edi,[CSubWinScr]
|
<pagefault> jz .main2
|
||||||
.main2
|
<pagefault> test byte[BGMS1+ebx*2],10h
|
||||||
test byte[FillSubScr+ebx],1
|
<pagefault> jnz .main2
|
||||||
jz .main
|
<pagefault> mov edi,[CSubWinScr]
|
||||||
test byte[BGMS1+ebx*2],10h
|
<pagefault> cmp byte[edi+ebx+4*256],0
|
||||||
jnz .main
|
<pagefault> jne near drawsprngw16b
|
||||||
cmp byte[edi+ebx+4*256],0
|
<pagefault> .main2
|
||||||
jne near drawsprngw16b
|
<pagefault> test byte[FillSubScr+ebx],1
|
||||||
add esi,75036*2
|
<pagefault> jz .main
|
||||||
|
<pagefault> test byte[BGMS1+ebx*2],10h
|
||||||
|
<pagefault> jnz .main
|
||||||
|
<pagefault> add esi,75036*2
|
||||||
.main
|
.main
|
||||||
xor edi,edi
|
xor edi,edi
|
||||||
normalsprng16b sprdrawpra16bng,sprdrawprb16bng
|
normalsprng16b sprdrawpra16bng,sprdrawprb16bng
|
||||||
|
|||||||
Reference in New Issue
Block a user