VOGONS


OPL2LPT

Topic actions

First post, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie

Hi !
I designed new PCB : OPL2LPT , or nickname 'ADLIPT 1' :
A compact 'adlib' on parallel port, 3.5mm line out connector.

---
EDIT 2021
OPL2LPT V2 now available at https://www.serdashop.com/OPL2LPT
OPL3LPT now available at https://www.serdashop.com/OPL3LPT
-----

PCB's and components ordered for the first few prototypes,
these should be ready around 2nd week of august.
This time I took care to make it 'all through hole', so it can be a solder kit.

adlipt1.png
Filename
adlipt1.png
File size
35.19 KiB
Views
12291 views
File license
Fair use/fair dealing exception
adlipt1_b.png
Filename
adlipt1_b.png
File size
32.32 KiB
Views
12291 views
File license
Fair use/fair dealing exception

This was inspired by this project : http://www.raphnet.net/electronique/adlib/adlib_en.php
I used the same parallel port pinout mapping, so his adplug modification should work.
Any other software that could work ?
For DOS machines, the ultimate would be a small DOS TSR that captures 0x388 and 0x389 writes and outputs on the parallel port instead.

---- ---- ---- ----
EDIT 2020 :
Here is the related software : https://github.com/pdewacht/adlipt/releases

Here are programming examples :
For OPL2LPT: https://github.com/pdewacht/adlipt/issues/1#i … mment-352285382
For OPL3LPT: https://github.com/pdewacht/adlipt/issues/1#i … mment-403243022

Last edited by dreamblaster on 2021-08-15, 10:59. Edited 4 times in total.

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !

Reply 1 of 566, by Jepael

User metadata
Rank Oldbie
Rank
Oldbie

I hope you did not clone the awkward crystal oscillator circuitry for this 😀

Meanwhile, the interrupt pin of OPL could be connected to LPT interrupt pin, maybe even through a jumper so it can be removed.

I'm happy to do a schematic review if you like.

I can also try to mod some existing programs to work with this, or make a few programs to playback simple stuff like .RAW, .DRO or .IMF files.

Also what I would really love is a header for the DAC data so it can be easily digitally captured.

(and ADC for I2S/SPDIF output but that would be kind of overkill 😁 )

Maybe even a stereo SMD version with OPL3?

Reply 2 of 566, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie

Hey,
the oscillator circuit is different, in fact I think only the pinout is the same as that project 😉
Currently connected is : 8 Data lines (pins 2-9), 1 address line (pin 1), 1 /write line (pin 16).
We can easily wire up any pin we like, for testing.

I will mail you about this, and also the schematic of my OPL3PLT.
The schematic for that is also ready, but PCB design not yet.

Other SoundChip boards in the pipeline, and maybe also an LPT streamer device with MIDI ports.

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !

Reply 3 of 566, by Super_Relay

User metadata
Rank Newbie
Rank
Newbie

in addition to the Dos TSR a dosbox patch that would pass the data through would mean the ability to get non emulated adlib on very new machines.

Reply 4 of 566, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
Super_Relay wrote:

in addition to the Dos TSR a dosbox patch that would pass the data through would mean the ability to get non emulated adlib on very new machines.

If I'm not mistaken, very new machines don't seem to have parallel ports anymore.

Reply 5 of 566, by xjas

User metadata
Rank l33t
Rank
l33t

Really cool idea! Looking forward to seeing where this project goes. 😀 It's like a Yamaha FB-01 miniaturized.

Jorpho wrote:

If I'm not mistaken, very new machines don't seem to have parallel ports anymore.

I was surprised to find the then-brand new I7-based Optiplex workstation my work bought me in 2015 does have a parallel port, so they are still around. Also PCI-e parallel port cards don't seem that uncommon, no idea if they act the same as a native one though.

I guess this would be a fine time to let out of the bag that I'm working on my own fork of Schism Tracker, which, among other things, is intended to support both hardware FM synth chips (OPL, ESFM, CQM) and parallel-port MIDI. So this device is extremely relevant to my interests. Expect a first alpha of that to be released around mid-2025 at the rate I'm going.

twitch.tv/oldskooljay - playing the obscure, forgotten & weird - most Tuesdays & Thursdays @ 6:30 PM PDT. Bonus streams elsewhen!

Reply 6 of 566, by Super_Relay

User metadata
Rank Newbie
Rank
Newbie
Jorpho wrote:
Super_Relay wrote:

in addition to the Dos TSR a dosbox patch that would pass the data through would mean the ability to get non emulated adlib on very new machines.

If I'm not mistaken, very new machines don't seem to have parallel ports anymore.

I guess "very" is a relative term :p

Certainly there is a crossover of machines that are exclusively PCI-e or are small form factor and the only expansion slot is needed for a video card but have a parallel port, many laptops and x86 thin clients too and even latest gen z270 intel platforms that have a header for parallel port rather than the port itself.

There is also the possibility of finding a USB parallel port that is up to the task, i cant remember off the top of my head how the CVX4 experiments in that regard finished up.

Reply 7 of 566, by Beegle

