First post, by canadacow
- Rank
- Member
I've made several changes to the driver which include a property sheet in the Device Manager to control the sampling rate and reverb settings. Also on the property sheet is a field where one can specify an additional Sysex file to load when the driver activates. I'm also considering a "persist memory" function that retains the MT-32's memory between sessions. (I'm not sure if anyone has noticed yet, but the MT-32's memory is reset between driver accesses.) Though the previous things have already been implemented, I've been working diligently to get my driver compatible with SDL apps. For some reason the SDL initialization causes an Access Violation exception error in NTDLL when it tries to allocate the DLL array list using the RtlAllocateHeap command. Exception happens as the app is loading and enumerating my driver. Once I get this figured out I'll be releasing another driver version and then continue work tuning the sound. If anyone has any ideas about why NTDLL is causing this exception only in the case of SDL, help me out if you can.
Update:
I've figured out that the problem was with the compiled version of DosBox that I was using. Switching around which libraries my DLL linked to fixed the problem. Unfortunately, now I've realized that the DosBox using the DLL is even more of a resource nightmare than the emulation inside DosBox. As such, I'm going to wait to release the next version when I have further optimized my code. It know it possible because Microsoft's softsynth is more capable than my synthesizer yet never uses more than 20% of my CPU.