ARM9 OS: Difference between revisions
Hallowizer (talk | contribs) →Threads: added timedSleepAlarm |
Hallowizer (talk | contribs) →Threads: apparently those "fp" registers are for integers |
||
| Line 4: | Line 4: | ||
The scheduler only runs the thread with the highest priority, and does not switch between threads if two threads have the same priority. Because of this, rescheduling only happens when a thread-related function is called and the thread with the highest priority can no longer run. | The scheduler only runs the thread with the highest priority, and does not switch between threads if two threads have the same priority. Because of this, rescheduling only happens when a thread-related function is called and the thread with the highest priority can no longer run. | ||
<pre> | <pre> | ||
struct | struct OSMathContext { | ||
u64 REG_DIV_NUMER; // 0x0 | |||
u64 REG_DIV_DENOM; // 0x8 | |||
u64 SQRT_PARAM; // 0x10 | |||
u16 REG_DIVCNT; // 0x18 | u16 REG_DIVCNT; // 0x18 | ||
u16 REG_SQRTCNT; // 0x1a | u16 REG_SQRTCNT; // 0x1a | ||
| Line 31: | Line 31: | ||
void *pc; // 0x40 | void *pc; // 0x40 | ||
void *kernelSp; // 0x44 | void *kernelSp; // 0x44 | ||
struct | struct OSMathContext math; // 0x48 | ||
} | } | ||