background image

Programmer’s Guide

C4 Commander

C4 Commander Programmer's Guide

C4 Commander Files

C4 Commander deals with 2 types of files:  
Instrument Definition Files and Layouts.

Instrument Definition Files (.c4i) contain the 
parameters that allow C4 Commander to commu-
nicate with a particular MIDI hardware device.

Layout files (.c4l) allow the user to place controls 
in a specific order and to relabel control text.

The default Instrument Definition files for the 
C4 Commander were designed to provide the 
maximum amount of detail for each parameter. 
This detail may cause some instrument layouts 
to look cluttered or may cause them to be dif-
ficult to read. This can be corrected by simply 
using C4 Commander to move and rename pa-
rameters, hence creating an appropriate Layout 
file for a particular instrument. This does not 
affect the Instrument Definition file, but rather 
edits their position within the layout file. As 
such, it is possible to create several layouts for 
the same instrument, allowing maximum flex-
ibility for a given application.

Instrument Definition Files (.c4i)

There may be instances where editing the In-
struments Definition file is desirable. The main 
reason for this is to add ValueText messages to 
the definition file, which substitutes descriptive 
text in place of numerical values (e.g., Off/On 
instead of 0/1).

Another reason for editing the file is to create a 
new instrument file either for a MIDI device not 
included in the existing Instrument folder, or 
based on an existing definition. 

Many times when creating a new file for anoth-
er instrument from the same manufacturer, the 
manufacturer will use the same SYSEX (System 
Exclusive) format (what we call a “schema”) 
between multiple devices. In this case, creating 
a new instrument may be as simple as chang-
ing the Device ID and the parameter numbers 
within the Instrument Definition file. Creating 
a new Instrument Definition file from scratch, 
however, will require much more work.

Introduction

The C4 Commander User's Guide covers the 
general operation of the C4 Commander soft-
ware, while this Programmer's Guide provides 
detailed information on customizing the In-
strument Definition files. You might want to 
customize an Instrument Definition file simply 
to change how a value appears in the display 
(ValueText), or you may need to create a new 
Instrument Definition file for a MIDI device 
that is not included in the Instruments folder 
provided with the software. Be sure to check 
for Instrument Definition file updates on our 
website (in the Settings window, click the 
Instruments tab and click on the link at the bot-
tom of the window) to see if a new Instrument 
Definition file has been created for the MIDI 
device you have. 

Contents

C4 Commander Programmer's Guide --------- 

Introduction ------------------------------------------
C4 Commander Files --------------------------------

Instrument Definition Files (.c4i) ---------------- 

New Instrument File Creation ------ 3

Steps in creating a new Instrument file: ---- 3

C4 Commander XML schema  ---------------- 3

Basics --------------------------------------3
Syntax -------------------------------------3

Creating a new Instrument Definition  ---------4

Masks ------------------------------------ 4
ValueText ------------------------------- 6

Parameters -------------------------------------- 7

Layout files (.c4l) ----------------------------------10

Layout File Format ---------------------------- 11

Console File (.c4s) --------------------------------- 1

Summary of Contents for C4 Commander

Page 1: ...PROGRAMMER S G U I D E C4Commander ExternalMIDIHardware ControlSoftware ForMackieControlC4...

Page 2: ...d in the existing Instrument folder or based on an existing definition Many times when creating a new file for anoth er instrument from the same manufacturer the manufacturer will use the same SYSEX S...

Page 3: ...contact the synthesizer manufacturer for this informa tion Define masks based on the SYSEX mes sages used by the instrument Define the parameters to be controlled via SYSEX Optional define ValueText...

Page 4: ...the MIDI Manufacturer s Association MMA A unique ID assigned to each manufacturer and stored in HEX DeviceName Name of the given instrument e g Matrix 6 This is displayed in various file lists and men...

Page 5: ...f the message one based from the left is to be masked Bit An integer indicating which bit of the message byte one based from the right is the left most starting bit of the mask Size The number of bits...

Page 6: ...yping your valuetext state ments ValueText name xxxxxxx This element is used to substitute text in place of a V Pot nu merical value So instead of seeing 0 and 1 for a V Pot value you can have on and...

Page 7: ...ting FunctionName Name of the given function e g Master volume The FunctionName is displayed as the default name in the C4 Com mander screen Since the physical C4 is limited to displaying only 7 8 cha...

Page 8: ...TextList ValueText name onoff Text value 0 Off Text Text value 1 On Text ValueText ValueText name alg Text value 0 Algorithm 1 Text Text value 1 Algorithm 2 Text Text value 2 Algorithm 3 Text Text val...

Page 9: ...C4 Commander Param ParamID 39H ParamID ParamName Amplitude Mod Depth ParamName Message F0 22 20 33 39 00 00 F7 Message ValueRangeMin 0 ValueRangeMin ValueRangeMax 99 ValueRangeMax Param ParamTable In...

Page 10: ...rs in the top LED bar of the C4 Commander PageList Holds all names of the current layout s pages The order of the child Page elements determines the corresponding page numbers Page A single page name...

Page 11: ...the param to upon quick toggle action of the V Pot Default will be half way between the min and max Layout File Format CustomLayout LayoutID 75a1e4445dcd311d LayoutID LayoutName line6 podtr LayoutNam...

Page 12: ...and the Running Man figure are trademarks or registered trademarks of LOUD Technologies Inc All other brand names mentioned are trademarks or registered trademarks of their respective holders and are...

Reviews: