|
There are no translations available.
SouthPole es el Procesador de sonido profesional open-source ideado por Jordi Trujillo (LlunaSol) y Aleix Riera, y enteramente programado por Aleix Riera sobre la plataforma Chameleon, de Sound Art, realizado entre 2003 y 2004.
Varios artistas se han interesado, y lo han usado en sus conciertos y grabaciones, como los franceses Les Grandes Gueules
Ver Articulo relacionado: Entrevista con Aleix Riera para SoundArt
Last update: 2005-02-14
Overview About SouthPole
South Pole v1.0 is my first open-source skin for the Chameleon, conceived by LlunaSol, that gives you:
4 powerful parallel audio processing lines with SP-Delay and Hot-Saturation units.
-Convert your little synthesizer or keyboard or any basic sound source, into a professional electronic instrument.
-It is the perfect solution for making long, dynamic and constantly pseudo-random evolutive organic pads, ensembles and strings. The power of the possibility of very low frequency generation gives the musician the opportunity of making huge and endless sustained sounds and chords.
-Extract all the juice of the four 4-Pole Low Pass Filters and make your own experimental phaser effects over the largest pads through SouthPole transformation capability, by enabling all the lines at the same time. "Find the end of the rainbow and fly wherever the winds blow".
-Never before we heard such evolutive percussion potentials as easily as with SouthPole. Now, by simply enabling few processing lines, you can tranformate your drum and percussion sequences in a real powerful dynamic train of Kraftwerkian sounds. Setting the lowest frequencies in the LFOs will give you the same evolution as the first point we have commented.
-In the other hand, by putting a high speed at the oscillators, you will get the fastest variations in its shape, allowing you to have a drastic transform of the original sound, and to invite it to have a special exotic trip to extremely noise screams. Fast percussive loops are waiting you to let them inside SouthPole.
-If you want to reach the SouthPole own limits, try to put carefully low values in the Hot-Saturation Unit when a percussive line is being processed. We don't guarantee the musician's integrity if greater values are set.
-You can extract the perfect amount of classical electric organs sound through SouthPole. Try to put some SP-Delay send amount of the own enabled line, with a little Hot-Saturator's overdrive. Another non-guaranteed soultion is to try it with a SouthPole Factory Preset.
-Special FX can be made approaching carefully the values to really extreme limits. It is very fast and easy to tell the very friendly user interface when we want to reach the schemes. It only can be self-explained by loading a Factory Preset.
-Guitars and another acoustic agressive instruments will fall into happiness. It is high time they got the possibility to be processed by high values in the Hot-Saturator Overdrive and low amount of SP-Delay time parameter. It's time to make your sound cry.
-Metallic and auto-shaping sounds can be resynthesized with the lowest values in the time delay, directly allowed by the unique SP-Delay Unit.
-Stand-alone solos, sound fields and musician electronic suites are possible by putting very high values in the SP-Delay Unit time parameter.
-Auto-sequencing and near-permanently sustained loops can be obtained with highest values in SP-Delay feedback parameter.
-Convert the SouthPole itself to an easy-to-operate powerful effects unit: Sending to the SP-Delay Unit the appropiate amount of one or more lines, which are switched off, you will obtain an extraordinary professional sound field processor result, allowing you to recreate a really complex sound accomodating of a real or imaginary sound textures and images.
-Not only the musicians could take advantatge with SouthPole. Teaching and developing tasks could be complemented with SouthPole fast access and configuration of its modules. In fact, the source code is self-explained, but using directly the SouthPole on a Chameleon Unit you can make qualitative experiments for example with the LPF, BPF and HPF.
-128 Factory Presets are prepared to go out from your Chameleon. Take a minute to explore them, with the help of these named presets.
-SouthPole has the capability to contain 128 User Presets, to be saved when and where the musician wants.
-All you could make with all the possibilities is not known.
Technical Skills
The sound processing has been coded in ASSEMBLER working with totally optimized code using parallel moves allowed in Motorola DSP 56k family. It is programmed in a module-way intuitive vision, including external header files as a virtual cables and virtual black boxes. DMA method of AD/DA 24 bit @ 96 kHz communications between Audio In and Audio Out has been used to optimize computing time.
The user interface has been programmed entirely in plane C. Using RTEMS pseudo operative system, more than one program line executes concurrently in the Motorola's ColdFire, allowing the musician not to worry about navigating and editing menus. INT communication method between the user interface CPU and audio processing DSP has been selected. As in the audio processing case, the source code has been divided in several files in order to make it easier to the future developers.

