New tool used. Also, silly variable names removed from source. ^^
This commit is contained in:
@@ -417,7 +417,7 @@ NEWSYM joinflags
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[brkv]
|
||||
@@ -563,7 +563,7 @@ BRKemulmode
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[copv]
|
||||
|
||||
@@ -404,7 +404,7 @@ EXTSYM flagnz,flago,flagc,cpucycle,doirqnext,dmadata
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[brkv]
|
||||
@@ -559,7 +559,7 @@ BRKemulmode
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[copv]
|
||||
|
||||
@@ -414,7 +414,7 @@ EXTSYM flagnz,flago,flagc,cpucycle,cycpbl,cycpblt,opcjmptab,doirqnext,dmadata
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[brkv]
|
||||
@@ -569,7 +569,7 @@ BRKemulmode
|
||||
or bx,word[stackor]
|
||||
mov [xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[copv]
|
||||
|
||||
@@ -969,7 +969,7 @@ NEWSYM dohdma
|
||||
mov cx,[edx+17]
|
||||
call dword near [memtabler8+ebx*4]
|
||||
inc word[edx+17]
|
||||
mov byte[esi+10],al
|
||||
mov [esi+10],al
|
||||
test al,0FFh
|
||||
jnz .yeszero
|
||||
xor [nexthdma],ah
|
||||
@@ -1089,7 +1089,7 @@ NEWSYM indirectaddr
|
||||
mov cx,[edx+17]
|
||||
call dword near [memtabler8+ebx*4]
|
||||
inc word[edx+17]
|
||||
mov byte[esi+10],al
|
||||
mov [esi+10],al
|
||||
push eax
|
||||
mov bl,[esi+4]
|
||||
mov cx,[edx+17]
|
||||
@@ -1180,10 +1180,10 @@ NEWSYM hdmatype2indirect
|
||||
xor ebx,ebx
|
||||
xor ecx,ecx
|
||||
xor edx,edx
|
||||
mov ax,word[spcRam+021h] ; load dest offset
|
||||
mov ax,[spcRam+021h] ; load dest offset
|
||||
mov dword[.dest],spcRam
|
||||
add [.dest],eax
|
||||
mov dl,byte[esi+10] ; number of bytes to transfer
|
||||
mov dl,[esi+10] ; number of bytes to transfer
|
||||
sub dl,80h
|
||||
.inloop
|
||||
xor ebx,ebx
|
||||
@@ -1193,7 +1193,7 @@ NEWSYM hdmatype2indirect
|
||||
inc word[esi+5]
|
||||
call dword near [memtabler8+ebx*4]
|
||||
mov ebx,[.dest]
|
||||
mov byte[ebx],al
|
||||
mov [ebx],al
|
||||
inc ebx
|
||||
mov [.dest],ebx
|
||||
xor ebx,ebx
|
||||
@@ -1203,7 +1203,7 @@ NEWSYM hdmatype2indirect
|
||||
inc word[esi+5]
|
||||
call dword near [memtabler8+ebx*4]
|
||||
mov ebx,[.dest]
|
||||
mov byte[ebx],al
|
||||
mov [ebx],al
|
||||
inc ebx
|
||||
mov [.dest],ebx
|
||||
dec edx
|
||||
|
||||
@@ -1106,7 +1106,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov ebx,[DecreaseRateExp+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
@@ -1115,7 +1115,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -1127,12 +1127,12 @@ NEWSYM RDSPRegFF ;
|
||||
and al,1Fh
|
||||
mov ebx,[Decrease+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -1146,11 +1146,11 @@ NEWSYM RDSPRegFF ;
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov ebx,[Voice0Time+%1*4]
|
||||
mov eax,ebx
|
||||
shr eax,2
|
||||
@@ -1168,11 +1168,11 @@ NEWSYM RDSPRegFF ;
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -1182,7 +1182,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,7Fh
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov byte[Voice0EnvInc+%1*4+2],al
|
||||
mov [Voice0EnvInc+%1*4+2],al
|
||||
mov dword[Voice0Time+%1*4],0FFFFFFFFh
|
||||
mov dword[Voice0IncNumber+%1*4],0
|
||||
pop edx
|
||||
@@ -1207,7 +1207,7 @@ NEWSYM RDSPRegFF ;
|
||||
and al,1Fh
|
||||
mov ebx,[DecreaseRateExp+eax*4]
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov dh,118
|
||||
@@ -1237,14 +1237,14 @@ NEWSYM RDSPRegFF ;
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,1Fh
|
||||
mov ebx,[Decrease+eax*4]
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
xor eax,eax
|
||||
mov al,[Voice0EnvInc+%1*4+2]
|
||||
shl eax,16
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -1257,7 +1257,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
xor eax,eax
|
||||
mov al,[Voice0EnvInc+%1*4+2]
|
||||
@@ -1269,7 +1269,7 @@ NEWSYM RDSPRegFF ;
|
||||
xor al,127
|
||||
shl eax,16
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov ebx,[Voice0Time+%1*4]
|
||||
mov eax,ebx
|
||||
shr eax,2
|
||||
@@ -1286,7 +1286,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
xor eax,eax
|
||||
mov al,[Voice0EnvInc+%1*4+2]
|
||||
@@ -1298,7 +1298,7 @@ NEWSYM RDSPRegFF ;
|
||||
xor al,127
|
||||
shl eax,16
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -1308,7 +1308,7 @@ NEWSYM RDSPRegFF ;
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,7Fh
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov byte[Voice0EnvInc+%1*4+2],al
|
||||
mov [Voice0EnvInc+%1*4+2],al
|
||||
mov dword[Voice0Time+%1*4],0FFFFFFFFh
|
||||
mov dword[Voice0IncNumber+%1*4],0
|
||||
pop edx
|
||||
@@ -1417,7 +1417,7 @@ NEWSYM RDSPRegFF ;
|
||||
add ebx,eax
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
|
||||
@@ -2088,7 +2088,7 @@ NEWSYM WDSPReg5B ; Voice 5
|
||||
mov eax,[Voice0EnvInc+%1*4]
|
||||
shr eax,8
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],200
|
||||
mov byte[DSPMem+08h+%1*10h],0
|
||||
or byte[DSPMem+7Ch],1 << %1
|
||||
|
||||
@@ -609,7 +609,7 @@ NEWSYM AdjustFrequency
|
||||
.next
|
||||
|
||||
mov ecx,[SoundQuality]
|
||||
mov eax,dword[SBToSPCSpeeds+ecx*4]
|
||||
mov eax,[SBToSPCSpeeds+ecx*4]
|
||||
|
||||
%ifdef __MSDOS__
|
||||
; code for supporting vibra cards (coded by Peter Santing)
|
||||
@@ -619,7 +619,7 @@ NEWSYM AdjustFrequency
|
||||
cmp byte[SBHDMA],0
|
||||
je .not16bit
|
||||
.vibrafix
|
||||
mov eax,dword[SBToSPCSpeeds2+ecx*4]
|
||||
mov eax,[SBToSPCSpeeds2+ecx*4]
|
||||
.not16bit
|
||||
%endif
|
||||
mov [SBToSPC],eax
|
||||
@@ -2744,12 +2744,12 @@ SECTION .text
|
||||
and al,0Fh
|
||||
cmp eax,0Fh
|
||||
je .skipattack
|
||||
mov ebx,dword[AttackRate+eax*4]
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov ebx,[AttackRate+eax*4]
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],8
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov byte[GainDecBendDataDat+%1],7Fh
|
||||
@@ -2802,7 +2802,7 @@ SECTION .text
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],9
|
||||
mov byte[Voice0Status+%1],1
|
||||
jmp .finproc
|
||||
@@ -2821,7 +2821,7 @@ SECTION .text
|
||||
add ebx,eax
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
@@ -2830,7 +2830,7 @@ SECTION .text
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],7
|
||||
mov byte[Voice0Status+%1],1
|
||||
jmp .finproc
|
||||
@@ -2847,7 +2847,7 @@ SECTION .text
|
||||
mov ebx,[DecreaseRateExp+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
@@ -2856,7 +2856,7 @@ SECTION .text
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],7
|
||||
mov byte[Voice0Status+%1],1
|
||||
jmp .finproc
|
||||
@@ -2866,12 +2866,12 @@ SECTION .text
|
||||
and al,1Fh
|
||||
mov ebx,[Decrease+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],5
|
||||
mov byte[Voice0Status+%1],1
|
||||
jmp .finproc
|
||||
@@ -2883,11 +2883,11 @@ SECTION .text
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov ebx,[Voice0Time+%1*4]
|
||||
mov eax,ebx
|
||||
shr eax,2
|
||||
@@ -2903,11 +2903,11 @@ SECTION .text
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536
|
||||
div ebx
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],3
|
||||
mov byte[Voice0Status+%1],1
|
||||
jmp .finproc
|
||||
@@ -2915,7 +2915,7 @@ SECTION .text
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,7Fh
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov byte[Voice0EnvInc+%1*4+2],al
|
||||
mov [Voice0EnvInc+%1*4+2],al
|
||||
mov dword[Voice0Time+%1*4],0FFFFFFFFh
|
||||
mov dword[Voice0IncNumber+%1*4],0
|
||||
mov byte[Voice0State+%1],4
|
||||
@@ -2924,11 +2924,11 @@ SECTION .text
|
||||
.finproc
|
||||
cmp dword[spc700temp+4],0
|
||||
je .skipall
|
||||
mov eax,dword[Voice0Time+%1*4]
|
||||
mov eax,[Voice0Time+%1*4]
|
||||
mov [TimeTemp+%1*4],eax
|
||||
mov eax,dword[Voice0IncNumber+%1*4]
|
||||
mov eax,[Voice0IncNumber+%1*4]
|
||||
mov [IncNTemp+%1*4],eax
|
||||
mov eax,dword[Voice0EnvInc+%1*4]
|
||||
mov eax,[Voice0EnvInc+%1*4]
|
||||
mov [EnvITemp+%1*4],eax
|
||||
mov al,[Voice0State+%1]
|
||||
mov [StatTemp+%1],al
|
||||
@@ -2937,14 +2937,14 @@ SECTION .text
|
||||
mov dword[Voice0Time+%1*4],127
|
||||
shr eax,7
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],210
|
||||
jmp .novoice
|
||||
.skipall
|
||||
mov ax,[DSPMem+02h+%1*10h]
|
||||
cmp word[Voice0Pitch+%1*2],ax
|
||||
je .nopitchc
|
||||
mov word[Voice0Pitch+%1*2],ax
|
||||
mov [Voice0Pitch+%1*2],ax
|
||||
And EAX, 03FFFh
|
||||
Mul dword[dspPAdj]
|
||||
ShRD EAX,EDX,8
|
||||
@@ -2974,10 +2974,10 @@ SECTION .text
|
||||
add ax,dx
|
||||
xor ebx,ebx
|
||||
mov bx,[spcRam+eax]
|
||||
mov dword[Voice0Ptr+%1*4],ebx
|
||||
mov [Voice0Ptr+%1*4],ebx
|
||||
xor ebx,ebx
|
||||
mov bx,[spcRam+eax+2]
|
||||
mov dword[Voice0LoopPtr+%1*4],ebx
|
||||
mov [Voice0LoopPtr+%1*4],ebx
|
||||
pop edx
|
||||
pop ebx
|
||||
pop eax
|
||||
@@ -3047,14 +3047,14 @@ NEWSYM Voice7Start
|
||||
add ax,dx
|
||||
xor ebx,ebx
|
||||
mov bx,[spcRam+eax]
|
||||
mov dword[Voice0Ptr+%1*4],ebx
|
||||
mov [Voice0Ptr+%1*4],ebx
|
||||
xor ebx,ebx
|
||||
mov bx,[spcRam+eax+2]
|
||||
mov dword[Voice0LoopPtr+%1*4],ebx
|
||||
mov [Voice0LoopPtr+%1*4],ebx
|
||||
mov ax,[DSPMem+02h+%1*10h]
|
||||
cmp word[Voice0Pitch+%1*2],ax
|
||||
je %%nopitchc
|
||||
mov word[Voice0Pitch+%1*2],ax
|
||||
mov [Voice0Pitch+%1*2],ax
|
||||
And EAX, 03FFFh
|
||||
Mul dword[dspPAdj]
|
||||
ShRD EAX,EDX,8
|
||||
@@ -3132,7 +3132,7 @@ section .text
|
||||
shl eax,cl
|
||||
pop ecx
|
||||
%else
|
||||
mov al,byte[powhack]
|
||||
mov al,[powhack]
|
||||
%endif
|
||||
%endmacro
|
||||
|
||||
@@ -3154,12 +3154,12 @@ NEWSYM NonEchoMonoPM
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3199,12 +3199,12 @@ NEWSYM NonEchoStereoPM
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3262,12 +3262,12 @@ NEWSYM EchoMonoPM
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3328,12 +3328,12 @@ NEWSYM EchoStereoPM
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3598,12 +3598,12 @@ NEWSYM NonEchoMonoInterpolated
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3650,12 +3650,12 @@ NEWSYM EchoMonoInterpolated
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3723,12 +3723,12 @@ NEWSYM NonEchoStereoInterpolated
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3791,12 +3791,12 @@ NEWSYM EchoStereoInterpolated
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3905,12 +3905,12 @@ NEWSYM NonEchoMono
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -3949,12 +3949,12 @@ NEWSYM NonEchoStereo
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -4011,12 +4011,12 @@ NEWSYM EchoMono
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -4077,12 +4077,12 @@ NEWSYM EchoStereo
|
||||
powshithack
|
||||
test byte[DSPMem+3Dh],al
|
||||
jz .PMod
|
||||
mov eax, dword[NoiseInc]
|
||||
mov eax, [NoiseInc]
|
||||
add dword[NoisePointer],eax
|
||||
mov eax,[NoisePointer]
|
||||
shr eax,18 ; maybe will need a change
|
||||
mov ax,[NoiseData+eax*2]
|
||||
mov word[LastNoise],ax
|
||||
mov [LastNoise],ax
|
||||
jmp .AfterNoise1b
|
||||
.PMod
|
||||
ProcessPMod ebp
|
||||
@@ -4167,7 +4167,7 @@ NEWSYM EchoStereo
|
||||
mov ax,[DSPMem+02h+%1*10h]
|
||||
cmp word[Voice0Pitch+%1*2],ax
|
||||
je %%nopitchc
|
||||
mov word[Voice0Pitch+%1*2],ax
|
||||
mov [Voice0Pitch+%1*2],ax
|
||||
And EAX, 03FFFh
|
||||
Mul dword[dspPAdj]
|
||||
ShRD EAX,EDX,8
|
||||
@@ -4212,7 +4212,7 @@ NEWSYM EchoStereo
|
||||
mov al,[DSPMem+07h+%1*10h]
|
||||
and al,1Fh
|
||||
mov ebx,[Increase+eax*4]
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
shr dword[Voice0IncNumber+%1*4],2
|
||||
mov byte[Voice0State+%1],3
|
||||
pop ebx
|
||||
@@ -4264,7 +4264,7 @@ NEWSYM EchoStereo
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
mov byte[Voice0State+%1],9
|
||||
@@ -4284,7 +4284,7 @@ NEWSYM EchoStereo
|
||||
add ebx,eax
|
||||
mov dword[Voice0EnvInc+%1*4],007FFFFFh
|
||||
shr ebx,5
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov [GainDecBendDataTime+%1*4],ebx
|
||||
xor edx,edx
|
||||
mov eax,127*65536-118*65536
|
||||
@@ -4292,7 +4292,7 @@ NEWSYM EchoStereo
|
||||
mov byte[GainDecBendDataDat+%1],127
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
pop edx
|
||||
pop ebx
|
||||
mov byte[Voice0State+%1],7
|
||||
@@ -4373,7 +4373,7 @@ NEWSYM EchoStereo
|
||||
mov dh,[GainDecBendData+ebx]
|
||||
mov dword[Voice0EnvInc+%1*4],0
|
||||
mov al,[VolumeConvTable+edx*2]
|
||||
mov byte[Voice0EnvInc+%1*4+2],al
|
||||
mov [Voice0EnvInc+%1*4+2],al
|
||||
mov dh,[GainDecBendData+ebx+1]
|
||||
cmp dh,255
|
||||
je %%nomore
|
||||
@@ -4432,14 +4432,14 @@ NEWSYM EchoStereo
|
||||
mov dl,[DSPMem+06h+%1*10h]
|
||||
shr dl,5
|
||||
and dl,07h
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov al,[SustainValue+edx]
|
||||
xor al,7Fh
|
||||
shl eax,16
|
||||
xor edx,edx
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],2
|
||||
pop edx
|
||||
pop ebx
|
||||
@@ -4474,13 +4474,13 @@ NEWSYM EchoStereo
|
||||
jg %%sustainokay
|
||||
mov ebx,100
|
||||
%%sustainokay
|
||||
mov dword[Voice0Time+%1*4],ebx
|
||||
mov [Voice0Time+%1*4],ebx
|
||||
mov al,[Voice0EnvInc+%1*4+2]
|
||||
shl eax,16
|
||||
xor edx,edx
|
||||
div ebx
|
||||
neg eax
|
||||
mov dword[Voice0IncNumber+%1*4],eax
|
||||
mov [Voice0IncNumber+%1*4],eax
|
||||
mov byte[Voice0State+%1],4
|
||||
pop edx
|
||||
pop ebx
|
||||
@@ -4721,7 +4721,7 @@ NEWSYM EchoStereo
|
||||
%%Decode1Block
|
||||
sub dword[BRRPlace0+%1*8],10000000h
|
||||
push esi
|
||||
mov esi, dword[Voice0Ptr+%1*4]
|
||||
mov esi, [Voice0Ptr+%1*4]
|
||||
; cmp byte[Voice0Looped+%1],0
|
||||
; je %%nobrrcheck
|
||||
|
||||
@@ -4739,9 +4739,9 @@ NEWSYM EchoStereo
|
||||
add edi,[spcBuffera]
|
||||
mov eax,[Voice0Prev0+%1*4]
|
||||
mov [Voice0BufPtr+%1*4],edi
|
||||
mov dword[prev0],eax
|
||||
mov [prev0],eax
|
||||
mov eax,[Voice0Prev1+%1*4]
|
||||
mov dword[prev1],eax
|
||||
mov [prev1],eax
|
||||
mov ecx,%1
|
||||
push ebp
|
||||
call BRRDecode
|
||||
@@ -4791,9 +4791,9 @@ NEWSYM EchoStereo
|
||||
movsx eax,word[BRRreadahead+6]
|
||||
mov [PSampleBuf+22*4+%1*24*4],eax
|
||||
|
||||
mov eax,dword[prev0]
|
||||
mov eax,[prev0]
|
||||
mov [Voice0Prev0+%1*4],eax
|
||||
mov eax,dword[prev1]
|
||||
mov eax,[prev1]
|
||||
mov [Voice0Prev1+%1*4],eax
|
||||
mov al,[loopbl]
|
||||
mov [Voice0Loop+%1],al
|
||||
@@ -4936,7 +4936,7 @@ NEWSYM EchoStereo
|
||||
|
||||
%macro FiltTapProc 1
|
||||
sub edx,2
|
||||
mov eax,dword[FIRTAPVal0+%1*4]
|
||||
mov eax,[FIRTAPVal0+%1*4]
|
||||
and edx,0Fh
|
||||
mov ebx,[FiltLoop+edx*4]
|
||||
imul eax,ebx
|
||||
@@ -4946,7 +4946,7 @@ NEWSYM EchoStereo
|
||||
|
||||
%macro FiltTapProcR 1
|
||||
sub edx,2
|
||||
mov eax,dword[FIRTAPVal0+%1*4]
|
||||
mov eax,[FIRTAPVal0+%1*4]
|
||||
and edx,0Fh
|
||||
mov ebx,[FiltLoopR+edx*4]
|
||||
imul eax,ebx
|
||||
|
||||
@@ -88,7 +88,7 @@ NEWSYM ResetExecStuff
|
||||
ret
|
||||
|
||||
NEWSYM ProcessRewind
|
||||
mov eax,dword[KeyRewind]
|
||||
mov eax,[KeyRewind]
|
||||
cmp byte[pressed+eax],1
|
||||
jne near .notokay
|
||||
mov byte[pressed+eax],2
|
||||
@@ -1037,8 +1037,8 @@ NEWSYM cpuover
|
||||
test byte[SA1DoIRQ],4
|
||||
jz .nosa1
|
||||
and byte[SA1DoIRQ],0FBh
|
||||
mov al,byte[SA1Message+1]
|
||||
mov byte[SA1Message+3],al
|
||||
mov al,[SA1Message+1]
|
||||
mov [SA1Message+3],al
|
||||
or byte[SA1IRQExec],1
|
||||
; Start IRQ
|
||||
add dh,10
|
||||
@@ -1050,8 +1050,8 @@ NEWSYM cpuover
|
||||
jz .nosa1chirq
|
||||
; jmp .nosa1chirq
|
||||
and byte[SA1DoIRQ],0F7h
|
||||
mov al,byte[SA1Message+1]
|
||||
mov byte[SA1Message+3],al
|
||||
mov al,[SA1Message+1]
|
||||
mov [SA1Message+3],al
|
||||
or byte[SA1IRQExec],2
|
||||
; Start IRQ
|
||||
add dh,10
|
||||
@@ -1234,7 +1234,7 @@ NEWSYM cpuover
|
||||
.nonewgfx
|
||||
cmp byte[GUIQuit],1
|
||||
je near endprog
|
||||
mov eax,dword[KeyQuickSnapShot]
|
||||
mov eax,[KeyQuickSnapShot]
|
||||
or eax,eax
|
||||
jz .nosskey
|
||||
test byte[pressed+eax],1
|
||||
@@ -1243,7 +1243,7 @@ NEWSYM cpuover
|
||||
mov byte[pressed+eax],2
|
||||
jmp exitloop
|
||||
.nosskey
|
||||
mov eax,dword[KeyQuickClock]
|
||||
mov eax,[KeyQuickClock]
|
||||
or eax,eax
|
||||
jz .noclockkey
|
||||
test byte[pressed+eax],1
|
||||
@@ -1251,7 +1251,7 @@ NEWSYM cpuover
|
||||
xor byte[TimerEnable],1
|
||||
mov byte[pressed+eax],2
|
||||
.noclockkey
|
||||
mov eax,dword[KeyQuickSaveSPC]
|
||||
mov eax,[KeyQuickSaveSPC]
|
||||
or eax,eax
|
||||
jz .nosavespckey
|
||||
test byte[pressed+eax],1
|
||||
@@ -1260,7 +1260,7 @@ NEWSYM cpuover
|
||||
mov byte[pressed+eax],2
|
||||
jmp exitloop
|
||||
.nosavespckey
|
||||
mov eax,dword[EMUPauseKey]
|
||||
mov eax,[EMUPauseKey]
|
||||
or eax,eax
|
||||
jz .nopausekey
|
||||
test byte[pressed+eax],1
|
||||
@@ -1268,7 +1268,7 @@ NEWSYM cpuover
|
||||
xor byte[EMUPause],1
|
||||
mov byte[pressed+eax],2
|
||||
.nopausekey
|
||||
mov eax,dword[INCRFrameKey]
|
||||
mov eax,[INCRFrameKey]
|
||||
or eax,eax
|
||||
jz .noincrframekey
|
||||
test byte[pressed+eax],1
|
||||
@@ -1655,7 +1655,7 @@ NEWSYM cpuover
|
||||
push ecx
|
||||
push edx
|
||||
mov al,[NumCheats]
|
||||
mov byte[.numcheat],al
|
||||
mov [.numcheat],al
|
||||
xor edx,edx
|
||||
.anothercheat
|
||||
xor ebx,ebx
|
||||
@@ -1765,10 +1765,10 @@ NEWSYM UpdatePORSCMR
|
||||
or al,bl
|
||||
mov ebx,[PLOTJmpb+eax*4]
|
||||
mov eax,[PLOTJmpa+eax*4]
|
||||
mov dword[FxTable+4Ch*4],eax
|
||||
mov dword[FxTableb+4Ch*4],eax
|
||||
mov dword[FxTablec+4Ch*4],eax
|
||||
mov dword[FxTabled+4Ch*4],ebx
|
||||
mov [FxTable+4Ch*4],eax
|
||||
mov [FxTableb+4Ch*4],eax
|
||||
mov [FxTablec+4Ch*4],eax
|
||||
mov [FxTabled+4Ch*4],ebx
|
||||
pop eax
|
||||
pop ebx
|
||||
ret
|
||||
@@ -1914,10 +1914,10 @@ NEWSYM StartSFXdebugb
|
||||
or al,bl
|
||||
mov ebx,[PLOTJmpb+eax*4]
|
||||
mov eax,[PLOTJmpa+eax*4]
|
||||
mov dword[FxTable+4Ch*4],eax
|
||||
mov dword[FxTableb+4Ch*4],eax
|
||||
mov dword[FxTablec+4Ch*4],eax
|
||||
mov dword[FxTabled+4Ch*4],ebx
|
||||
mov [FxTable+4Ch*4],eax
|
||||
mov [FxTableb+4Ch*4],eax
|
||||
mov [FxTablec+4Ch*4],eax
|
||||
mov [FxTabled+4Ch*4],ebx
|
||||
|
||||
mov ebx,[SfxSCBR]
|
||||
shl ebx,10
|
||||
|
||||
@@ -96,7 +96,7 @@ NEWSYM switchtonmi
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[nmiv]
|
||||
@@ -204,7 +204,7 @@ NEWSYM switchtovirq
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[irqv]
|
||||
@@ -265,7 +265,7 @@ NEWSYM switchtovirqret
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[irqv]
|
||||
@@ -374,7 +374,7 @@ NEWSYM switchtovirqdeb
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[irqv]
|
||||
@@ -481,7 +481,7 @@ NEWSYM switchtonmideb
|
||||
mov [xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[nmiv]
|
||||
|
||||
@@ -83,7 +83,7 @@ C4ProcessVectors:
|
||||
movsx bx,byte[edi]
|
||||
.spotloop
|
||||
add ah,80h
|
||||
mov byte[esi],ah
|
||||
mov [esi],ah
|
||||
sub ah,80h
|
||||
add ax,bx
|
||||
inc esi
|
||||
@@ -137,7 +137,7 @@ C4Edit:
|
||||
cmp byte[C4ObjSelec],0FFh
|
||||
jne .notneg
|
||||
dec al
|
||||
mov byte[C4ObjSelec],al
|
||||
mov [C4ObjSelec],al
|
||||
jmp .notof
|
||||
.notneg
|
||||
cmp byte[C4ObjSelec],al
|
||||
@@ -299,7 +299,7 @@ C4Edit:
|
||||
cmp byte[C4ObjSelec],0FFh
|
||||
jne .sobjokay2
|
||||
dec cl
|
||||
mov byte[C4SObjSelec],cl
|
||||
mov [C4SObjSelec],cl
|
||||
jmp .sobjokay
|
||||
.sobjokay2
|
||||
cmp byte[C4SObjSelec],cl
|
||||
@@ -308,7 +308,7 @@ C4Edit:
|
||||
.sobjokay
|
||||
|
||||
xor ecx,ecx
|
||||
mov cl,byte[C4SObjSelec]
|
||||
mov cl,[C4SObjSelec]
|
||||
shl ecx,2
|
||||
add ebx,ecx
|
||||
add ebx,4
|
||||
@@ -442,7 +442,7 @@ C4ConvOAM:
|
||||
; Convert from esi to edi
|
||||
mov dl,0FCh
|
||||
push ecx
|
||||
mov cl,byte[C4sprites]
|
||||
mov cl,[C4sprites]
|
||||
and cl,3
|
||||
add cl,cl
|
||||
rol dl,cl
|
||||
@@ -633,10 +633,10 @@ NEWSYM C4ProcessSprites
|
||||
mov esi,[C4Ram]
|
||||
mov dword[C4count],8
|
||||
mov cl,[esi+626h]
|
||||
mov byte[C4sprites],cl
|
||||
mov [C4sprites],cl
|
||||
mov ecx,[C4sprites]
|
||||
shl ecx,2
|
||||
mov dword[C4ObjDisp],ecx
|
||||
mov [C4ObjDisp],ecx
|
||||
mov ecx,128
|
||||
; cmp byte[esi+65],50h
|
||||
; jne .noincdisp
|
||||
@@ -737,7 +737,7 @@ OBCSprites:
|
||||
mov al,[esi+10] ;2,10
|
||||
mov [edi+ebx+2],al
|
||||
mov al,[esi+0Bh]
|
||||
mov byte[edi+ebx+3],al
|
||||
mov [edi+ebx+3],al
|
||||
|
||||
xor ebx,ebx
|
||||
mov bl,[esi+6]
|
||||
@@ -749,7 +749,7 @@ OBCSprites:
|
||||
|
||||
xor al,al
|
||||
mov ah,0FCh
|
||||
mov al,byte[esi+4] ;1,4
|
||||
mov al,[esi+4] ;1,4
|
||||
and al,03h
|
||||
shl al,cl
|
||||
rol ah,cl
|
||||
@@ -838,7 +838,7 @@ OBCRegs:
|
||||
shl ebx,3
|
||||
add ecx,ebx
|
||||
add ecx,[C4Ram]
|
||||
mov byte[ecx],al
|
||||
mov [ecx],al
|
||||
; cmp dl,1
|
||||
; jne .second
|
||||
mov byte[ecx+8],0FFh
|
||||
@@ -901,7 +901,7 @@ C4ClearSpr:
|
||||
; add eax,ecx
|
||||
shl ch,3
|
||||
.scloop2
|
||||
mov cl,byte[C4SprPos]
|
||||
mov cl,[C4SprPos]
|
||||
shl cl,2
|
||||
.scloop
|
||||
mov byte[edi],0
|
||||
@@ -1031,12 +1031,12 @@ DoScaleRotate:
|
||||
mov word[C4YXScale],0
|
||||
.effect
|
||||
; Calculate Pixel Resolution
|
||||
mov cl,byte[C4SprPos]
|
||||
mov cl,[C4SprPos]
|
||||
shl cl,3
|
||||
mov byte[C4SprPos+2],cl
|
||||
mov cl,byte[C4SprPos+1]
|
||||
mov [C4SprPos+2],cl
|
||||
mov cl,[C4SprPos+1]
|
||||
shl cl,3
|
||||
mov byte[C4SprPos+3],cl
|
||||
mov [C4SprPos+3],cl
|
||||
; Calculate Positions
|
||||
; (1-scale)*(pos/2)
|
||||
xor eax,eax
|
||||
@@ -1091,7 +1091,7 @@ DoScaleRotate:
|
||||
mov ecx,[C4PCYMPos]
|
||||
mov [C4CYMPos],ecx
|
||||
mov al,[C4SprPos+2]
|
||||
mov byte[C4CXPos],al
|
||||
mov [C4CXPos],al
|
||||
.loop2
|
||||
xor eax,eax
|
||||
mov al,[C4SprPos+2]
|
||||
@@ -1545,7 +1545,7 @@ C4BitPlaneWave:
|
||||
mov dword[.temp],10h
|
||||
xor eax,eax
|
||||
mov al,[esi+1F83h]
|
||||
mov dword[.waveptr],eax
|
||||
mov [.waveptr],eax
|
||||
mov word[.temp+4],0C0C0h
|
||||
mov word[.temp+6],03F3Fh
|
||||
.bmloopb
|
||||
@@ -1644,11 +1644,11 @@ C4DrawLine:
|
||||
|
||||
; transform both coordinates
|
||||
push esi
|
||||
mov ax,word[C4X1]
|
||||
mov ax,[C4X1]
|
||||
mov [C4WFXVal],ax
|
||||
mov ax,word[C4Y1]
|
||||
mov ax,[C4Y1]
|
||||
mov [C4WFYVal],ax
|
||||
mov ax,word[C4Z1]
|
||||
mov ax,[C4Z1]
|
||||
mov [C4WFZVal],ax
|
||||
mov al,[esi+1F90h]
|
||||
mov [C4WFScale],al
|
||||
@@ -1660,21 +1660,21 @@ C4DrawLine:
|
||||
mov [C4WFDist],al
|
||||
call C4TransfWireFrame2
|
||||
mov ax,[C4WFXVal]
|
||||
mov word[C4X1],ax
|
||||
mov [C4X1],ax
|
||||
mov ax,[C4WFYVal]
|
||||
mov word[C4Y1],ax
|
||||
mov [C4Y1],ax
|
||||
|
||||
mov ax,word[C4X2]
|
||||
mov ax,[C4X2]
|
||||
mov [C4WFXVal],ax
|
||||
mov ax,word[C4Y2]
|
||||
mov ax,[C4Y2]
|
||||
mov [C4WFYVal],ax
|
||||
mov ax,word[C4Z2]
|
||||
mov ax,[C4Z2]
|
||||
mov [C4WFZVal],ax
|
||||
call C4TransfWireFrame2
|
||||
mov ax,[C4WFXVal]
|
||||
mov word[C4X2],ax
|
||||
mov [C4X2],ax
|
||||
mov ax,[C4WFYVal]
|
||||
mov word[C4Y2],ax
|
||||
mov [C4Y2],ax
|
||||
|
||||
add word[C4X1],48
|
||||
add word[C4Y1],48
|
||||
@@ -1958,11 +1958,11 @@ C4WireFrame:
|
||||
jnz .yeswire
|
||||
mov ax,1
|
||||
.yeswire
|
||||
mov word[esi+$600],ax
|
||||
mov [esi+$600],ax
|
||||
mov ax,[C4WFXVal]
|
||||
mov word[esi+$602],ax
|
||||
mov [esi+$602],ax
|
||||
mov ax,[C4WFYVal]
|
||||
mov word[esi+$605],ax
|
||||
mov [esi+$605],ax
|
||||
add edi,2
|
||||
add esi,8
|
||||
dec ecx
|
||||
@@ -1975,11 +1975,11 @@ C4Transform:
|
||||
; 7F81,4,7,9,A,B,0,1,D
|
||||
pushad
|
||||
mov esi,[C4Ram]
|
||||
mov ax,word[esi+1F81h]
|
||||
mov ax,[esi+1F81h]
|
||||
mov [C4WFXVal],ax
|
||||
mov ax,word[esi+1F84h]
|
||||
mov ax,[esi+1F84h]
|
||||
mov [C4WFYVal],ax
|
||||
mov ax,word[esi+1F87h]
|
||||
mov ax,[esi+1F87h]
|
||||
mov [C4WFZVal],ax
|
||||
mov al,[esi+1F90h]
|
||||
mov [C4WFScale],al
|
||||
@@ -1991,9 +1991,9 @@ C4Transform:
|
||||
mov [C4WFDist],al
|
||||
call C4TransfWireFrame2
|
||||
mov ax,[C4WFXVal]
|
||||
mov word[esi+1F80h],ax
|
||||
mov [esi+1F80h],ax
|
||||
mov ax,[C4WFYVal]
|
||||
mov word[esi+1F83h],ax
|
||||
mov [esi+1F83h],ax
|
||||
popad
|
||||
ret
|
||||
|
||||
@@ -2092,7 +2092,7 @@ C4activate:
|
||||
mov dx,ax
|
||||
sar edx,8
|
||||
.done
|
||||
mov word[esi+1F80h],dx
|
||||
mov [esi+1F80h],dx
|
||||
mov [C4values+4],dx
|
||||
|
||||
; and eax,1FFh
|
||||
@@ -2233,7 +2233,7 @@ C4activate:
|
||||
mov esi,[C4Ram]
|
||||
mov ecx,800h
|
||||
.sumloop
|
||||
mov bl,byte[esi]
|
||||
mov bl,[esi]
|
||||
inc esi
|
||||
add ax,bx
|
||||
dec ecx
|
||||
@@ -2281,11 +2281,11 @@ C4activate:
|
||||
mov ax,[esi+$1F80]
|
||||
; imul cx
|
||||
shl ax,4
|
||||
mov word[esi+$1F89],ax
|
||||
mov [esi+$1F89],ax
|
||||
mov ax,[esi+$1F83]
|
||||
; imul cx
|
||||
shl ax,4
|
||||
mov word[esi+$1F8C],ax
|
||||
mov [esi+$1F8C],ax
|
||||
; mov cx,[esi+$1F80]
|
||||
; mov [C4values],cx
|
||||
; mov cx,[esi+$1F83]
|
||||
@@ -2437,7 +2437,7 @@ NEWSYM C4WriteReg
|
||||
and edx,01FFFh
|
||||
add ebx,edx
|
||||
.c4movloop
|
||||
mov dl,byte[eax]
|
||||
mov dl,[eax]
|
||||
mov [ebx],dl
|
||||
inc eax
|
||||
inc ebx
|
||||
|
||||
@@ -603,7 +603,7 @@ debblah:
|
||||
; Read OAM Data (Low, High)
|
||||
reg2138r:
|
||||
xor ebx,ebx
|
||||
mov bx,word[oamaddr]
|
||||
mov bx,[oamaddr]
|
||||
add ebx,oamram
|
||||
mov al,[ebx]
|
||||
inc word[oamaddr]
|
||||
@@ -634,8 +634,8 @@ reg2139r:
|
||||
jnz .noincr
|
||||
|
||||
add word[vramaddr],2
|
||||
mov bl,byte[vramincby8totl]
|
||||
mov byte[vramincby8left],bl
|
||||
mov bl,[vramincby8totl]
|
||||
mov [vramincby8left],bl
|
||||
dec byte[vramincby8rowl]
|
||||
jz .nextrow
|
||||
mov bx,[vramincby8ptri]
|
||||
@@ -667,8 +667,8 @@ reg213Ar:
|
||||
jnz .noincr
|
||||
|
||||
add word[vramaddr],2
|
||||
mov bl,byte[vramincby8totl]
|
||||
mov byte[vramincby8left],bl
|
||||
mov bl,[vramincby8totl]
|
||||
mov [vramincby8left],bl
|
||||
dec byte[vramincby8rowl]
|
||||
jz .nextrow
|
||||
mov bx,[vramincby8ptri]
|
||||
@@ -693,11 +693,11 @@ reg213Br:
|
||||
reg213Cr:
|
||||
cmp byte[latchxr],1
|
||||
je .highv
|
||||
mov al,byte[latchx]
|
||||
mov al,[latchx]
|
||||
mov byte[latchxr],1
|
||||
ret
|
||||
.highv
|
||||
mov al,byte[latchx]
|
||||
mov al,[latchx]
|
||||
and al,0FEh
|
||||
or al,byte[latchx+1]
|
||||
mov byte[latchxr],0
|
||||
@@ -709,17 +709,17 @@ reg213Dr:
|
||||
je .noreset
|
||||
cmp byte[latchyr],1
|
||||
je .highv
|
||||
mov al,byte[latchy]
|
||||
mov al,[latchy]
|
||||
mov byte[latchyr],1
|
||||
ret
|
||||
.highv
|
||||
mov al,byte[latchy]
|
||||
mov al,[latchy]
|
||||
and al,0FEh
|
||||
or al,byte[latchy+1]
|
||||
mov byte[latchyr],0
|
||||
ret
|
||||
.noreset
|
||||
mov al,byte[latchy]
|
||||
mov al,[latchy]
|
||||
and al,0FEh
|
||||
or al,byte[latchy+1]
|
||||
ret
|
||||
|
||||
@@ -302,7 +302,7 @@ reg2101w:
|
||||
cmp byte[prevoamptr],al
|
||||
je near .noproc
|
||||
.noskip
|
||||
mov byte[prevoamptr],al
|
||||
mov [prevoamptr],al
|
||||
xor ebx,ebx
|
||||
mov bl,al
|
||||
and bl,03h
|
||||
@@ -638,21 +638,21 @@ reg210Cw:
|
||||
; BG1 horizontal scroll register
|
||||
reg210Dw:
|
||||
xor ebx,ebx
|
||||
mov byte[bg1scrolx],al
|
||||
mov [bg1scrolx],al
|
||||
shl word[bg1scrolx],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg1scrolx],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; BG1 vertical scroll register
|
||||
reg210Ew:
|
||||
xor ebx,ebx
|
||||
mov byte[bg1scroly],al
|
||||
mov [bg1scroly],al
|
||||
shl word[bg1scroly],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg1scroly],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
SECTION .bss
|
||||
@@ -662,31 +662,31 @@ SECTION .text
|
||||
; BG2 horizontal scroll register
|
||||
reg210Fw:
|
||||
xor ebx,ebx
|
||||
mov byte[bg2scrolx],al
|
||||
mov [bg2scrolx],al
|
||||
shl word[bg2scrolx],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg2scrolx],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; BG2 vertical scroll register
|
||||
reg2110w:
|
||||
xor ebx,ebx
|
||||
mov byte[bg2scroly],al
|
||||
mov [bg2scroly],al
|
||||
shl word[bg2scroly],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg2scroly],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; BG3 horizontal scroll register
|
||||
reg2111w:
|
||||
xor ebx,ebx
|
||||
mov byte[bg3scrolx],al
|
||||
mov [bg3scrolx],al
|
||||
shl word[bg3scrolx],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg3scrolx],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
section .data
|
||||
@@ -697,31 +697,31 @@ section .text
|
||||
; BG3 vertical scroll register
|
||||
reg2112w:
|
||||
xor ebx,ebx
|
||||
mov byte[bg3scroly],al
|
||||
mov [bg3scroly],al
|
||||
shl word[bg3scroly],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg3scroly],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; BG4 horizontal scroll register
|
||||
reg2113w:
|
||||
xor ebx,ebx
|
||||
mov byte[bg4scrolx],al
|
||||
mov [bg4scrolx],al
|
||||
shl word[bg4scrolx],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg4scrolx],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; BG4 vertical scroll register
|
||||
reg2114w:
|
||||
xor ebx,ebx
|
||||
mov byte[bg4scroly],al
|
||||
mov [bg4scroly],al
|
||||
shl word[bg4scroly],8
|
||||
mov bl,[bgscroltemp]
|
||||
add word[bg4scroly],bx
|
||||
mov byte[bgscroltemp],al
|
||||
mov [bgscroltemp],al
|
||||
ret
|
||||
|
||||
; Video port control
|
||||
@@ -803,7 +803,7 @@ reg2115w:
|
||||
; Video port address (Low)
|
||||
reg2116w:
|
||||
shr word[vramaddr],1
|
||||
mov byte[vramaddr],al
|
||||
mov [vramaddr],al
|
||||
shl word[vramaddr],1
|
||||
mov byte[vramread],0
|
||||
ret
|
||||
@@ -811,7 +811,7 @@ reg2116w:
|
||||
; Video port address (High)
|
||||
reg2117w:
|
||||
shr word[vramaddr],1
|
||||
mov byte[vramaddr+1],al
|
||||
mov [vramaddr+1],al
|
||||
shl word[vramaddr],1
|
||||
mov byte[vramread],0
|
||||
|
||||
@@ -1220,7 +1220,7 @@ reg2140w:
|
||||
jne .n
|
||||
mov byte[nmirept],0
|
||||
.n
|
||||
mov byte[spcRam+0F4h],al
|
||||
mov [spcRam+0F4h],al
|
||||
inc dword[SPC700write]
|
||||
reenablespc
|
||||
ret
|
||||
@@ -1234,7 +1234,7 @@ reg2140w:
|
||||
; Sound Register #2
|
||||
reg2141w:
|
||||
mov byte[sndwrit],1
|
||||
mov byte[spcRam+0F5h],al
|
||||
mov [spcRam+0F5h],al
|
||||
inc dword[SPC700write]
|
||||
reenablespc
|
||||
ret
|
||||
@@ -1248,7 +1248,7 @@ reg2141w:
|
||||
; Sound Register #3
|
||||
reg2142w:
|
||||
mov byte[sndwrit],1
|
||||
mov byte[spcRam+0F6h],al
|
||||
mov [spcRam+0F6h],al
|
||||
inc dword[SPC700write]
|
||||
reenablespc
|
||||
ret
|
||||
@@ -1262,7 +1262,7 @@ reg2142w:
|
||||
; Sound Register #4
|
||||
reg2143w:
|
||||
mov byte[sndwrit],1
|
||||
mov byte[spcRam+0F7h],al
|
||||
mov [spcRam+0F7h],al
|
||||
inc dword[SPC700write]
|
||||
reenablespc
|
||||
ret
|
||||
@@ -1284,19 +1284,19 @@ reg2180w:
|
||||
|
||||
; WRAM data register (low byte)
|
||||
reg2181w:
|
||||
mov byte[wramrwadr],al
|
||||
mov [wramrwadr],al
|
||||
ret
|
||||
|
||||
; WRAM data register (middle byte)
|
||||
reg2182w:
|
||||
mov byte[wramrwadr+1],al
|
||||
mov [wramrwadr+1],al
|
||||
ret
|
||||
|
||||
; WRAM data register (high byte)
|
||||
reg2183w:
|
||||
mov bl,al
|
||||
and bl,01h
|
||||
mov byte[wramrwadr+2],bl
|
||||
mov [wramrwadr+2],bl
|
||||
ret
|
||||
|
||||
; Joystick 1 & 2 status bytes
|
||||
@@ -1371,7 +1371,7 @@ reg4017w:
|
||||
|
||||
; Counter enable
|
||||
reg4200w:
|
||||
mov byte[INTEnab],al
|
||||
mov [INTEnab],al
|
||||
ret
|
||||
|
||||
; Programmable I/O port (out-port)
|
||||
@@ -1388,7 +1388,7 @@ reg4201w:
|
||||
jz .nolatch
|
||||
mov byte[iohvlatch],1
|
||||
.nolatch
|
||||
mov byte[ioportval],al
|
||||
mov [ioportval],al
|
||||
mov bl,al
|
||||
and bl,80h
|
||||
and byte[MultiTapStat],07Fh
|
||||
@@ -1551,22 +1551,22 @@ reg420Dw:
|
||||
jnz .speed358
|
||||
; 2.68 Mhz
|
||||
mov al,[opexec268]
|
||||
mov byte[cycpl],al ; 2.68 Mhz
|
||||
mov [cycpl],al ; 2.68 Mhz
|
||||
mov al,[opexec268cph]
|
||||
mov byte[cycphb],al ; 2.68 Mhz
|
||||
mov [cycphb],al ; 2.68 Mhz
|
||||
and byte[xirqb],00h
|
||||
mov bl,[cycpb268]
|
||||
mov byte[cycpblt],bl ; percentage of CPU/SPC to run
|
||||
mov [cycpblt],bl ; percentage of CPU/SPC to run
|
||||
ret
|
||||
.speed358
|
||||
; 3.58 Mhz
|
||||
mov al,[opexec358]
|
||||
mov byte[cycpl],al ; 3.58 Mhz
|
||||
mov [cycpl],al ; 3.58 Mhz
|
||||
mov al,[opexec358cph]
|
||||
mov byte[cycphb],al ; 3.58 Mhz
|
||||
mov [cycphb],al ; 3.58 Mhz
|
||||
or byte[xirqb],80h
|
||||
mov bl,[cycpb358]
|
||||
mov byte[cycpblt],bl ; percentage of CPU/SPC to run
|
||||
mov [cycpblt],bl ; percentage of CPU/SPC to run
|
||||
ret
|
||||
|
||||
; ???
|
||||
|
||||
@@ -420,7 +420,7 @@ NEWSYM Sjoinflags
|
||||
or bx,word[stackor]
|
||||
mov [SA1xs],bx
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [SA1xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[brkv]
|
||||
@@ -564,7 +564,7 @@ BRKemulmode
|
||||
mov [SA1xs],cx
|
||||
|
||||
xor bh,bh
|
||||
mov bl,byte[xirqb]
|
||||
mov bl,[xirqb]
|
||||
mov [SA1xpb],bl
|
||||
xor eax,eax
|
||||
mov ax,[copv]
|
||||
|
||||
@@ -476,7 +476,7 @@ EXTSYM SPCSave_dump, SPCSave_handle, Write_File
|
||||
mov [SPCSave_ports+%1], al
|
||||
pushad
|
||||
mov byte[SPCSave_buffer+2], %1
|
||||
mov byte[SPCSave_buffer+3], al
|
||||
mov [SPCSave_buffer+3], al
|
||||
mov ebx, [SPCSave_handle]
|
||||
mov ecx, 4
|
||||
mov edx, SPCSave_buffer
|
||||
@@ -747,7 +747,7 @@ NEWSYM OpFF ; STOP standby STOP mode .........
|
||||
ret
|
||||
NEWSYM Op9F ; XCN A A(7-4) <-> A(3-0) N......Z.
|
||||
ror byte[spcA],4
|
||||
mov al,byte[spcA]
|
||||
mov al,[spcA]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
@@ -1396,7 +1396,7 @@ NEWSYM OpB9 ; SBC (X),(Y) (X) <- (X)-(Y)-!C NV..H..ZC
|
||||
|
||||
NEWSYM OpC4 ; MOV dp,A A -> (dp) ........
|
||||
mov bl,[ebp]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
WriteByte
|
||||
@@ -1405,7 +1405,7 @@ NEWSYM OpC4 ; MOV dp,A A -> (dp) ........
|
||||
NEWSYM OpD4 ; MOV dp+x,A A -> (dp+X) ........
|
||||
mov bl,[ebp]
|
||||
add bl,[spcX]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
WriteByte
|
||||
@@ -1413,7 +1413,7 @@ NEWSYM OpD4 ; MOV dp+x,A A -> (dp+X) ........
|
||||
|
||||
NEWSYM OpC5 ; MOV labs,A A -> (abs) ........
|
||||
mov bx,[ebp]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
add ebp,2
|
||||
add ebx,spcRam
|
||||
WriteByte
|
||||
@@ -1422,7 +1422,7 @@ NEWSYM OpC5 ; MOV labs,A A -> (abs) ........
|
||||
NEWSYM OpD5 ; MOV labs+X,A A -> (abs+X) ........
|
||||
mov bl,[spcX]
|
||||
add bx,[ebp]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
add ebp,2
|
||||
add ebx,spcRam
|
||||
WriteByte
|
||||
@@ -1431,13 +1431,13 @@ NEWSYM OpD5 ; MOV labs+X,A A -> (abs+X) ........
|
||||
NEWSYM OpC6 ; MOV (X),A A -> (X) ........
|
||||
mov bl,[spcX]
|
||||
add ebx,[spcRamDP]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
WriteByte
|
||||
ret
|
||||
|
||||
NEWSYM OpD6 ; MOV labs+Y,A A -> (abs+Y) ........
|
||||
mov bl,[spcY]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
add bx,[ebp]
|
||||
add ebp,2
|
||||
add ebx,spcRam
|
||||
@@ -1450,10 +1450,10 @@ NEWSYM OpC7 ; MOV (dp+X),A A -> ((dp+X+1)(dp+X)) ........
|
||||
xor eax,eax
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
mov ax, word[ebx]
|
||||
mov ax, [ebx]
|
||||
mov ebx,eax
|
||||
add ebx,spcRam
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
WriteByte
|
||||
ret
|
||||
|
||||
@@ -1462,11 +1462,11 @@ NEWSYM OpD7 ; MOV (dp)+Y,A A -> ((dp+1)(dp)+Y) ........
|
||||
xor eax,eax
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
mov ax, word[ebx]
|
||||
mov ax, [ebx]
|
||||
add ax,[spcY]
|
||||
mov ebx,eax
|
||||
add ebx,spcRam
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
WriteByte
|
||||
ret
|
||||
|
||||
@@ -1476,7 +1476,7 @@ NEWSYM OpD7 ; MOV (dp)+Y,A A -> ((dp+1)(dp)+Y) ........
|
||||
|
||||
NEWSYM OpD8 ; MOV dp,X X -> (dp) ........
|
||||
mov bl,[ebp]
|
||||
mov al, byte[spcX]
|
||||
mov al, [spcX]
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
WriteByte
|
||||
@@ -1487,13 +1487,13 @@ NEWSYM OpF8 ; MOV X,dp X <- (dp) N......Z
|
||||
inc ebp
|
||||
add ebx,[spcRamDP]
|
||||
ReadByte
|
||||
mov byte[spcX], al
|
||||
mov [spcX], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpC9 ; MOV labs,X X -> (abs) ........
|
||||
mov bx,[ebp]
|
||||
mov al, byte[spcX]
|
||||
mov al, [spcX]
|
||||
add ebp,2
|
||||
add ebx,spcRam
|
||||
WriteByte
|
||||
@@ -1504,13 +1504,13 @@ NEWSYM OpE9 ; MOV X,labs X <- (abs) N......Z
|
||||
add ebx,spcRam
|
||||
ReadByte
|
||||
add ebp,2
|
||||
mov byte[spcX], al
|
||||
mov [spcX], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpD9 ; MOV dp+Y,X X -> (dp+Y) ........
|
||||
mov bl,[ebp]
|
||||
mov al, byte[spcX]
|
||||
mov al, [spcX]
|
||||
add bl,[spcY]
|
||||
inc ebp
|
||||
add ebx,[spcRamDP]
|
||||
@@ -1523,13 +1523,13 @@ NEWSYM OpF9 ; MOV X,dp+Y X <- (dp+Y) N......Z
|
||||
inc ebp
|
||||
add ebx,[spcRamDP]
|
||||
ReadByte
|
||||
mov byte[spcX], al
|
||||
mov [spcX], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpCB ; MOV dp,Y Y -> (dp) ........
|
||||
mov bl,[ebp]
|
||||
mov al, byte[spcY]
|
||||
mov al, [spcY]
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
WriteByte
|
||||
@@ -1540,14 +1540,14 @@ NEWSYM OpEB ; MOV Y,dp Y <- (dp) N......Z
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
ReadByte
|
||||
mov byte[spcY], al
|
||||
mov [spcY], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpDB ; MOV dp+X,Y X -> (dp+X) ........
|
||||
mov bl,[ebp]
|
||||
add bl,[spcX]
|
||||
mov al, byte[spcY]
|
||||
mov al, [spcY]
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
WriteByte
|
||||
@@ -1559,13 +1559,13 @@ NEWSYM OpFB ; MOV Y,dp+X Y <- (dp+X) N......Z
|
||||
inc ebp
|
||||
add ebx,[spcRamDP]
|
||||
ReadByte
|
||||
mov byte[spcY], al
|
||||
mov [spcY], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpCC ; MOV labs,Y Y -> (abs) ........
|
||||
mov bx,[ebp]
|
||||
mov al, byte[spcY]
|
||||
mov al, [spcY]
|
||||
add ebp,2
|
||||
add ebx,spcRam
|
||||
WriteByte
|
||||
@@ -1576,7 +1576,7 @@ NEWSYM OpEC ; MOV Y,labs Y <- (abs) N......Z
|
||||
add ebx,spcRam
|
||||
ReadByte
|
||||
add ebp,2
|
||||
mov byte[spcY],al
|
||||
mov [spcY],al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
@@ -1641,7 +1641,7 @@ NEWSYM OpFD ; MOV Y,A Y <- A N......Z
|
||||
NEWSYM OpAF ; MOV (X)+,A A -> (X) with auto inc ........
|
||||
mov bl,[spcX]
|
||||
add ebx,[spcRamDP]
|
||||
mov al, byte[spcA]
|
||||
mov al, [spcA]
|
||||
inc byte[spcX]
|
||||
WriteByte
|
||||
ret
|
||||
@@ -1651,7 +1651,7 @@ NEWSYM OpBF ; MOV A,(X)+ A <- (X) with auto inc N......Z
|
||||
add ebx,[spcRamDP]
|
||||
ReadByte
|
||||
inc byte[spcX]
|
||||
mov byte[spcA],al
|
||||
mov [spcA],al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
@@ -2335,37 +2335,37 @@ NEWSYM OpAC ; INC labs ++ (abs) N......Z.
|
||||
|
||||
NEWSYM Op9C ; DEC A -- A N......Z.
|
||||
dec byte[spcA]
|
||||
mov al,byte[spcA]
|
||||
mov al,[spcA]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpBC ; INC A ++ A N......Z.
|
||||
inc byte[spcA]
|
||||
mov al,byte[spcA]
|
||||
mov al,[spcA]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpDC ; DEC Y -- Y N......Z.
|
||||
dec byte[spcY]
|
||||
mov al,byte[spcY]
|
||||
mov al,[spcY]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM OpFC ; INC Y ++ Y N......Z.
|
||||
inc byte[spcY]
|
||||
mov al,byte[spcY]
|
||||
mov al,[spcY]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM Op1D ; DEC X -- X N......Z.
|
||||
dec byte[spcX]
|
||||
mov al,byte[spcX]
|
||||
mov al,[spcX]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
NEWSYM Op3D ; INC X ++ X N......Z.
|
||||
inc byte[spcX]
|
||||
mov al,byte[spcX]
|
||||
mov al,[spcX]
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
|
||||
@@ -2566,7 +2566,7 @@ NEWSYM Op1F ; JMP (labs+X) PC <- (abs+X+1)(abs+X) ...
|
||||
add bx,[spcX]
|
||||
xor eax,eax
|
||||
add ebp,2
|
||||
mov ax, word[spcRam+ebx]
|
||||
mov ax, [spcRam+ebx]
|
||||
mov ebp,spcRam
|
||||
add ebp,eax
|
||||
ret
|
||||
@@ -2681,8 +2681,8 @@ NEWSYM Op9E ; DIV YA,X Q:A B:Y <- YA / X NV..H..Z.
|
||||
cmp bl,0
|
||||
je NoDiv
|
||||
div bx
|
||||
mov byte[spcA],al
|
||||
mov byte[spcY],dl
|
||||
mov [spcA],al
|
||||
mov [spcY],dl
|
||||
cmp ah,0
|
||||
jne Over
|
||||
and byte[spcP],191-16
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
xor eax,eax
|
||||
add ebx,[spcRamDP]
|
||||
inc ebp
|
||||
mov ax, word[ebx]
|
||||
mov ax, [ebx]
|
||||
mov ebx,eax
|
||||
add ebx,spcRam
|
||||
ReadByte
|
||||
|
||||
@@ -164,7 +164,7 @@
|
||||
%endmacro
|
||||
|
||||
%macro SPC_MOV_A 0
|
||||
mov byte[spcA], al
|
||||
mov [spcA], al
|
||||
mov [spcNZ],al
|
||||
ret
|
||||
%endmacro
|
||||
|
||||
Reference in New Issue
Block a user