{ SPX Library Version 2.0 Copyright 1993 Scott D. Ramsay } SPX_FLI is the FLIC animation unit. It allows the playing of Autodesk's .FLI Animator files. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FLI_HDR is the flic header type fli_hdr = record size : longint; magic,frames, width,height, depth,next : word; speed,frit : longint; reserved : array[1..104] of byte; end; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FRAME_HDR is a flic frame type frame_hdr = record size : longint; magic,chunks : word; reserved : array[1..8] of byte; end; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ procedure IncPtr(var marker:pointer;incby:longint); IncPtr allows the moving the pointer across 64k boundries. MARKER: Pointer to change; INCBY: New offset of pointer ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ function fli_header(fl:string):boolean; Reads a FLI header file. Returns TRUE is successful. If successful, the header is stored in the variable CRNTHDR. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ function read_header(fl:string;var fil:file):boolean; Same as function FLI_HEADER. Except that it keeps the file open. For example: var fil : file; frame : frame_hdr; begin if read_header('ANI.FLI',fil) then begin blockread(fil,frame,sizeof(frame)); end; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ function memReadHeader(var p:pointer):boolean; Grabs a FLI header file from a memory location. P: A memory location where a FLI file is stored ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ function fli_play(fl:string;sp,tms:integer):boolean; Plays a FLI file onto the active page. FL: DOS file name of the .FLI file; SP: Speed to play the fli file. Set to -1 to use speed in file; TMS: Number of times to play fli file. Set to -1 for continuous ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ function memFliPlay(var at;sp,tms:integer):boolean; Plays a FLI file in memory onto the active page. at: buffer location of the .FLI file; SP: Speed to play the fli file. Set to -1 to use speed in file; TMS: Number of times to play fli file. Set to -1 for continuous ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ procedure memNextframe(var p:pointer); Decodes a FLI frame from memory to the active page. P: Pointer to the FLI frame ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