Showing posts with label genmdm firmware. Show all posts
Showing posts with label genmdm firmware. Show all posts

Saturday, May 31, 2014

GenMDM 103 Channel Fix!

GenMDM 103 had a serious flaw - the channel numbering was off. Channel 5 was DAC, instead of 6. Channel 9 was noise, instead of 10. And so on. 

This fixed version of GenMDM 103 firmware will fix this issue.

http://little-scale.com/GENMDM/GENMDM_103/GENMDM_103.cpp.hex

Sunday, January 12, 2014

GenMDM v103 - Equal TL Mode, FM and PSG Data Capture and Aqcuire Mode


Downloads 
GenMDM v103 Firmware update:
http://little-scale.com/GENMDM/GENMDM_103/GENMDM_103.cpp.hex

GenMDM v103 MIDI mapping text file: 
http://little-scale.com/GENMDM/GENMDM_103/GENMDM_103.txt

GenMDM v102 (will for for 103) Editor for OS X:
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_EDITOR_102/GENMDM_EDITOR_102_OSX.zip

GenMDM v102 (will for for 103) Editor Source Max Patches (for Cross Platform Use):
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_EDITOR_102/GENMDM_EDITOR_102_SOURCE.zip

GenMDM v102 (will for for 103) Max for Live Tools:
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_TOOLS_102_M4L.zip

Firmware Update Tutorial:
http://little-scale.blogspot.com.au/2013/01/how-to-update-genmdm-firmware.html




=====================================================================================
GenMDM Firmware v103 - Quick Reference MIDI Mapping by little-scale

12 January 2014

http://www.little-scale.blogspot.com.au/
seb.tomczak@gmail.com


