-----------------------
ThunderMOD READ.ME file
-----------------------
Included with this READ.ME file should be the following files:
THUNDER.EXE 31,202 02-21-94 6:20p
TPGMOD70.ZIP 64,506 02-22-94 2:27p
TPGMOD60.ZIP 40,240 02-22-94 2:33p
TESTGMOD.PAS 1,527 02-22-94 2:50p
What follows is an explaination of each file:
THUNDER.EXE: ThunderMOD Version 0.8
============
This is a demonstration MOD player for the Gravis UltraSound which
was written entirely in Borland Pascal using the Gravis SDK, version
2.11.
The player will LOAD and play any 4-channel MOD file who's samples
and patterns will fit into GUS RAM and main RAM respectively.
Please see the other files below on how you can get the MOD player
to play MODs in your own program...
TPGMOD70.ZIP and TPGMOD60.ZIP: ThunderMOD runtime libraries
==============================
These ZIP files are for users of Borland/Turbo Pascal 7 and
Turbo Pascal 6 respectively. If you are using version 7, unzip
the file called TPGMOD70.ZIP; if you are using version 6, unzip
the other file. What you will get is:
ULTRADRV.TPU : UltraSound Pascal Driver Unit
LOADMOD.TPU : UltraSound MOD loader.
GUSINIT.TPU : UltraSound Auto-Init (22 Voices)
TPGUSMOD.TPU : UltraSound runtime MOD player.
The files other than TPGUSMOD are the versions you will need to use
to compile when using the TPGUSMOD.TPU. If you don't use these
versions of the unit, you may get a 'Unit version mismatch' compiler
error.
The TPGUSMOD unit is simply an interface that lets you play MOD files
in the background. It's really simple to use. Here's the interface
portion of the unit:
------------------------------------------------------------------------
UNIT TPGUSMOD;
INTERFACE
USES
LoadMod;
FUNCTION MODPattern : BYTE;
FUNCTION MODLine : BYTE;
FUNCTION MODVolume : BYTE;
PROCEDURE SetMODVolume(Vol : BYTE);
PROCEDURE StartMod;
PROCEDURE StopMod;
FUNCTION InitMODPlay(EmNTSC : BOOLEAN; VAR GMod : MODFile) : BOOLEAN;
PROCEDURE ShutMODPlay;
VAR
UltVoice : ARRAY[1..4] OF BYTE;
------------------------------------------------------------------------
The functions MODPattern and MODLine return the line and pattern that
is currently being played. The MODVolume function returns the current
volume (0 to 10, with 0 being silent and 10 being loud). The
SetMODVolume procedure sets the current volume (0-10) - and if you try
to set a higher volume than 10 you'll just get 10.
You'll have to guess what StartMOD and StopMOD do - tough question, no?
InitMODPlay must be called before you call StartMOD or StopMOD. You
have to give it as a parameter what MOD you want to play and a boolean.
The boolean (EmNTSC) says whether to emulate an NTSC Amiga. If this is
true the MOD player will do NTSC, if it's false it'll do PAL.
If the mod player couldn't init with the MOD file you specify, the
Init routine will return FALSE. Basically, the Init routine just allocates
voices and sets up some internal tables.
Procedure ShutMODPlay will release allocated voices and Stop the player
if it's playing. Check out the example program on how to use this unit.
TESTGMOD.PAS: Example program for ThunderMOD runtime libraries
=============
After decompressing the appropriate version of the libraries,
load this file into the IDE and compile it to disk. Then, exit
from Pascal and enter the file name followed by a MOD file you
want to play. Voila!
Source code to ThunderMOD will be released to the public domain
when the version hits 1.0. Please note that the MOD player uses
Timer 1 - the 80 microsecond timer.