home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
modiromppu
/
modiromppu.iso
/
OZ
/
CREATOR1.ZIP
/
WOWTPU.DOC
< prev
next >
Wrap
Text File
|
1991-12-29
|
3KB
|
83 lines
WOWTPU.TPU, WOWCONST.TPU und TESTWOW.PAS Copyright (c) 1991 Jan Ole Suhr
WOWTPU.TPU und WOWCONST.TPU - 2 Turbo Pascal 6.0 Units zum Einbinden eines
MODPlayers in eigene Turbo Pascal Programme.
TESTWOW.PAS - Demonstrationsprogramm der beiden Units WOWTPU.TPU & WOWCONST.TPU
1. Einleitung
Howdy!,
damit künftig noch mehr selbstgebastelte Programme das Abspielen von MODFiles
ermöglichen, habe ich mich kurzerhand entschlossen, eine Turbo Pascal 6.0 Unit
zum Abspielen von *.MOD-Files zu schreiben. Die Unit WOWTPU.TPU (&WOWCONST.TPU)
kann von allen Registranten und nicht-Registranten des MODPlayers WOW benützt
werden.
Hierbei verlange ich als Autor der beiden Units und des Demo-Sources weder eine
Gebühr, noch fordere ich Vermerke über den Ursprung der Routinen bei selbst-
erstellten Musikprogrammen etc.
WICHTIG: LEDIGLICH DIE KOMMERZIELLE NUTZUNG DER BEIDEN UNITS WOWTPU.TPU &
WOWCONST.TPU IST UNTERSAGT !!!
(Absprachen hierbei sind ggf. möglich.)
2. Verwendung der Units
Die Verwendung der beiden Units ist wie bei TESTWOW.PAS dokumentiert zu
befolgen. Es sind leider nicht viele Möglichekeiten zur Beeinflussung des
Abspielvorganges gegeben, allerdings steht der Nutzung der freien System-
kapazität während des Abspielens fast jede Tür offen.
Ich empfehle auf Turbo Pascal eigene (Hochsprachen) Routinen zu verzichten,
die während ihrer Ausführung Interrupts sperren. Hierbei kommt es nicht selten
zu den gehassten "Leiereffekten".
Mein Vorschlag hierbei: Trial and Error ist die beste Methode, einen geeigneten
Weg zu finden. Es ist nicht immer einfach, viele Standard-Routinen (so z.B.
die CRT-Funktion KeyPressed) durch Eigene zu ersetzen.
Der Interfaceteil der Unit WOWTPU.TPU:
(* WOWTPU - MODPlayer Turbo Pascal Unit Copyright (c) 1991 Jan Ole Suhr *)
{$R-,S-,I-}
unit wowtpu;
interface
(* Aufruf: flag:=DoIt( 'TEST.MOD', $378, 0, 21000 ); *)
(* flag : byte = 0 : Kein Fehler, 1 : File not found, 2 : kein Speicher *)
function DoIt( name : string; port1, port2, herz : word ) : byte;
(* Aufruf: endit; *)
procedure EndIt;
(* Aufruf: port1:=IdentifySB; *)
(* port1 : word = 0 : Keine Soundblaster vorhanden, $2xC : Portadresse *)
function IdentifySB : word;
var
(* aktueller Pattern, Aktuelle Note*16 *)
pattern, nz : word;
(* Der letzte Patterneintrag *)
lastpattern : byte;
3. Fehler in der Unit
Bei Fehlern oder ungeklärten Abstürzen der Units erkläre ich mich selbst-
verständlich bereit, "BUG-Fixes" vorzunehmen oder ggf. Problemsituationen
zu erläutern/klären. Aus chronischem Zeitmangel kann ich evtl. nicht alles
sofort bearbeiten, "but who cares".
tschüssecken, Jan Ole
4. Adresse etc.
Jan Ole Suhr Tel.: 04207 / 2571
Bockhorster Weg 28 Fido: 2:241/2002.8
2806 Oyten