SavStructure

Search:
Edit this page | Front Page | Page Index | Recent Changes

This is the structure of the .sav file, produced by emulators and backup devices for storing the LSDJ song data.


This map is valid for v2.6.0... Earlier structure can be found at Sav Structure Two Four Two?


Bank 0:
0000–0FEF: phrases-> notes
0FF0–108F: empty
1090–128F: grooves
1290–168F: song-> chainno
1690–188F: tables-> envelope
1890–1DCF: instrument->speech->words ($20*42)
1DD0–1E77: instr->speech->wordnames
1E78–1E79: mem initialized flag (set to “rb” on init)
1E7A-1FB9: instr->names


Bank 1:
2000–201F: empty
2020–203F: table allocation table
2040–207F: instr alloc table
2080–287F: chains-> phraseno
2880–307F: chains-> transposes
3080–347F: instr->param
3480–367F: tables-> transpose
3680–387F: tables-> fx
3880–3A7F: tables-> fx val
3A80–3C7F: tables-> fx 2
3C80–3E7F: tables-> fx 2 val
3E80–3E81: mem initialized flag (set to “rb” on init)
3E82–3EA1: phrase allocation table
3EA2–3EB1: chain allocation table
3EB2–3FB1: softsynth params
3FB2–3FB2: clock, hours
3FB3–3FB3: clock, minutes
3FB4–3FB4: tempo
3FB5–3FB5: tune setting
3FB6–3FB6: total clock, days
3FB7–3FB7: total clock, hours
3FB8–3FB8: total clock, minutes
3FB9–3FB9: total clock, checksum (days+hours+minutes)
3FBA-3FBA: key delay
3FBB-3FBB: key repeat
3FBC-3FBC: font (for cgb)
3FBD-3FBD: sync setting
3FBE-3FBE: colorset
3FBF-3FBF: subsong mask [$f, $1f, $3f, $7f, $ff]
3FC0–3FC0: clone (0=deep, 1=slim)


Bank 2:
4000–4FEF: phrases->fx
4FF0–5FDF: phrases->fx val


Bank 3:
6000–6FFF: wave frames
7000–7FEF: phrases->instr
7FF0–7FF2: mem initialized flag (set to “rb” on init)




(I didnt write the following :])
Did someone write a converter or a confortable pattern editor ?
I'm on the way to do it...
info: v3.0 .sav files are the same structure.
Please contact me if you are interested in -> bill(hat)mylgd(bot)com


it shouldn't be that hard, empty note space = 0, c-3 = 1, then the value is incremented for each added halftone up to b-8


hehe, it's working fine ! :) “C-3” -> #01 / “B-8” -> #48