=====================================================================================
Special thanks to: Freezedream, Lazerbeat, Aly James, Tanikugu, Paul Slocum, Christian Haines, Celsius, Dot.AY, 10k
=====================================================================================
Firmware v103 Version Information:
* Added YM2612 and SN76489 data capture mode
* Added YM2612 and SN76489 data acquire mode
* Added TL Equal mode
=====================================================================================
Firmware v102 Version Information:
* Native MIDI 5 pin DIN support via user-end hardware modification
* This is via the UART RX PIN, found on digital pin 7 of the Teensy board
* More cohesive handling of SSG-EG in terms of mapping - every OP and CH is catered for
* Storage and recall of 15 different RAM-based instruments for VERY quick instrument changes
* Reduced the sample storage ROM area by 2KB
* Simplified and restructured sample code and sample storage ROM area
* The current samples are just some 808 samples - looking to add user-assignable samples
=====================================================================================
Firmware v101 Version Information:
* Added: control of YM2612 FM voice 3 mode
* Added: control of SSG-EG mode
* Added: control of test registers 0x20, 0x27, 0x2A and 0x2C
* Trimmed code
=====================================================================================
MIDI Channel Sound Chip Mapping
* YM2612 FM sound chip is mapped to MIDI channels 1 - 6.
* SN76489 PSG sound chip is mapped to MIDI channels 7 - 10.
* YM2612 FM voice 3 special mode is mapped to MIDI channels 11 - 13.
=====================================================================================
YM2612 FM Sound Chip Mapping
-------------------------------------------------------------------------------------
Parameter                        CC        Data Range
* LFO Enable (Global)                    74        2
* LFO Speed                         1        8   
* Pitch Transposition                    85        128
* Octave Division                    84        128
* PAL / NTSC Tuning                    83        2
* Voice 3 Special Mode                    80        2
* Test Register 0x27 Lowest Six Bits            92        64
* Test Register 0x27 Highest One Bit            93        2
* Test Register 0x20 Lowest Four Bits            94        16
* Test Register 0x20 Highest Four Bits            95        16
* Test Register 0x2C Lowest Four Bits            96        16
* Test Register 0x2C Highest Four Bits            97        16
-------------------------------------------------------------------------------------
Special Mode
* When Voice 3 is in Special Mode, each operator of Voice 3 has its own frequency
* In this case, the frequency for each is controlled using MIDI ch 3, 11, 12 and 13
* In this case, the TL / volume of each operator is controlled via velocity
-------------------------------------------------------------------------------------
Channel / Voice Control                    CC        Data Range
* Preset Instrument Setting Store in RAM        6        16
* Preset Instrument Setting Recall from RAM        9        16
* Frequency                        Note Number    128
* Pitch Bend Amount                    81        18
* FM Algorithm                        14        8
* FM Feedback                        15        8
* Stereo Configuration                    77        4
* Amplitude Modulation Level                76        8
* Frequency Modulation Level                75        8
* SSG-EG Operator 1 On and Setting            90        16
* SSG-EG Operator 2 On and Setting            91        16
* SSG-EG Operator 3 On and Setting            92        16
* SSG-EG Operator 4 On and Setting            93        16
-------------------------------------------------------------------------------------
* The 8 FM algorithms are as follows:
* Algorithm 00: OP1 (m) --> OP2(m)  --> OP3 (m) --> OP4 (c)
* Algorithm 01: OP1 (m) && OP2 (m) --> OP3 (m) --> OP4 (c)
* Algorithm 02: (OP1 (m) && (OP2 (m) --> OP3 (m))) --> OP4 (c)
* Algorithm 03: ((OP1 (m) --> OP2 (m)) && OP3 (m)) --> OP4 (c)
* Algorithm 04: OP1 (m) --> OP2 (c) && OP3 (m) --> OP4 (c)
* Algorithm 05: OP1 (m) --> (OP2 (c) && OP3 (c) && OP4 (c))
* Algorithm 06: OP1 (m) --> OP2 (c) && OP3 (c) && OP4 (c)
* Algorithm 07: OP1 (c) && OP2 (c) && OP3 (c) && OP4 (c)
-------------------------------------------------------------------------------------
Operator Control                     CC        Data Range
* Total Level OP 1                    16        128
* Total Level OP 2                    17        128
* Total Level OP 3                    18        128
* Total Level OP 4                    19        128
* Multiple OP 1                        20        16
* Multiple OP 2                        21        16
* Multiple OP 3                        22        16
* Multiple OP 4                        23        16
* Detune OP 1                        24        8
* Detune OP 2                        25        8
* Detune OP 3                        26        8
* Detune OP 4                        27        8
* Rate Scaling OP 1                    39        4
* Rate Scaling OP 2                    40        4
* Rate Scaling OP 3                    41        4
* Rate Scaling OP 4                    42        4
* Attack Rate OP 1                    43        32
* Attack Rate OP 2                    44        32
* Attack Rate OP 3                    45        32
* Attack Rate OP 4                    46        32
* First Decay Rate OP 1                    47        32
* First Decay Rate OP 2                    48        32
* First Decay Rate OP 3                    49        32
* First Decay Rate OP 4                    50        32
* Secondary Decay Rate OP 1                51        16
* Secondary Decay Rate OP 2                52        16
* Secondary Decay Rate OP 3                53        16
* Secondary Decay Rate OP 4                54        16
* Secondary Amplitude Level OP 1            55        16
* Secondary Amplitude Level OP 2            56        16
* Secondary Amplitude Level OP 3            57        16
* Secondary Amplitude Level OP 4            58        16
* Release Rate OP 1                    59        16
* Release Rate OP 2                    60        16
* Release Rate OP 3                    61        16
* Release Rate OP 4                    62        16
* Amplitude Modulation Enable OP 1            70        2
* Amplitude Modulation Enable OP 2            71        2
* Amplitude Modulation Enable OP 3            72        2
* Amplitude Modulation Enable OP 4            73        2
-------------------------------------------------------------------------------------
DAC Control (MIDI Channel 6)                 CC        Data Range
* DAC Enable                        78        2
* DAC Direct Data                    79        128
* DAC Sample Pitch Speed                86        128
* DAC Sample Oversample                    88        16
* DAC Noise  / Custom Wave Mode                89        2
* Custom Wave Byte 1 of 14                100        128
* Custom Wave Byte 2 of 14                101        128
* Custom Wave Byte 3 of 14                102        128
* Custom Wave Byte 4 of 14                103        128
* Custom Wave Byte 5 of 14                104        128
* Custom Wave Byte 6 of 14                105        128
* Custom Wave Byte 7 of 14                106        128
* Custom Wave Byte 8 of 14                107        128
* Custom Wave Byte 9 of 14                108        128
* Custom Wave Byte 10 of 14                109        128
* Custom Wave Byte 11 of 14                110        128
* Custom Wave Byte 12 of 14                111        128
* Custom Wave Byte 13 of 14                112        128
* Custom Wave Byte 14 of 14                113        128
===================================================================================== SN76489 PSG Sound Chip Mapping
-------------------------------------------------------------------------------------
Global Control                         CC        Data Range
* Pitch Transposition                    85        128
* PAL / NTSC                        83        2
-------------------------------------------------------------------------------------
Noise Channel Control                    Type
* C and C#                        High Frequency; Periodic Type
* D and D#                        Medium Frequency; Periodic Type
* E                            Low Frequency; Periodic Type
* F                            High Frequency; Noise Type
* F#                            Medium Frequency; Noise Type
* G and G#                        Low Frequency; Noise Type
* A and A#                        Channel 9; Periodic Type
* B                            Channel 9; Noise Type
=====================================================================================
Other   
-------------------------------------------------------------------------------------
Generate VGM Files (Experimental)            CC        Data Range
-------------------------------------------------------------------------------------
* Enable / Disable data capture mode            114        2
* Enable data acquire mode                115        2
* Disable data acquire mode                Ch 16 Note 127
=====================================================================================

