bjt42 / softmpu

An MPU-401 emulation TSR for DOS
http://bjt42.github.io/softmpu/
GNU General Public License v2.0
105 stars 15 forks source link

Feature Request: SoftMPU to work with Jemm with the QPIEMU module #30

Open hjnijlunsing opened 11 months ago

hjnijlunsing commented 11 months ago

Updated opening post / title, according to the clarifications of volkertb (see post below)

This would provide a free an open-source (and still maintained) alternative to EMM386 and QEMM, and would also hopefully eventually allow SoftMPU to be distributed with FreeDOS.

~~According to Baron von Diesel it would take minimal changes to TRANS.ASM to support Jemmex/QPIEMU port trapping. This would allow SoftMPU to be:~~ - Compatible with VSBHDA - Run protected mode games (Thus Midi over Serial port for many games)

https://github.com/Baron-von-Riedesel/VSBHDA/issues/5

volkertb commented 11 months ago

These are technically two separate feature requests:

  1. Make the aforementioned minimal changes to TRANS.ASM, so SoftMPU could work with Jemm with the QPIEMU module. This would provide a free an open-source (and still maintained) alternative to EMM386 and QEMM, and would also hopefully eventually allow SoftMPU to be distributed with FreeDOS.
  2. Add support for the port trapping API that was recently introduced in HDPMI32i (part of the HX project), so SoftMPU can also work with protected mode games.

Ideally, we'd want to have this implemented in a way so that SoftMPU can work alongside VSBHDA or SBEMU, with both TSRs loaded and working side by side, for MIDI redirection, combined with Sound Blaster emulation with digital audio being played back through more modern sound devices such as Intel HDA or ICHx AC'97.

See https://github.com/Baron-von-Riedesel/VSBHDA/issues/5#issuecomment-1854665882

volkertb commented 11 months ago

@hjnijlunsing you might want to update the title and the opening post of this issue, and create a separate issue for HDPMI32i (protected mode) support.

bjt42 commented 11 months ago

Thanks for opening this issue, agree that it makes sense to add QPIEMU support. I would be open to taking a pull request and making an official SoftMPU release with this functionality.