Difference between revisions of "Coreinit.rpl"
Jump to navigation
Jump to search
(→Dynamic Linking: I would argue address should be void ** since it fills in the pointer at that location (though most properly intptr_t *). Strings probably don't get changed so added const. C99 has been out for 16 years now; use bool!) |
Marionumber1 (talk | contribs) (→Functions: Added OSFatal() and __os_snprintf()) |
||
Line 2: | Line 2: | ||
==Functions== | ==Functions== | ||
+ | ===Error=== | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Prototype | ||
+ | !Description | ||
+ | |- | ||
+ | |OSFatal | ||
+ | |<code>void OSFatal(const char *msg);</code> | ||
+ | |Print a message to the screen and halt the system | ||
+ | |} | ||
+ | |||
+ | ===Internal=== | ||
+ | {| class="wikitable" | ||
+ | !Name | ||
+ | !Prototype | ||
+ | !Description | ||
+ | |- | ||
+ | |__os_snprintf | ||
+ | |<code>int __os_snprintf(char *buf, size_t nchar, const char * format, ... )</code> | ||
+ | |Format a string and place it in a buffer | ||
+ | |} | ||
+ | |||
===Dynamic Linking=== | ===Dynamic Linking=== | ||
{| class="wikitable" | {| class="wikitable" |
Revision as of 01:51, 1 April 2015
coreinit.rpl is the the system library that provides direct access to Cafe OS services. It provides kernel calls, thread scheduling, memory management, and filesystem services. coreinit is the first RPL loaded by the loader, even before the main executable itself.
Functions
Error
Name | Prototype | Description |
---|---|---|
OSFatal | void OSFatal(const char *msg);
|
Print a message to the screen and halt the system |
Internal
Name | Prototype | Description |
---|---|---|
__os_snprintf | int __os_snprintf(char *buf, size_t nchar, const char * format, ... )
|
Format a string and place it in a buffer |
Dynamic Linking
Name | Prototype | Description |
---|---|---|
OSDynLoad_Acquire | void OSDynLoad_Acquire(const char *rplname, uint32_t *handle);
|
Acquire a handle to an RPL by name |
OSDynLoad_FindExport | void OSDynLoad_FindExport(uint32_t handle, bool isdata, const char *symname, void **address);
|
Get a symbol address from a loaded RPL |