In an attempt to bring sound to my PC XT clone without spending a lot of money on highly overpriced vintage sound cards on eBay, I decided to rebuild the original 1987 AdLib Music Synthesizer Card using the schlae’s KiCad layout from Github and the instructions from this blog. The card was fairly simple, consisting of nothing more than a few ICs, some resistors and capacitors, a variable resistor for volume control and a 3.5mm socket for mono audio output.
There is another design by Malinov which also attempts to replicate the exact OPL2 functionality of the original Adlib card, albeit with a different PCB layout. As I wanted my card to look as close to the real thing as possible, I went with schlae’s design and used Seeed Studio’s FusionPCB service for manufacturing. The cost starts at USD $4.90 for 10 pieces of 10cm x 10cm (or smaller) boards. Larger board will be more expensive depending on their dimensions. The 1987 AdLib Music Synthesizer Card measures around 13.6cm x 10.7cm and will cost around US $30 for 5 boards. Together with shipping via DHL, I paid around US $50 in total.
If you are really adventurous and want to reduce the cost, take note that the 8-bit ISA slot connector is only around 8.2cm in length. It is therefore possible to modify the design and make the board smaller than 10cm x 10cm to enjoy Seeed Studio’s promotional rates for smaller boards.
Interestingly, the FusionPCB web page uses the PCB dimensions manually entered by users to calculate the quotation, instead of calculating them from the Gerber files. I am not sure what will happen if the dimensions entered are smaller then the actual PCB size. Will Seeed Studio reject the order, or will it still be processed because nobody actually verifies the dimensions entered by the user?
To submit to Seeed Studio for processing, you’ll need to generate the Gerber files for your design, using the instructions from here and here. Gerber files should be compressed into a single ZIP with the following files for submission:
pcbname.GTL Top Copper pcbname.GTS Top Soldermask pcbname.GTO Top Silkscreen pcbname.GBL Bottom copper pcbname.GBS Bottom Soldermask pcbname.GBO Bottom Silkscreen pcbname.TXT Drills pcbname.GML/GKO Board Outline
Take note that KiCad generates the board outline to a file named ‘Edge.Cuts.gm1′. To conform with Seeed Studio requirements, rename the extension to .GML or .GKO before submission. Also rename the drill file from .DRL to .TXT. For those who do not want to install KiCad, the generated Gerber files suitable for Seeed Studio submission can be downloaded here. The KiCad files from Github can also be downloaded here.
When submitting the design files for processing, remember to select the PCB color, which should preferably be green to make the card look as original as possible. The rest of the parameters (except for PCB dimensions and quantity) should be left as default; otherwise you will be charged more for unneeded features. It is also worth noting that Seeed Studio charges the same price for single layer and double layer boards, most likely because their material and processing costs are similar.
After around 3 weeks of waiting (10 days for PCB manufacturing and another 10 days for delivery), my boards finally arrived. This is the front photo of the PCB:
This is the back of the PCB:
There is a Mouser project containing most of the components required for soldering. The YM3812 and YM3014B pair are not available from Mouser, but can be found on eBay. I purchased 5 pieces of YM3812 and 5 pieces of YM3014B for US $6.99 and US $2.99 respectively from eBay, averaging $2 for each pair. Altogether, this is the cost breakdown:
- PCB cost: $50 for 5 boards (with shipping), averaging $10 for a single board
- Component cost: $40 from Mouser and $2 from eBay (free shipping) or $42 for each board
- Total cost: $10 + $42 = $52 for each completed Adlib ISA card
It is worth mentioning that most of the cost stems from the card bracket ($2.60 on Mouser) and the volume control potentiometer ($6.90 on Mouser), which seems excessively high. Despite an extensive search, I could not find any other places online selling ISA/PCI brackets and potentiometers having the right form factors at a better price. However, I am confident you can get better price for other components such as resistors, capacitors and 74XX ICs, if you buy them from eBay. In my case, I decided to use Mouser and spend a bit more, as I do not want to wait a month for shipping from China.
This is the bracket I received, with the holes drilled for the volume control and audio socket. It is for PCI cards but works well for ISA cards too:
As for the holes on the bracket, I asked a local carpenter to drill for me! There is no way for me to drill through stainless steel using my equipments – my hand drill is simply not strong enough. Initially I was thinking of buying a heavy duty sheet metal punch from eBay, but in the end decided against it. This is the completed card with the ISA bracket with all ICs socketed:
If you don’t care about the look of the card, to make things easier, just use a plastic card bracket (which makes it easier to punch holes on it), or buy from eBay ready-made PCI brackets meant for Ethernet cards, and modify the design to make sure that the connector and socket still line up with the holes on the bracket. This is the photo of a full height PCI bracket for the Intel E10G42BTDA Ethernet card, purchased from eBay at $6.55 for 5 pieces inclusive of shipping, together with its dimensions, for those who want to attempt this approach:
This is the moment of truth. I connected the completed card to my XT and ran Adlib’s TEST.EXE and JUKEBOX.EXE. Everything worked well and the music was just great:
Vintage games such as Prince of Persia or Commander Keen also work well, So far, this is the best $52 (and one hour of soldering) I have ever spent on vintage computer equipments!
The software for testing the Adlib card can be downloaded here for those who are interested.