nuclear@7: #ifndef SEGM_H_ nuclear@7: #define SEGM_H_ nuclear@7: nuclear@7: #define SEGM_KCODE 1 nuclear@7: #define SEGM_KDATA 2 nuclear@7: nuclear@7: typedef struct { nuclear@7: uint16_t d[4]; nuclear@7: } desc_t; nuclear@7: nuclear@7: void init_segm(void); nuclear@7: nuclear@7: uint16_t selector(int idx, int rpl); nuclear@7: nuclear@7: /* these functions are implemented in segm-asm.S */ nuclear@7: void setup_selectors(uint16_t code, uint16_t data); nuclear@7: void set_gdt(uint32_t addr, uint16_t limit); nuclear@7: nuclear@7: nuclear@7: nuclear@7: #endif /* SEGM_H_ */