Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > How to deal with multispeed tunes?
2008-08-12 22:35
Higgie

Registered: Apr 2002
Posts: 114
How to deal with multispeed tunes?

hello you coders!

i'm currently doing my first (except for some bullshit from back in the late 80s/early 90s) steps in coding and while checking out some tunes from HVSC as background music i stumbled across some 'multispeed' tunes. some questions came up my mind...

1. am i right saying that multispeed means calling the playroutine multiple times per frame?

2. is it just calling the routine at any time, just calling it often enough in every frame?

3. or does replaying multispeed tunes require a special timing?

4. would loose $d012 polling be sufficient? (no stable interrupt)

i have to admit that i haven't tried out yet and wanted to get the theoretical background before i started off into the (possibly) wrong direction.

thanx in advance!
 
... 31 posts hidden. Click here to view all posts....
 
2008-08-13 13:59
Hate Bush

Registered: Jul 2002
Posts: 458
i could be wrong, but judging from my amateurish experience - multis made in goattracker are all rather timing-sensitive. one scanline too early/late and the note triggering will suffer. so beware.
2008-08-13 22:45
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Quote: @Rambones: Multispeed is multispeed, no matter where your jsr goes :).

Btw. i also experienced that some multispeed .sid-tunes sound different when i ran them in Vice, so i believe there is some difference to sidplay anyways. ..and yes, i know how to play a multispeed tune in Vice :).


HCL, if you have interpolation turned on in VICE, it will sound different. i guess thats it.
2008-08-13 22:47
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Quote: i could be wrong, but judging from my amateurish experience - multis made in goattracker are all rather timing-sensitive. one scanline too early/late and the note triggering will suffer. so beware.

Because goat dont have seperate speed call that only update specific d4xx..
2008-08-14 00:52
chatGPZ

Registered: Dec 2001
Posts: 11164
are you trying to say that it would be less criticial when a different method of updating the sid would be used?

*slap*
2008-08-14 06:57
cadaver

Registered: Feb 2002
Posts: 1154
In GT multispeed, tempo should be a multiple of the multispeed-factor, and same with the gateoff timers. If that's ensured, theoretically the sensitive playcalls containing triggering related stuff should happen on the same rasterline (same as singlespeed).
2008-08-14 07:16
HCL

Registered: Feb 2003
Posts: 719
For the record.. I'm always using sid settings "reSID" and sample method "fast", and that's when i have encountered these differences in sound.

..and btw. there are far too many sound settings in Vice. We don't have Pentium90MHz anymore so just throw away all those low-end emulation settings plz!!

I second Randall there also, especially GoatTracker multispeeds seems to have these problems. I didn't really dig too deep into this, but i think i found out that when turning off the screen (d011=0) i got somewhat better sound. If that's the case, it must be the badlines that cause the timing problem, and i haven't experienced such sensitiveness with other players. My 5 cents.
2008-08-14 07:53
JackAsser

Registered: Jun 2002
Posts: 1997
Quote: For the record.. I'm always using sid settings "reSID" and sample method "fast", and that's when i have encountered these differences in sound.

..and btw. there are far too many sound settings in Vice. We don't have Pentium90MHz anymore so just throw away all those low-end emulation settings plz!!

I second Randall there also, especially GoatTracker multispeeds seems to have these problems. I didn't really dig too deep into this, but i think i found out that when turning off the screen (d011=0) i got somewhat better sound. If that's the case, it must be the badlines that cause the timing problem, and i haven't experienced such sensitiveness with other players. My 5 cents.


I agree with both Randall and HCL regarding GoatTracker sounds. The 4x tune used in the intro for The Wild Bunch had much better snare drums in the original from Linus than in the final production. It was very sensitive to where we STA'd the SID-registers.
2008-08-14 12:31
cadaver

Registered: Feb 2002
Posts: 1154
The problem in GT playroutine in both multi & singlespeed is that it does (buffered mode):

- exec channel 1
- write regs 1
- exec channel 2
- write regs 2
- exec channel 3
- write regs 3

while better would be to write all regs in succession. Bad lines indeed make a difference - it takes a varying amount of time to execute the channel code. If you don't mind losing some zeropage, use the zeropage ghostregs-mode, and you can then write the ghost registers to SID yourself.

2008-08-14 13:44
dalezy

Registered: Apr 2002
Posts: 475
i never really understood the multispeed-player-example that came with goattracker, at least not to the extend that the output made sense the way it was intended to sound like .. my tune plattenbauknecht for example was a hard beast to get played right using that one code-example, is there a surefire way to make tunes that were done in gt to sound like they should once they're loaded in a player routine? iirc, i had to multiply that one call-routine, that's all i understood, but maybe i was doing it all wrong. =)
2008-08-14 14:01
HCL

Registered: Feb 2003
Posts: 719
I'd say: rewrite the player. It's a bug that should be corrected.
Previous - 1 | 2 | 3 | 4 | 5 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Hairdog/BOOM!^Dream
Ko-Ko
The Human Co../Maste..
Guests online: 63
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.7)
5 Edge of Disgrace  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 No Bounds  (9.6)
9 Aliens in Wonderland  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Cubic Dream  (9.6)
3 Party Elk 2  (9.6)
4 Copper Booze  (9.6)
5 Rainbow Connection  (9.5)
6 It's More Fun to Com..  (9.5)
7 Dawnfall V1.1  (9.5)
8 Birth of a Flower  (9.5)
9 Daah, Those Acid Pil..  (9.5)
10 Quadrants  (9.5)
Top Groups
1 Nostalgia  (9.4)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Offence  (9.3)
Top Graphicians
1 Mirage  (9.8)
2 Archmage  (9.7)
3 Talent  (9.6)
4 Facet  (9.6)
5 Mermaid  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.057 sec.