midibox_quad_genesis
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
midibox_quad_genesis [2017/02/09 05:24] – [Voice Mode] sauraen | midibox_quad_genesis [2017/12/20 21:19] (current) – [Hardware components] smithy | ||
---|---|---|---|
Line 10: | Line 10: | ||
[[http:// | [[http:// | ||
- | |||
- | [[http:// | ||
- | |||
====== Hardware ====== | ====== Hardware ====== | ||
Line 22: | Line 19: | ||
* 2x40 character [[http:// | * 2x40 character [[http:// | ||
* [[MBQG_FP]] custom front panel board; or alternately, | * [[MBQG_FP]] custom front panel board; or alternately, | ||
+ | * [[MBQG_TB_CASE]] a DIY wooden case for MIDIbox Quad Genesis, designed by Technobreath to be easily replicated with little skills and tools. | ||
* Stereo audio output connection of desired type | * Stereo audio output connection of desired type | ||
* Mono audio input connection for each SN76494/96 if desired | * Mono audio input connection for each SN76494/96 if desired | ||
Line 40: | Line 38: | ||
====== Synth Architecture ====== | ====== Synth Architecture ====== | ||
- | |||
- | This section was written during early development; | ||
| Dummy | Dummy | Dummy | Dummy | [[https:// | | Dummy | Dummy | Dummy | Dummy | [[https:// | ||
Line 67: | Line 63: | ||
==== Tracker Mode ==== | ==== Tracker Mode ==== | ||
- | A voice in tracker mode has little-to-no synth engine and is simply controlled in realtime by MIDI commands from a DAW or tracker. It is configured to respond to commands from one MIDI port on one channel. The following MIDI messages are supported: | + | A voice in tracker mode has little-to-no synth engine and is simply controlled in realtime by MIDI commands from a DAW or tracker. It is configured to respond to commands from one MIDI port on one channel, according to the GENMDM specification. I have been in contact with Aly James, |
- | * Note On sets the voice' | + | |
- | * Pitch Bend changes the voice' | + | |
- | * CC7 (Volume) changes | + | |
- | * CC10 (Pan) changes whether the voice is assigned to left, right, or both channels. | + | |
- | * Other CCs (TBD) set all other operator parameters. | + | |
- | + | ||
- | In addition, each YM2612 may be placed into Tracker mode itself, and then it will respond | + | |
==== Free Mode ==== | ==== Free Mode ==== | ||
- | A voice in free mode is available to be assigned in real-time by the synth engine to an appropriate instrument. | ||
- | ===== Instruments ===== | + | A voice in free mode is available to be assigned in real-time by the synth engine to any program. This sounds simple enough, but this requires tremendous complexity on the inside, for two reasons: |
- | An instrument | + | - A VGM file can use any combination |
+ | - Certain OPN2 features (the LFO and the test bits) are global to the chip, so VGM files which use these features have to be kept on the same chip or carefully assigned across multiple chips. Moreover, for certain | ||
- | An instrument contains: | + | The synth engine keeps track of what chip resources each VGM file and program |
- | * Information about how many of what kinds of voices the instrument will use, and whether it will set or use chip-global features like the LFO | + | |
- | * A "state" VGM file, which must be of time-length 0, which is played when the instrument is loaded to a voice | + | |
- | * A " | + | |
- | * Information about how the MIDI note played combines with frequency information in the VGM to produce the actual frequency values sent to the voice | + | |
- | * Optional operator gating at fixed delay from MIDI note on, or in response | + | |
- | * A set of modulators (software LFOs, EGs, velocity, CCs) and their assignments to voice parameters | + | |
===== Interface Modes ===== | ===== Interface Modes ===== | ||
Line 99: | Line 81: | ||
* Capture button: create a VGM file which represents the state of the current voice. Display a menu of channels so you can choose where this will be stored. Upon selecting a channel, or pressing the Capture button again which will use the last edited channel, a new program will be set up on this channel with that VGM file as its init and appropriate keyon and keyoff files, so you can play this sound on the keyboard as usual. | * Capture button: create a VGM file which represents the state of the current voice. Display a menu of channels so you can choose where this will be stored. Upon selecting a channel, or pressing the Capture button again which will use the last edited channel, a new program will be set up on this channel with that VGM file as its init and appropriate keyon and keyoff files, so you can play this sound on the keyboard as usual. | ||
==== Channel Mode ==== | ==== Channel Mode ==== | ||
- | Press Chan. Use the screen | + | Use the PSG Voices and OPN2 buttons |
- | * A multiplier can be added to any MIDI channel to affect one or both of CC 7 and CC 11. If enabled, the multiplier simply multiplies any incoming CC of this type by the 16-bit value and then divides it by 2^8, before passing it on to the synth engine. This allows the volume of channels to be adjusted while they remain responsive to incoming volume messages. | + | ==== Program Mode ==== |
- | * If the channel is in free mode, a program | + | Edits the program selected in Chan mode. |
- | ==== Instrument Mode ==== | + | A program consists of 3 VGM files: one to init the voice(s), one played at key on, and one played at key off. Program mode allows |
- | Press Inst and use the screen to select a loaded instrument, or select the instrument from Channel mode. Use the screen to load and unload more instruments, choose | + | |
- | Voices light up corresponding | + | Planned features: |
+ | * VGM file tempo adjustment, including the option | ||
+ | * Drum type programs, which instead of having three VGM files, have 16, one for key-on for each of a definable split region. Key off is fixed to just key-off or silence | ||
+ | ==== VGM Mode ==== | ||
- | Select a voice and use the voice controls to view and edit the voice' | + | Full-featured editor for VGM files loaded into RAM, and partial editor for VGM files streamed from the SD card. |
- | ==== VGM Mode ==== | + | Both modes support real-time preview of the VGM file, muting |
- | Press VGM and use the screen | + | |
- | TODO | + | For VGM files loaded into RAM, supports editing, inserting, and deleting individual VGM commands in Cmds mode. In State mode, shows the current state of the voice on the edit controls, and allows editing of this state directly (by changing the last command before the present which affected that parameter). |
+ | |||
+ | Planned features: | ||
+ | * For either type of VGM, support defining soft start and end points (" | ||
+ | * For either type of VGM, Capture the current state of a voice as in Voice mode. | ||
+ | * For RAM only, move, duplicate, or copy-and-paste the individual commands or the marked section to a different position. |
midibox_quad_genesis.1486617854.txt.gz · Last modified: 2017/02/09 05:24 by sauraen