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 > What do you look for in a music-routine?
2017-04-21 04:18
Karmic

Registered: Apr 2015
Posts: 66
What do you look for in a music-routine?

Not sure if this should go in C64 Composing subforum.

So, I'm working on a player-routine for a new music editor I'll make. What I ask you (coders & musicians) is, what would you like changed or added to it?

Currently I've got:

- Standard wave/arp/pulse/filtertable functions.
- Frequency-slides and vibrato that can be enabled in pattern as well as in arp-table. Also toneportamentos and tied notes in pattern.
- There's no limit to the number of patterns. The only thing limiting you is C64's memory :) Also about 85 max subtunes possible.
- Multiple effects are possible on one pattern-line.
- Transposing patterns, to save memory.
- Coders, the player used $16 max rasterlines in my testing. Of course if the musician uses a whole ton of effects on one pattern-line it will increase...


Thanks,
-karmic
 
... 22 posts hidden. Click here to view all posts....
 
2017-04-21 08:07
Karmic

Registered: Apr 2015
Posts: 66
Quote: SFX engine, that lets me pause play any given SFX on any channel. Ability to switch to sfx but carry on with the music on the channel in the background so when the SFX stops the music channel can come back as if it never stopped.

I've actually coded this on another system before, so this is likely to be done :)
2017-04-21 15:36
Hein

Registered: Apr 2004
Posts: 954
Quote: Quoting Bitbreaker
Other interesting features would be to be able to resort the patterns by time of usage, so the music can be split into several parts loaded one after another and by that overwriting old patterns not used anymore. This is a good thing if you have a long music but restricted space like in demos.

Good idea. Seems not very hard to implement with the way I'm structuring the data :)

Quoting Hein
- Different tuning tables
- Multi-speed support
- Pattern repeat

All of these I have already. I guess I just thought they went without saying :p
Quoting Hein
- Arpeggio speed function

There's a "delay" command in the arp & wavetables, designed to allow this.
Quoting Hein
- Hard-restart settings

OK, I agree with this. At the moment I'm just zero-ing waveform and ADSR, I guess I should implement the modern hardrestart :)
Quoting Hein
- Rhythm function (preferably BPM)

So, using the CIA-timers to get flexible playback speed?
Quoting Hein
- Step-programming (maybe you have it in there)
- Effects table repeat function

Not entirely sure what you mean by these. Please explain.


Thanks for all your opinions so far! Thanks for helping to make it better :)
And don't worry too much about extra rastertime, I'll make sure to have conditional assembling as well :p


-BPM speeds require CIA timed playback, indeed.
-Step-programming is just a fancy way of saying effect table values that are played each frame.

Effect table repeat function would mean repeating a segment of the step-programm for x times.

for instance for arps:

01 rep 04
02 __ 00
03 __ 04
04 __ 07
05 rep end
06 __ 0c
07 __ 00
08 loop 06

or:
02 __ 00
03 __ 04
04 __ 07
05 lo04 02 ;loop 4x, pointer = 2
06 __ 0c
07 __ 00
08 loop 06 ;loop infinite, pointer = 6

or:
02 rp04 arp01
03 infi arp02
2017-04-21 21:20
Mixer

Registered: Apr 2008
Posts: 452
Create LFO and other signal generators and have them modulate frq, pwm, cutoff, resonance and volume. Then have tables or pattern data for controlling wveform, amplitude and frequency of the generators.
2017-04-21 22:24
GH

Registered: Sep 2014
Posts: 77
Thank you for using the Karmic music Editor.

Would you like to use:
<Viruose> <GT> <DMC> or <JCH> Filter/Pulse WF/WV tables today?

:D
2017-04-22 06:03
Hein

Registered: Apr 2004
Posts: 954
Quote: Create LFO and other signal generators and have them modulate frq, pwm, cutoff, resonance and volume. Then have tables or pattern data for controlling wveform, amplitude and frequency of the generators.

I've played with this idea as well, to have generic LFO generators for all. But the on-the-fly conversion to 16, 12, 11, 8 or 4 (high/low) bits would make the player slow, I think. But if rastertime is not an issue, it's very user-friendly and flexible, it can be used for BPM as well or for selecting waveforms depending on amplitude thresholds.
2017-04-22 11:41
Isildur

Registered: Sep 2006
Posts: 275
Automatic filter freq/resonance slide up/down (sin/square/saw etc.) would be nice. Also clear non overloaded UI.
Use 100% rasterlines if needed :D
2017-04-22 13:19
Frantic

Registered: Mar 2003
Posts: 1648
Quote: I've played with this idea as well, to have generic LFO generators for all. But the on-the-fly conversion to 16, 12, 11, 8 or 4 (high/low) bits would make the player slow, I think. But if rastertime is not an issue, it's very user-friendly and flexible, it can be used for BPM as well or for selecting waveforms depending on amplitude thresholds.

LFO for BPM?
2017-04-22 14:55
chatGPZ

Registered: Dec 2001
Posts: 11386
i tried that generic LFO thing in a player years ago...... not well suited for a generic player ppl should use in demo/game imho :)
2017-04-22 14:57
Scarzix

Registered: Aug 2010
Posts: 143
I use CheeseCutter, but I am sad to see how much CPU time the current player utilizes - when thinking of high CPU demo parts.

I also know that Abaddon is working on an optimized player, so it will change in the future of course.

So for me, whats a great music player:

Something that has multiple "versions/functionality" which in return gives me either awesome functionality OR low CPU usage OR low memory usage.

I wouldn't mind if the exporter/cruncher whatever handled the actual feature selection, like assembling the best possible output based on my tune - or if I could set some switches in my tune file that "enabled/disabled" certain parts of the players functionality aka reaching the above purpose.

Another purpose of a great music player would be to be able to have a low memory impact and still allow for SFX routine - or at least have a "functionality" where its able to pick up the sound in a channel after the SFX releases the channel.

So some sort of "extra API" where I can dynamically "allocate" a channel/voice for myself - handling it using my own SFX routine and once I am done, just de-allocate the channel or re-enable it for the player by setting a bit or something.

....

The breaking point though would also be, the editor itself.

I actually prefer composing on crossplatform editors as I can much faster save and backup my tunes + the editor is not confined in a 320x200 resolution + bordersprites.

I know that hardcore composers needs the "metal" to really push the SID to its maximum, but I still find the ease of working on more modern platforms as source to be much efficient and that enables me to be able to deliver more.

Lastly, support for dual SID composing.. 6 channels...

The key here would be "modularity" of the player. Either let me load the player version I need (and its functionality) - as we did with JCH editor back then.

or let me somehow enable/disable functionality for a tune and the only export the parts in use...

CheeseCutter actually assembles the player based on which effects you used in your tune when you export it for SID.
2017-04-22 17:56
Hein

Registered: Apr 2004
Posts: 954
Quote: LFO for BPM?

Well, maybe it's not strictly an LFO anymore, dunno. But it could add a bit of swing to the music. :)
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
csabanw
Flex/Artline Designs
Chrx/Design/Chaos
Inge/HVSC
Guests online: 99
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 No Listen  (9.6)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Triad  (9.3)
5 Censor Design  (9.3)
Top Graphicians
1 Mirage  (9.8)
2 Archmage  (9.7)
3 Pal  (9.6)
4 Carrion  (9.6)
5 Sulevi  (9.6)

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