Remix.run Logo
reactordev 4 days ago

What made these fun to make was the fact that some really smart people put a lot of time and effort into making a library that will allow you to play midi, “skin” windows HWND surfaces, co-routines, and a high level abstraction over win32 functions. Man, those were the days. These could be cranked out in a matter of hours for any new software as much of the market used the same few vendors or algorithms very similar.

We didn’t know what we know today and so every turn felt like a discovery.

vardump 4 days ago | parent [-]

I think most played Protracker, XM, S3M, IT, etc. modules, not MIDI. They typically used very short samples, a style which was called a 'chiptune', songs that were made sound like they came from some eighties microcomputer.

More recently the definition of 'chiptune' shifted to specifically mean music from 8-bit sound chips.

reactordev 4 days ago | parent [-]

You’re talking about the songs. I know what a chiptune is, I’m talking about what sits between those. Protracker was how you made them. When embedding into apps, you had to play them. MOD files had to be converted into something. Lookup pocketmod. Some used PCM, some used midi. Windows had a wonderful midi api and synth back then. That’s what I used.

vardump 4 days ago | parent | next [-]

No, the MOD file(s) (embedded in the .exe) were just played as is. There were a lot of MOD player libraries even back then and the CPU load was negligible. The players weighed less than 10 kilobytes.

reactordev 3 days ago | parent [-]

>”There were a lot of MOD player libraries”

What the hell do you think I’m talking about? I’m done arguing at a brick wall. You basically just validated what I said and yet continue to say I’m wrong. We embedded the music. We needed to play the music. Windows only supoorts PCM and MIDI at the time. Pick one.

vardump 3 days ago | parent [-]

You can't render MOD songs to MIDI. Not even with modern AI.

Obviously the MOD libraries outputted PCM to WinMM. That's the job of the MOD library.

You're arguing with someone who was actually writing Windows (and DOS if it matters) applications in C/C++/asm the early nineties.

If you really wanted MIDI, the best option in the nineties would have been just to include the original MIDI data. You could of course also generate MIDI data as you go, but why bother?

TazeTSchnitzel 2 days ago | parent | next [-]

> You can't render MOD songs to MIDI.

Sure you can, both are sequenced music formats, and if you can control the set of samples used to play back the MIDI (which Windows provides APIs for!) you can get it to sound right.

You've gotten yourself into a silly argument here. You're correct that one obvious way to play back a tracker module would be to embed a library that synthesises PCM. But Windows does ship with a MIDI playback engine that allows loading custom sounds. There is nothing unreasonable about converting a tracker module into a combination of a MIDI sequence and a custom DLS bank and then using DirectMusic to play it back.

reactordev 3 days ago | parent | prev [-]

Good talk

TazeTSchnitzel 3 days ago | parent | prev [-]

Oh, so some people actually used DirectMusic's support for DLS? Cool!

reactordev 3 days ago | parent [-]

GS Synth baby!! Back when ActiveX was cool and everything was exposed through COM.