|
|
| version 1.3, 2004/02/05 16:43:44 | version 1.6, 2004/03/26 05:51:40 |
|---|---|
| Line 34 | Line 34 |
| extern "C" { | extern "C" { |
| #endif | #endif |
| void load_tr(WORD selector); | void load_tr(UINT16 selector); |
| void get_stack_from_tss(DWORD pl, WORD* new_ss, DWORD* new_esp); | void get_stack_pointer_from_tss(UINT pl, UINT16 *new_ss, UINT32 *new_esp); |
| WORD get_link_selector_from_tss(); | UINT16 get_backlink_selector_from_tss(void); |
| void task_switch(selector_t* selector, int type); | /* task_switch type */ |
| enum task_switch_type { | |
| /* type */ | |
| enum { | |
| TASK_SWITCH_JMP, | TASK_SWITCH_JMP, |
| TASK_SWITCH_CALL, | TASK_SWITCH_CALL, |
| TASK_SWITCH_IRET, | TASK_SWITCH_IRET, |
| TASK_SWITCH_INTR, | TASK_SWITCH_INTR |
| }; | }; |
| typedef enum task_switch_type task_switch_type_t; | |
| void task_switch(selector_t *selector, task_switch_type_t type); | |
| #ifdef __cplusplus | #ifdef __cplusplus |
| } | } |