Page 1 of 2
AdLib!
Posted: Sun Dec 26, 2010 1:34 pm
by jmetal88
Has anyone ever tried to add AdLib music capability to the PCjr?
I kinda feel like taking a whack at it. I've got an old Sound Blaster 2.0 and a multimeter here, and I'm going to go to work figuring out the address decode for the Yamaha chip (since that's the only chip really needed for the AdLib functionality). I figure I might build a small YM3812-based board and try to interface it with the PCjr's built in sound amplifier somehow.
From what I read online, the AdLib card uses interface addresses 0x388 and 0x389. Is there anything on the PCjr that might conflict?
Re: AdLib!
Posted: Sun Dec 26, 2010 2:35 pm
by Brutman
According to "Computes! Guide to Mapping the PC and PCjr" you are clear - that address range was used by some obscure IBM communications adapter.
Back in ancient history PC Enterprises sold a game sidecar which was either an AdLib or a SoundBlaster compatible. I think it was called 'GameMaster' or some nonsense like that, and they are extremely rare. (I've heard of one person who has one, and I've touch with him a few years ago.) If it's the same chipset, then at least you know somebody has tried it before.
In theory there is no reason why it would work. It's amazing the amount of stuff that does work if you get addressing correct.
Mike
Re: AdLib!
Posted: Sun Dec 26, 2010 2:49 pm
by jmetal88
Ah! Thanks, your post just reminded me that there's a line on the sidecar port marked 'audio in'. I bet I could tie up the output from the YM3812 to that and have it work.
I just need to make sure I can figure out the address decoding now. Apparently, the Sound Blaster used different chips for this than the original AdLib card, so I'm going to have to look at the datasheets and do some guessing as to how the chips were used, I think.
Re: AdLib!
Posted: Sun Dec 26, 2010 4:00 pm
by Brutman
The Audio In line is kind of nice - it's analog and it goes straight through to the motherboard hardware, so you can channel it using the existing hardware. (For example, whatever comes in can be passed out to the monitor or the 'A'udio port on the machine.) The speech sidecar uses that line.
Re: AdLib!
Posted: Wed Dec 29, 2010 9:39 pm
by jmetal88
Alright, I'm gonna try to document this a bit better than I did with my memory mod.
I had all of the following chips on hand, I will be using these to try duplicating the function of an AdLib card:
1x Yamaha YM3812 (the main FM synthesizer chip)
1x Yamaha YM3014B (digital to analog converter for the YM3812)
1x LM3900N (Quad op amp, only two will be used)
1x 7404 (Inverter, used to invert some signals and buffer others)
1x 74ls245 (transceiver, used to buffer data going to and from the YM3812)
2x 74154 (used for address decoding, in lieu of the 74ls138s used on the original card)
I'll be trying to put a schematic together when I start wiring up the chips.
Re: AdLib!
Posted: Thu Dec 30, 2010 9:26 am
by jmetal88
Almost forgot - I'll be using a 7474 as a clock divider. I'll have to take the clock frequency from the OSC pin on the 8284 and divide it by 4 to produce the 3.58 mhz clock needed by the YM3812.
EDIT: Also forgot, I'll be using a 7432 OR gate to assist in the address decode.
Re: AdLib!
Posted: Fri Dec 31, 2010 10:05 pm
by jmetal88
Alright, I have a partial schematic and a circuit wired up. I have 26 wires that I need to attach to the PCjr somehow, and I can't use the same trick I did with my memory upgrade.
It's a little bit daunting, so I don't know when I'll actually get around to testing this.
Re: AdLib!
Posted: Sun Jan 02, 2011 12:08 am
by jmetal88
Alright, well, the AdLib idea didn't work. Probably because of the way the PCjr mixes the audio. I could probably get the thing working if I tried building an amplification circuit onto the card, but I really don't want to do that, and I don't really have room for it, anyway.
This might be an idea better suited to an ISA adapter and a complete sound card.
Re: AdLib!
Posted: Sun Jan 02, 2011 4:59 pm
by jmetal88
I just realized that I, rather stupidly, forgot to turn on the music in the game I was testing anyway.
Ah, well. I think I'd still rather come up with some kind of ISA adapter and just use the sound card itself. I could always add an audio jack to the adapter to work as the sidecar audio in, if I wanted sound through the PCjr using an off the shelf card.
Re: AdLib!
Posted: Mon Jan 10, 2011 9:46 pm
by deathshadow60
What's going to mess with you on using the soundcard itself is the lack of a DMA controller on the Jr. If software detects it as a sound blaster and tries to use it's DMA driven wave output, it's going to send you off to never-never land. You WOULD be ok though in terms of Adlib sound since that is strictly port based.
If you do make a sidecar to ISA adapter, you might want to tape off or cut the traces to the address lines for the wavetable/mixer part of the card (ports 220-240) and/or it's IRQ/DMA settings. If you're lucky the adlib part should still power up and initialize properly.