Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SPC player cuts off the first note and wrong echo when playing SPC files from Dezaemon #26

Closed
redeemer665 opened this issue Sep 18, 2012 · 6 comments

Comments

@redeemer665
Copy link

@redeemer665 redeemer665 commented Sep 18, 2012

When playing SPC files on Super Famicom consoles with 2/1/3 chipset and 1-chip design the first note is cut off a bit, in the same kind of way if the song had a very fast fade-in.
Older 2/1/3 PAL consoles do not exhibit this issue, neither do 1/1/1 Super Famicoms.

The other issue is the music sounding like the echo being stuck at maximum delay and volume values when playing SPC files dumped from "Kaite Tsukutte Asoberu Dezaemon" with a 1/1/1 chipset Super Famicom.

@mrehkopf
Copy link
Owner

@mrehkopf mrehkopf commented Sep 20, 2012

There are many poorly-made SPC files that were taken a little bit too late into the tune. Even PC SPC players cut off the first note with these SPC files. I've had this issue with a number of SPCs from Zophar's Domain, whereas the ones from snesmusic.net are well done and clean (e.g. Chrono Trigger) - although they have to be un-RAR-ed before you can use them with sd2snes.
Can you name an example for me to check/compare?

That aside the APU state simply cannot be restored as precisely on a running SNES as it can in an emulator - the SPC700 CPU state is restored after the DSP registers have been set, so there's a slight delay after setting the DSP registers before the actual SPC file is "resumed". An emulator can just preload the entire state and start emulation afterwards. Therefore some differences may appear. I can try tweaking the timing a bit but a 100% accurate solution probably just isn't possible.

As for the Dezaemon SPCs I'll take a look. I usually clear the entire echo buffer before programming the APU.

Loading

@ghost ghost assigned mrehkopf Sep 20, 2012
@redeemer665
Copy link
Author

@redeemer665 redeemer665 commented Sep 20, 2012

I'd name just about any SPC file you can find. I re-downloaded my SPC sets from snesmusic.org just to make double sure and so far every song (except the ones that start with a rest) I've tried have played back with the fast fade-in.

BS Gal Kan Bazooka, BS SatesupoDX 4, Chrono Trigger, Donkey Kong Country 1-3, J.League Excite Stage '95, Macross, to name a few. I can upload an mp3 to demonstrate the issue if needed.

Loading

@mrehkopf
Copy link
Owner

@mrehkopf mrehkopf commented Sep 21, 2012

Confirmed, apparently the new S-APU uses quite soft volume ramping. I had never really noticed it.
I'll try to put a slight delay between setting up the volume registers and the rest of the DSP registers.

Loading

@mrehkopf
Copy link
Owner

@mrehkopf mrehkopf commented Sep 24, 2012

First note cutoff resolved, will be integrated with 0.1.5.
Resubmitted the other issue (wrong echo) as #30.

Loading

@mrehkopf mrehkopf closed this in 791b688 Sep 24, 2012
@mrehkopf mrehkopf reopened this Sep 24, 2012
@mrehkopf
Copy link
Owner

@mrehkopf mrehkopf commented Sep 24, 2012

(will close when integrated)

Loading

@mrehkopf
Copy link
Owner

@mrehkopf mrehkopf commented Nov 20, 2012

Integrated in v0.1.5

Loading

@mrehkopf mrehkopf closed this Nov 20, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants