-extern int DoRelocate( Uint base, char **envp, char *Filename );
-\r
-// === Library/Symbol Manipulation ==\r
-extern Uint LoadLibrary(char *filename, char *SearchDir, char **envp);
-extern void AddLoaded(char *File, Uint base);
-extern Uint GetSymbol(char *name);\r
-extern int GetSymbolFromBase(Uint base, char *name, Uint *ret);\r
-\r
-// === Library Functions ===\r
-extern void strcpy(char *dest, char *src);
-extern int strcmp(char *s1, char *s2);\r
-extern int strlen(char *str);\r
-\r
-// === System Calls ===\r
-extern void SysExit();\r
-extern void SysDebug(char *fmt, ...); //!< Now implemented in main.c\r
-extern void SysDebugV(char *fmt, ...);\r
-extern Uint SysLoadBin(char *path, Uint *entry);\r
-extern Uint SysUnloadBin(Uint Base);\r
+extern void *DoRelocate(void *Base, char **envp, const char *Filename);
+
+// === Library/Symbol Manipulation ==
+extern void *LoadLibrary(const char *Filename, const char *SearchDir, char **envp);
+extern void AddLoaded(const char *File, void *base);
+extern int GetSymbol(const char *Name, void **Value, size_t *size);
+extern int GetSymbolFromBase(void *base, const char *name, void **ret, size_t *size);
+
+// === Library Functions ===
+extern char *strcpy(char *dest, const char *src);
+extern char *strcat(char *dest, const char *src);
+extern int strcmp(const char *s1, const char *s2);
+extern int strlen(const char *str);
+extern int file_exists(const char *filename);
+extern void *memcpy(void *dest, const void *src, size_t len);
+
+// === System Calls ===