Comments (8)
Currently, there is no support for playing demo songs in this emulator. It seems, this feature initially had a low-priority from start, yet those demo songs are only present in a few control ROM versions. For instance, these won't be available should one use the old-gen MT-32 control ROM v1.07 or the CM-32L ROMs. Albeit, I hope this won't be too difficult to implement an interpreter for the demo song format, which looks very much SMF-like. Will look at it in mid-term 🙂
from munt.
How did the MT-32 itself parse them? Was it in the control rom, or was it handled by a separate microcontroller?
from munt.
Evidently, the player code resides in the control ROM. Moreover, it is there even in CM-32L ROM, despite there are no demo songs within in that version.
from munt.
More to it, the demo songs rely on a dedicated timbre bank (timbre group 5 - pointers to 22 distinct timbres can be found at 0x8700), that isn't used otherwise, and a special patch memory map (at 0x8800). It looks very much like this merely enables a compatibility mode for the device those songs were written on. Still, there is nothing that prevents us from emulating all that stuff, except the availability of the new-gen MT-32 ROMs (none of the other models include this stuff).
from munt.
Are the songs stored in SMF format, or something close to it?
from munt.
Are the songs stored in SMF format, or something close to it?
It is definitely something very close and based on MIDI messages of course, but it doesn't resemble the content of a SMF MIDI track in full. In particular, I noticed that long pauses between messages are not encoded with the help of variable-length fields, yet the end-of-track marker is definitely non-standard. But the main problem here is the instrument mapping, since playing these messages using the standard MT-32 patch map sounds rather odd...
from munt.
Wait, I think I closed this by accident, is this implemented?
from munt.
It's implemented, and a snapshot build is available here: https://sourceforge.net/projects/munt/files/munt/SNAPSHOTS/Windows/mt32emu_qt-1.11-git613c0ea765-amd64.zip/download
Thanks!
from munt.
Related Issues (20)
- DOSBox Patch LCD messages to LCDProc
- Problem writing reverb settings over SysEx HOT 3
- Dosbox r4479: MIDI:Can't find device:mt32 HOT 2
- [Feature Request] Partial exhaustion indicator in UI HOT 4
- [UI Feature Request] Numeric entry Output Gain control
- Make UI better self-documenting
- Application crashes occasionally when a new JACK audio device is started
- UI may show obsolete info when a pinned synth is stopped
- Add basic unit tests
- Improve emulation accuracy of partial allocator implemented in old-gen devices
- New Output Gain textboxes don't work well on Windows HOT 1
- Provide callback to inform clients about events of synth engine running out of available partials
- Add visual indication for events when the synth engine exceeds the currently available partials
- is there any documentation on how to use mt32emu? HOT 2
- SHA1 digests in ROMInfo objects may be initialised incorrectly HOT 1
- SteamOS 3.5 - Client 128: 'Munt MT-32' Misssing HOT 5
- Question about using MUNT regarding physical ownership of a tested and working CM-32L unit HOT 12
- mt32emu-qt: add command to CLI for opening one or more MIDI port(s) at startup
- More of a question to the creator.
- Guides or information on dumping MT-32 ROM? HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from munt.