Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user Chriszx/UNITRAX ! (Registered 2024-05-26) You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > Playroutine coding: A new way to represent pitch
2015-03-30 20:49
lft

Registered: Jul 2007
Posts: 369
Playroutine coding: A new way to represent pitch

Introducing the 9-bit pitch technique:

http://www.linusakesson.net/programming/9bitpitch/index.php
 
... 24 posts hidden. Click here to view all posts....
 
2015-04-01 09:47
lft

Registered: Jul 2007
Posts: 369
ChristopherJam, I can see your point of view, but some pragmatism is inevitable. The question is where to draw the line.

Demo coding is also "just data compression". We could start from a desired on-screen result and have a compiler generate the program for it. That's what a video encoder does. Sure, size and rastertime are through the roof, but the art director gets maximum flexibility.

Of course, you didn't suggest that. But my point is that playroutine design is about exploring the interaction between size, rastertime and flexibility, and trying to find sweet spots. Especially if you want to use the music in a demo, you're going to have to expose some constraints to the musician.

I also think that if we just blindly design for flexibility, we're going to end up with uninspiring systems without personality. Kind of like the modern PC.

On another note (ha!), ProTracker MODs store a 16-bit frequency for each note, but only a small set of frequencies are allowed. Players then perform a reverse-lookup (e.g. binary search) to get a note number. Then they look up the actual frequency to use, based on the note number and the finetune parameter from the instrument. There is much madness in the world.
2015-04-01 09:57
Frantic

Registered: Mar 2003
Posts: 1630
@lft: Probably because fine-tune wasn't there in early .mod formats. But yeah... gradual mutations into madness.
2015-04-01 15:35
ChristopherJam

Registered: Aug 2004
Posts: 1381
"..especially if you want to use the music in a demo, you're going to have to expose some constraints to the musician. "

Oh absolutely. I just prefer to express constraints in terms of costs, and give artists some space to juggle their own tradeoffs - eg, "you can have up to 15 instruments per track, but any instrument that spans more than 32 semitones counts as two instruments"

Back in my PS2 dev days we'd just give artists a texture budget per map region and a few different compression options, and let them make their own mind up how many texels they wanted. The lead artist for each level would then make up some finer guidelines so different suburbs didn't vary too wildly in degree of compression, but that was an artist call not a coder one.

I do take your point about constraints also adding flavour of their own.
2015-04-01 17:44
Dane
Account closed

Registered: May 2002
Posts: 421
Constraints are fun. Balancing out a tune/trying to tell a story with music somewhere between max rastertime allowed and max memory usage allowed is what excites me.
2015-04-01 19:37
Hein

Registered: Apr 2004
Posts: 933
Quote: Has anyone implemented or considered implementing an editor and player for 31-tet music?

Yes, considered it, at least different scales, like the beforementioned 24-tet. Doing it with extended freq-tables and a 24-tet scale representation (with half sharp accidentals) would require some work to the standard editor setup. The whole player would need to be adjusted as well. Meh.

But I've changed my finetune routine a bit so the finetune intervals are small, allowing for $30 values between each half tone in the arpeggio step routine. Only the scale representation in the pattern editor isn't accurate this way. Someone willing to do 31-tet music shouldn't be bothered by that detail, me thinks. :)

Haven't put it in practice yet musically, though, because I'm busy posting thought bubbles about clever 9 bit tricks and having fries with that.
2015-04-02 13:05
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Compared to 2 tones, lets say D and D#, will this give another tone that isnt possible with detune of D ?

else, what use is it ?
2015-04-02 18:52
Hein

Registered: Apr 2004
Posts: 933
Quote: Compared to 2 tones, lets say D and D#, will this give another tone that isnt possible with detune of D ?

else, what use is it ?


Time wasting? ;)

I think mainly speed, compared to regular 16-bit frequency calculations.

As for detune: If the detune is on the instrument, you'd be having a hard time creating proper intervals on the arpeggios. If your base instrument note is tuned a quarter tone up, all your scale notes are. The 9-bit method can be used to create immediate quarter (or half of that) tone interval arpeggios without an additional detune routine.
2015-04-02 20:05
lft

Registered: Jul 2007
Posts: 369
Hein: Hey, you're right! I can intonate the arpeggios any way I like using my current tools. Didn't think of that before!

SIDwave: The point of the 9-bit technique is that the player can work with linear pitch values really fast. And linear pitch values means that e.g. your glides and vibratos sound the same in the bass and the treble. Also, vibrato becomes a special kind of arpeggio, and this simplifies the playroutine.
2015-04-02 20:20
chatGPZ

Registered: Dec 2001
Posts: 11148
you can have non-triangle like vibrato for free this way too. and while its running do a pitch slide that precisely stops at your target note... like :) mmmh is it accurate enough to compensate for pal/ntsc too? :)
2015-04-03 08:43
Soren

Registered: Dec 2001
Posts: 547
Burglar likes vibrators! ;)
Previous - 1 | 2 | 3 | 4 - 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
Acidchild/Padua
Jammer
Mibri/ATL^MSL^PRX
Inge/HVSC
Flavioweb/🇮🇹HF..
The Phantom
Guests online: 93
Top Demos
1 Next Level  (9.8)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Aliens in Wonderland  (9.7)
5 Coma Light 13  (9.7)
6 Edge of Disgrace  (9.6)
7 No Bounds  (9.6)
8 Comaland 100%  (9.6)
9 Uncensored  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Happy Birthday Dr.J  (9.8)
2 Layers  (9.6)
3 It's More Fun to Com..  (9.6)
4 Cubic Dream  (9.6)
5 Party Elk 2  (9.6)
6 Copper Booze  (9.6)
7 TRSAC, Gabber & Pebe..  (9.5)
8 Rainbow Connection  (9.5)
9 Dawnfall V1.1  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Nostalgia  (9.4)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 SHAPE  (9.3)
Top Musicians
1 Rob Hubbard  (9.7)
2 Stinsen  (9.7)
3 Jeroen Tel  (9.6)
4 Linus  (9.6)
5 psych858o  (9.6)

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