VOGONS


First post, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I want to mix an Aureal Vortex 1 or 2 with another ISA card with a genuine Yamaha OPL chip. I found that the Aureal cards are configurable in the vortex.ini/au30dos.ini files, but i can't find a way to disable FM synthesis. There is an option "FMBase=0x388" which should allow me to move it to a different address, but this doesn't work, and the Aureal card still outputs FM when "Adlib" is chosen in game sound setups.

Is there a way to modify these drivers to not set themselves up for FM synthesis so that I can pair it with an ISA card with genuine Yamaha OPL?

If FMBase is set to 0x0, the DOS driver utility will throw an error about the address not being available, so it should be possible to locate the right part of the code with a debugger and NOP it out. Does anyone know how to do this with a DOS executable?

Last edited by Kahenraz on 2022-03-15, 03:19. Edited 1 time in total.

Reply 1 of 4, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Kahenraz wrote on 2022-03-14, 19:31:

I want to mix an Aureal Vortex 1 or 2 with another ISA card with a genuine Yamaha OPL chip. I found that the Aureal cards are configurable in the vortex.ini/au30dos.ini files, but i can't find a way to disable FM synthesis. There is an option "FMBase=0x388" which should allow me to move it to a different address, but this doesn't work, and the Aureal card still outputs FM when "Adlib" is chosen in game sound setups.

Is there a way to modify these drivers to not set themselves up for FM synthesis so that I can pair it with an ISA card with genuine Yamaha OPL?

If FMBase is set to 0x0, the DOS driver utility will throw an error a out the address not being available, so it should be possible to locate the right part of the code with a debugger and NOP it out. Does anyone know how to do this with a DOS executable?

You may be able to inspect and patch the executable with IDA Pro or Ghidra. However, it might require more than just not initializing FM to get things work correctly, depending on how the Aureal TSR works underneath.
(NOTE: You need the older 5.0 free version of IDA as the latest free version dropped 16-bit support)

An example would be: If you skipped initializing the card's FM logic, but the TSR still intercepts FM commands and tries processing them regardless, the system could crash.

I'm not sure about your exact use case. Did you try initializing the ISA card first, then the Aureal card?