kms.library: Fix wrong LVO number
[AROS.git] / rom / dos / internalloadseg.h
blob6559ca40faded9bec89cfef5c6474b386f92de16
1 #ifndef INTERNALLOADSEG_H
2 #define INTERNALLOADSEG_H
4 BPTR InternalLoadSeg_AOS(BPTR file,
5 BPTR table,
6 SIPTR * funcarray,
7 LONG * stacksize,
8 struct DosLibrary * DOSBase);
10 BPTR InternalLoadSeg_ELF(BPTR file,
11 BPTR hunk_table,
12 SIPTR * funcarray,
13 LONG * stacksize,
14 struct DosLibrary * DOSBase);
16 BPTR InternalLoadSeg_ELF64(BPTR file,
17 BPTR hunk_table,
18 SIPTR * funcarray,
19 LONG * stacksize,
20 struct DosLibrary * DOSBase);
22 BPTR InternalLoadSeg_ELF_AROS(BPTR file,
23 BPTR hunk_table,
24 SIPTR * funcarray,
25 LONG * stacksize,
26 struct DosLibrary * DOSBase);
28 BPTR InternalLoadSeg_AOUT(BPTR file,
29 BPTR hunk_table,
30 SIPTR * funcarray,
31 LONG * stacksize,
32 struct DosLibrary * DOSBase);
34 APTR _ilsAllocVec(SIPTR *funcarray, ULONG size, ULONG flags);
35 void _ilsFreeVec(SIPTR *funcarray, void *buf);
37 #define ilsAllocVec(size, flags) _ilsAllocVec(funcarray, size, flags)
38 #define ilsFreeVec(ptr) _ilsFreeVec(funcarray, ptr)
40 #define ilsRead(file, buf, size) \
41 AROS_UFC4 \
42 ( \
43 LONG, (APTR)(funcarray[0]), \
44 AROS_UFCA(BPTR, file, D1), \
45 AROS_UFCA(void *, buf, D2), \
46 AROS_UFCA(LONG, size, D3), \
47 AROS_UFCA(struct DosLibrary *, DOSBase, A6) \
51 #define ilsAllocMem(size, flags) \
52 AROS_UFC3 \
53 ( \
54 void *, (APTR)(funcarray[1]),\
55 AROS_UFCA(ULONG, size, D0), \
56 AROS_UFCA(ULONG, flags, D1), \
57 AROS_UFCA(struct ExecBase *, SysBase, A6) \
61 #define ilsFreeMem(addr, size) \
62 AROS_UFC3 \
63 ( \
64 void, (APTR)(funcarray[2]), \
65 AROS_UFCA(void *, addr, A1), \
66 AROS_UFCA(ULONG, size, D0), \
67 AROS_UFCA(struct ExecBase *, SysBase, A6) \
70 #define ilsSeek(file, pos, mode) \
71 AROS_UFC4 \
72 ( \
73 LONG, (APTR)(funcarray[3]), \
74 AROS_UFCA(BPTR, file, D1), \
75 AROS_UFCA(LONG, pos, D2), \
76 AROS_UFCA(LONG, mode, D3), \
77 AROS_UFCA(struct DosLibrary *, DOSBase, A6) \
80 #endif