148 lines
No EOL
3.3 KiB
ObjectPascal
148 lines
No EOL
3.3 KiB
ObjectPascal
Unit LibUses;
|
|
Interface
|
|
Uses
|
|
GRAPHVGA;
|
|
CONST
|
|
Title_Logo = 0;
|
|
Parchemin_Code = 64778;
|
|
Parchemin_Non = 129556;
|
|
Lens_Precal = 194334;
|
|
Voxel_High = 222562;
|
|
Thunder_Logo = 287340;
|
|
Thunder_Ligh = 352118;
|
|
Thunder_Dark = 416896;
|
|
Moon_walk = 481674;
|
|
Title_txt = 529966;
|
|
Thunder_Ldrk = 659522;
|
|
Vox_Info = 594744;
|
|
Greetings1 = 724300;
|
|
Greetings2 = 789078;
|
|
|
|
{
|
|
Adding LOGO3.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
POSITION NULLE
|
|
Adding PARCOD.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 64778
|
|
Adding PARDECOD.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 129556
|
|
Adding LENS.PRE to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 194334
|
|
Adding MAPHI.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 222562
|
|
Adding VIEW3.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 287340
|
|
Adding VIEW1.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 352118
|
|
Adding VIEW2.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 416896
|
|
Adding MOON.BUF to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 481674
|
|
Adding TITRE11.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 529966
|
|
Adding INFO3.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 594744
|
|
Adding VIEW4.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 659522
|
|
Adding Z-FIN3.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 724300
|
|
Adding Z-FIN4.SCI to RUNES.OTL
|
|
Is Position IS (Size Of Runes Before )
|
|
Size Is : 789078
|
|
|
|
}
|
|
|
|
Procedure OpenLib( N : String);
|
|
|
|
Procedure CloseLib;
|
|
|
|
Procedure OpenSub (Witch : Longint);
|
|
|
|
Procedure LoadImage( Witch : LongInt;
|
|
Var Ima : ImageInfo);
|
|
|
|
Procedure LoadData ( Witch : Longint;
|
|
Var D : Pointer;
|
|
Size : Word);
|
|
|
|
Procedure LoadRaw ( Var D ;
|
|
Size : Word );
|
|
|
|
Var
|
|
LibraryFile : File;
|
|
|
|
Implementation
|
|
|
|
Procedure OpenLib( N : String);
|
|
Begin
|
|
Assign(LibraryFile,N);
|
|
{$I-}
|
|
Reset(LibraryFile,1);
|
|
If IOResult <> 0 Then
|
|
begin
|
|
Writeln('Oops, seem to be some problems with the data-file');
|
|
Halt;
|
|
End;
|
|
{$I+}
|
|
End;
|
|
|
|
Procedure CloseLib;
|
|
Begin
|
|
Close(LibraryFile);
|
|
end;
|
|
|
|
Procedure OpenSub (Witch : Longint);
|
|
begin
|
|
Seek(LibraryFile,Witch);
|
|
end;
|
|
|
|
Procedure Loadimage( Witch : LongInt;
|
|
Var Ima : ImageInfo);
|
|
Var
|
|
Header : LongInt;
|
|
F : file;
|
|
X,Y : Word;
|
|
CC : Byte;
|
|
Xs,YS : Word;
|
|
Info : Word;
|
|
Begin
|
|
Seek(LibraryFile,Witch);
|
|
BlockRead(LibraryFile,Header,4);
|
|
BlockRead(LibraryFile,Xs,2);
|
|
BlockRead(LibraryFile,YS,2);
|
|
BlockRead(LibraryFile,Info,2);
|
|
AllocImage(Xs,Ys,Ima);
|
|
For Xs:=0 to $FF do
|
|
With Ima do
|
|
BlockRead(LibraryFile,Palette[Xs],3);
|
|
BlockRead(LibraryFile,Ima.Picture^,ima.Size);
|
|
End;
|
|
|
|
Procedure LoadData ( Witch : Longint;
|
|
Var D : Pointer;
|
|
Size : Word );
|
|
Begin
|
|
Seek(LibraryFile,Witch);
|
|
BlockRead(LibraryFile,D^,size);
|
|
End;
|
|
|
|
|
|
Procedure LoadRaw ( Var D;
|
|
Size : Word );
|
|
Begin
|
|
BlockRead(LibraryFile,D,size);
|
|
End;
|
|
|
|
End. |