Code optimisations

This commit is contained in:
pagefault
2001-09-08 00:03:13 +00:00
parent 310ffe0bf0
commit 5c52c0dc76
9 changed files with 60 additions and 30 deletions

View File

@@ -527,7 +527,8 @@ NEWSYM AdjustFrequency
mov [ebx],ax mov [ebx],ax
add ebx,2 add ebx,2
sub edx,2 sub edx,2
loop .intrploop dec ecx
jnz .intrploop
jmp .notgaussian jmp .notgaussian
.cubicspline .cubicspline
; Copy from CubicSpline to DSPInterP ; Copy from CubicSpline to DSPInterP
@@ -545,7 +546,8 @@ NEWSYM AdjustFrequency
mov [edx],ax mov [edx],ax
add ebx,2 add ebx,2
add edx,2 add edx,2
loop .intrploopb dec ecx
jnz .intrploopb
.notgaussian .notgaussian
@@ -2117,7 +2119,8 @@ BRRDecode:
mov word[edi],ax mov word[edi],ax
mov word[edi+2],ax mov word[edi+2],ax
add edi,4 add edi,4
loop .nloop dec ecx
jnz .nloop
mov [NoisePtr],ebx mov [NoisePtr],ebx
pop ecx pop ecx
ret ret
@@ -5674,7 +5677,8 @@ NEWSYM ProcessVoice816
mov [edi],ebx mov [edi],ebx
mov [edi+4],eax mov [edi+4],eax
add edi,8 add edi,8
loop .revstloop dec ecx
jnz .revstloop
.norevstereo .norevstereo
cmp byte[LowPassFilterType],1 cmp byte[LowPassFilterType],1

View File

@@ -585,7 +585,8 @@ NEWSYM BackupCVFrame
movq [ebx+8],mm1 movq [ebx+8],mm1
add edx,16 add edx,16
add ebx,16 add ebx,16
loop .loop dec ecx
jnz .loop
.end .end
pop eax pop eax
@@ -679,7 +680,8 @@ NEWSYM RestoreCVFrame
movq [edx+8],mm1 movq [edx+8],mm1
add edx,16 add edx,16
add ebx,16 add ebx,16
loop .loop dec ecx
jnz .loop
.end .end
pop eax pop eax
@@ -1040,7 +1042,8 @@ NEWSYM continueprog
.loopa .loopa
mov [esi],al mov [esi],al
inc esi inc esi
loop .loopa dec ecx
jnz .loopa
mov byte[romloadskip],0 mov byte[romloadskip],0
mov byte[debuggeron],0 mov byte[debuggeron],0
@@ -1071,7 +1074,8 @@ NEWSYM reexecute
mov [esi],al mov [esi],al
.notclear .notclear
inc esi inc esi
loop .loopa dec ecx
jnz .loopa
reexecutenokeys reexecutenokeys
jmp reexecuteb2 jmp reexecuteb2
@@ -1088,7 +1092,8 @@ NEWSYM reexecuteb
mov [esi],al mov [esi],al
.notclear .notclear
inc esi inc esi
loop .loopa dec ecx
jnz .loopa
%endif %endif
reexecuteb2: reexecuteb2:
; temporary sprite displayer ; temporary sprite displayer
@@ -3040,7 +3045,8 @@ NEWSYM cpuover
mov al,[ebx+1] mov al,[ebx+1]
mov [ebx],al mov [ebx],al
inc ebx inc ebx
loop .chatsendloop dec ecx
jnz .chatsendloop
mov byte[chatstrL],0 mov byte[chatstrL],0
mov dword[chatTL],10 mov dword[chatTL],10
mov dword[chatRTL],8*60 mov dword[chatRTL],8*60
@@ -3619,7 +3625,8 @@ NEWSYM cpuover
mov al,[esi] mov al,[esi]
add bx,ax add bx,ax
inc esi inc esi
loop .quitloop dec ecx
jnz .quitloop
mov [valuea],bx mov [valuea],bx
popad popad
add [valuea],dh add [valuea],dh

View File

