trunk/src/osd/portmedia/pmmidi.c
| r20595 | r20596 | |
| 20 | 20 | #endif |
| 21 | 21 | UINT8 xmit_in[4]; // Pm_Messages mean we can at most have 3 residue bytes |
| 22 | 22 | int xmit_cnt; |
| 23 | UINT8 last_status; |
| 23 | 24 | }; |
| 24 | 25 | |
| 25 | 26 | void osd_list_midi_devices(void) |
| r20595 | r20596 | |
| 242 | 243 | #ifndef DISABLE_MIDI |
| 243 | 244 | int bytes_needed = 0; |
| 244 | 245 | |
| 245 | | dev->xmit_in[dev->xmit_cnt++] = data; |
| 246 | if ((dev->xmit_cnt == 0) && (data & 0x80)) |
| 247 | { |
| 248 | dev->last_status = data; |
| 249 | } |
| 246 | 250 | |
| 251 | if ((dev->xmit_cnt == 0) && !(data & 0x80)) |
| 252 | { |
| 253 | dev->xmit_in[dev->xmit_cnt++] = dev->last_status; |
| 254 | dev->xmit_in[dev->xmit_cnt++] = data; |
| 255 | } |
| 256 | else |
| 257 | { |
| 258 | dev->xmit_in[dev->xmit_cnt++] = data; |
| 259 | } |
| 260 | |
| 247 | 261 | // are we there yet? |
| 248 | 262 | switch ((dev->xmit_in[0]>>4) & 0xf) |
| 249 | 263 | { |