lo10k1 is loader. Parameters: -h or --help Prints short help message -l patch_name or --list path_name List some usefull informations about patch in file patch_name. lo10k1 uses patch produced by as10k1 from alsatools package. -p name or --pipe_name name lo10k1 will use local named pipe with name name to communication with linker. Default is /tmp/.ld10k1_port -i or --info Prints some info about card - not wery usefull -a patch_name or --add patch_name Loads patch from file patch_name to DSP -d num or --del num Unloads patch with number num from DSP. Use option --debug 4 to obtain patch numbers. --conadd conn_string Connects patches between each others or to inputs or outputs. Format of conn_string: FX buses: FX(f1, ...) - specify fx bus register f1 can be number or fx bus register name Names can be optained by lo10k1 --debug 7 FX(1) FX(1,2) FX(FX_PCM_Left,FX_PCM_Right) Inputs: IN(i1, ...) - specify input register i1 can be number or input register name Names can be optained by lo10k1 --debug 8 IN(1) IN(1,2) IN(IN_AC97_Left,IN_AC97_Right) Outputs: OUT(o1, ...) - specify input register o1 can be number or input register name Names can be optained by lo10k1 --debug 9 OUT(1) OUT(1,2) OUT(OUT_AC97_Front_Left,OUT_AC97_Front_Right) Patch inputs: PIN(p, i1, ...) - p is patch number or patch name, i1 is input register i1 can be number or input register name Patch numbers and names can be optained by lo10k1 --debug 5 Names can be optained by lo10k1 --debug patch_num PIN(1) - all patch inputs for patch 1 PIN(Volume,IL,IL) - inputs IL and IR for patch Volume PIN(2,0,1,2,3,4,5) - inputs 0,1,2,3,4,5 patch 2 Patch outputs: POUT(p, o1, ...) - p is patch number or patch name, o1 is output register o1 can be number or outpur register name Patch numbers and names can be optained by lo10k1 --debug 5 Names can be optained by lo10k1 --debug patch_num POUT(1) - all patch outputs for patch 1 POUT(Volume,OL,OL) - outputs OL and OR for patch Volume POUT(2,0,1,2,3,4,5) - outputs 0,1,2,3,4,5 patch 2 - connecting two patches: something1=something2 or something1:something2 or something1>something2 something1,something2 - strings specify fx bus, input, output, patch input or patch output something1 - must be patch input or output Difference between = and > is that = connect only two patches > enables connecting more patches together. If you have three patches p1,p2,p3 - p1 with output o1, p2 with input i2, and p3 with input i3. PIN(p2,i2)=POUT(p1,o1) - will connect p1 with p2 then next connect PIN(p3,i3)=POUT(p1,o1) - will disconnect p1 and p2 and connect p1 with p2 but PIN(p3,i3)>POUT(p1,o1) - will connect p1 and p2 - p2 input i2 and p3 input i3 will be connected to p1 output o1 Diffrence between = and : is that = allocate extra instructions and register to properly add sources. : uses same register for all sources and patches must care about this register. Counts of connected inputs and outputs must be same. FX busses, inputs and outputs can have multiple patches connected to them. Examples: lo10k1 --conadd "PIN(1)=FX(0,1)" - connect to patch 1 input to fx bus 0 and 1 lo10k1 --conadd "PIN(2)=POUT(PCM)" - connect to all patch 2 inputs all outputs from patch PCM --condel conndel_string Disconnects patch register. Format of conndel_string: something something - strings specify patch input or patch output Examples: lo10k1 --condel "PIN(1)" - disconnect all inputs of patch 1 lo10k1 --condel "POUT(PCM1,1,Center))" - disconnect output 1 and Center from patch PCM --debug num Prints on console some debug information. mum = 1 - prints registers information mum = 2 - prints consts information mum = 3 - prints instruction information mum = 4 - prints information about TRAM mum = 5 - prints loaded patch names and numbers mum = 6 - prints patch order in DSP instruction memory mum = 7 - prints fx information mum = 8 - prints input information mum = 9 - prints output information mum = 100 and more - prints informations about loaded patches (--debug 100 - about patch number 0, -- debug 101 about patch number 1, and so on) --defionames When patch is loaded, this assign default names for patch input and output registers. Input/Output count: 1/1 - In/Out 2/2 - IL,IR/OL,OR 4/4 - IL,IR,IRL,IRR/OL,OR,ORL,ORR 6/6 - IL,IR,IRL,IRR,IC,ILFE/OL,OR,ORL,ORR,OC,OLFE where: In = Input On = Output IL = Input Left OL = Output Left IR = Input Right OR = Output Right IRL = Input Rear Left ORL = Output Rear Left IRR = Input Rear Right ORR = Output Rear Right IC = Input Center OC = Output Center ILFE = Input LFE OLFE = Output LFE --ctrl string This options is used to concate, rename controls and sets various parameters for controls String format: c-name1,name2,...namen:outname This concate controls with names name1, name2, ..namen to one control with name outname Input controls must have same range and are single channel (this is limitation of as10k1). Output control has n channes. This can be used only for as10k1 file format. example: c-masterl,masterr:master,t-master:1 Concate two controls masterl and masterr into one stereo control master with translaton table100 t-name:type This sets translate function whitch translate range and current value from mixer value to gpr value for control with name name. This can be used only for as10k1 file format. Type can be: 0 - no translation is used 1 - table 100 - range 0-100 in mixer is translated to range 0-2^31 2 - bass - range 0-40 in mixer is translated to range 0-2^31 - used for bass control 3 - treble - range 0-40 in mixer is translated to range 0-2^31 - used for treble control 4 - on/off - control uses range 0-1 v-name:count This sets number off visible channel in mixer. This can be used only for as10k1 file format. example: v-bass:1 for bass control which has 5 channels is in mixer visible only one s-name:value1#value2# ... This sets initial value for control. i-name:value Sets control index value to control r-name:outname This rename control with name name to control with name outname. This can be used only for native file format. example: r-master:PCM Master Rename control master to control PCM Master --patch_name name Sets name for actualy loaded patch (it is used with -a option). Dafault name comes from patch file. --where num Used with -a option. Actualy loaded path will by loaded before patch with order num. You can get patch order with --debug 5 --setup When this option is used DSP on card is cleared. --renam something=new_name Same string as in connection add and plus PATCH(p) - specify patch with name p or number p Examples: lo10k1 --renam "IN(5)=CD Left" - renames input 5 to CD Left lo10k1 --renam "PATCH(Volume)=Mic Volume" - renames patch Volume to Mic Volume lo10k1 --renam "PIN(Volume,IC)=Center IN" - renames patch Volume input IL to Center IN --dump file This will dump dsp instructions and register to file. This file can be loaded with dl10k1 without ld10k1. --host machine:port ld10k1 default uses named socket, this switch to use network socket. -P or --path add effect search paths (default will lo10k1 search in effects dir) --store file.ld10k1 Stores DSP config to native ld10k1 file file.ld10k1 --restore file.ld10k1 Restores DSP config from native ld10k1 file file.ld10k1 --save_patch file.ld10k1 Saves patch specified with --where option to file file.ld10k1 --load_patch file.ld10k1 Loads patch to dsp on position specified with --where option from file file.ld10k1 --wait msec Wait for ld10k1 for msec mili second.