A programmable cross-platform sequencer for the Game Boy Advance sound chip.
-
Each song carries a little WebAssembly program that converts sequenced notes to Game Boy Advance sound commands.
This gives almost complete control over the sound chip to each song. -
Basic MIDI support in the desktop version
-
Runs natively on the Game Boy Advance
It can also be run on the 3DS through open_agb_firm
-
Master Sync Mode to send clock signals to a Pocket Operator or Volca
On the GBA the output volume is too low and it won't trigger unless amplified.
On the 3DS this can be worked around with open_agb_firm by setting
audioOut=2andvolume=36to override the physical volume slider.
| Function | Desktop | Game Boy Advance |
|---|---|---|
| Move cursor | ←|↑|→|↓ | ←|↑|→|↓ |
| Switch panel (Patterns, Steps, Instruments) | Shift + (←|→) | (L|R) + (←|→) |
| Select previous/next song pattern | B + (↑/↓) | B + (↑/↓) |
| Select previous/next pattern non-empty instruments | Z + (←/→) | B + (←/→) |
| Cycle the selected pattern/note/param value | X + (←|→) | A + (←|→) |
| Copy | X | A |
| Cut | Z + X | B + A |
| Paste (on empty slot) | X | A |
| Play song | Enter | Start |
| Play pattern | Ctrl + Enter | Select + Start |
| Reset sound channels | Esc | Select |
| Save | Ctrl + S | N/A |
| Export song to GBA save file | Ctrl + G | N/A |
| Toggle recording mode | . | N/A |
| Black notes | W|E|T|YU | N/A |
| White notes | A|S|D|F|G|H|J|K | N/A |
| Erase step (or hold during playback) | Backspace | N/A |
| Function | Desktop | Game Boy Advance |
|---|---|---|
| Cycle pattern | X + (←|→) | A + (←|→) |
| Duplicate pattern | Shift + (Z, X) | (L|R) + (B, A) |
| Copy | X | A |
| Cut (only on the last non-empty slot ) | Z + X | B + A |
| Paste (only on the placeholder slot) | X | A |
| Insert an empty pattern instead of pasting | X, X | A, A |
| Function | Desktop | Game Boy Advance |
|---|---|---|
| Cycle note/param | X + (←|→) | A + (←|→) |
| Cycle note/param (large amount) | X + (↓|↑) | A + (↓|↑) |
| Enter selection mode | Shift + Z | (L|R) + B |
| Select all rows (in selection) | Shift + Z | (L|R) + B |
| Copy (in selection) | Z | B |
| Cut (in or not in selection) | Z + X | B + A |
| Cancel selection | Shift | L|R |
| Paste selection clipboard | Shift + X | (L|R) + A |
| Paste edit clipboard (on empty slot) | X | A |
Notes:
- B + A means that B must be held first*
- The selection clipboard is set when copy/cutting in selection mode
- The edit clipboard is set after a note/param cycle (also if unchanged)
- Cutting when not in selection mode sets both the selection and edit clipboards
The source code is available under the terms of the MIT license (See LICENSE-MIT for details).
However, because of the use of GPL dependencies, Chiptrack compiled binaries are licensed under the terms of the GPLv3 (See LICENSE-GPL).