Use the Sam2695 Dream MIDI chip: Difference between revisions
From F256 Foenix
Jump to navigationJump to search
(fleshed out a first draft of the sam2695 midi out page, midi in has to be filled in when more will be known) |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
There are many tutorials and overview of useful MIDI commands, here is one of them: https://www.cs.cmu.edu/~music/cmsip/readings/MIDI%20tutorial%20for%20programmers.html<br> | There are many tutorials and overview of useful MIDI commands, here is one of them: https://www.cs.cmu.edu/~music/cmsip/readings/MIDI%20tutorial%20for%20programmers.html<br> | ||
Here's a reference list of General MIDI | Here's a reference list of General MIDI instruments by number: https://www.ccarh.org/courses/253/handout/gminstruments/<br> | ||
{| class="wikitable" | |||
|+ | |||
!Register Name | |||
!Address | |||
!Description | |||
|- | |||
|MIDI_STATUS | |||
|0xDDA0 | |||
|Read: Bit[1] = Rx_empty, Bit[2] = Tx_empty | |||
|- | |||
|MIDI_FIFO_DATA_PORT | |||
|0xDDA1 | |||
|read and write Data Port | |||
|- | |||
|MIDI_RXD_COUNT_LOW | |||
|0xDDA2 | |||
|Rx FIFO Data Count LOW | |||
|- | |||
|MIDI_RXD_COUNT_HI | |||
|0xDDA3 | |||
|Rx FIFO Data Count Hi - Only the 4 first bit are valid | |||
|- | |||
|MIDI_TXD_COUNT_LOW | |||
|0xDDA4 | |||
|Tx FIFO Data Count LOW | |||
|- | |||
|MIDI_TXD_COUNT_HI | |||
|0xDDA5 | |||
|Tx FIFO Data Count Hi - Only the 4 first bit are valid | |||
|} | |||
=== Steps in order to use MIDI OUT === | === Steps in order to use MIDI OUT === | ||
Line 12: | Line 42: | ||
Send a MIDI command through 0xDDA1 in rapid sequence. | Send a MIDI command through 0xDDA1 in rapid sequence. | ||
<br> | |||
Moderately heavy middle C to channel 0: 0x90, 0x40, 0x40<br> | Moderately heavy middle C to channel 0: 0x90, 0x40, 0x40<br> | ||
Changing the instrument of channel 0 to a Slap Bass 1: 0xC0, 0x24<br> | Changing the instrument of channel 0 to a Slap Bass 1: 0xC0, 0x24<br> | ||
Latest revision as of 17:10, 10 November 2024
Sam2695 Dream IC is in the F256K2 and F256Jr2 only[edit | edit source]
The MIDI specification from MIDI.org can be found in the organization's website https://midi.org/specs
There are many tutorials and overview of useful MIDI commands, here is one of them: https://www.cs.cmu.edu/~music/cmsip/readings/MIDI%20tutorial%20for%20programmers.html
Here's a reference list of General MIDI instruments by number: https://www.ccarh.org/courses/253/handout/gminstruments/
Register Name | Address | Description |
---|---|---|
MIDI_STATUS | 0xDDA0 | Read: Bit[1] = Rx_empty, Bit[2] = Tx_empty |
MIDI_FIFO_DATA_PORT | 0xDDA1 | read and write Data Port |
MIDI_RXD_COUNT_LOW | 0xDDA2 | Rx FIFO Data Count LOW |
MIDI_RXD_COUNT_HI | 0xDDA3 | Rx FIFO Data Count Hi - Only the 4 first bit are valid |
MIDI_TXD_COUNT_LOW | 0xDDA4 | Tx FIFO Data Count LOW |
MIDI_TXD_COUNT_HI | 0xDDA5 | Tx FIFO Data Count Hi - Only the 4 first bit are valid |
Steps in order to use MIDI OUT[edit | edit source]
MIDI OUT picks data from your program and sends it out to the SAM2695 chip as well as the MIDI Out port to an external device.
Send a MIDI command through 0xDDA1 in rapid sequence.
Moderately heavy middle C to channel 0: 0x90, 0x40, 0x40
Changing the instrument of channel 0 to a Slap Bass 1: 0xC0, 0x24