VOGONS

Common searches


First post, by dbarton

User metadata
Rank Member
Rank
Member

If I have a note that is held constantly and pitch bend messages are sent all thru the duration of the note, the bend messages seem to be corrupted.

Also, in some cases solo notes overlapping will get stuck.

I do notice that in both cases if I just send some 16th notes to nowhere, it alleviates the porblem.

The other bug is that the MIDI time clock being sent is *very* inconsistent. Internal timing seems great - it's only the actual clock signal beign sent out that is all over the place.

(Should I be posting this in a different forum?)

Reply 1 of 15, by Srecko

User metadata
Rank Member
Rank
Member

Hmm, are you using MPU401 intelligent mode or UART mode (as set in the dosbox.conf)?
There was a thread in "General" section with updated build (MPU401/MIDI improvements + MIDI input), maybe it helps with your (first) problem, especially if your program uses intelligent mode.

Regarding timing....maybe you should try with ALSA / Linux, it has a smaller output buffer than windows (if you are sending it out on MIDI port). Depends on host OS performance (kernel timing resolution/ latency and IPC involved), probably not Dosbox's fault.

Reply 2 of 15, by dbarton

User metadata
Rank Member
Rank
Member

im pretty sure its in intellgent mode. i dont know the differnce, but uart may not have worked when i tried it.

so far as that new build:

1. hopefully it will be clear how i use it,
2 I didnt know it adressed any midi isssues - though it just added MIDI input.

Will look now.
thnx

Reply 3 of 15, by dbarton

User metadata
Rank Member
Rank
Member

I'm having some issues with MIDi (detalied in another message)

Is there documentation anywhere for the MOPU401 modes I can chose?
none/uart/intellegent

how about for the device choices:
default/alsa/opensound/windows 32 bit/core audio?

Reply 7 of 15, by Srecko

User metadata
Rank Member
Rank
Member

I'm here again 😀

If this works in UART mode (i.e. you set it to uart in config file)...than you don't have to even care about intelligent mode.
Btw. for windows just use win32 "device".

So, questions:
Do your clock messages get lost, or you just don't receive them at exact time when they are expected? What kind of precision do you get and how precise do you want it (the timing drift) to be ?

Do you mix MIDI clock with other MIDI data, and, if so, is your timing better when you don't?

Which MIDI outputs do you use to receive MIDI clock? (by output I mean win32 MIDI output, not necessarilly real device). How do you measure your MIDI clock precision?

Reply 8 of 15, by dbarton

User metadata
Rank Member
Rank
Member

I'm afraid this app only seems to work in intellegent mode.

If I run sequence with only MIDI clock, and no notes, its pretty stable. If I send just quarter notes for example, it's still fine. BUT, if I send many notes then the clock will step at some of these notes making the timing competely all over the map.

I'm not talking about subtle timing issues. I mean that you might end up with clock speed doubling when many notes are being sent.

I am running a slaved hardware sequencer with a LED for each quarter note, so its very easy to watch, and hear, massive timing changes.

Yes, I send to win32 output, then to a USB hardware MIDI inferface.

I'd love to get this resolved, so please let me know all i can do to assist.

(If you prefer via phone or email, just PM me.)

Reply 9 of 15, by Srecko

User metadata
Rank Member
Rank
Member

If your program is using intelligent mode, then from your description this seems like some kind of race condition bug with MPU-401. It is possible, but not guaranteed that it is corrected in newer build which I posted few months ago here on forums. (I'm not really doing this lately, as I'm not at home where system is properly set up).

So, try with the build, which I hopefully got right, from this thread (unless you already found it before):
does dosbox support MIDI IN yet?

Also, have in mind that MPU401 emulation was developed with somewhat limited number of games and applications and certainly misses some stuff that's not used by those (especially what's in CVS). I guess you use some kind of old sequencer, like e.g. texture ? (I didn't test such applications thoroughly).

Reply 12 of 15, by dbarton

User metadata
Rank Member
Rank
Member

I did a bunch of tests with the new exe. Same behavior.

If I have a very simple midi file with a note on each quarter note, clock timing is fine.

If I simply add a second note of a new pitch to beat one, clock timing goes crazy.

Reply 13 of 15, by dbarton

User metadata
Rank Member
Rank
Member

Been using DOSBOX all month and it's amazing, but these two bugs sure are a drag..

The timig issue with sending MIDI clock makes unable to control an external sequencer, which is what I hoped to do.

Reply 14 of 15, by dbarton

User metadata
Rank Member
Rank
Member

Ok, time for an update..

As you know from above, I've had MIDI issues using an old sequencer under DOSBOX.. In the meantime, Don Wells created a new test version for Roland MT32 that FIXED THE CLOCK ISSUES I was having..

The seem unrelated , but i see that its just a question of how running status was handled.

His TEST6MT32.ZIP is what I use. This is amazing in that it solves it, as MIDI clock is now properly handled!!!

The update seem to be for .070 only, so I'm stuck using .70 until his changes get added to a more current version, so thought I throw in my two cents that its working GREAT now!

Dosbos is amazing, and these changes make it 10000% for me!

Reply 15 of 15, by dvwjr

User metadata
Rank Member
Rank
Member

Dennis,

Thanks for your input and testing. Glad the Dosbox MIDI changes worked out for you and fixed your real-time MIDI message problem. The test build may be found on this VOGONs thread.

When I get all my MT-32 changes finished I'll submit the DIFF for possible review/conclusion. The fixes which helped your real-time MIDI will also be included.

Thanks again,

dvwjr