You're welcome, it has been a privilege. :)
Edit: I've just found an ES1370 in the garage and so I made an effort to test a few more cards.
I've also tested CQM (CT3620/SB32) and YMF-262 (PAS16), as suggested by Stretch.
Hope that's okay. I'm out of odd sound cards for now.
"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
I have a friend who has a Crystal sound card on there Windows 98 machine, and he ran the program on the machine in dos mode, and it turns out the card has a clone. I am not sure of the exact model of the card, but I remember it is a cs42 something.
Edit: My friend didn't make a recording because he didn't have a patch cable at the time.
Thanks a lot for your reply, datajake1999!
When you said Windows 98 machine, I got a flashback and remembered my Armada laptop.
- It is running Win98SE and I totally forgot it also has an internal AudioDrive.
@nukeykt No problem, I'm happy to support this project. ^_^
I also wonder about the other Yamahas, too. OPL1, OPNA and OPN2 (YM2612) in particular.
The OPN2 was often considered the Sega Genesis' counterpart to the OPL3, or so I heard.
"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
"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
Sorry to interrupt, but what kind of an OPL does an CMI8738 have (Specs)? Is it usable under DOS, are there modern Windows OPL players that suport it (Theres an PCIE version of CMI8738-MX chip)?
Hmm the 8738 did have DOS and 9x drivers back in the day. I've got hold of the older files (I call it the build 639 hiatus, as they stayed on that build for years until they started doing updates and the PCIe budget variants) - I've done an upload on vogonsdrivers including the DOS installer and the 9x/2k/earlier XP drivers.
Hmm the 8738 did have DOS and 9x drivers back in the day.
There were some DOS drivers for CMI8x38, uploaded by tikbalang..
The thread is over here at Re: Sound Blaster 16 Clones
Personally, I also wrote something little about CMI cards a long time ago (link).
I don't know if it's still useful, though, since it was never finished.
"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
I modified oplclone to write to my CMI8738 at address 0xE050 and use inpout32.dll, so I could test it for myself. My CMI8738 produced a sine wave, so that tells me it has a real OPL3, or at the very least a very accurate clone.
I thaught I would post my modified program here, if anyone is interested.
Edit: I added a recording of my CMI8738. https://drive.google.com/open?id=1xukPpsNcUKK … w5mHu-0qkoH7RvK
Edit 2: You can now set the fm port that the program looks at with the OPL3PORT environment variable. If this variable isn't set the program looks at port 0x388.
The AD1868 does exist, but it is an 18-bit stereo audio DAC, which doesn't even contain an OPL3-compatible FM synthesizer. The chip used on the SC16-3D is the AD1816, the post by Stretch obviously used the wrong model number.
The AD1868 does exist, but it is an 18-bit stereo audio DAC, which doesn't even contain an OPL3-compatible FM synthesizer. The chip used on the SC16-3D is the AD1816, the post by Stretch obviously used the wrong model number.
You're correct. I retrieved the sound card from storage and the model is Analog Devices AD1816AJS SOUNDPORT.
I will try to edit the original post.
Have to bump a thread since recently I did some research around Creative CQM chips, and seems I found the (fully) software way to detect if a CQM chip is used instead of OPL3.
As I found out, setting bit 0 of LSI Test register (bank 0 index 1) on CQM chips makes bits 0-6 of status register return some sort of unknown counter value:
The attachment Снимок.PNG is no longer available
If OPL timers/IRQ were used, their status bits seem to be XORed with "counter" values. Setting bit 0 of LSI Test register back to 0 clears bits 0-5 of status register to 0 and brings the chip back to normal operation. Overall, this type of detection seems to not have any side-effects on OPL operation (at least I didn't had any troubles with other games/apps after running those tests)
Setting bits 1 or 2 of LSI Test register causes brief click in audio output, or ,rarely, hanging notes; bit 0 flipping seems to be silent. Other bits appear to have no effects observed.
I did a bit more tests with my pile of OPL3-capable soundcards, and it seems, apart of CQM, none of them have such effect while fiddling with LSI Test registers, thus, this quirk could be used to distinguish CQM from other OPL3-like chips.
For now, I have been able to reproduce this behavior on CT3600 CQM, CT4520 and ViBRA16C cards, so I think other CQM-equipped cards do the same :)
I've also attached an archive with all the tools made and used:
- OPL_ID detects an OPL chip and displays its type (OPL2 single/dual, OPL3/OPL3-L, ESFM or CQM)
- LSITEST flips each bit of LSI Test register of both OPL3 banks, additionally checking index 0, and displays Status register value in form of
where the results are split into groups of 4 values (before LSI Test set, immediately after, with 1024 reads delay and finally after LSI Test clear); the groups are "timers not used; Timer 1; and Timer 2" respectively.
- OPLDUMP flips bit 0 if LSI Test Registers and dumps Status register content via REP INSB for further examination (TEST_NOT.BIN - timers not used, TEST_T1.BIN - Timer 1 triggered)
All applications test port 0x388 by default, but this can be overrided by command line, e.g. OPL_ID.EXE 220
please check these on other sound cards and OPL chips (I'm particulary interested in genunie YMF262/YMF289 tests, as closest I had was "LS245" clone on ALS100+ card and YMF71x/724, but other cards are always welcome), and have fun :)
You probably meant LS262, because LS245 is a mere TTL buffer which is also present on your sound card and externally looks similar.
nope, there are no LS245 buffers soldered on my card (although there are footprints to support IDE interface), and that "LS245" chip is sharing traces with YMF262 footprint on my card:
The attachment photo_2023-09-23_16-50-23.jpg is no longer available