Friday, May 03, 2013

GenMDM Version 2 PCB 5V Jumper Function

The GenMDM Version 2 PCB contains two main changes to the hardware compared with the Version 1 PCB. These changes are:

• A 5 pin DIN MIDI input connection with associated optocoupler and components
• A 5 volt jumper

The function of the jumper is as follows.

When the jumper is connected, as shows in the photo above, then the SEGA console will power the GenMDM hardware including the 5 pin DIN MIDI input connection.

Use this jumper in the connected position when using the GenMDM with a traditional 5 pin DIN connection. Do not use this jumper in the connected position when using the GenMDM with a USB cable at all. Never connect a USB cable to the GenMDM unit when the jumper is in the connected position. Doing so may damage the GenMDM.
 

When the jumper is disconnected, as shows in the photo above, then USB cable will power the GenMDM hardware. The 5 pin DIN MIDI input connection will not be powered, and a traditional 5 pin DIN connection will not work.

Use this jumper in the connected position when using the GenMDM with a USB cable for MIDI data or for firmware updates. This will provide 5V to the GenMDM hardware via the USB cable.

Thursday, March 14, 2013

GenMDM With DIN 5 and USB MIDI Input PCB!

The PCBs for GenMDM Batch #2 have arrived.

The revision includes a 5-pin DIN connector as well as a USB connector.

Friday, January 25, 2013

GenMDM Firmware v102


Firmware v102 Version Information: 
* Native MIDI 5 pin DIN support via user-end hardware modification
* This is via the UART RX PIN, found on digital pin 7 of the Teensy board
* More cohesive handling of SSG-EG in terms of mapping - every OP and CH is catered for
* Storage and recall of 15 different RAM-based instruments for VERY quick instrument changes
* Reduced the sample storage ROM area by 2KB
* Simplified and restructured sample code and sample storage ROM area
* The current samples are just some 808 samples - looking to add user-assignable samples





Downloads 
GenMDM v102 Firmware update:
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_102.cpp.hex

GenMDM v102 MIDI mapping text file: 
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_102.txt

GenMDM v102 Editor for OS X:
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_EDITOR_102/GENMDM_EDITOR_102_OSX.zip

GenMDM v102 Editor Source Max Patches (for Cross Platform Use):
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_EDITOR_102/GENMDM_EDITOR_102_SOURCE.zip

GenMDM v102 Max for Live Tools:
http://little-scale.com/GENMDM/GENMDM_102/GENMDM_TOOLS_102_M4L.zip

Firmware Update Tutorial:
http://little-scale.blogspot.com.au/2013/01/how-to-update-genmdm-firmware.html

Tuesday, January 22, 2013

How to: Update the GenMDM Firmware

1. Go to http://www.pjrc.com/teensy/loader.html and download the Teensy loader application for your operating system.






2. Locate and download the GenMDM firmware update file. This file will always have the name of GENMDM_NNN.cpp.hex, where NNN is the version number. The file type will always be .cpp.hex.





3. Open the Teensy loader application, and drag and drop the .cpp.hex file. You can also go to File > Open HEX File. 




4. Click on the 'Auto' button. 




5. Connect your GenMDM interface via a USB cable, and click the tiny black button on the top of the interface. If your GenMDM interface and SEGA is hooked up so that you can hear the sound, you should be able to hear the updated version loading sound. This indicates that the firmware has been loaded successfully!


GenMDM Firmware v101

Firmware v101 Version Information
* Added: control of YM2612 FM voice 3 mode
* Added: control of SSG-EG mode
* Added: control of test registers 0x20, 0x27, 0x2A and 0x2C
* Trimmed code




Downloads
GenMDM v101 Firmware update:
http://little-scale.com/GENMDM/GENMDM_101/GENMDM_101.cpp.hex

GenMDM v101 MIDI mapping text file:
http://little-scale.com/GENMDM/GENMDM_101/GENMDM_101.txt

GenMDM v101 Max for Live Tools:
http://little-scale.com/GENMDM/GENMDM_101/GENMDM_101_M4L.zip

Firmware Update Tutorial:
http://little-scale.blogspot.com.au/2013/01/how-to-update-genmdm-firmware.html





Startup Sound

Sunday, December 02, 2012

GenMDM Firmware v100 Quick Reference MIDI Mapping

