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 Productions > Music Trackers - what should a new one be able to handle?
2003-07-06 16:34
St0fF

Registered: Oct 2002
Posts: 40
Music Trackers - what should a new one be able to handle?

Hi All!
As I'm working on a new tracker and have some sort of concept done, I guess it's best to ask for some comments.

Basic Concept:
-tracking of up to 32 tunes
-> out of memory error included!
->consisting of 4 tracks - one for each voice and one for the filter
- completely reconfigurable speed, two speed-steps
- up to 128 sectors for voices 1..3
- up to 128 filter-sectors
- duration-dependant player, duration independent editor (evry note occupies 1 tick while editing)
- up to 128 instruments (defined by adsr, wave-pointer, pulse-pointer)
- up to 256 Wave-effects
- up to 255 Pulse-effects
- up to 128 Filter-effects
- multispeed-capabilities, handled by the player, you just have to supply the right music-calls ;)
- Player-Calls:
JMP PLAYER ... Akku = tune_num: initialise tune
JMP PLAYER+3 ... standard play_call
JMP PLAYER+6 ... set Global volume to #Akku (for fadein/fadeout purposes)

Tracks: normally point to sectors
Commands: Transpose up/down -$1f..+$1f Halftones
loop track
end track
set global volume (D418)
play song X (so you can make a song out of subtunes ;)
repeat following sector N times

Sectors: do play Notes with Instruments ;)
one tick can consist of the following parts:
- Instrument selection
- ADSR - tuning
- wavepointer - tuning
- pulsepointer - tuning
- global tickspeed - tuning
- Note - Description:
can B: pure Note - just play note using the settings above
glide Note - glides from one note to another with a precalculated glide-add-value
tied Note - just play without restarting the Instrument ... like a freq-change
slide Note - slides from the actual playing frequency to the new note's frequency without restarting the Instrument using a precalculated slide-add
wait tick - just waits
switch gate - switches the gate's status
voice off - turns off the Instrument, resets $d404+(voice_offset) to (09 & gate_status)

huh ... and that was just the upper level ...

Instruments: consist of ADSR, Wavepointer, Pulsepointer
- the Pointers point to Effect numbers.

Wave-effects:
consist of lines ...
which consist of:
- Commands:
- change instrument update speed
- tremor (halftone offset,speed)
- vibrate -> with a given vibrato-width, vibrato-speed, vibrato-delay, and vibrato-direction
- slideaway -> a function dedicated to drum'n'bass music, using vibrato parameters
- off -> works like voice_off, but from inside the instrument
- loop -> loops to another line of the waveeffect
- a Waveform prepared for $d404+(voice_offs), with the Drum-Mode coded into the reset bit (bit3), #8
- a transpose value to be added to the played note to gain the actual frequency __or__ the HIbyte of the frequency if the drum mode was specified

PulseEffects:
also consist of lines
consisting of:
- pulse_set (adjusts $d402/3+(voice_offs))
- pulse_add (sets an 8bit adder and an 8 bit counter)
- pulse_fine_add (16bit adder, 8 bit counter)
- set_delay (sets a 4 bit value of playcalls to wait until the next pulsemodification takes place; none of the following commands are possible if set_delay is specified
- end_pulse
- loop_pulse

Filter-stuff ... it's better to show this on its own
Filter-Tracks ... equal to normal tracks
Filter-Sectors ... do play Notes with Filters ;)
one tick can consist of the following parts:
- Filtereffect selection
- Filterinput selection (which voices 2 filter)
- Note - Description:
can B: pure Note - just play note using the settings above
wait tick - just waits
NOTICE: due to the fact, that the filter itself is regarded as a voice, we supply the basic filter cutoff frequency with the note we play. We can now do Filter-Arpeggios instead of just making some linear motions. We can also do logarithmic motions thru filter-arpeggios ;)

