Implement much of the core Stage2 loader logic for Fusee

This commit is contained in:
Michael Scire
2018-04-08 05:51:57 -06:00
parent c9909b34db
commit 82552b5a89
4 changed files with 160 additions and 5 deletions

View File

@@ -3,6 +3,22 @@
typedef void (*entrypoint_t)(int argc, void **argv);
typedef struct {
char path[0x300];
const char *key;
uintptr_t load_address;
} load_file_t;
typedef struct {
entrypoint_t entrypoint;
} loader_ctx_t;
#define LOADER_ENTRYPOINT_KEY "entrypoint"
#define LOADER_LOADLIST_KEY "loadlist"
/* TODO: Should we allow files bigger than 16 MB? */
#define LOADER_FILESIZE_MAX 0x01000000
entrypoint_t load_payload(const char *bct0);
#endif