Init'd a ton of sound vars. Rewind backups more sound vars. Netplay fixes round 4.

This commit is contained in:
n-a-c-h
2005-02-07 17:00:57 +00:00
parent d796b6c999
commit 9f3c9f6b97
5 changed files with 45 additions and 28 deletions

View File

@@ -2038,23 +2038,23 @@ NoisePtr resd 1
; used only in dspproc.asm
SECTION .data
ALIGN32
Filter dd 0,0,240,0,488,-240,460,-208
SECTION .bss
prev0 resd 1 ; previous value 1
prev1 resd 1 ; previous value 2
nextsamp resd 1 ; next sample
filter0 resd 1 ; filter 0
filter1 resd 1 ; filter 1
bshift resd 1
sampleleft resd 1 ; 8 bytes/sample
prev0 dd 0 ; previous value 1
prev1 dd 0 ; previous value 2
nextsamp dd 0 ; next sample
filter0 dd 0 ; filter 0
filter1 dd 0 ; filter 1
bshift dd 0
sampleleft dd 0 ; 8 bytes/sample
lastbl resd 1 ; Last block if = 1
loopbl resd 1 ; Loop if = 1
usenoisedata resd 1
lastbl dd 0 ; Last block if = 1
loopbl dd 0 ; Loop if = 1
usenoisedata dd 0
SECTION .data
ALIGN32
VolumeTableD
db 0,3,6,9,12,15,17,18,19,21,22,23,24,24,26,28,30,31,33,35,36,38,40,41,43,45,46,48,49
@@ -2568,11 +2568,6 @@ NEWSYM FIRTAPVal5, resd 1
NEWSYM FIRTAPVal6, resd 1
NEWSYM FIRTAPVal7, resd 1
SECTION .data
ALIGN32
NEWSYM MaxEcho, dd 172
SECTION .bss
NEWSYM CEchoPtr, resd 1
NEWSYM EchoFB, resd 1
@@ -2626,9 +2621,13 @@ NEWSYM Voice5FirstBlock, resb 1
NEWSYM Voice6FirstBlock, resb 1
NEWSYM Voice7FirstBlock, resb 1
marksave2:
SECTION .data
ALIGN32
NEWSYM MaxEcho, dd 172
; |AR Time 0 to 1|DR|Time 1 to SL|SL|Ratio| SR Time 1to 1/10|
;---------------------------------------------------------------------
; |0 | 4.1 sec | 0| 1.2 sec | 0| 1/8 | 0| INF |10|1.2 sec
@@ -2710,8 +2709,10 @@ NEWSYM AdsrSustLevLoc, db 58,39,27,19,13,8,3,1
dspsave equ marksave-BRRBuffer
dspconvb equ marksave-Voice0Freq
dspsave2 equ marksave2-echoon0
NEWSYM PHdspsave, dd dspsave
NEWSYM PHdspconvb, dd dspconvb
NEWSYM PHdspsave2, dd dspsave2
SECTION .bss
spc700temp resd 2

View File

@@ -60,8 +60,8 @@ static void copy_spc_data(unsigned char **buffer, void (*copy_func)(unsigned cha
{
//SPC stuff, DSP stuff
copy_func(buffer, spcRam, PHspcsave);
copy_func(buffer, BRRBuffer, PHdspsave);
copy_func(buffer, DSPMem, sizeof(DSPMem));
copy_func(buffer, &BRRBuffer, PHdspsave);
copy_func(buffer, &DSPMem, sizeof(DSPMem));
}
static void copy_extra_data(unsigned char **buffer, void (*copy_func)(unsigned char **, void *, size_t))
@@ -97,6 +97,10 @@ static void copy_state_data(unsigned char *buffer, void (*copy_func)(unsigned ch
if (spcon)
{
copy_spc_data(&buffer, copy_func);
if (buffer) //Rewind stuff
{
copy_func(&buffer, &echoon0, PHdspsave2);
}
}
if (C4Enable)