VOGONS


First post, by pixelmischief

User metadata
Rank Newbie
Rank
Newbie

I've installed the Serdashop MIDI card with default settings. MQDIAG finds the card at 330, but can't "verify" IRQ 2. When I run MSD, I see that IRQ 2 is registered to "Second 8259a". No amount of tinkering in the BIOS - consisting mainly of explicitly setting IRQ 9 to "Yes" for ISA, instead of "No/ICU" - has helped. Any ideas?

Reply 1 of 8, by keropi

User metadata
Rank l33t++
Rank
l33t++

What kind of system are you using?
Some motherboards just can't have IRQ2 free to use or maybe some other card is using it.
If you have an ACPI option in bios try disabling it and see if it helps.

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 2 of 8, by pixelmischief

User metadata
Rank Newbie
Rank
Newbie

It's a period spec Asus motherboard, Pentium-S 133mhz. No ACPI option, but "Power Management" is disabled. The 8259a is a secondary cache controller, I think. Haven't played with that option yet. I think it likely that just being satisfied with SoftMPU on the AWE32 is going to be the answer. I really don't want to rebuild the thing and the few games I have installed showcase the MT-32 well enough; Space Quest III being the only must have for me that also requires SoftMPU.

Reply 3 of 8, by keropi

User metadata
Rank l33t++
Rank
l33t++

Well if irq2 is truly unavailable then try 3 - the majority of mt32 games won't care
Irq2 is a pain in AT systems sometimes, but it's the "mpu standard" ... The issue is with some games being hard coded to use 2, some patches are available in pcmidi site though
This is an issue for all intelligent mode mpus out there, not specific to pcmidi btw

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 4 of 8, by Scali

User metadata
Rank l33t
Rank
l33t
pixelmischief wrote on 2023-05-23, 20:21:

The 8259a is a secondary cache controller, I think.

The 8259A is the Programmable Interrupt Controller: https://en.wikipedia.org/wiki/Intel_8259
On AT and compatible systems, there are two 8259s, which are connected together ('cascaded').
This means that the second 8259 is connected to IRQ2 on the first 8259.
The pin that used to be IRQ2 on the ISA bus is actually connected to IRQ9 on an AT, which is on the second 8259.
So when an ISA card triggers an IRQ2 on an AT, it actually triggers IRQ9 on the second 8259... Which will then trigger an IRQ2 on the first 8259.

If all is well, the BIOS will have a standard handler installed for IRQ9, which redirects to IRQ2, so on an AT things still work as expected... But it may be bugged on your system?

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 7 of 8, by keropi

User metadata
Rank l33t++
Rank
l33t++

Be careful to set different address on AWE card, probably 300
If both cards try to use port 330 it won't work
Maybe you had AWE also using port330 the whole time?
because if that was the case then you would get the "interface found but unable to determine irq" error

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 8 of 8, by Scali

User metadata
Rank l33t
Rank
l33t
pixelmischief wrote on 2023-05-23, 23:08:

Oh! So I should set the card to IRQ9 and expect that software will find it on IRQ2?

There is no IRQ9 on the ISA bus. It's just that IRQ2 technically goes to IRQ9 on an AT (which is why documentation often speaks of 'IRQ2/9')
IRQ0 (8253 timer), IRQ1 (keyboard), IRQ8 (CMOS timer) and IRQ9 (IRQ2 line going to second 8259 interrupt controller) are reserved for devices on the mainboard, and as such are not exposed on the ISA bus, so you can't configure any card to use them.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/