User metadata
Rank Member
Rank
Member

Hah, this exact project was a future thing I had in mind of trying. Glad you thought of it too.
Were you partly inspired by Raphnet's endeavors in this vein?
http://www.raphnet.net/electronique/adlib/adlib_en.php

The more sound cards, the better.
AdLib documentary : Official Thread
Youtube Channel : The Sound Card Database

Reply 8 of 566, by Jepael

User metadata
Rank Oldbie
Rank
Oldbie
Super_Relay wrote:

There is also the possibility of finding a USB parallel port that is up to the task

I highly doubt this unless it's a very special USB parallel adapter with very special drivers and very special API to use it.

My experience with USB parallel ports is that they are only suitable for connecting actual printers, not real-time bit-bang GPIO hobby projects.

That was at least the situation over 10 years ago, it might have changed since as both drivers get more features and hobbyist programmers get smarter writing/using drivers, but as USB parallel ports are not visible at standard I/O port addresses they could not be used from native DOS or Windows command line for example.

What this needs here is direct IO port interface to the parallel port.

Reply 9 of 566, by Jo22

User metadata
Rank l33t++
Rank
l33t++

I believe there's at least one "USB to LPT" project that aims to provide a true parallel port.

Converter From USB To Parallel
https://www-user.tu-chemnitz.de/~heha/basteln/PC/USB2LPT/

Cloning instructions (English)
USB2LPT Release 1.0
USB2LPT Release 1.1
USB2LPT Release 1.2
USB2LPT Release 1.3
USB2LPT Release 1.4
USB2LPT Release 1.5
USB2LPT Release 1.6
USB2LPT Release 1.7

Prototype

Sadly, the technical University of Chemnitz apparently has deleted some of the pages.
Maybe because they are changing things, dunno.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 10 of 566, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie

1st prototype... (Still waiting for the yamaha chips to arrive)

DSCN0241.JPG
Filename
DSCN0241.JPG
File size
118.9 KiB
Views
12064 views
File license
Fair use/fair dealing exception

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !

Reply 13 of 566, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie
Jepael wrote:

Do you already have a player program for that?

No, I don't have software yet, will pm you. 😀

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !

Reply 14 of 566, by Joey_sw

User metadata
Rank Oldbie
Rank
Oldbie
Jepael wrote:

My experience with USB parallel ports is that they are only suitable for connecting actual printers, not real-time bit-bang GPIO hobby projects.

That was at least the situation over 10 years ago, it might have changed since as both drivers get more features and hobbyist programmers get smarter writing/using drivers, but as USB parallel ports are not visible at standard I/O port addresses they could not be used from native DOS or Windows command line for example.

What this needs here is direct IO port interface to the parallel port.

The same happened to me, USB-to-LPT doesn't seems to works well with me.
DOS program can't see it, it can be used for printing but only from windows but even that not all programs with printing features works.

What works for me, is when i managed to find a PCI card that have LPT port on it.
Dos program can see the newly added parallel port and use them. It did however, conflicts with motherboard with built-in parallel port until i disable that in BIOS settings.

Now that i think about it, adding card with LPT port on it was the original approach of IBM PC compatible (such as MD&P Adapter), until clone makers started to integrated the parallel port into their motherboards.

-fffuuu

Reply 16 of 566, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie
Beegle wrote:

Will a TSR be planned to re-route normal AdLib commands to the LPT port?

Yes

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !

Reply 17 of 566, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
dreamblaster wrote:

Currently connected is : 8 Data lines (pins 2-9), 1 address line (pin 1), 1 /write line (pin 16).

Did you not account for the ability to read? There is a certain amount of old AdLib code that relies on the ability to read status registers. Failing that, some software may not work, and other software may fail to detect the "card" altogether.

Did you add pull-up resistors for the control lines? From my reading, that is always recommended, but the exact value has been a matter of some debate. If initial testing fails, that may be one thing to look at.

Reply 18 of 566, by Jo22

User metadata
Rank l33t++
Rank
l33t++

640K!enough@ I think a card detection can be implemented in the TSR, as well.
But even without that, the old standard parallel port can read data via the 8 data lines.
I'm talking about the old centronics port, without nibble or PS/2 mode. It's not pretty, but it works.
The trick is to overdrive the latches for the data ports.
http://retired.beyondlogic.org/spp/parallel.htm

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 19 of 566, by dreamblaster

User metadata
Rank Oldbie
Rank
Oldbie
640K!enough wrote:
dreamblaster wrote:

Currently connected is : 8 Data lines (pins 2-9), 1 address line (pin 1), 1 /write line (pin 16).

Did you not account for the ability to read? There is a certain amount of old AdLib code that relies on the ability to read status registers. Failing that, some software may not work, and other software may fail to detect the "card" altogether.

Currently no read ability, I though any detection support could be added in the TSR.

Visit http://www.serdashop.com for retro sound cards, video converters, ...
DreamBlaster X2, S2, S2P, HDD Clicker, ... many projects !
New X2GS SE & X16GS sound card : https://www.serdashop.com/X2GS-SE ,
Thanks for your support !