home *** CD-ROM | disk | FTP | other *** search
-
- #ifndef __dl_file_h
- #define __dl_file_h
- #ifdef __cplusplus
- extern "C" {
- #endif
- #ifndef __dl_core_h
- #include "Core.h"
- #endif
- #ifndef __dl_swi_h
- #include "SWI.h"
- #endif
- extern os_error *file_lasterror;
- extern os_error *File_Delete(char *filename);
- extern int File_Size(char *filename);
- extern BOOL File_Exists(char *filename);
- typedef int file_position;
- typedef int file_handle;
- #define file_READERROR (-1)
- typedef enum
- {
- file_READ = 0x40,
- file_WRITE = 0x80,
- file_APPEND = 0xC0
- } file_access;
- extern file_handle File_Open(char *filename, file_access access);
- extern os_error *File_Close(file_handle handle);
- extern BOOL File_EOF(file_handle handle);
- extern os_error *File_Seek(file_handle handle, file_position position);
- extern file_position File_ReturnPos(file_handle handle);
- extern int File_ReadExtent(file_handle handle);
- extern os_error *File_WriteBytes(file_handle handle,
- void *buffer, int numbytes);
- extern int File_ReadBytes(file_handle handle, void *buffer, int numbytes);
- extern os_error *File_Write8(file_handle handle, int byte);
- #define File_WriteByte File_Write8
- #define File_WriteChar File_Write8
- extern int File_Read8(file_handle handle);
- #define File_ReadByte File_Read8
- #define File_ReadChar File_Read8
- extern os_error *File_Write32(file_handle handle, int word);
- #define File_WriteWord File_Write32
- #define File_WriteInt File_Write32
- #define File_WriteLong File_Write32
- extern int File_Read32(file_handle handle);
- #define File_ReadWord File_Read32
- #define File_ReadInt File_Read32
- #define File_ReadLong File_Read32
- extern int File_Read32R(file_handle handle);
- #define File_ReadWordR File_Read32R
- #define File_ReadIntR File_Read32R
- #define File_ReadLongR File_Read32R
- extern os_error *File_Write32R(file_handle handle, int word);
- #define File_WriteWordR File_Write32R
- #define File_WriteIntR File_Write32R
- #define File_WriteLongR File_Write32R
- extern void File_SetType(char *filename, int type);
- extern int File_GetType(char *filename);
- #define File_GetLength(filename, size_ptr) \
- SWI(2, 5, SWI_OS_File, 5, (filename), NULL, NULL, NULL, NULL, (size_ptr))
- extern BOOL File_IsDirectory(char *pathname);
- extern os_error *File_LoadTo(char *filename, void *address, int *size );
- extern void File_Date(char *filename, char *fivebytedate);
- extern char *File_AllocLoad0( char *filename);
- extern int File_printf(file_handle file, char *format, ...);
- extern int File_ReadExtent(file_handle handle);
- #define FILETYPE(x) (((x) & 0xFFF00) >> 8)
- #define filetype_AIM 0x004
- #define filetype_CLEAR 0x690
- #define filetype_DEGAS 0x691
- #define filetype_IMG 0x692
- #define filetype_AMIGAIFF 0x693
- #define filetype_MACPAINT 0x694
- #define filetype_GIF 0x695
- #define filetype_PCX 0x697
- #define filetype_QRT 0x698
- #define filetype_MTV 0x699
- #define filetype_CADSOFT 0x69A
- #define filetype_IRLAM 0x69B
- #define filetype_BMP 0x69C
- #define filetype_TARGA 0x69D
- #define filetype_PBMPlus 0x69E
- #define filetype_ZVDA 0x69F
- #define filetype_MSX2 0x6A0
- #define filetype_RLE 0x6A1
- #define filetype_COLORIX 0x6A2
- #define filetype_FITS 0x6A3
- #define filetype_HAWKV9 0x6A4
- #define filetype_REPLAY 0xAE7
- #define filetype_ALARMS 0xAE9
- #define filetype_DRAWFILE 0xAFF
- #define filetype_BBCROM 0xBBC
- #define filetype_AUDIOWRK 0xBD6
- #define filetype_RENDPIC 0xD58
- #define filetype_ARCHIVE 0xDDC
- #define filetype_PROART 0xDE2
- #define filetype_PICTURE 0xDFA
- #define filetype_PRNTDEFN 0xFC6
- #define filetype_DOSDISC 0xFC8
- #define filetype_SUNRASTR 0xFC9
- #define filetype_DEVICE 0xFCC
- #define filetype_CACHE 0xFCF
- #define filetype_PCEMCONF 0xFD0
- #define filetype_DEBIMAGE 0xFD3
- #define filetype_TASKEXEC 0xFD6
- #define filetype_TASKOBEY 0xFD7
- #define filetype_MAKEFILE 0xFE1
- #define filetype_DOS 0xFE4
- #define filetype_DESKTOP 0xFEA
- #define filetype_OBEY 0xFEB
- #define filetype_TEMPLATE 0xFEC
- #define filetype_PALETTE 0xFED
- #define filetype_TIFF 0xFF0
- #define filetype_CONFIG 0xFF2
- #define filetype_PRINTOUT 0xFF4
- #define filetype_POSCRIPT 0xFF5
- #define filetype_FONT 0xFF6
- #define filetype_BBCFONT 0xFF7
- #define filetype_ABSOLUTE 0xFF8
- #define filetype_SPRITE 0xFF9
- #define filetype_MODULE 0xFFA
- #define filetype_BASIC 0xFFB
- #define filetype_UTILITY 0xFFC
- #define filetype_DATA 0xFFD
- #define filetype_COMMAND 0xFFE
- #define filetype_TEXT 0xFFF
- #ifdef __cplusplus
- }
- #endif
- #endif
-