
#include <stddef.h>
#include <string.h>

void io_out16(int port, int data);
int io_in16(int port);

unsigned long	*SMI_CMD;
unsigned char	ACPI_ENABLE;
unsigned char	ACPI_DISABLE;
unsigned long	*PM1a_CNT;
unsigned long	*PM1b_CNT;
unsigned short	SLP_TYPa;
unsigned short	SLP_TYPb;
unsigned short	SLP_EN;
unsigned short	SCI_EN;
unsigned char	PM1_CNT_LEN;

struct RSDPtr
{
	unsigned char Signature[8];
	unsigned char CheckSum;
	unsigned char OemID[6];
	unsigned char Revision;
	unsigned long *RsdtAddress;
};
struct FACP
{
	unsigned char Signature[4];
	unsigned long Length;
	unsigned char unneded1[32];
	unsigned long *DSDT;
	unsigned char unneded2[4];
	unsigned long *SMI_CMD;
	unsigned char ACPI_ENABLE;
	unsigned char ACPI_DISABLE;
	unsigned char unneded3[10];
	unsigned long *PM1a_CNT_BLK;
	unsigned long *PM1b_CNT_BLK;
	unsigned char unneded4[17];
	unsigned char PM1_CNT_LEN;
};
