⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 platform.h

📁 很好的一个微型操作系统源码
💻 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 + -