Adlib (OPL2) tracker & fileformat recommendation ?
category: music [glöplog]
Scene rule: A prod needs sound .. so I'm reinventing the wheel - a question of honor ;-) - atm and writing an adlib (opl2) core for our prods which could be used on i286/MSDOS (oldschool target, just Adlib/Soundblaster 2.0, so I don't want to support opl3).
I see the adlib stuff from the coders point of view but have simply no idea about the practical musicians perspective .. you'll guess - our group doesn't have a musician atm ..
Which opl2 trackers are (were) widely used by sceners ?
Which fileformats are the most commonly used for adlib sound ?
What is the simplest format (easier to implement = less code size and ressources) ?
.. as long as we don't have a musician I'd "reuse" (with credits ;-) other sceners stuff; and if we found one, it would be nice if he/she could work with "state of the art" trackers :-)
After some research I like RAD (Reality Adlib Tracker), SA2 (Surprise Adlib Tracker), INS/SNG (Adlib Tracker v1.0) and HSC .. there are format descriptions (but not for HSC unfortunately) and it seems to be very straight forward to implement ..
Greetz & Thx
I see the adlib stuff from the coders point of view but have simply no idea about the practical musicians perspective .. you'll guess - our group doesn't have a musician atm ..
Which opl2 trackers are (were) widely used by sceners ?
Which fileformats are the most commonly used for adlib sound ?
What is the simplest format (easier to implement = less code size and ressources) ?
.. as long as we don't have a musician I'd "reuse" (with credits ;-) other sceners stuff; and if we found one, it would be nice if he/she could work with "state of the art" trackers :-)
After some research I like RAD (Reality Adlib Tracker), SA2 (Surprise Adlib Tracker), INS/SNG (Adlib Tracker v1.0) and HSC .. there are format descriptions (but not for HSC unfortunately) and it seems to be very straight forward to implement ..
Greetz & Thx
I don't recall many demos for adlib? Some games used it but I think demos quickly went to Sound Blaster and afterwards to GUS.
There was at least the Starport 2 bbs intro by Future Crew which had music inserted directly in the source code and converted via a custom converter from a Scream Tracker 3 module.
There was at least the Starport 2 bbs intro by Future Crew which had music inserted directly in the source code and converted via a custom converter from a Scream Tracker 3 module.
RAD is a good choice. I've played around with it a bit but haven't done a full song in it yet. There is a modded version around that supports the extra OPL3 waveforms (but not any other OPL3 features) which is rather nice to use.
Another option would be the VGM format; dead simple to implement and the format itself supports OPL2/3, but I'm not aware what trackers are around that can write for those chips directly. My go-to for VGM (Deflemask) doesn't.
Another option would be the VGM format; dead simple to implement and the format itself supports OPL2/3, but I'm not aware what trackers are around that can write for those chips directly. My go-to for VGM (Deflemask) doesn't.
Have you tried subz3ro's AdlibTracker II? It is afaik the latest sota tracker for adlib. It supports multiple platforms incl. DOS. I heard other people where using it these days.
http://adlibtracker.net
http://adlibtracker.net
It supports also multiple formats so you can pick and choose. Either that or write your own format.
I think we had some dos demos in recent years that would just use a raw dosbox opl capture since all the old playback libraries didn't like linking that easy anymore.
raw opl ain't the most space efficient but easy to playback if you can just pump out data at regular intervals.
raw opl ain't the most space efficient but easy to playback if you can just pump out data at regular intervals.
The old Adlib Tracker II (OPL2) ver. 2.0.27 maybe? Or EdLib, which always looked and sounded very cool.
Quote:
I don't recall many demos for adlib? Some games used it but I think demos quickly went to Sound Blaster and afterwards to GUS.
Not that many demos, but BBS intros and 4k intros (if they had sound at all) usually supported adlib/OPL2 up until the mid-1990s. As for trackers, I liked Amusic and its amd format best. The 101% version can import mod files too.
If you want a tracker which is easy to use then use RAD or AMUSIC.
Otherwise use Edlib and enjoy the software modulation of the modulator volume which allows great sounds.
Loudness Soundsystem also allowed a software modulated "tremolo"-lfo as well as a carrier-lfo -
which really helped pads and drums - but I haven't seen any tracker for that in the wild.
You can get the OPL3 Patches for Edlib and RAD at my homepage: http://insane.tscc.de
I think that most opl2 soundcards were really already opl3 at the time - but those patches only enable all 8 waveforms (square ftw)
Adlib Tracker 2 has a huge macro engine with many possibilites - but the replayer is NOT suitable for a 286 -
you'd need to go the register dump route for that one.
Otherwise use Edlib and enjoy the software modulation of the modulator volume which allows great sounds.
Loudness Soundsystem also allowed a software modulated "tremolo"-lfo as well as a carrier-lfo -
which really helped pads and drums - but I haven't seen any tracker for that in the wild.
You can get the OPL3 Patches for Edlib and RAD at my homepage: http://insane.tscc.de
I think that most opl2 soundcards were really already opl3 at the time - but those patches only enable all 8 waveforms (square ftw)
Adlib Tracker 2 has a huge macro engine with many possibilites - but the replayer is NOT suitable for a 286 -
you'd need to go the register dump route for that one.
oh - and RAD, AMUSIC and Edlib have ready-made 286 replays available
First I mostly used RAD tracker. Amusic and Edlib were cool too. Ultimate tool is Adlib tracker 2.
Quote:
Adlib Tracker 2 has a huge macro engine with many possibilites - but the replayer is NOT suitable for a 286 - you'd need to go the register dump route for that one.
what about the old real mode version 2.027, which has a player for TP7 ?
Does it need 386+?
Hmm. That one only needs 286, but it does request XMS (skimming over the source I'd say it's about 200-300kB XMS memory).
Stilll - it should work for a XMS 286 Machine - never tested the speed of the replayer though
Stilll - it should work for a XMS 286 Machine - never tested the speed of the replayer though
Thx for your hints .. DOSbox RAW sounds promising since it doesn't matter which adlib trackers are used for composing ..
@insane: found your LLSID tool for DOS ! Great (you should release it on C64 sites, I didn't see it there) .. any chance that you add support for OPL2 playback and for YM2149 (to play ST, ZX, CPC) and PoKey (ATARI 8 Bit) for the DOS version ?
btw. are DRO files that "big" because "instruments" are repeated (& redundant) vs tracker file formats ?
@insane: found your LLSID tool for DOS ! Great (you should release it on C64 sites, I didn't see it there) .. any chance that you add support for OPL2 playback and for YM2149 (to play ST, ZX, CPC) and PoKey (ATARI 8 Bit) for the DOS version ?
btw. are DRO files that "big" because "instruments" are repeated (& redundant) vs tracker file formats ?
Let's sing a petition to add PCM samples to Adlib Tracker 2 ;)
*sign
How many Adlib musicians? sometimes need tune too.
Quote:
Pure Adlib is out of date (a bit). I like to combine Adlib with sampled sounds. S3M and CDFM formats make it possible. Check my tunes.How many Adlib musicians? sometimes need tune too.
But I prefer to see Adlib Tracker II combined with a sample player. Very basic drum player should be enough.
I like the combo of Adlib Tracker 2 (and being able to run it on a modern desktop system) and then dumping the raw register data to a .dro file with dosbox. Makes the playback code extremely simple. I used this in Alllegory
Quote:
Cool!dumping the raw register data to a .dro file with dosbox
What about to add a simple sample player to it?
How about you make it yourself since you're the one who wants it?
absence, such a wise advice, thank you! Why I didn’t get it myself?.. Wait a minute... May be because I am musician, not a coder? :)