@@ -89,7 +89,8 @@ C4ProcessVectors:
sub ah,80h sub ah,80h
add ax,bx add ax,bx
inc esi inc esi
loop .spotloop dec ecx
jnz .spotloop
add edi,3 add edi,3
dec dx dec dx
jnz .loop jnz .loop
@@ -184,7 +185,8 @@ C4Edit:
.next .next
add ebx,4 add ebx,4
dec byte[ebx+1] dec byte[ebx+1]
loop .next dec ecx
jnz .next
popad popad
.notmove .notmove
cmp byte[pressed+21h],0 cmp byte[pressed+21h],0
@@ -199,7 +201,8 @@ C4Edit:
add byte[ebx],2 add byte[ebx],2
.noflipx .noflipx
dec byte[ebx] dec byte[ebx]
loop .next2 dec ecx
jnz .next2
popad popad
.notmove2 .notmove2
cmp byte[pressed+22h],0 cmp byte[pressed+22h],0
@@ -210,7 +213,8 @@ C4Edit:
.next3 .next3
add ebx,4 add ebx,4
inc byte[ebx+1] inc byte[ebx+1]
loop .next3 dec ecx
jnz .next3
popad popad
.notmove3 .notmove3
cmp byte[pressed+23h],0 cmp byte[pressed+23h],0
@@ -225,7 +229,8 @@ C4Edit:
sub byte[ebx],2 sub byte[ebx],2
.noflipx2 .noflipx2
inc byte[ebx] inc byte[ebx]
loop .next4 dec ecx
jnz .next4
popad popad
.notmove4 .notmove4
cmp byte[pressed+10h],0 cmp byte[pressed+10h],0
@@ -239,7 +244,8 @@ C4Edit:
mov [edx],al mov [edx],al
inc ebx inc ebx
inc edx inc edx
loop .copylp dec ecx
jnz .copylp
popad popad
.notcopy .notcopy
cmp byte[pressed+11h],0 cmp byte[pressed+11h],0
@@ -253,7 +259,8 @@ C4Edit:
mov [ebx],al mov [ebx],al
inc ebx inc ebx
inc edx inc edx
loop .pastelp dec ecx
jnz .pastelp
popad popad
.notpaste .notpaste
@@ -594,7 +601,8 @@ C4ConvOAM:
mov [esi],al mov [esi],al
inc edi inc edi
inc esi inc esi
loop .next dec ecx
jnz .next
ret ret
.addx dw 0 .addx dw 0
.addy dw 0 .addy dw 0
@@ -873,7 +881,8 @@ NEWSYM InitC4
.c4loopb .c4loopb
mov dword[esi],0 mov dword[esi],0
add esi,4 add esi,4
loop .c4loopb dec ecx
jnz .c4loopb
popad popad
ret ret
@@ -1438,7 +1447,8 @@ C4SprDisintegrate:
.lp .lp
mov byte[edi],0 mov byte[edi],0
inc edi inc edi
loop .lp dec ecx
jnz .lp
mov esi,[C4Ram] mov esi,[C4Ram]
add esi,2000h add esi,2000h
@@ -1828,7 +1838,8 @@ WireFrameB:
.loop .loop
mov dword[esi],0 mov dword[esi],0
add esi,4 add esi,4
loop .loop dec ecx
jnz .loop
call DrawWireFrame call DrawWireFrame
mov esi,[C4Ram] mov esi,[C4Ram]
@@ -1893,7 +1904,8 @@ C4WireFrame:
add ax,50h add ax,50h
mov [esi+5],ax mov [esi+5],ax
add esi,10h add esi,10h
loop .loop dec ecx
jnz .loop
; Uses 6001,6005,6600,6602,6605 ; Uses 6001,6005,6600,6602,6605
mov esi,[C4Ram] mov esi,[C4Ram]
@@ -4876,7 +4888,8 @@ NEWSYM memaccessbankr8sdd1
cmp dword[edx],eax cmp dword[edx],eax
je .found2 je .found2
add edx,12 add edx,12
loop .loop dec ecx
jnz .loop
jmp .notfound jmp .notfound
.found2 .found2
mov eax,[edx+4] mov eax,[edx+4]

View File

@@ -44,7 +44,8 @@ NEWSYM initregr
.loopa .loopa
mov [edi],eax mov [edi],eax
add edi,4 add edi,4
loop .loopa dec ecx
jnz .loopa
; Set all valid register accesses ; Set all valid register accesses
setreg 2100h*4,reg2100r setreg 2100h*4,reg2100r
setreg 2134h*4,reg2134r setreg 2134h*4,reg2134r

View File

@@ -50,7 +50,8 @@ NEWSYM initregw
.loopa .loopa
mov [edi],eax mov [edi],eax
add edi,4 add edi,4
loop .loopa dec ecx
jnz .loopa
; Set all valid register accesses ; Set all valid register accesses
setregw 2100h*4,reg2100w setregw 2100h*4,reg2100w
setregw 2101h*4,reg2101w setregw 2101h*4,reg2101w

View File

@@ -105,7 +105,8 @@ NEWSYM SA1inittable
mov eax,esi mov eax,esi
stosd stosd
pop eax pop eax
loop .loopa dec ecx
jnz .loopa
; Set CPU addresses ; Set CPU addresses
mov edi,SA1tableA mov edi,SA1tableA

View File

@@ -251,7 +251,8 @@ NEWSYM inittable
mov eax,esi mov eax,esi
stosd stosd
pop eax pop eax
loop .loopa dec ecx
jnz .loopa
; Set CPU addresses ; Set CPU addresses
; First, set all addresses to invalid ; First, set all addresses to invalid

View File

@@ -101,7 +101,8 @@ NEWSYM inittableb
mov eax,esi mov eax,esi
stosd stosd
pop eax pop eax
loop .loopa dec ecx
jnz .loopa
; Set CPU addresses ; Set CPU addresses
; First, set all addresses to invalid ; First, set all addresses to invalid

View File

@@ -101,7 +101,8 @@ NEWSYM inittablec
mov eax,esi mov eax,esi
stosd stosd
pop eax pop eax
loop .loopa dec ecx
jnz .loopa
; Set CPU addresses ; Set CPU addresses
; First, set all addresses to invalid ; First, set all addresses to invalid