--- np2/i386c/ia32/task.h 2004/02/05 16:43:44 1.3 +++ np2/i386c/ia32/task.h 2004/02/20 16:09:04 1.5 @@ -1,4 +1,4 @@ -/* $Id: task.h,v 1.3 2004/02/05 16:43:44 monaka Exp $ */ +/* $Id: task.h,v 1.5 2004/02/20 16:09:04 monaka Exp $ */ /* * Copyright (c) 2003 NONAKA Kimihiro @@ -34,19 +34,20 @@ extern "C" { #endif -void load_tr(WORD selector); -void get_stack_from_tss(DWORD pl, WORD* new_ss, DWORD* new_esp); -WORD get_link_selector_from_tss(); +void load_tr(UINT16 selector); +void get_stack_pointer_from_tss(UINT pl, UINT16 *new_ss, UINT32 *new_esp); +UINT16 get_backlink_selector_from_tss(void); -void task_switch(selector_t* selector, int type); - -/* type */ -enum { +/* task_switch type */ +enum task_switch_type { TASK_SWITCH_JMP, TASK_SWITCH_CALL, TASK_SWITCH_IRET, 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 }