=====================================================================================
GenMDM Firmware v100 - Quick Reference MIDI Mapping by little-scale
http://www.little-scale.blogspot.com.au/
seb.tomczak@gmail.com
=====================================================================================
Firmware v100 Version Information: 
* Initial release
=====================================================================================
MIDI Channel Sound Chip Mapping
* YM2612 FM sound chip is mapped to MIDI channels 1 - 6. 
* SN76489 PSG sound chip is mapped to MIDI channels 7 - 10.
=====================================================================================
YM2612 FM Sound Chip Mapping
-------------------------------------------------------------------------------------
Parameter      CC  Data Range
* LFO Enable (Global)     74  2
* LFO Speed       1  8 
* Pitch Transposition     85  128
* Octave Division     84  128
* PAL / NTSC Tuning     83  2
-------------------------------------------------------------------------------------
Channel / Voice Control     CC  Data Range
* Preset Instrument Setting    9  16
* Frequency      Note Number 128
* Pitch Bend Amount     81  18
* FM Algorithm      14  8
* FM Feedback      15  8
* Stereo Configuration     77  4
* Amplitude Modulation Level    76  8
* Frequency Modulation Level    75  8
-------------------------------------------------------------------------------------
Operator Control      CC  Data Range
* Total Level OP 1     16  128
* Total Level OP 2     17  128
* Total Level OP 3     18  128
* Total Level OP 4     19  128
* Multiple OP 1      20  16
* Multiple OP 2      21  16
* Multiple OP 3      22  16
* Multiple OP 4      23  16
* Detune OP 1      24  8
* Detune OP 2      25  8
* Detune OP 3      26  8
* Detune OP 4      27  8
* Rate Scaling OP 1     39  4
* Rate Scaling OP 2     40  4
* Rate Scaling OP 3     41  4
* Rate Scaling OP 4     42  4
* Attack Rate OP 1     43  32
* Attack Rate OP 2     44  32
* Attack Rate OP 3     45  32
* Attack Rate OP 4     46  32
* First Decay Rate OP 1     47  32
* First Decay Rate OP 2     48  32
* First Decay Rate OP 3     49  32
* First Decay Rate OP 4     50  32
* Secondary Decay Rate OP 1    51  16
* Secondary Decay Rate OP 2    52  16
* Secondary Decay Rate OP 3    53  16
* Secondary Decay Rate OP 4    54  16
* Secondary Amplitude Level OP 1   55  16
* Secondary Amplitude Level OP 2   56  16
* Secondary Amplitude Level OP 3   57  16
* Secondary Amplitude Level OP 4   58  16
* Release Rate OP 1     59  16
* Release Rate OP 2     60  16
* Release Rate OP 3     61  16
* Release Rate OP 4     62  16
* Amplitude Modulation Enable OP 1   70  2
* Amplitude Modulation Enable OP 2   71  2
* Amplitude Modulation Enable OP 3   72  2
* Amplitude Modulation Enable OP 4   73  2
-------------------------------------------------------------------------------------
DAC Control (MIDI Channel 6)     CC  Data Range
* DAC Enable      78  2
* DAC Direct Data     79  128
* DAC Sample Pitch Speed    86  128
* DAC Sample Oversample     88  16
* DAC Noise  / Custom Wave Mode    89  2
* Custom Wave Byte 1 of 14    100  128
* Custom Wave Byte 2 of 14    101  128
* Custom Wave Byte 3 of 14    102  128
* Custom Wave Byte 4 of 14    103  128
* Custom Wave Byte 5 of 14    104  128
* Custom Wave Byte 6 of 14    105  128
* Custom Wave Byte 7 of 14    106  128
* Custom Wave Byte 8 of 14    107  128
* Custom Wave Byte 9 of 14    108  128
* Custom Wave Byte 10 of 14    109  128
* Custom Wave Byte 11 of 14    110  128
* Custom Wave Byte 12 of 14    111  128
* Custom Wave Byte 13 of 14    112  128
* Custom Wave Byte 14 of 14    113  128
===================================================================================== SN76489 PSG Sound Chip Mapping
* Global Control      CC  Data Range
* Pitch Transposition     85  128
* PAL / NTSC      83  2
-------------------------------------------------------------------------------------
Noise Channel Control     Type
* C and C#      High Frequency; Periodic Type
* D and D#      Medium Frequency; Periodic Type
* E       Low Frequency; Periodic Type
* F       High Frequency; Noise Type
* F#       Medium Frequency; Noise Type
* G and G#      Low Frequency; Noise Type
* A and A#      Channel 9; Periodic Type
* B       Channel 9; Noise Type
=====================================================================================

Available as a text file here: http://little-scale.com/genmdm_100.txt