Emerald Dragon working
This commit is contained in:
@@ -128,7 +128,7 @@ EXTSYM DSPMem
|
|||||||
EXTSYM InterSound
|
EXTSYM InterSound
|
||||||
EXTSYM NoiseData,SoundCompD,Voice0Disable,csounddisable,dssel,spcRamcmp
|
EXTSYM NoiseData,SoundCompD,Voice0Disable,csounddisable,dssel,spcRamcmp
|
||||||
EXTSYM cfgecho,Surround,SoundBufEn
|
EXTSYM cfgecho,Surround,SoundBufEn
|
||||||
EXTSYM echobuf
|
EXTSYM echobuf,ENVDisable
|
||||||
EXTSYM LowPassFilter
|
EXTSYM LowPassFilter
|
||||||
EXTSYM UseCubicSpline,NoiseDisTemp
|
EXTSYM UseCubicSpline,NoiseDisTemp
|
||||||
|
|
||||||
@@ -4096,8 +4096,11 @@ WaveIndex times 8 dd 0
|
|||||||
mov dword[Voice0IncNumber+%1*4],0
|
mov dword[Voice0IncNumber+%1*4],0
|
||||||
mov byte [Voice0Status+%1],0
|
mov byte [Voice0Status+%1],0
|
||||||
mov byte [Voice0State+%1],0
|
mov byte [Voice0State+%1],0
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%noSkipStuff
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%SkipStuff
|
je %%SkipStuff
|
||||||
|
%%noSkipStuff
|
||||||
mov byte [DSPMem+08h+%1*10h],0
|
mov byte [DSPMem+08h+%1*10h],0
|
||||||
mov byte [DSPMem+09h+%1*10h],0
|
mov byte [DSPMem+09h+%1*10h],0
|
||||||
or byte [DSPMem+7Ch],%3
|
or byte [DSPMem+7Ch],%3
|
||||||
@@ -4107,8 +4110,11 @@ WaveIndex times 8 dd 0
|
|||||||
mov dword[Voice0EnvInc+%1*4],0
|
mov dword[Voice0EnvInc+%1*4],0
|
||||||
mov dword[Voice0IncNumber+%1*4],0
|
mov dword[Voice0IncNumber+%1*4],0
|
||||||
mov byte [Voice0State+%1],0
|
mov byte [Voice0State+%1],0
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%noSkipStuff2
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%SkipStuff2
|
je %%SkipStuff2
|
||||||
|
%%noSkipStuff2
|
||||||
mov byte [DSPMem+08h+%1*10h],0
|
mov byte [DSPMem+08h+%1*10h],0
|
||||||
mov byte [DSPMem+09h+%1*10h],0
|
mov byte [DSPMem+09h+%1*10h],0
|
||||||
or byte [DSPMem+7Ch],%3
|
or byte [DSPMem+7Ch],%3
|
||||||
@@ -4231,6 +4237,8 @@ WaveIndex times 8 dd 0
|
|||||||
; mov [DSPMem+09h+%1*10h],ah
|
; mov [DSPMem+09h+%1*10h],ah
|
||||||
mov al,[Voice0EnvInc+%1*4+2]
|
mov al,[Voice0EnvInc+%1*4+2]
|
||||||
mov [DSPMem+08h+%1*10h],al
|
mov [DSPMem+08h+%1*10h],al
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%clearenv
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%clearenv
|
je %%clearenv
|
||||||
cmp byte[MovieProcessing],0
|
cmp byte[MovieProcessing],0
|
||||||
@@ -4253,6 +4261,8 @@ WaveIndex times 8 dd 0
|
|||||||
; mov [DSPMem+09h+%1*10h],ah
|
; mov [DSPMem+09h+%1*10h],ah
|
||||||
mov al,[Voice0EnvInc+%1*4+2]
|
mov al,[Voice0EnvInc+%1*4+2]
|
||||||
mov [DSPMem+08h+%1*10h],al
|
mov [DSPMem+08h+%1*10h],al
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%clearenvsi
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%clearenvsi
|
je %%clearenvsi
|
||||||
cmp byte[MovieProcessing],0
|
cmp byte[MovieProcessing],0
|
||||||
@@ -4275,6 +4285,8 @@ WaveIndex times 8 dd 0
|
|||||||
; mov [DSPMem+09h+%1*10h],ah
|
; mov [DSPMem+09h+%1*10h],ah
|
||||||
mov al,[Voice0EnvInc+%1*4+2]
|
mov al,[Voice0EnvInc+%1*4+2]
|
||||||
mov [DSPMem+08h+%1*10h],al
|
mov [DSPMem+08h+%1*10h],al
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%clearenvi
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%clearenvi
|
je %%clearenvi
|
||||||
cmp byte[MovieProcessing],0
|
cmp byte[MovieProcessing],0
|
||||||
@@ -4297,6 +4309,8 @@ WaveIndex times 8 dd 0
|
|||||||
; mov [DSPMem+09h+%1*10h],ah
|
; mov [DSPMem+09h+%1*10h],ah
|
||||||
mov al,[Voice0EnvInc+%1*4+2]
|
mov al,[Voice0EnvInc+%1*4+2]
|
||||||
mov [DSPMem+08h+%1*10h],al
|
mov [DSPMem+08h+%1*10h],al
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%clearenv2
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%clearenv2
|
je %%clearenv2
|
||||||
cmp byte[MovieProcessing],0
|
cmp byte[MovieProcessing],0
|
||||||
@@ -4525,8 +4539,11 @@ WaveIndex times 8 dd 0
|
|||||||
; mov [Voice0Prev1+%1*4],eax
|
; mov [Voice0Prev1+%1*4],eax
|
||||||
jmp %%Decode1Block
|
jmp %%Decode1Block
|
||||||
%%EndSample
|
%%EndSample
|
||||||
|
cmp byte[ENVDisable],1
|
||||||
|
je %%noSkipStuff4
|
||||||
cmp byte[CNetType],20
|
cmp byte[CNetType],20
|
||||||
je %%SkipStuff4
|
je %%SkipStuff4
|
||||||
|
%%noSkipStuff4
|
||||||
or byte [DSPMem+7Ch],%3
|
or byte [DSPMem+7Ch],%3
|
||||||
mov byte [DSPMem+08h+%1*10h],0
|
mov byte [DSPMem+08h+%1*10h],0
|
||||||
%%SkipStuff4
|
%%SkipStuff4
|
||||||
|
|||||||
@@ -1326,6 +1326,7 @@ NEWSYM CacheCheckSkip, db 0
|
|||||||
NEWSYM HIRQSkip, db 0
|
NEWSYM HIRQSkip, db 0
|
||||||
NEWSYM ClearScreenSkip, db 0
|
NEWSYM ClearScreenSkip, db 0
|
||||||
NEWSYM hirqmode2, db 0
|
NEWSYM hirqmode2, db 0
|
||||||
|
NEWSYM ENVDisable, db 0
|
||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
; hacks :
|
; hacks :
|
||||||
@@ -1428,6 +1429,18 @@ NEWSYM headerhack
|
|||||||
mov dword[WindowDisables],0
|
mov dword[WindowDisables],0
|
||||||
mov byte[ClearScreenSkip],0
|
mov byte[ClearScreenSkip],0
|
||||||
mov byte[hirqmode2],0
|
mov byte[hirqmode2],0
|
||||||
|
mov byte[ENVDisable],0
|
||||||
|
|
||||||
|
mov esi,[romdata]
|
||||||
|
add esi,0FFC0h
|
||||||
|
cmp dword[esi],'EMER'
|
||||||
|
jne .notemeralddragon
|
||||||
|
cmp dword[esi+4],'ALD '
|
||||||
|
jne .notemeralddragon
|
||||||
|
cmp dword[esi+8],'DRAG'
|
||||||
|
jne .notemeralddragon
|
||||||
|
mov byte[ENVDisable],1
|
||||||
|
.notemeralddragon
|
||||||
|
|
||||||
mov esi,[romdata]
|
mov esi,[romdata]
|
||||||
add esi,7FC0h
|
add esi,7FC0h
|
||||||
@@ -1436,6 +1449,13 @@ NEWSYM headerhack
|
|||||||
mov byte[hirqmode2],1
|
mov byte[hirqmode2],1
|
||||||
.notffmq
|
.notffmq
|
||||||
|
|
||||||
|
; mov byte[cycpb268],145
|
||||||
|
; mov byte[cycpb358],147
|
||||||
|
; mov byte[cycpbl2],145
|
||||||
|
; mov byte[cycpblt2],145
|
||||||
|
; mov byte[cycpbl],145
|
||||||
|
; mov byte[cycpblt],145
|
||||||
|
|
||||||
mov esi,[romdata]
|
mov esi,[romdata]
|
||||||
add esi,0FFC0h
|
add esi,0FFC0h
|
||||||
cmp dword[esi],'BUBS'
|
cmp dword[esi],'BUBS'
|
||||||
|
|||||||
Reference in New Issue
Block a user