📄 platform.h
字号:
#ifndef PLATFORM_H_INCLUDED
#define PLATFORM_H_INCLUDED
#include "types.h"
typedef struct _IDT
{
unsigned short offsetlow;
unsigned short selector;
unsigned char zero;
unsigned char attrib;
unsigned short offsethigh;
}IDT;
extern uint32 _ISREXP[24];
extern uint32 _ISRINT[16];
extern uint32 *_ISRVECT;
extern IDT IDT_DATA[64];
extern char GDT_DATA[24];
void dummyIsr();
void _loadidtgdt();
uint8 _in(uint32 addr);
void _out(uint32 addr, uint32 value);
void _switch(uint32** newsp, uint32** oldsp);
_inline void _sti()
{
_asm sti;
}
_inline void _cli()
{
_asm cli;
}
_inline void _hlt()
{
_asm hlt;
}
_inline void _int17()
{
_asm int 17;
}
/*
hardware interrupt from 32 to 47
32:Clock
33:Keyboard
34:empty
35:com2
36:com1
37:lpt1
38:flopy disk
39:lpt2
40:realtime clock
41:
42:
43:
44:ps2 mouse
45:8087
46:hard disk
47:
*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -