A while ago I started work on sound drivers for GEM. Heinz Rath took over from me, and you can see his work here. As part of the server change (back in October 2000), my sound drivers have been removed.
I have produced some C bindings for Heinz's drivers (which were written in Pascal). You can download them here. I have released version 1.1, which includes the play-in-background routines. There are also some QuickBASIC bindings included in this package.
I have downloaded the VESA Audio Interface (VBE/AI) SDK from ftp://x2ftp.oulu.fi/pub/msdos/programming/ and converted the MIDI sample program to run under GEM, with GEM messages and so on. Most of the code is the same, but I have removed some blocks and added others.
The MIDI player will run on GEM/1 or higher. You cannot switch to other programs. This is the same with XM/GEM.
You need a MIDI-compatible sound card. There are two drivers supplied, an external MPU-401 driver (MPU.COM) and an FM driver (OPL2.COM). Run one of these before starting GEM. If in doubt which to run, run OPL2.
You can download it here (122KB).
NOTE (22/10/2000): I may also create a much improved version with DJGPP, but it will only run under 386s or better. It will use the Allegro library, as GEMP3 does. I may well remove this version, or at least try and improve it.
I have updated the MIDI player so it works on GEM/2 or higher (it no longer works on GEM/1). You can move the mouse and under GEM/XM you can switch to other programs and the MIDI still plays. However, the quality can be seriously degraded. You can download the small update here (42.7KB).
I have created an MP3 player for GEM. The latest version includes a full-screen visualisation, a sound driver Setup program, MP3 encoding support, skins, keyboard shortcuts, various bug fixes and more.
It requires a 486 or better processor, as it uses DJGPP, a 32-bit system. It may run under a 386, but it has been compiled for best performance on a 486 or better.
The first versions contained a number of bugs, such as the program closing at the end of a song, or crashing at some point. These have all been fixed, and a number of new features, such as Pause, Fast Forward, etc have been added. The latest version is much better than the first one!
Version 1.21 and earlier contained a few nasty bugs that have been fixed. If you downloaded GEMP3 1.21 or earlier and are still using it, please download GEMP3 2.2. If you have any existing version of GEMP3, it is recommended you upgrade anyway.
To download GEMP3 2.2, click here (939KB). The encoder module, based on BladeEnc, is not currently available, as I only have a binary - I lost the source when I lost the contents of one of my hard disks in May 2001. (I did manage to recover this some time later, actually - whether I'll ever release the MP3 encoder though or not I don't know). The MP3 encoding system really needs an overhaul, and I may use a different encoder in future too.
I have created a simple MOD player for GEM. This uses DJGPP, Allegro and JGMOD and supports the MOD, XM, S3M and JGM formats. (JGM is a special JGMOD format). There is no pretty interface, just a few dialogs. In future versions, this will be improved. This uses a C++ interface to GEM I started working on.
To download GEM MOD Player 0.1, click here (230KB).