VOGONS


OPLPassthrough

Topic actions

First post, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

I have had a thought about OPL Passthrough, which in my opinion is a vital feature for DOSBox. For those who don't know, OPL Passthrough is an unofficial patch in DOSBox that allows DOSBox to send FM music data directly to an onboard OPL2/3 chip (Adlib/Adlib Gold) or PSG chips (Game Blaster). But how do you get a real chip to interface with your system? I can give you three options:

1. System with ISA slots and an old SB/Adlib/PAS/WSS

Most of these cards come with a geniune Yamaha OPL2 or OPL3 chip at I/O 388-389 or 388-38b. This will work with the OPL Passthrough and in 2K/XP with Porttalk. However, either you must have a low-performing (for DOSBox) retro system or expensive an industrial motherboard.

2. USB2ISA Adapter

These adapters should work with an ISA card, but they are expensive ($150) and require setup. Porttalk should be required in 2K/XP.

3. PCI OPL3

Yamaha's YMF-724 chip contains a genuine OPL3 component, so it will sound like a much cleaner version of the old cards. This OPL3 component is at I/O 338-38B, just like any other OPL3 chip that came on an ISA card. Some cards even support S/PDIF output. No drivers needed for this functionality. Of course, you will lose Game Blaster output, but that is easy to emulate and these cards can be had for dirt cheap.

Mods: If this is in the wrong forum, please move it to the right one.

Reply 1 of 10, by ih8registrations

User metadata
Rank Oldbie
Rank
Oldbie

4. via network to an ISA system. << I consider it the best solution as it's the most flexible and cheapest.

Reply 2 of 10, by Great Hierophant

User metadata
Rank l33t
Rank
l33t
ih8registrations wrote:

4. via network to an ISA system. << I consider it the best solution as it's the most flexible and cheapest.

How is it done?

Reply 3 of 10, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

> 4. via network to an ISA system.

Wouldn't the lag hurt audiophile ears? 😉

1+1=10

Reply 4 of 10, by ih8registrations

User metadata
Rank Oldbie
Rank
Oldbie

Done by transfering io and dma data to a client on the remote system that runs the opl emulator. As for lag, think of all the internet streaming and online games, it's doable. There's already utilities to do this for MIDI, which I've been meaning to setup but haven't done yet, so that I can use my mt-32 hooked up via its ISA MPU.

Reply 5 of 10, by ih8registrations

User metadata
Rank Oldbie
Rank
Oldbie

Oh yeah, another of my other interest being to remote access my real GUS.

Reply 6 of 10, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

Done by transfering io and dma data to a client on the remote system that runs the opl emulator.

In this case, you would only need to transfer I/O, because the patch does not send data to the DSP, therefore no IRQ or DMAs need be sent. I would also think that you could send data to a midi port without needing to send IRQ information.

Do you know of any software that can do this?

Oh yeah, another of my other interest being to remote access my real GUS.

Good luck with that, the GUS is not really useful absent drivers loaded on it in many games. Unlike an OPL chip, which is generally a write only device, a GUS is a much more complicated piece of hardware, requiring IRQs and DMAs for feedback to the host machine.

Reply 7 of 10, by ih8registrations

User metadata
Rank Oldbie
Rank
Oldbie

I'm thinking of full SB, not just fm. Yes, there are several commercial utilities and at least one GPL utility to send MIDI over a network. It's been awhile and I'd have to hunt them down again. I actually posted about this before here at vogons, if only vogons search was better.

Rather a empty comment about GUS, any sound card isn't useful absent drivers loaded. GUS is no different from any other sound card with a DAC for implementing remote access.

Reply 8 of 10, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

Rather a empty comment about GUS, any sound card isn't useful absent drivers loaded

My concern is not DOSBox sending data to the card, it is when the card wants to send feedback to DOSBox's emulated devices. Any card that processes digitized sound does does this through Interrupt Requests and Direct Memory Accesses. Loading drivers for digitized sound or merely using digitized sound must deal with this problem. Since digitized sound is generally much easier to emulate than synthesized sound, I would keep digitized sound within DOSBox.

An Adlib card does not require any drivers, at least in the TSR sense. While you can read the status from the chip, it does not generate an IRQ (although it does have the capability to do so.)

Reply 9 of 10, by ih8registrations

User metadata
Rank Oldbie
Rank
Oldbie

I think I'll just leave you skeptical and in disbelief rather than trying to explain it.

Reply 10 of 10, by Great Hierophant

User metadata
Rank l33t
Rank
l33t

I think I'll just leave you skeptical and in disbelief rather than trying to explain it.

http://www.musiclab.com/products/rpl_info.htm

http://www.nerds.de/en/ipmidi.html

Here are some links to programs that can send midi data over ethernet. I don't know of any freeware program, and these ones do not seem useful unless your DOSBox system cannot support a midi interface or you only have an LAPC-I or SCC-1. However, I have yet to see the program that can send general I//O, IRQ and DMA information over the ethernet.