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
.
 
... 50 posts hidden. Click here to view all posts....
 
2006-07-16 22:50
cadaver

Registered: Feb 2002
Posts: 1160
Improper siddump output? Where?
2006-07-17 07:02
TNT
Account closed

Registered: Oct 2004
Posts: 189
Quoting nata
Tons of cryptic cmd's are useless, since NOBODY will be able to use them.

... just my opinion :)

You just called a lot of talented C64 musicians nobodies. But that's just your opinion, right?
2006-07-17 08:55
Bamu®
Account closed

Registered: May 2005
Posts: 1332
Quote: Quoting nata
Tons of cryptic cmd's are useless, since NOBODY will be able to use them.

... just my opinion :)

You just called a lot of talented C64 musicians nobodies. But that's just your opinion, right?


I don't think that I have meant it in that way.
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
Higgie/Kraze/Slackers
Yogibear/Protovision
serato/Finnish Gold
Guests online: 107
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Mojo  (9.6)
6 The Demo Coder  (9.6)
7 What Is The Matrix 2  (9.6)
8 Uncensored  (9.6)
9 Wonderland XIV  (9.6)
10 Comaland 100%  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Party Elk 2  (9.6)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.6)
5 Libertongo  (9.5)
6 Rainbow Connection  (9.5)
7 Onscreen 5k  (9.5)
8 Morph  (9.5)
9 Dawnfall V1.1  (9.5)
10 It's More Fun to Com..  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Nostalgia  (9.3)
5 Triad  (9.2)
Top Coders
1 Axis  (9.8)
2 Graham  (9.8)
3 Crossbow  (9.8)
4 Lft  (9.8)
5 HCL  (9.8)

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