Filtereffects:
consist of lines ...
consisting of any of the following functions combined:
- frq-mode selection (how to translate freqs - as notes or linear)
- Filtertype & -Resonance set
- Frequency set (depending on the frq-mode this is either a halftone_steps_to_add_to_actual_note or a hibyte of a cutoff-freq.)
- set Add - supplying an adder and a counter, some motion is established (for linear: you supply a 16bit addvalue (i know only 11 bits are used for cutoff-freq.); for note_mode: you supply an 8bit adder of how many halftones to add each step)
- set Delay: number of calls to deleay the next filterchange (none of the following commands can be used if this one is used!)
- set freq Fine - sets the 16bit value supplied as filtercutoff, regardless of actual freq-mode
- end filter - stops working on this filtereffect
- loop filter - jumps to another line in the fltfx

Well, this was a damn lot of stuff regarding the structure of 'upcoming' musicdata. A few things left:
The editor manages music memory dynamically, so a sector only takes what it needs while it is not edited. This way we should be able to manage even 32 songs.

Ok, any comments are welcome,
St0fF/Neoplasia
.
 
... 43 posts hidden. Click here to view all posts....
 
2003-11-28 15:06
Dane
Account closed

Registered: May 2002
Posts: 421
Stay cool, Ez Lady. I've started writing docs.
2003-11-28 23:43
Frantic

Registered: Mar 2003
Posts: 1627
Also agree with twoflower here. It's a bit strange that the c64 lacks a really fullblown editor/player.. I'm thinking of LittleSoundDj for the Gameboy Color for example, simple fm-synthesis, speechsynthesis, midisync and of course ordinary use of the pulse/wav/noise-channels. Something like that, on the c64, would really be like a fantasy to play around with.

But, I don't agree with that such a player/editor should not compromise with anything at all. First of all, I think all "big" C64-programs have to compromise in some way or another. (If there isn't an extremely well defined purpose of the program, which is also quite simple.) There is always another possible feature to implement, or a more luxury way to implement something, at the cost of reducing something else.

And, also, I would actually find a player more useful if it wasn't eating all of the r-time, so it could in fact be used in other productions than just pure musicproductions for compos. Maybe Twoflower didn't really mean that such an editor was supposed to eat all the rastertime, but I think that would be the consequence if taking the argument literary.. There are so many possible features. Still would end up in some kind of compromises I think.

However, thumbs up for a more r-time-hungry editor with new possibilities! There's plenty to explore if going in that direction.


2003-11-29 02:14
Akira

Registered: Oct 2003
Posts: 52
Me, too, am mainly a musician, and would LOVE to have a tracker that pushes everything more to the limit at the expense of rtime that I will never utilize. LSDj is a brilliant thing and my idea for a tracker has a lot to give for musicians, but little to give to coders who want to include the stuff in productions.

But isn't there a whackload of trackers out there that do the job great while consuming little rastertime? I think that having ONE that is mainly thought for music only wouldn't hurt, and I would love to help develop it, with all the notes I have taken in a lot of time, and which I can't get to fruition because of my complete lack of C64 programming knowledge. This project in my mind is the only reason why I want to learn C64 coding,, to finally build my dedicated C64 music box machine.

BTW, Dane, in your message, when you wrote you have been talking for years with the latter, I guess you meant the former ;)
2003-11-29 08:46
Puterman
Account closed

Registered: Jan 2002
Posts: 188
No, Akira, I think it was more of a freudian slip. Those erotic messages, whispered to you in your sleep, are hereby explained.
2003-11-29 15:38
Akira

Registered: Oct 2003
Posts: 52
Whoah ;D
2003-12-29 17:16
Wisdom

Registered: Dec 2001
Posts: 90
Calling Twoflower lame was really absurd. He's a musician (and a respected one, I might say) and he probably knows what kind of a tool might help doing his work better (or sounding cooler.)

