The process of designing a show and assigning firing system addresses for the effects in Finale 3D begins with laying out the launch positions, then dragging and dropping effects in the 3D design view, and then executing a function to assign the firing system module numbers (0-99), port letters (A and B), and output terminals (1-36), which together are called the firing system “addresses.”
In Finale 3D, the SBC TX3600P port is called the “slat”. The combination of the module number and port letter together is called the “rail”. For example, the rail address for module 10, port A is written “10-A”. Output terminals in Finale 3D are called “pins.”
Users of the SBC TX3600P firing system may be accustomed to thinking of modules and launch positions as the same thing, with a position using multiple ports if the number of terminals on a single module isn’t enough. If you want to specify the modules per position in this manner in Finale 3D, please right-click on the positions and do “Edit position properties” to set the firing system type, module or slat type, and start module number for each position.
There are four options for module or slat type: “SBC TX3600P 36ch Ports AB Separate”, and “SBC TX3600P 36ch Ports AB Simultaneous”, and the 24 channel versions of those options. If you select the separate ports option, then the launch position will use port B of the start module number if the number of required output terminals exceeds 36 or 24.
To create and export a script for the SBC TX3600P firing system, please follow these steps:
- Set module type. Choose one module type for the full show in “Show > Set show information…” or choose different module types per-position by right clicking positions and doing “Edit position properties” from the context menu.
- Address show. Use the menu item “Addressing > Address show…” or any of the other addressing methods (see Addressing basic instructions). If you intend to export the script using the script row modes (T, A, B, C, D, E) then you may need assign module and pin numbers manually by typing the values into the script window, or address the show with “Addressing > Address show…” sorting by “Position Name > Event Time” so the assigned module and pin numbers have the best chance of matching the patterns of the T, A, B, C, D, E row modes.
- Export script. Export the script file (“File > Export > Export firing scripts…“). Choose whether you want Finale 3D to employ the SBC TX3600P script row modes that represent entire sequences of shots in a single row, as described in Table 3.
Figure 1 – SBC TX3600P firing system
Table 1 – File format and encoding
| File format | Extension | Text encoding | Field delimiter | End-of-line |
|---|---|---|---|---|
| Text file | .csv | ASCII | Comma | Carriage return + linefeed (0x0D0A) |
Table 2 – Special characteristics
| Special characteristics | Description |
|---|---|
| Time representation | The SBC TX3600P script format has a time resolution of 0.1 seconds. |
| Sort order of rows | Rows sorted ascending by event time (ignition time). |
| What rows represent | Each row represents a single shot or a sequence of shots depending on the mode. |
| Multiple hosts | A show design for multiple types of firing systems or multiple hosts of the same type of firing system uses the “Universe” property of the positions to partition the show, specifying which firing system or firing system host the events in that position belong to. SBC firing system host IDs are integers: 0, 1, 2, 3, etc. If your show contains universes for multiple SBC firing system hosts, those universe names must therefore be integers. The export function will export one script file for each universe. The script filename will have the form XXX_1 or XXX_2 for host 1 or 2. The file will also contain the host number as a header row in the contents of the file. A default host ID of 0 applies if the Universe field is empty or does not contain a valid integer. |
| Header | The file contains a single header row with the column names, in the same format as the CSV data rows themselves, in addition to text rows beginning with “#” to specify other information including the host ID. |
| Script row mode | Each script row has a mode that defines whether it represents a single shot or a sequence. Finale 3D provides options when exporting the script to use the single shot mode (Mode S) always, or to use whatever modes represent the script most efficiently. The two options are logically the same. Both options represent the show as designed. The option to use all modes is recommended since it has the highest effective time resolution. S: Single shot on one pin of one module To take advantage of the sequence modes, the sequences in your designs need to use sequential module numbers and the same pin number in each module. If you have a front of positions, for example, with sequences from left to right, center to outside, etc., the module numbers in those positions need to be sequential from one end to the other, and each sequence needs to use the same pin number across the modules. If the modules of a sequence aren’t consecutive or the pins aren’t the same, there is no way to represent the sequence as a single row in the script using one of these modes. So if the exported script doesn’t make use of the sequence modes then before exporting you may need to go back and (1) assign module and pin numbers manually by typing the values into the script window, or (2) use the “Addressing > Address show…” function sorting by “Position > Event time”, or (3) assign start modules to launch positions to specify their order by right-clicking the positions and doing “Edit position properties” before using the “Addressing > Address show…” function. |
| Ports A and B | Each TX3600P module has two ports, A and B, which can fire separately or simultaneously. Firing the ports separately provides twice as many pins per module since each port controls its own pins. Firing the ports simultaneously permits you to use Port A and Port B interchangeably without distinguishing between them since they will output the same commands. In Finale 3D, the port is called the “slat”. When Finale 3D assigns firing system addresses to events, it will assign a module number and slat letter to identify the module and slat, written as “10-A” or “10-B” for module 10, port A or B. If you select the module type “SBC TX3600P 24ch Ports AB Simultaneous” or “SBC TX3600P 36ch Ports AB Simultaneous”, the addresses in the script window in Finale 3D will all say port A, as in “10-A”, but when you export a firing system script the port field in the exported script will be “AB” instead of “A” to make the module output the same commands on both ports. |
When you export a firing script for SBC TX3600P, Finale 3D presents an “Export Options” dialog with the choices shown in Table 3.
Table 3 – Export options
| Option name | Description |
|---|---|
| Mode S only | Useful for troubleshooting |
| All modes (S, T, A, B, C, D, E) | Recommended because it has better timing for fast sequences |
| One segment for entire show | Show will contain one segment, even if it has multiple songs or segment markers |
| One segment per song or segment marker | Each song file or segment marker will delineate a segment of the show that can be triggered separately (see Segments) |
Table 4 – Specifications of script fields
| Field name | Description |
|---|---|
| Eid | (int) The row number, beginning with one. |
| Segment | (int) The segment number, beginning with zero. Event times in the script are relative to the beginning of the segments. (see Segments) |
| EventTime:min | (int) The ignition time relative to the beginning of the show or segment, minutes. |
| EventTime:sec | (int) The ignition time relative to the beginning of the show or segment, seconds. |
| EventTime:ms | (int) The ignition time relative to the beginning of the show or segment, tenths of a second. |
| Mode | (character) Either: S, T, A, B, C, D, E, P, or Z. See description in Table 2, above. |
| StartNodeAddr | (int) The module number, or lowest module number if the row represents a sequence. |
| EndNodeAddr | (int) The module number, or highest module number if the row represents a sequence. |
| PinAddr | (int or string) The pin number if the row represents a single shot or a sequence across a range of modules with the same-pin (Mode S, A, B, C, D, or E); or a range of increasing pins “X->Y” for a sequence of shots on the same module (Mode T). |
| Port | (string) A or B if ports are separate, or AB if ports are simultaneous. See description in Table 2, above. |
| PyroIntervalTime | (int) The time delta in tenths of a second between shots in the sequence, or 0 for single shots or simultaneous shots. |
| IntervalTime | (int) The time delta in tenths of a second to the next row; minimum value = 1. |
| DeviceCount | (int) The total number of shells represented by the row, taking into account sequences and multiple effects e-matched together on the same pin. |
| EffectName | (string, up to 80 characters) The unique effect name or names of the effects represented by the row. |
| Caliber | (string, up to 20 characters) Finale 3D writes leaves this field empty. |
| Angles | (string, up to 20 characters) Finale 3D writes leaves this field empty. |
| Position | (string, up to 80 characters) The position or positions used for the effect or sequence. |
#SBC script
#Exported from Finale3D
#Version: 3.0
#Host ID: 0
Eid,Segment,EventTime:min,EventTime:sec,EventTime:ms,Mode,StartNodeAddr,EndNodeAddr,PinAddr,Port,PyroIntervalTime,IntervalTime,DeviceCount,EffectName,Caliber,Angles,Position
1,0,1,2,8,E,1,9,1,A,0,57,9,My 3 Red Chrysanthemum Blue Chrysanthemum,,,P-01 P-02 P-03 P-04 P-05 P-06 P-07 P-08 P-09
2,0,1,8,5,C,1,9,2,A,3,57,9,My 3 Red Chrysanthemum,,,P-01 P-02 P-03 P-04 P-05 P-06 P-07 P-08 P-09
3,0,1,14,2,E,1,3,3,A,0,36,4,Green Chrysanthemum Yellow Chrysanthemum,,,P-01 P-02 P-03
4,0,1,17,8,T,4,4,3->36,A,2,68,34,Aqua Chrysanthemum,,,P-04
5,0,1,24,6,T,4,4,1->6,B,2,12,6,Aqua Chrysanthemum,,,P-04
6,0,1,25,8,Z,0,0,0,0,0,0,,,,,
Figure 2 – Example SBC TX3600P script
Table 5 – Example files and downloads
| Download link | Explanation |
| test-sbc-tx3600p-ports-ab-mode-s-one-segment.csv | Example exported script file, single segment, mode S only |
| test-sbc-tx3600p-ports-ab-all-modes-one-segment.csv | Example exported script file, single segment, all modes |
| test-sbc-tx3600p-ports-ab-mode-s-one-segment-per-song.csv | Example exported script file, multiple segments, mode S only |
| test-sbc-tx3600p-ports-ab-all-modes-one-segment-per-song.csv | Example exported script file, multiple segments, all modes |
| test-sbc-tx3600p-ports-ab-mode-s-one-segment-ports-simultaneous.csv | Example exported script file, single segment, mode S only, ports AB simultaneous |
| test-sbc-tx3600p-ports-ab.fin | Example show file |