FF6 Hacking
Romancing Saga BRR and SPC info - Printable Version

+- FF6 Hacking (https://www.ff6hacking.com/forums)
+-- Forum: Hacks, Resources and Tutorials (https://www.ff6hacking.com/forums/forum-1.html)
+--- Forum: Opera House Rehearsal Room (https://www.ff6hacking.com/forums/forum-71.html)
+---- Forum: BRR Laboratories (https://www.ff6hacking.com/forums/forum-75.html)
+---- Thread: Romancing Saga BRR and SPC info (/thread-3644.html)



Romancing Saga BRR and SPC info - madsiur - 03-07-2018

Since documentation on this game is non-existant, I'll post what I've found. A BRR pointer need a subtraction of 0x028000 to get the brr sample offset, I'm not sure if SPC pointers follow the same pattern with songs. What is called "pitch multipler" could be something else and it's similar to FF4 since it stand on one byte. However loop starting data is on 2 bytes like all other games and not on 4 bytes like FF4. There is also a regular ADSR data.


 Offset Description
 024800-024886 SPC pointers (45 songs)
 0248C0-024913 BRR samples pointers (28 samples, -0x028000)
 025200-02521B Pitch multipliers? (1 byte data)
 025180-0251B7 Loop start positions (2 bytes data)
 025240-025277 ADSR Data (2 bytes data)


Disassembly
Code:
02/03BF: B9 C0 C8       LDA $C8C0,y     ($0248C0,y) brr pointer
02/03C2: 85 20          STA $20
02/03C4: B9 C1 C8       LDA $C8C1,y     ($0248C1,y) brr pointer
02/03C7: 85 21          STA $21
02/03C9: B9 C2 C8       LDA $C8C2,y     ($0248C2,y) brr pointer
02/03CC: 85 22          STA $22

02/048F: B9 00 D2       LDA $D200,y     ($025200,y) Pitch multipliers or other sound data
02/0492: 92 32          STA ($32)
02/0494: E6 32          INC $32
02/0496: B5 60          LDA $60,x
02/0498: 92 34          STA ($34)
02/049A: E6 34          INC $34
02/049C: B5 61          LDA $61,x
02/049E: 92 34          STA ($34)
02/04A0: E6 34          INC $34
02/04A2: 7A             PLY
02/04A3: B9 80 D1       LDA $D180,y     ($025180,y) Loop start positions
02/04A6: 18             CLC
02/04A7: 75 60          ADC $60,x
02/04A9: 92 34          STA ($34)
02/04AB: E6 34          INC $34
02/04AD: B9 81 D1       LDA $D181,y     ($025181,y) Loop start positions
02/04B0: 75 61          ADC $61,x
02/04B2: 92 34          STA ($34)
02/04B4: E6 34          INC $34
02/04B6: B9 40 D2       LDA $D240,y     ($025240,y) ADSR Data
02/04B9: 92 36          STA ($36)
02/04BB: E6 36          INC $36
02/04BD: B9 41 D2       LDA $D241,y     ($025241,y) ADSR Data
02/04C0: 92 36          STA ($36)
02/04C2: E6 36          INC $36