SouthPole v 1.0 - DOWNLOAD WHOLE SOURCE CODE AND .MID -
|
The Filter Bank
|
3 types of 24 dB filter (Low-Pass, Band-Pass and High-Pass) in parallel mode with each line. A total of 12 stereo auto-oscillating Moog-way conceived filters.
|
|
The Low Frequency Oscillator Bank
|
3 LFO's with their 3 offset adders in each line connected directly to the Filter Controls (cut off, ressonance and panning). A total of 12 0-to-40 Hz logarithmic LFO's working in parallel mode. All parameters are easily and directly controllables thru the knobs by the user (amplitude, frequency and offset).
|
|
The SP-Delay Unit
|
A 4-channel mixer followed by a logarithmic stereo Delay (0,1 miliseconds up to 11 seconds) gives the complete control of the 4 send levels, including a Random control of the echo times.
|
|
The Hot-Saturation Unit
|
A stereo Hot-Saturation Unit will burn slowly the sound, making it strongly hot all the time the sound cries. It works directly on the Filter Bank (after them, in lines 1 & 2, and before in 3 & 4). The perfect emulation of the first sounds of electronic organs, and really specific for the most agressive drums and percussion.
|
|
The Global Mixer
|
A 3-channel stereo mixer allows you to sepparate the original sound, the line-processed sound, and the delayed sound to adjust the perfect amount of each one at the final mix.
|
|
The Factory and User Presets Bank
|
A total of 256 flash memory containers with 256 Factory and User Presets. The 128 Factory Presets and the 128 User totally editable Presets Bank gives you the fastest acces to your own SouthPole configurations and patches.
|
MP3 Soundclips
Block Diagram
Menu Hirerarchy
EDIT: Load/Save and their confirmations. PART: Change Line. GROUP: Enable/Disable Line. VALUE: Yes/No and Fine edit values.
|
PAGE
|
PARAM
|
Controls
|
Pot 1
|
Pot 2
|
Pot 3
|
|
Filter
|
---
|
Potentiometers
|
Cutoff
|
Ressonance
|
Panning
|
|
LFO Speed
|
---
|
Potentiometers
|
Cutoff
|
Ressonance
|
Panning
|
|
Send Delay
|
---
|
Encoder/Value
|
---
|
---
|
---
|
|
Saturation
|
---
|
Encoder/Value
|
---
|
---
|
---
|
|
LFO Amplitudes
|
---
|
Potentiometers
|
Cutoff
|
Ressonance
|
Panning
|
|
Select Filter
|
---
|
Potentiometers
|
Low-Pass
|
Band-Pass
|
High-Pass
|
|
Line Volume
|
---
|
Encoder/Value
|
---
|
---
|
---
|
|
Delay Params
|
Time
|
Encoder/Value
|
---
|
---
|
---
|
|
---
|
Feedback
|
Encoder/Value
|
---
|
---
|
---
|
|
---
|
Random
|
Encoder/Value
|
---
|
---
|
---
|
|
Global Mixing
|
---
|
Potentiometers
|
Audio IN
|
Lines
|
Delayed Lines
|
Factory Presets
|
N
|
Preset Name
|
N
|
Preset Name
|
N
|
Preset Name
|
N
|
Preset Name
|
|
0
|
SING. LOWPASS
|
32
|
DISTANT PLANET
|
64
|
CASTLE OF MURK
|
96
|
SP_NOISE-HIRTZ
|
|
1
|
SING. BANDPASS
|
33
|
HITECH GTRONIC
|
65
|
SHADOWS HOUSE
|
97
|
SP_NOISE-ZHEHN
|
|
2
|
SING. HIGHPASS
|
34
|
GOLDEN PYRAMID
|
66
|
AERO GENERATOR
|
98
|
SP_NOISE-LOHEA
|
|
3
|
SING. LOW+LFO
|
35
|
DISTANT CLOUDS
|
67
|
COLDER STORM
|
99
|
SP_NOISE-IHONE
|
|
4
|
SING.BAND+LFO
|
36
|
FIGHT PENGUIN
|
68
|
WITHIN A DREAM
|
100
|
EARTH MOVEMENT
|
|
5
|
SING.HIGH+LFO
|
37
|
SIRENS SINGING
|
69
|
MILITARY ZONE
|
101
|
FALLING ROCK
|
|
6
|
SINGLE+DELAY2
|
38
|
PETROL GLACIER
|
70
|
TALKING LOUDER
|
102
|
OVER OCEAN
|
|
7
|
2LINES+DELAY3
|
39
|
ELECTRIFIED !
|
71
|
CRYSTAL LANDS
|
103
|
SOUTH POLE
|
|
8
|
MARBLE GARDEN
|
40
|
RADIOCOM
|
72
|
SYNHARMONICS
|
104
|
WE, ROBOTS
|
|
9
|
PLASTIC CUBE
|
41
|
ANTARCTICA
|
73
|
ORGANIC SAND
|
105
|
FIREBALL
|
|
10
|
MAGNETIC FIELD
|
42
|
BLUE SNOW CAVE
|
74
|
MIDNIGHT CRIES
|
106
|
EYE IN THE SKY
|
|
11
|
HOT-SATURATOR
|
43
|
IRON TUBE CAVE
|
75
|
BAD NEWS
|
107
|
NERVE CENTRE
|
|
12
|
SYNCHROTRON
|
44
|
TWILIGHT CITY
|
76
|
LOVELY ANGEL
|
108
|
TECHNO ECHOES
|
|
13
|
METAL ON METAL
|
45
|
CITY LIGHTS
|
77
|
CROSS-PHASER
|
109
|
GREAT CANYON
|
|
14
|
KILL THE BEE
|
46
|
GREAT SEAVOICE
|
78
|
BRIGHTNESS
|
110
|
DISTORTION
|
|
15
|
PULSTAR
|
47
|
COLD WIND
|
79
|
GREEN DESERT
|
111
|
LASER BEAM
|
|
16
|
SUN RAYS
|
48
|
WHISPER WATERS
|
80
|
EVOLUTION
|
112
|
HELIUM BALLOON
|
|
17
|
NUCLEAR ENGINE
|
49
|
ELECTRIC STORM
|
81
|
SEVENTIES
|
113
|
MOON SURFACE
|
|
18
|
DODECAHEDRON
|
50
|
DRY OVERDRIVE
|
82
|
POLLUTION
|
114
|
RED PLANET
|
|
19
|
INTERFERENCES
|
51
|
OIL LIQUIDE
|
83
|
EXECUTION
|
115
|
OXYGENE
|
|
20
|
ALL LINES ON !
|
52
|
WALKING CHIPS
|
84
|
DETERIORATION
|
116
|
RADIOACTIVITY
|
|
21
|
BARNIE'S DREAM
|
53
|
INSECT SCAPE
|
85
|
AIR SURFING
|
117
|
ELECTROPLASMA
|
|
22
|
BIRDS IN HELL
|
54
|
PINKY PIGGY
|
86
|
THIN TUNNEL
|
118
|
RENDEZ-VOUS
|
|
23
|
CATS IN HELL
|
55
|
OLD TURBINE
|
87
|
FRACTAL PATH
|
119
|
DARKNESS LOCH
|
|
24
|
HEAVY HARDRAIN
|
56
|
FORCE MAJEURE
|
88
|
ALTERNATION
|
120
|
PROGRESSIVE
|
|
25
|
KILLING OXIDE
|
57
|
POLE POLUTION
|
89
|
MAGIC JOURNEY
|
121
|
ELASTIC SQUARE
|
|
26
|
EXOTIC FOREST
|
58
|
POLAR BREEZE
|
90
|
REPETITION
|
122
|
SPACE SHIP
|
|
27
|
INSIDE BOTTLE
|
59
|
STEEL INDUSTRY
|
91
|
ORANGE SKY
|
123
|
WAVEOLUTION
|
|
28
|
ANTHENNA ALARM
|
60
|
ICEBERG FALL
|
92
|
SP_NOISE-AHZER
|
124
|
LUNAR APPROACH
|
|
29
|
FRIENDLY GIRL
|
61
|
EROTIC NIGHT
|
93
|
SP_NOISE-KHELM
|
125
|
WOOD VILLE
|
|
30
|
LOVELY PINK
|
62
|
LANDSCAPES
|
94
|
SP_NOISE-NEOHA
|
126
|
LOVE
|
|
31
|
WORST CHOICE
|
63
|
FLOWER FIELDS
|
95
|
SP_NOISE-DHORM
|
127
|
C H A O S !
|
SP-Delay Time Table
|
V
|
Time (ms)
|
V
|
Time (ms)
|
V
|
Time (ms)
|
V
|
Time (ms)
|
|
0
|
0,11
|
32
|
11,06
|
64
|
138,37
|
96
|
1308,68
|
|
1
|
0,11
|
33
|
12,08
|
65
|
148,85
|
97
|
1400,66
|
|
2
|
0,12
|
34
|
13,17
|
66
|
160,09
|
98
|
1498,94
|
|
3
|
0,12
|
35
|
14,35
|
67
|
172,14
|
99
|
1603,95
|
|
4
|
0,13
|
36
|
15,63
|
68
|
185,05
|
100
|
1716,15
|
|
5
|
0,13
|
37
|
17,01
|
69
|
198,89
|
101
|
1836,00
|
|
6
|
0,15
|
38
|
18,49
|
70
|
213,72
|
102
|
1964,04
|
|
7
|
0,16
|
39
|
20,09
|
71
|
229,62
|
103
|
2100,81
|
|
8
|
0,19
|
40
|
21,81
|
72
|
246,63
|
104
|
2246,88
|
|
9
|
0,21
|
41
|
23,68
|
73
|
264,86
|
105
|
2402,90
|
|
10
|
0,24
|
42
|
25,68
|
74
|
284,39
|
106
|
2569,51
|
|
11
|
0,27
|
43
|
27,84
|
75
|
305,31
|
107
|
2747,43
|
|
12
|
0,33
|
44
|
30,17
|
76
|
327,70
|
108
|
2937,42
|
|
13
|
0,38
|
45
|
32,67
|
77
|
351,69
|
109
|
3140,28
|
|
14
|
0,46
|
46
|
35,37
|
78
|
377,36
|
110
|
3356,85
|
|
15
|
0,56
|
47
|
38,27
|
79
|
404,83
|
111
|
3588,07
|
|
16
|
0,67
|
48
|
41,40
|
80
|
434,24
|
112
|
3834,92
|
|
17
|
0,82
|
49
|
44,75
|
81
|
465,71
|
113
|
4098,41
|
|
18
|
0,99
|
50
|
48,35
|
82
|
499,38
|
114
|
4379,67
|
|
19
|
1,22
|
51
|
52,24
|
83
|
535,42
|
115
|
4679,87
|
|
20
|
1,50
|
52
|
56,42
|
84
|
573,98
|
116
|
5000,27
|
|
21
|
1,84
|
53
|
60,89
|
85
|
615,21
|
117
|
5342,20
|
|
22
|
2,26
|
54
|
65,71
|
86
|
659,32
|
118
|
5707,10
|
|
23
|
2,77
|
55
|
70,89
|
87
|
706,50
|
119
|
6096,50
|
|
24
|
3,41
|
56
|
76,45
|
88
|
756,96
|
120
|
6512,00
|
|
25
|
4,18
|
57
|
82,41
|
89
|
810,91
|
121
|
6955,32
|
|
26
|
5,13
|
58
|
88,81
|
90
|
868,60
|
122
|
7428,34
|
|
27
|
6,30
|
59
|
95,69
|
91
|
930,29
|
123
|
7932,98
|
|
28
|
7,72
|
60
|
103,08
|
92
|
996,23
|
124
|
8471,35
|
|
29
|
8,47
|
61
|
111,00
|
93
|
1066,73
|
125
|
9045,66
|
|
30
|
9,26
|
62
|
119,48
|
94
|
1142,07
|
126
|
9658,30
|
|
31
|
10,13
|
63
|
128,60
|
95
|
1222,62
|
127
|
10311,77
|
LFOs Frequency Table
|
V
|
Period (seconds)
|
V
|
Period (seconds)
|
V
|
Frequency (Hz)
|
V
|
Frequency (Hz)
|
|
0
|
No oscillation
|
32
|
24,93
|
64
|
0,51
|
96
|
4,79
|
|
1
|
No oscillation
|
33
|
22,81
|
65
|
0,54
|
97
|
5,13
|
|
2
|
25000,00
|
34
|
20,90
|
66
|
0,59
|
98
|
5,49
|
|
3
|
25000,00
|
35
|
19,17
|
67
|
0,63
|
99
|
5,87
|
|
4
|
12500,00
|
36
|
17,59
|
68
|
0,68
|
100
|
6,28
|
|
5
|
12500,00
|
37
|
16,16
|
69
|
0,73
|
101
|
6,72
|
|
6
|
6250,00
|
38
|
14,85
|
70
|
0,78
|
102
|
7,19
|
|
7
|
5000,00
|
39
|
13,67
|
71
|
0,84
|
103
|
7,69
|
|
8
|
3571,43
|
40
|
12,58
|
72
|
0,90
|
104
|
8,23
|
|
9
|
2777,78
|
41
|
11,58
|
73
|
0,97
|
105
|
8,80
|
|
10
|
2083,33
|
42
|
10,68
|
74
|
1,04
|
106
|
9,41
|
|
11
|
1666,67
|
43
|
9,85
|
75
|
1,12
|
107
|
10,06
|
|
12
|
1250,00
|
44
|
9,08
|
76
|
1,20
|
108
|
10,76
|
|
13
|
1000,00
|
45
|
8,39
|
77
|
1,29
|
109
|
11,50
|
|
14
|
781,25
|
46
|
7,74
|
78
|
1,38
|
110
|
12,29
|
|
15
|
609,76
|
47
|
7,16
|
79
|
1,48
|
111
|
13,14
|
|
16
|
490,20
|
48
|
6,61
|
80
|
1,59
|
112
|
14,04
|
|
17
|
384,62
|
49
|
6,12
|
81
|
1,71
|
113
|
15,01
|
|
18
|
308,64
|
50
|
5,66
|
82
|
1,83
|
114
|
16,04
|
|
19
|
245,10
|
51
|
5,24
|
83
|
1,96
|
115
|
17,14
|
|
20
|
196,85
|
52
|
4,85
|
84
|
2,10
|
116
|
18,31
|
|
21
|
158,23
|
53
|
4,49
|
85
|
2,25
|
117
|
19,56
|
|
22
|
126,90
|
54
|
4,16
|
86
|
2,41
|
118
|
20,90
|
|
23
|
102,46
|
55
|
3,86
|
87
|
2,59
|
119
|
22,33
|
|
24
|
82,78
|
56
|
3,58
|
88
|
2,77
|
120
|
23,85
|
|
25
|
67,02
|
57
|
3,32
|
89
|
2,97
|
121
|
25,47
|
|
26
|
54,35
|
58
|
3,08
|
90
|
3,18
|
122
|
27,20
|
|
27
|
44,09
|
59
|
2,86
|
91
|
3,41
|
123
|
29,05
|
|
28
|
35,87
|
60
|
2,65
|
92
|
3,65
|
124
|
31,02
|
|
29
|
32,68
|
61
|
2,46
|
93
|
3,91
|
125
|
33,13
|
|
30
|
29,83
|
62
|
2,29
|
94
|
4,18
|
126
|
35,37
|
|
31
|
27,26
|
63
|
2,13
|
95
|
4,48
|
127
|
37,76
|
Source Code
Here's the project folder zipped (the entire source code plus downloadable .MID file). It includes header files. Open the .PRJ file with your compiler in order to obtain directly the original structure of SouthPole code.
Whole Project Source Code (ZIP)
Project Hirerarchy
|
COLDFIRE SIDE (User Interface)
|
DIGITAL SIGNAL PROCESSOR SIDE (Signal Processing)
|
|
Level 0
|
Level 1
|
Level 0
|
Level 1
|
|
Spole.h
|
|
Ctable.asm
|
|
|
Main.c
|
|
Ctrltab.asm
|
|
|
(INC)
|
Dsp.c
|
Delaying.asm
|
|
|
|
Flash.c
|
Getvar.asm
|
|
|
|
Init.c
|
Line0.asm
|
|
|
|
Leds.c
|
Line1.asm
|
|
|
|
Presets.c
|
Line2.asm
|
|
|
|
|
Line3.asm
|
|
|
|
|
Main.asm
|
|
|
|
|
Mix.asm
|
|
|
|
|
Mixing.asm
|
|
|
|
|
(DMA)
|
Cdma.asm
|
|
|
|
|
Dma.asm
|
|
|
|
(MODULES)
|
3mixer.asm
|
|
|
|
|
4mixer2.asm
|
|
|
|
|
4mixerd.asm
|
|
|
|
|
Addk_.asm
|
|
|
|
|
Addklim.asm
|
|
|
|
|
Delayl.asm
|
|
|
|
|
Delayr.asm
|
|
|
|
|
Filter2.asm
|
|
|
|
|
In.asm
|
|
|
|
|
Osc_.asm
|
|
|
|
|
Out.asm
|
|
|
|
|
Sati.asm
|
|
|
|
|
Sub.asm
|
|
|
|
(WTABLES)
|
Cosine.asm
|
|
|
|
|
Longpul.asm
|
File Description
|
FILE
|
TYPE
|
DESCRIPTION
|
|
Spole.h
|
UI Header
|
Contains all the constants and function declarations. Furthermore, there are all the structs and character redefinitions.
|
|
Main.c
|
UI Main File
|
Basicly, it is implemented the endless loop of the main program, controlling the navigation menu. Most of the variables are declared as a global data, in order to make it accessible from multiple routines.
|
|
Dsp.c
|
UI Include
|
Here is the parameter buffer preparation and sending with "prepare_and_send_DSP()" function, to be sent to DSP.
|
|
Flash.c
|
UI Include
|
There are all te routines referred to managing memory and code to load/save and prepare the parameter buffer in all cases.
|
|
Init.c
|
UI Include
|
Contains all the initializing functions: the menu, new characters, variables, panel and DSP, initial LED sequence and parameter tables. There's also low level functions that help the programmer to initialize easily the tables and the frequency tables (preparing integer and fractional parts of the values).
|
|
Leds.c
|
UI Include
|
There are the 3 concurrent routines using RTEMS programming. They control the LEDs (dancing over the LFOs), updating their flashing frecuency near the real time.
|
|
Presets.c
|
UI Include
|
This huge file contains all the factory presets initializing. It's only included zipped in All Project Source Code above.
|
|
Ctable.asm
|
DSP Include
|
This intuitive file helps the developer about linking all the modules and "black boxes", from the Audio IN to Audio OUT.
|
|
Ctrltab.asm
|
DSP Include
|
Similar to ctable.asm, this file defines all the control parameters and buffers wich will be used in audio modules. Then, the developer has not to worry about changing some variables in the processing code. It only have to be changed here.
|
|
Delaying.asm
|
DSP Processing
|
It perfoms the lines mixing, and then the stereo delay.
|
|
Getvar.asm
|
DSP Include
|
This essential file catch the parameters buffer, sent from the ColdFire and put on HostBuffer by the defined RSI, at the beginning of each DMA cycle, and put all of them into the proper DSP defined variables at main.asm.
|
|
Line0.asm
|
DSP Processing
|
Audio processing for the first line, calling the LFOs, the adders, the filters (and mix them), and the saturator.
|
|
Line1.asm
|
DSP Processing
|
Audio processing for the second line, calling the LFOs, the adders, the filters (and mix them), and the saturator.
|
|
Line2.asm
|
DSP Processing
|
Audio processing for the third line, calling the LFOs, the adders, the filters (and mix them), and the saturator.
|
|
Line3.asm
|
DSP Processing
|
Audio processing for the fourth line, calling the LFOs, the adders, the filters (and mix them), and the saturator.
|
|
Main.asm
|
DSP Main File
|
Appart of the constant defines, the buffers and variables declarations, module includes and initializations, it makes the Audio IN and Audio OUT task, making the "include" of line0.asm, line1.asm, line2.asm, line3.asm, mixing.asm, delaying.asm, and mix.asm
|
|
Mix.asm
|
DSP Processing
|
It's the 3 channel global mixer calling.
|
|
Mixing.asm
|
DSP Processing
|
This is the calling of the Line mixing.
|
|
Cdma.asm
|
DSP Configure
|
It contains the ConfigureAudioDMA subroutine, that configures DMA channels 0 and 1 for audio transmitter and receiver.
|
|
Dma.asm
|
DSP Configure
|
It changes the active ADC and DAC buffers waiting if CODEC is still working with it.
|
|
3mixer.asm
|
DSP Module
|
A 3 stereo channel mixer, used to add the Filters' output signal of each processing line. Programmed by Aleix Riera.
|
|
4mixer2.asm
|
DSP Module
|
This is a 4 stereo channel mixer with a control of panning by buffers. Programmed by Aleix Riera.
|
|
4mixerd.asm
|
DSP Module
|
A 4 stereo channel mixer, but without the panning control. It was reprogrammed to optimize computing time, and then no to lose instruction cycles. Programmed by Aleix Riera.
|
|
Addk_.asm
|
DSP Module
|
This module simply adds a number at a single variable only one time per DMA cycle. It is used only for taking a frequency band in cutoff to prepare de BPF. Programmed by Aleix Riera.
|
|
Addklim.asm
|
DSP Module
|
The same module as addk_.asm, but taking care about the final result. If it's lower than the given constant, the result will be this constant. This is used to avoid too low values at LPF's frequency cutoff. Programmed by Aleix Riera.
|
|
Delayl.asm
|
DSP Module
|
This is a mono delay (L) with time and feedback controls. It only puts to the output audio buffer the delayed signal (modified by me) and don't let the IN buffer to pass through. It allows to us the possibility of enabling individual send controls. Programmed by SoundArt.
|
|
Delayr.asm
|
DSP Module
|
And it is the right one (R).
|
|
Filter2.asm
|
DSP Module
|
This module implements a mono 24dB resonant lowpass filter (the code is based in the source code of the filter Moog VCF variation2 of the musicdsp.org filters source code page, thanks to Bram de Jong. I've modified the code, obtaining an efficient stereo filter.
|
|
In.asm
|
DSP Module
|
It separates the Left and Right frames from the interleaved DMA Input Buffer. It assumes that the first sample of each DMA cycle is the Left one. Programmed by Aleix Riera.
|
|
Osc_.asm
|
DSP Module
|
Linear interpolated wavetable oscillator with fixed amplitude and frequency. This code is based in the file osci.asm from the musickit source code. MusicKit is a set of classes and object templates used in NeXT computers (which include a DSP56002 chip) to build applications for music composition, synthesis and performance. Programmed by Julius Smith and James A. Moorer. Copyright 1990 NeXT Computer, Inc. All rights reserved). I've modified this module in order to generate only one sample per DMA cycle.
|
|
Out.asm
|
DSP Module
|
The opposite of the In.asm module. It fills the output stereo buffer from the L+R individual buffers, and scale with the global volume. Programmed by Aleix Riera.
|
|
Sati.asm
|
DSP Module
|
Linear interpolated wavetable saturator. It morphs the original (normal) IN/OUT curve with the given wavetable curve (it's threated as a symetric near the half of its size). Furthermore, as the name indicates, the wavetable is linear interpolated to make it totally independent from the IN range. Programmed by Aleix Riera.
|
|
Sub.asm
|
DSP Module
|
This module subtracts two Input buffers. Used to make the BPF and HPF using only the LPF module. Programmed by Aleix Riera.
|
|
Cosine.asm
|
DSP WaveTable
|
A cosine 256 length wavetable.
|
|
Longpul.asm
|
DSP WaveTable
|
A -1 to 1 heavy transition of 256 samples. Used as a IN/OUT figure in Hot-Saturator.
|
Additional Own Tools
|
Table Creator (executable) (ZIP)
|
Application (programmed in C) built in order to create symetric wavetables (first part with negative values, and the other half with positive ones) and to format it to Motorola DSP syntaxis. Longpul.asm was created with it.
|
About Chameleon Platform
A 24bit DSP Hardware Revolution.
The Chameleon is a truly multi-functional rack unit. You can completely "re-skin" it to be anything you need. It could be a monster filterbank, mastering tool and vocoder, a high-quality reverb, a virtual analogue synth module, an amp-modeller for guitar recordings, a solid multi-FX for mixdown, a dance music machine for a DJ gig, a gungy monosynth, warping delay-FX module... it's whatever you need, and it just takes a minute.
The wide range of skins keeps on growing - and the possibilities for future developments are literally endless.
If you are a bit smart with computer DSP code you can even write your own skins for it - unlike any other audio hardware manufacturer we are giving away free our software development kit to all those interested... this makes the Chameleon the only open platform around. Linux for DSP audio, anyone?
For hardware, this is a revolutionary concept. We designed it so that you can wipe its brain and load a completely new program into it. This makes it seem like a PC. However, this is not a PC in a box. This is simply adaptable, dedicated hardware.
There is a good reason why dedicated hardware is respected by professional users. Unlike normal computers, DSP hardware and their operating systems are designed specifically for the demanding requirements of studio and stage users. They are portable, they don't crash, are silent, switch on instantly, have no latency issues and the code is highly optimised to run on chips born to process sound, not run a word processor. Digital audio hardware units are true, stand-alone musical tools.
But the thing that general computers can do is change quickly, as you can make them do new tricks whenever new software rolls out. But there is a price to pay - we are the unwilling victims of so many compatability issues, stability concerns, constant platform wars and upgrade jungles as the general computers try to please everybody from office workers to graphic designers to gamers.
In the light of all this, the Chameleon concept takes todays audio hardware to its logical conclusion - it combines the best of both worlds. It's just like the rest of the hardware crowd in its dedication and quality, but this time it is as flexible as a circus contortionist.
Nearly all of the soundskins for the Chameleon that we develop in-house will be available free for download from this website. As we and other developers continue to create more soundskins, you can download them too, making the number of possible uses for your Chameleon continually expand. In a market where hardware equipment depreciates rapidly as the technology advances, Soundart will continue to add value and functionality to the Chameleon. In the end you will have more, not less. Try to find this commitment anywhere else in the pro-audio industry.
Technically, the Chameleon delivers 24-bit audio over a crystal-clear signal path and it uses the same industry-standard Motorola chips found in the most advanced DSP synthesizers and FX units. We even resurrected the MIDI engine from the Atari ST to give the Chameleon the tightest timing.
So this really is just the start of something. Already, it can do so much - but what new skin is round the corner? Maybe you can answer this...
For those interested in developing skins for the Chameleon platform, download the following multimedia presentation. It describes the Chameleon hardware in more detail. Note that hardware DSP development is a challenge for those more used to VSTs, but very rewarding, as you have a very clean and stable machine to work with, a fantastic SDK and all the clear advantages of DSP hardware. You can also take a moment to read the interviews with other Chameleon developers to find out why they love developing on their Chamie.
|