Bei den ganzen UART-Sachen im Bascom (print, inkey(), .. etc) ist das durch die Hardware schon berücksichtigt.
d.h. er garniert deine Daten ganz automatisch mit den richtigen Start- und Stopbits.
Das Midi-Format ist ganz standard: 1 Start-, 8 Daten-, 1 StopBit und 31250 Baud

EDIT: nochmals: wen die $crystal=1000000 Angabe stimmt, ist dein Programm völlig in Ordnung.
Versuch wirklich mal, die 4 u. 5 zu tauschen, ich mißtraue der LED am Usb-Kisterl.