What Twoflower put is an almost perfect capture of the things that should go into an editor like JCH's. Over all these years, the single most important feature I needed in JCH's player is the ability to set player speed lower than two (speaking for v20). That means a player updating each frame. I've done many improvements to JCH's editor/players, but I haven't found the time to do this one (in fact, when I was to do it, I stopped being an "active" scener, around 1996.) I had done a player myself, which was to be integrated into JCH's editor, but that didn't come true, either.

So, what needs to be done, from a musician's perspective, is a player that updates each frame and gives all the nice effects etc all together, without worrying about raster-time usage. Who cares about raster-time, when he's composing for a music compo? Or just for the pleasure of composing for SID? If I'm to consider that a tune of mine might be used in scene productions, I would rather go use NP v19 or John Player or something similar.

So, basically, there are two types of players need to be done:

1) A player giving a nice set of features, while being very low on raster-time usage. (This is done, several times.)

2) A player boasting to have most of the really useful features out there and have ultimate speed in updating. (This is something not available yet, at least not for public.)

Struggling for anything other than these two is probably futile, from a musician's perspective. It might be of use for a coder to masturbate and then brag about.

I already want to release all my improved or written-from-scratch JCH stuff for years (some of the musicians out there already know this from our IRC sessions.) Real life didn't permit me to do that until now. But I'm really eager to do it. As Dane also works on his improvements (and a few others, AFAIK, like DJB of BM) for JCH's, maybe we all should come together to form a work group that will manage to put the ultimate JCH's editor/player out. That would save us from doing the same things and all those scattered versions with different sets of feaures. I don't know what you guys would think about this.
2004-01-15 11:38
Dane
Account closed

Registered: May 2002
Posts: 421
It's a good idea. Get in touch with me and I'll brief you with what I've done so far and vice versa. We can take it from there.
2004-08-25 02:11
St0fF

Registered: Oct 2002
Posts: 40
Twoflower: SORRY!!!

after a few years i think your ideas ain't that bad - nope, they're great! but i still am a democoder (well i coded more tools than FX, but who cares..), who thinks about the spare time for FX after the music was played in multi-speed. But I learned - because... how many ppl use atmds? just me - that a tracker needs to be done for the musician, not for the coder. And guess what: i didn't like any of my recently reeased tunes myself. the last one I liked myself was happyness 2002 ...
so sorry again!
2004-08-25 14:39
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
St0ff: what you really need to do, is to make the sounds independant. So a sound has all in it, when saved/loaded.

This will allow the swapping of sounds between composers, the #1 reason soundtracker/protracker etc. became so popular.

This way, it will be possible to build a sound-library.

Who cares about democoders ? :-)

They can already do so much, so adding another 20 rasterlines wouldn't hurt. They just have to get better!

So far, coders sacrificed most of memory for large IFLI pics, now it's time to sacrifice raster for ultimate SID player!
2004-08-25 17:33
ne7
Account closed

Registered: Jul 2004
Posts: 17
I definately agree 100% with Twoflower and Dane's points here - i would absolutely LOVE a tracker that really used the C=64 to the brink for just music. would be a fab tool for gigs and music making in general (using the c64 as a fat sounding synth like some use the gameboy) it would simply be fantastic =)
Previous - 1 | 2 | 3 | 4 | 5 | 6 - 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
Frostbyte/Artline De..
Didi/Laxity
t0m3000/ibex-crew
d'Arc/Topaz Beerline
Sledge/Fairlight
machete
DeMOSic/HF^MS^BCC^LSD
zscs
kbs/Pht/Lxt
Clayboy
Guests online: 144
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 Memento Mori  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Dawnfall V1.1  (9.5)
8 Quadrants  (9.5)
9 Daah, Those Acid Pil..  (9.5)
10 Birth of a Flower  (9.5)
Top Groups
1 Nostalgia  (9.3)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Swappers
1 Derbyshire Ram  (10)
2 Jerry  (9.8)
3 Violator  (9.8)
4 Acidchild  (9.7)
5 Starlight  (9.6)

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