SPC File Format

Strictly for discussing ZSNES development and for submitting code. You can also join us on IRC at irc.libera.chat in #zsnes.
Please, no requests here.

Moderator: ZSNES Mods

Aerdan
Winter Knight
Posts: 467
Joined: Mon Aug 16, 2004 10:16 pm
Contact:

Post by Aerdan »

Diskspace.

I dunno about you, but I find it fucking ridiculous when an MP3 version of a SNES soundtrack is lolhueg when the SPC originals are 65k x <number of tracks>, and therefore rather small.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

byuu wrote:Another is that this format would probably be smaller than a WAV, in theory at least. Which is the whole reason we use SPC instead of, as you put it, what's called wave.
We or at least I use SPC because it's so easy to just get a whole BGM with no sound affects, and I like having proper looping when the BGM has an intro.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

FitzRoy wrote:Lord of the Rings does something strange as well.
Lost Vikings 1 and 2 too.

byuu:
How about an event log that records the activity on the 4 SNES<->APU lines? Or is that the same?

Log files would then have a "savestate" at the beginning, followed by the log.
Actually that would be _very_ similar to the SMV format.

EDIT: Saving the entire thing to a GZIP stream would help with the diskspace issue as well.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

creaothceann wrote:
FitzRoy wrote:Lord of the Rings does something strange as well.
Lost Vikings 1 and 2 too.

byuu:
How about an event log that records the activity on the 4 SNES<->APU lines? Or is that the same?

Log files would then have a "savestate" at the beginning, followed by the log.
Actually that would be _very_ similar to the SMV format.

EDIT: Saving the entire thing to a GZIP stream would help with the diskspace issue as well.
Did this before and it didn't work out too well. Any timing changes to the core would break compatibility with older and new versions. Basically you would need to play back on the same version it was dumped with.
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

pagefault wrote:Did this before and it didn't work out too well. Any timing changes to the core would break compatibility with older and new versions. Basically you would need to play back on the same version it was dumped with.
Are there still such large timing changes to be expected? I thought the APU part was fairly stable now, at least in its timing. :?
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

Probably, plus it would have to be played back on the same emulator it was made with, so you can forget about using things like blargg's SPC code or SNESAPU.
ICEknight
Rookie
Posts: 33
Joined: Sun Mar 12, 2006 7:15 pm

Post by ICEknight »

Wouldn't it be possible to make a program that first locates all the instructions that "write" the music routines and data to memory, and then dumps those routines+data so you only have to emulate them?

I mean, something like dumping the ROM data and its way to be handled rather than dumping the music data as it's later found into the memory.


This would preserve each music format (and engine?) as it was written, would make it possible to get any unused music/SFX from the whole data chunk (and put them in the "correct" order) and might also prevent any non-stantard techniques from not working.


Just an idea. I feel this would be the most "perfectionist" way to do this kind of stuff.
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

You mean, like GBS files? That would mean to hack the games individually.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Post Reply