@DATABASE FileID.Lib Erweiterung für AMOS1.3 @VERSION $VER: FileID.Lib @NODE main "FileID.Lib" ********************************************************************* * * * FileID.Lib Erweiterung für AMOS1.3 * * geschrieben von Haiko Lemser * * VERSION 1 * * * ********************************************************************* Die FileID.Lib Erweiterung ist Freeware. @{"Installation " LINK Install } Wie installiere ich das FileID.Lib ? @{"Rechtliches " LINK Recht } Copyright @{"Autor " LINK Autor } Wer ist der Schöpfer dieses Werkes ? @{"Systemanforderung " LINK Config } Was brauche ich ? @{"Bugs " LINK Bugs } Bekannte Fehler @{"Weiter Projekte " LINK Projekte} Weitere AMOS Erweiterungen @{"Fehler Meldungen " LINK FehlerMsg} Beschreibung der AMOS Fehler Meldungen Befehle : @{"Id Get High Id " LINK IdGetHighID } @{"Id Get String " LINK IdGetString } @{"Id Identify File " LINK IdIdentifyFile } @{"Id Identify Adresse" LINK IdIdentifyAdresse} @{"Id Fileinfo " LINK IdFileInfo } @{"Id Error " LINK IdError } **************************** Long Live The Amiga *************************** @ENDNODE @NODE IdError "IdError" var = Id Error Gibt die Fehler-Nummer des zuletzt aufgetretenden Fehlers zurück. Wenn Ihr AMOS Programm mal ohne eine Fehlerbeschreibung abbricht, rufen Sie diesen Befehl auf. Und wenn dort NICHT Null steht dann schreiben Sie @{"mir" LINK Autor}. Vergessen Sie aber nicht die Fehler-Nummer anzugeben. @ENDNODE @NODE IdFileInfo "Id Fileinfo" var = Id Fileinfo Dieser Befehl gibt die Position der FileInfo Structur der zuletzt geprüften Datei zurück. (Ist eigentlich nur für Programmierer von nutzen) @ENDNODE @NODE IdIdentifyAdresse "Id Identify Adresse" Var = Id Identify Adresse(Adresse) Dieser Befehl versucht die Datei an der angegebenen Adresse zu Identifizieren. Alts Ergebniss wird die ID-Nr zurück gegeben. Siehe auch @{"Id Identify File" LINK IdIdentifyFile} @ENDNODE @NODE IdIdentifyFile "Id Identify File" Var = Id Identify File("FilePfad") Dieser Befehl versucht die Datei im angegebenen DateiPfad zu identifizieren (schweres Word). Alts Ergebnis wird dann die ID-Nr zurückgegeben. Siehe auch @{"Id Identify Adresse" LINK IdIdentifyAdresse} @ENDNODE @NODE IdGetString "Id Get String" var$ = Id Get String(ID Nr.) Gibt eine Beschreibung der ID-Nummer zurück. z.B. ID-Nr Beschreibung 0 unbekannter Datei Typ 101 Protracker Modul 614 AMOS Basic Sprite/Bob Bank ... .... HINWEIS: Die zurückgegebene Variabl ist leider Länger alts sie sein sollte, ich weiß nicht warum :-(, daher solten Sie die Variable folgendermaßen auslesen. AMOS Basic Beispiel: Beschreibung$ = Left$(Id Get String(101),35) STR_END_BY_NULL[Beschreibung$] : Beschreibung$ = Param$ Print Beschreibung$ ' Rem 101 ist die ID-Nr. für Protracker Modul Rem alts nächstes sollten Sie die überflüssigen NULLEN am Ende Rem der Variable entfernen. Sie können dazu folgend kleine Procedure Rem nutzen. ' Procedure STR_END_BY_NULL[MS$] L=Len(MS$) SADR=Varptr(MS$) NS$="" For I=0 To L DD=Peek(SADR+I) If DD=0 Exit Else NS$=NS$+Chr$(DD) End If Next I End Proc[NS$] @ENDNODE @NODE IdGetHighID "Id Get High Id" var = Id Get High Id Gibt die höchst mögliche ID Nummer zurück. Das heist hiermit kann man feststellen wieviele Datei-Typen das FileID.library kennt das Sie benutzen. @ENDNODE @NODE FehlerMsg "Fehler Meldungen" Alle Fehler-Meldungen außer Nr 1 und 5 können nur beim Befehl @{"Id Identify File" LINK IdIdentifyFile} auftreten. 1. "FileID.library nicht geöffnet" - Das FileID.library wurde nicht im Aktuellen LIBS: Verzeichniss gefunden. 2. "Kann Datei nicht finden" - Unter dem angegebenen DateiPfad konnte die Datei nicht gefunden werden. (Vieleicht haben Sie sich ja nur verschrieben) 3. "Kann Datei nicht prüfen" - Aus welchen Gründen auch immer konnte die Datei nicht überprüft werden. 4. "Kann Datei nicht öffnen" - Die angegebene Datei konnte nicht geöffnet werden. (Vieleicht ist sie ja gegen Lesezugriffe geschützt) 5. "Kein Speicher mehr" - Ich denke diese Fehler Meldung erklärt sich von selber 6. "Datei Lese Fehler" - Beim laden der Datei trat ein Fehler auf. 7. "Datei Größe ist NULL" - Die Datei die Sie zu laden versucht haben ist NULL Byte groß. (Da is nischt drin...) 8. "Kein Datei Name in angegebenen Pfad" - Sie haben warscheinlich im Datei-Pfad den Namen der Datei vergessen oder ihn faltsch geschrieben. @ENDNODE @NODE Bugs "Fehler" Siehe @{"Id Get String" LINK IdGetString} und @{"Id Error" LINK IdError} @ENDNODE @NODE Config "Systemanforderung" Um diese Erweiterung nutzen zu können benötigen Sie nur 3 Dinge 1. Einen Amiga mit minestens OS2.x + 2. das FileID.Library im aktuellen LIBS Verzeichniss (gibts im AMINET) 3. AMOS 1.3 @ENDNODE @NODE Autor "Autor" Haiko Lemser Zur Bleiche 18. Hainrode 99735 Email: Lemsman@t-online.de @ENDNODE @NODE Install "Installation" Tragen Sie einfach 'FileID.Lib' an Platz 25 in Ihrer Erweiterungs Liste ein. Und kopieren Sie das FileID.library in das aktuelle LIBS Verzeichniss. @ENDNODE @NODE Recht "Rechliches" Die AMOS Erweiterung "FileID.Lib" ist Freeware und darf ungehindert ohne Zugewinn weitergegeben werden,solange sie im Originalzustand verbleibt. Diese Dokumentation darf ebenfalls nicht verändert werden und muß immer gemeinsam mit dem Programm vervielfältigt werden. Ich übernehme keine Garantie für Fehler und Schäden, die durch die Benutzung der Erweiterung entstehen oder entstanden sind. Außerdem kann ich nicht gewährleisten, daß das Programm auf allen Rechnerkonfigurationen fehlerfrei läuft. Für Schäden die an der Software (oder Hardware) durch die Benutzung dieser Erweiterung entstehen, übernehme ich keine Haftung. @ENDNODE @NODE Projekte "Weitere Erweiterungen" 1. @{APEN 4}P61A.Lib@{APEN 1} : Mit dieser Erweiterung kann man Player61A Module abspielen. `player61.library` wird benötigt. (11 Befehle) 2. @{APEN 4}THX.Lib@{APEN 1} : Mit dieser Erweiterung kann man THX-Module abspielen. `thxplay.library` wird benötigt. (16 Befehle) 3. @{APEN 4}DBM.Lib@{APEN 1} : Mit dieser Erweiterung kann man DIGIBooster PRO Module abspielen. `dbplayer.library` wird benötigt. Anm. Da das `dbplayer.library` das AHI-SoundSystem zum abspielen braucht,MUß dieses auch installiert sein. Ansonsten kann diese Erweiterung nicht genutzt werden !!! (5 Befehle) 4. @{APEN 4}MED.Lib@{APEN 1} : Diese Erweiterung ist GANZ NEU für AMOS 1.3 !!! Wie den Name schon sagt kann man mit dieser Erweiterung MED Module abspielen. Hier bei werden die MED-Formate MED0,MED1,MED2 und MED3 unterstützt. Auserdem ist ab Version 7.1 das abspielen von MED Modulen im FASTRAM :-) möglich. Zum abspielen benötigt die Erweiterung folgende Library`s im aktuellen LIBS: Verzeichniss : * medplayer.library (VERSION 7.+) * octaplayer.library (VERSION 7.+) * octamixplayer.library (VERSION 7.+) 5. @{APEN 4}MMV.Lib@{APEN 1} Mit hilfe dieser Erweiterung kann man MusicMaker Lieder spielen. Hierbei werden 4 sowie alts auch 8 Kanal Lieder unterstützt. Alts kleinen Bonus habe ich noch 3 Converter beigelegt mit den man Protracker,Noisetracker,Startrecker 4/8,Octalyzer und SMUS Module in das MusicMaker Format übersetze kann. Folgende Librarys benötigt die Erweiterung im aktuellen LIBS: Verzeichniss. * MMVX.library (Haupt Library) * MMV8.library (4 Kanal) * MMV88.library (8 Kanal) 6. @{APEN 4}FileID.Lib@{APEN 1} FileID.library ist eine Funktionsbibliothek, die in der Lage ist, DateiFormate anhand des Datei-Inhalts zu identifizieren. Die FileID.Lib Erweiterun nutzt ALLE Funktionen dieses Library's. Die Menge der Erkennbaren Datei-Typen hängt nur davon ab,welche Version des FileID.library's Sie haben. V 1.0: Zahl der Datei-Typen: 289. V 2.0: Zahl der Datei-Typen: 383. V 3.0: Zahl der Datei-Typen: 413. V 3.1: Zahl der Datei-Typen: 439. V 4.0: Zahl der Datei-Typen: 459. V 4.1: Zahl der Datei-Typen: 478. V 5.0: Zahl der Datei-Typen: 485. V 5.1: Zahl der Datei-Typen: 502. V 6.0: Zahl der Datei-Typen: 520. V 6.1: Zahl der Datei-Typen: 542. V 6.11:Zahl der Datei-Typen: 544. V 6.12:Zahl der Datei-Typen: 591. V 7.0: Zahl der Datei-Typen: 591. V 7.10:Zahl der Datei-Typen: 633. V 8.0: Zahl der Datei-Typen: 645. Das FileID.library wurde von Oliver "Bloodrock" Lange geschrieben, @ENDNODE