Added IO Cache Library, Moved FDD Driver to Modules Tree, Fixed Doxygen commenting
[tpg/acess2.git] / Kernel / include / binary.h
1 /*
2  */
3 #ifndef _BINARY_H
4 #define _BINARY_H
5
6 // === TYPES ===
7 /**
8  * \struct sBinary
9  * \brief Defines a binary file
10  */
11 typedef struct sBinary {
12         struct sBinary  *Next;
13         char    *TruePath;
14         char    *Interpreter;
15         Uint    Entry;
16         Uint    Base;
17          int    NumPages;
18          int    ReferenceCount;
19         struct {
20                 Uint    Physical;
21                 Uint    Virtual;
22                 Uint16  Size, Flags;
23         }       Pages[];
24 } tBinary;
25
26 /**
27  * \struct sBinaryType
28  */
29 typedef struct sBinaryType {
30         struct sBinaryType      *Next;
31         Uint32  Ident;
32         Uint32  Mask;
33         char    *Name;
34         tBinary *(*Load)(int FD);
35          int    (*Relocate)(void *Base);
36          int    (*GetSymbol)(void *Base, char *Name, Uint *Dest);
37 } tBinaryType;
38
39 extern char     *Binary_RegInterp(char *Path);
40
41 #endif

UCC git Repository :: git.ucc.asn.au