OSDN Git Service

SimpleHTMLEditorを追加。
[chnosproject/CHNOSProject.git] / CHNOSProject / chnos / tolset_chn_000 / chnos_009 / chnos / core.h
diff --git a/CHNOSProject/chnos/tolset_chn_000/chnos_009/chnos/core.h b/CHNOSProject/chnos/tolset_chn_000/chnos_009/chnos/core.h
deleted file mode 100644 (file)
index 91f09ba..0000000
+++ /dev/null
@@ -1,793 +0,0 @@
-\r
-/*include files*/\r
-#include <stdio.h>\r
-#include <stdarg.h>\r
-#include <math.h>\r
-#include <string.h>\r
-\r
-int rand(void);\r
-#define srand(seed)    (void) (rand_seed = (seed))\r
-extern unsigned int rand_seed;\r
-\r
-/*definemacros*/\r
-#define RGB16(r,g,b) ((r)<<11|(g)<<5|(b))\r
-\r
-/*settings*/\r
-\r
-#include "core_set.h"\r
-\r
-/*new object types*/\r
-typedef enum _bool { false, true} bool;\r
-typedef enum _state_alloc { none, initialized, allocated, configured, inuse} state_alloc;\r
-typedef enum _col_text { black, blue, green, skyblue, red, purple, brown, white} col_text;\r
-typedef enum _timer_mode { once, interval} timer_mode;\r
-typedef enum _mouse_type { threebtn, threebtn_scroll} mouse_type;\r
-typedef enum _mcursor_state { normal, wait} mcursor_state;\r
-typedef unsigned char uchar;\r
-typedef unsigned short ushort;\r
-typedef unsigned int uint;\r
-typedef struct { uint low, high; } uint64;\r
-typedef uchar sector[512];\r
-\r
-/*structures*/\r
-struct SEGMENT_DESCRIPTOR { \r
-       ushort limit_low, base_low;\r
-       uchar base_mid, access_right;\r
-       uchar limit_high, base_high;\r
-};\r
-\r
-struct GATE_DESCRIPTOR { \r
-       ushort offset_low, selector;\r
-       uchar dw_count, access_right;\r
-       ushort offset_high;\r
-};\r
-\r
-struct ACPI_MemoryMapEntry {\r
-       uint64 Base;\r
-       uint64 Length;\r
-       uint Type;\r
-       uint Attribute;\r
-};\r
-\r
-struct BOOTINFO { \r
-       uchar cyls; \r
-       uchar leds; \r
-       uchar vmode; \r
-       uchar reserve;\r
-       ushort scrnx, scrny;\r
-       uchar *vram;\r
-       ushort VESA_Version;\r
-       ushort APM_Version;\r
-       uint ACPI_MemoryMapEntries;\r
-       struct ACPI_MemoryMapEntry ACPI_MemoryMap[16];\r
-       ushort APM_Flags;\r
-};\r
-\r
-struct VESAINFO {/*0xe00--->512byte*/\r
-       ushort  ModeAttributes;\r
-       uchar   WinAAttributes;\r
-       uchar   WinBAttributes;\r
-       ushort  WinGranularity;\r
-       ushort  WinSize;\r
-       ushort  WinASegment;\r
-       ushort  WinBSegment;\r
-       uint    WinFuncPtr;\r
-       ushort  BytesPerScanLine;\r
-       ushort  XResolution;\r
-       ushort  YResolution;\r
-       uchar   XCharSize;\r
-       uchar   YCharSize;\r
-       uchar   NumberOfPlanes;\r
-       uchar   BitsPerPixel;\r
-       uchar   NumberOfBanks;\r
-       uchar   MemoryModel;\r
-       uchar   BankSize;\r
-       uchar   NumberOfImagePages;\r
-       uchar   Reserved;\r
-       uchar   RedMaskSize;\r
-       uchar   RedFieldPosition;\r
-       uchar   GreenMaskSize;\r
-       uchar   GreenFieldPosition;\r
-       uchar   BlueMaskSize;\r
-       uchar   BlueFieldPosition;\r
-       uchar   RsvdMaskSize;\r
-       uchar   RsvdFieldPodition;\r
-       uchar   DirectColorModeInfo;\r
-       uint*   PhysBasePtr;\r
-};\r
-\r
-struct FIFO32 {\r
-       uint *buf;\r
-       uint p, q, size, free, flags;\r
-       struct TASK *task;\r
-};\r
-\r
-struct MEMORY_CONTROL_TAG {\r
-       uint size;\r
-       void *next;\r
-};\r
-\r
-struct MEMORY_CONTROL {\r
-       void *start;\r
-       uint size;\r
-       void *next;\r
-};\r
-\r
-struct POSITION_2D {\r
-       int x, y;\r
-};\r
-\r
-struct KEYINFO {\r
-       uchar c;\r
-       uint keycode;\r
-       bool make;\r
-       bool alphabet;\r
-};\r
-\r
-struct TIMER {\r
-       struct TIMER *next;\r
-       struct TIMER *tree;\r
-       uint timeout;\r
-       uint count;\r
-       struct FIFO32 *fifo;\r
-       uint data;\r
-       state_alloc state;\r
-       timer_mode mode;\r
-};\r
-\r
-struct TIMER_CONTROL {\r
-       uint count;\r
-       struct TIMER *next;\r
-       struct TIMER *ts;\r
-};\r
-\r
-struct MOUSE_EVENT_ARGUMENTS {\r
-       struct SHEET *focus;\r
-       struct POSITION_2D move;\r
-       struct POSITION_2D position_local;\r
-       uint button;\r
-       uint button_before;\r
-};\r
-\r
-struct SHEET {\r
-       void *vram;\r
-       struct POSITION_2D position;\r
-       struct POSITION_2D size;\r
-       uint bpp;\r
-       uint invcol;\r
-       struct SHEET *next;\r
-       struct SHEET *before;\r
-       void (*Refresh)(struct SHEET *sheet, int px0, int py0, int px1, int py1);\r
-       void (*WriteMap)(struct SHEET *sheet, int x0, int y0, int x1, int y1);\r
-       bool visible;\r
-       bool mouse_movable;\r
-       struct SHEET_CONTROL *myctrl;\r
-       void (*MouseEventProcedure)(struct MOUSE_EVENT_ARGUMENTS *e);\r
-       uint msignal_flags;\r
-       struct FIFO32 *fifo;\r
-       uint ksignal_flags;\r
-};\r
-\r
-struct SHEET_CONTROL {\r
-       void *mainvram;\r
-       uint *map;\r
-       struct POSITION_2D mainvramsize;\r
-       uint mainvrambpp;\r
-       struct SHEET base;\r
-       uint sheets;\r
-       struct MEMORY_CONTROL *memctrl;\r
-};\r
-\r
-struct UI_INPUTBOX {\r
-       struct SHEET *sheet;\r
-       uint forecol, backcol;\r
-       uchar *input_buf;\r
-       uint input_buf_size;\r
-       uint input_count;\r
-       struct POSITION_2D cursor;\r
-       struct POSITION_2D prompt;\r
-       bool cursor_state;\r
-       bool record;\r
-};\r
-\r
-struct MOUSE_DECODE {\r
-       uint buf[4], scroll;\r
-       struct POSITION_2D move;\r
-       int btn;\r
-       mouse_type type;\r
-       uchar phase; \r
-};\r
-\r
-struct UI_MOUSE_CURSOR {\r
-       struct SHEET *sheet;\r
-       struct POSITION_2D position;\r
-       struct POSITION_2D move_range0;\r
-       struct POSITION_2D move_range1;\r
-       mcursor_state state;\r
-};\r
-\r
-struct DATA_CPU_IDENTITY {\r
-       bool enable;\r
-       uint max;\r
-       uchar vendor[13];\r
-       bool ext_enable;\r
-       uint ext_max;\r
-       uchar brand_string[48];\r
-       bool FPU;\r
-       bool VME;\r
-       bool DE;\r
-       bool PSE;\r
-       bool TSC;\r
-       bool MSR;\r
-       bool PAE;\r
-       bool MCE;\r
-       bool CX8;\r
-       bool APIC;\r
-       bool SEP;\r
-       bool MTRR;\r
-       bool PGE;\r
-       bool MCA;\r
-       bool CMOV;\r
-       bool PAT;\r
-       bool PSE36;\r
-       bool PSN;\r
-       bool CLFSH;\r
-       bool DS;\r
-       bool ACPI;\r
-       bool MMX;\r
-       bool FXSR;\r
-       bool SSE;\r
-       bool SSE2;\r
-       bool SS;\r
-       bool HTT;\r
-       bool TM;\r
-       bool PBE;\r
-\r
-       bool SSE3;\r
-       bool MONITOR;\r
-       bool DSCPL;\r
-       bool EST;\r
-       bool TM2;\r
-       bool CID;\r
-       bool CX16;\r
-       bool xTPR;\r
-       \r
-};\r
-\r
-struct MEMORY_BLOCK {\r
-       void *addr;\r
-       uint size;\r
-       struct MEMORY_BLOCK *next;\r
-       struct MEMORY_CONTROL *ctrl;\r
-       uchar description[MEMORY_DESCRIPTION_LENGTH];\r
-};\r
-\r
-struct TASK_STATUS_SEGMENT {\r
-       ushort backlink, reserve00;\r
-       uint esp0;\r
-       ushort ss0, reserve01;\r
-       uint esp1;\r
-       ushort ss1, reserve02;\r
-       uint esp2;\r
-       ushort ss2, reserve03;\r
-       uint cr3;\r
-       uint eip;\r
-       uint eflags;\r
-       uint eax;\r
-       uint ecx;\r
-       uint edx;\r
-       uint ebx;\r
-       uint esp;\r
-       uint ebp;\r
-       uint esi;\r
-       uint edi;\r
-       ushort es, reserve04;\r
-       ushort cs, reserve05;\r
-       ushort ss, reserve06;\r
-       ushort ds, reserve07;\r
-       ushort fs, reserve08;\r
-       ushort gs, reserve09;\r
-       ushort ldtr, reserve10;\r
-       ushort flags, iomap;\r
-};\r
-\r
-struct TASK_CONTROL {\r
-       struct TASK *now, *main, *idle, *next;\r
-       struct TIMER *ts;\r
-};\r
-\r
-struct TASK {\r
-       struct TASK_STATUS_SEGMENT tss;\r
-       uint selector;\r
-       uchar description[TASK_DESCRIPTION_LENGTH];\r
-       uint quantum;\r
-       uint cputime;\r
-       struct TASK *next;\r
-       state_alloc state;\r
-       struct CONSOLE *cons;\r
-};\r
-\r
-struct LISTENER {\r
-       struct LISTENER *next;\r
-       struct FIFO32 *fifo;\r
-       uint flags;\r
-       uint offset;\r
-};\r
-\r
-struct DEVICE_FLOPPYDISK {\r
-       uchar *img;\r
-       struct DEVICE_FLOPPYDISK_RDE {\r
-               uchar name[8];          //0x00:empty\r
-                                       //0x05:=0xe5\r
-                                       //0x2e:(only directory)\r
-                                       //.     0x2e:current directory\r
-                                       //..    0x2e, 0x2e:parent directory\r
-                                       //0xe5:deleted(usable)\r
-               uchar ext[3];\r
-               uchar attribute;        //bit0:readonly\r
-                                       //bit1:hidden\r
-                                       //bit2:system\r
-                                       //bit3:volumelabel\r
-                                       //bit4:directory\r
-                                       //bit5:archive\r
-                                       //0x0f=LongFileNameEntry\r
-               uchar reserve;\r
-               uchar VFAT_createTimeMs;\r
-               ushort VFAT_createTime;\r
-               ushort VFAT_createDate;\r
-               ushort VFAT_accessDate;\r
-               ushort VFAT_clusterHighWord;\r
-               ushort updatetime;      //0 -4 bit:second/2\r
-                                       //5 -10bit:minute\r
-                                       //11-15bit:hour\r
-               ushort updatedate;      //0 -4 bit:day(1-31) \r
-                                       //5 -8 bit:month(1-12)\r
-                                       //9 -15bit:year(from 1980)\r
-               ushort cluster;\r
-               uint size;\r
-       } *files;\r
-       sector *userdataarea;\r
-       void *fat;\r
-};\r
-\r
-struct FILEINFO {\r
-       uchar *data;\r
-       uint size;\r
-       uchar name[13];\r
-};\r
-\r
-struct WINDOW {\r
-       struct SHEET *client;\r
-       struct SHEET *control;\r
-       uchar title[WINDOW_TITLE_LENGTH];\r
-       struct WINDOW *next;\r
-};\r
-\r
-struct CONSOLE {\r
-       struct WINDOW *win;\r
-       struct UI_INPUTBOX *input;\r
-       struct CONSOLE *next;\r
-       struct FIFO32 fifo;\r
-       struct TIMER *ctimer;\r
-       struct FILEINFO app_codefile;\r
-       ushort app_cs;\r
-       ushort app_ds;\r
-};\r
-\r
-struct SYSTEM_COMMON_DATA {\r
-       struct BOOTINFO *bootinfo;\r
-       struct VESAINFO *vesainfo;\r
-       struct TASK *maintask;\r
-       struct FIFO32 sysfifo;\r
-       struct TASK *keyctrltask;\r
-       struct FIFO32 keyboardfifo;\r
-       struct FIFO32 keycmdfifo;\r
-       int keycmd_wait;\r
-       struct TASK *mousectrltask;\r
-       struct FIFO32 mousefifo;\r
-       struct MOUSE_DECODE mousedecode;\r
-       struct UI_MOUSE_CURSOR mouse_cursor;\r
-       struct SHEET *focus;\r
-       struct SHEET *key_focus;\r
-       struct WINDOW windowctrl;\r
-       struct CONSOLE consctrl;\r
-       struct DEVICE_FLOPPYDISK *fd_boot;\r
-};\r
-\r
-/*typedef structures*/\r
-typedef struct SEGMENT_DESCRIPTOR      IO_SegmentDescriptor;\r
-typedef struct GATE_DESCRIPTOR         IO_GateDescriptor;\r
-typedef struct BOOTINFO                        DATA_BootInfo;\r
-typedef struct VESAINFO                        DATA_VESAInfo;\r
-typedef struct FIFO32                  DATA_FIFO;\r
-typedef struct MEMORY_CONTROL_TAG      IO_MemoryControlTag;\r
-typedef struct MEMORY_CONTROL          IO_MemoryControl;\r
-typedef struct POSITION_2D             DATA_Position2D;\r
-typedef struct UI_INPUTBOX             UI_InputBox;\r
-typedef struct KEYINFO                 UI_KeyInfo;\r
-typedef struct TIMER_CONTROL           UI_TimerControl;\r
-typedef struct TIMER                   UI_Timer;\r
-typedef struct SHEET_CONTROL           UI_Sheet_Control;\r
-typedef struct SHEET                   UI_Sheet;\r
-typedef struct MOUSE_DECODE            UI_MouseInfo;\r
-typedef struct UI_MOUSE_CURSOR         UI_MouseCursor;\r
-typedef struct DATA_CPU_IDENTITY       DATA_CPUID;\r
-typedef struct MEMORY_BLOCK            Memory;\r
-typedef struct TASK_STATUS_SEGMENT     IO_TaskStatusSegment;\r
-typedef struct TASK_CONTROL            UI_TaskControl;\r
-typedef struct TASK                    UI_Task;\r
-typedef struct LISTENER                        UI_Listener;\r
-typedef struct DEVICE_FLOPPYDISK_RDE   IO_FloppyDisk_RootDirectoryEntry;\r
-typedef struct DEVICE_FLOPPYDISK       IO_FloppyDisk;\r
-typedef struct FILEINFO                        IO_File;\r
-typedef struct WINDOW                  UI_Window;\r
-typedef struct MOUSE_EVENT_ARGUMENTS   UI_MouseEventArguments;\r
-typedef struct CONSOLE                 UI_Console;\r
-typedef struct SYSTEM_COMMON_DATA      System_CommonData;\r
-\r
-/*virtual classes*/\r
-\r
-/*externs*/\r
-extern uchar hankaku[4096];\r
-extern UI_Sheet_Control sys_sheet_ctrl;\r
-extern IO_MemoryControl sys_mem_ctrl;\r
-extern Memory SystemMemory;\r
-extern UI_TaskControl *taskctrl;\r
-extern uint *ADR_Paging_Directory;\r
-extern uchar *ACPI_MemoryMap_Type[5];\r
-\r
-/*functions*/\r
-/*api.c API\8f\88\97\9d*/\r
-uint *API_Execute(uint edi, uint esi, uint ebp, uint esp, uint ebx, uint edx, uint ecx, uint eax);\r
-\r
-/*bootpack.c \8aî\8a²\95\94\95ª*/\r
-void CHNOS_KeyboardControlTask(void);\r
-void CHNOS_MouseControlTask(void);\r
-void CHNOS_UI_KeyFocus_Change(UI_Sheet *focus_new);\r
-\r
-/*console.c*/\r
-void Initialise_Console(UI_Console *consctrl, System_CommonData *systemdata);\r
-UI_Console *Console_Create(uint xchars, uint ychars);\r
-void Console_MainTask(UI_Console *cons);\r
-void Console_Command_memmap(UI_Console *cons);\r
-void Console_Command_memblock(UI_Console *cons);\r
-void Console_Command_mem(UI_Console *cons);\r
-void Console_Command_systeminfo(UI_Console *cons);\r
-void Console_Command_task(UI_Console *cons);\r
-void Console_Command_window(UI_Console *cons);\r
-void Console_Command_console(UI_Console *cons);\r
-void Console_Command_type(UI_Console *cons, const uchar filename[]);\r
-void Console_Command_dir(UI_Console *cons);\r
-void Console_Command_gdt(UI_Console *cons);\r
-void Console_Command_midi(UI_Console *cons, const uchar filename[]);\r
-uint Console_Command_midi_Convert_VariableLengthValue(uchar *base, uint *offset);\r
-void Console_Command_midi_Beep_Set_NoteNumber(uchar n);\r
-void Console_Execute(UI_Console *cons);\r
-void Console_Execute_CHNOSProject(UI_Console *cons, int n);\r
-void Console_Execute_haribote(UI_Console *cons, int n);\r
-\r
-/*cpuid.c*/\r
-void CPU_Identify(DATA_CPUID *id);\r
-\r
-/*dsctbl.c \83f\83B\83X\83N\83\8a\83v\83^\81[\81E\83e\81[\83u\83\8b\8aÖ\98A*/\r
-void Initialise_GlobalDescriptorTable(void);\r
-void Initialise_InterruptDescriptorTable(void);\r
-void SegmentDescriptor_Set(IO_SegmentDescriptor *seg_desc, uint limit, uint base, uint ar);\r
-uint SegmentDescriptor_Get_Base(IO_SegmentDescriptor *seg_desc);\r
-uint SegmentDescriptor_Get_Limit(IO_SegmentDescriptor *seg_desc);\r
-uint SegmentDescriptor_Get_AccessRight(IO_SegmentDescriptor *seg_desc);\r
-void GateDescriptor_Set(IO_GateDescriptor *gate_desc, uint offset, uint selector, uint ar);\r
-void System_SegmentDescriptor_Set_Absolute(uint selector, uint limit, uint base, uint ar);\r
-uint System_SegmentDescriptor_Get_Base(uint selector);\r
-uint System_SegmentDescriptor_Get_Limit(uint selector);\r
-uint System_SegmentDescriptor_Get_AccessRight(uint selector);\r
-uint System_SegmentDescriptor_Set(uint limit, int base, int ar);\r
-void System_GateDescriptor_Set(uint irq, uint offset, uint selector, uint ar);\r
-\r
-/*fifo.c FIFO\83o\83b\83t\83@\8aÖ\98A*/\r
-int FIFO32_Initialise(DATA_FIFO *fifo, uint size);\r
-int FIFO32_Put(DATA_FIFO *fifo, uint data);\r
-int FIFO32_Put_Arguments(DATA_FIFO *fifo, uint args, ...);\r
-void FIFO32_Set_Task(DATA_FIFO *fifo, UI_Task *task);\r
-uint FIFO32_Get(DATA_FIFO *fifo);\r
-uint FIFO32_Status(DATA_FIFO *fifo);\r
-int FIFO32_Free(DATA_FIFO *fifo);\r
-\r
-/*file.c \83t\83@\83C\83\8b\8aÖ\98A*/\r
-IO_FloppyDisk *FloppyDisk_Initialise(void *img);\r
-int FloppyDisk_Search_File(IO_FloppyDisk *fd, const uchar *name);\r
-int FloppyDisk_Load_File(IO_FloppyDisk *fd, IO_File *fileinfo, int fileno);\r
-int File_Free(IO_File *fileinfo);\r
-void FloppyDisk_Decode_FAT16(uchar *img, ushort *fat, bool backup);\r
-\r
-/*grap_08.c*/\r
-void Draw_Put_Font_08(void *vram, uint xsize, uint x, uint y, uint c, const uchar *font);\r
-void Draw_Put_String_08(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s);\r
-void Draw_Fill_Rectangle_08(void *vram, uint xsize, uint c, uint x0, uint y0, uint x1, uint y1);\r
-void Draw_Slide_Line_08(void *vram, uint xsize, uint ysize, uint vxsize, uint px, uint py);\r
-void Draw_Initialise_Palette(void);\r
-void Draw_Set_Palette(int start, int end, uchar *rgb);\r
-/*grap_16.c*/\r
-void Draw_Put_Font_16(void *vram, uint xsize, uint x, uint y, uint c, const uchar *font);\r
-void Draw_Put_String_16(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s);\r
-void Draw_Fill_Rectangle_16(void *vram, uint xsize, uint c, uint x0, uint y0, uint x1, uint y1);\r
-void Draw_Slide_Line_16(void *vram, uint xsize, uint ysize, uint vxsize, uint px, uint py);\r
-/*grap_32.c*/\r
-void Draw_Put_Font_32(void *vram, uint xsize, uint x, uint y, uint c, const uchar *font);\r
-void Draw_Put_String_32(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s);\r
-void Draw_Fill_Rectangle_32(void *vram, uint xsize, uint c, uint x0, uint y0, uint x1, uint y1);\r
-void Draw_Slide_Line_32(void *vram, uint xsize, uint ysize, uint vxsize, uint px, uint py);\r
-/*graphic.c*/\r
-void Initialise_Graphic(uint bpp);\r
-uchar RGB_32_To_08(uint c32);\r
-uchar RGB_32_To_08_xy(uint c32, int x, int y);\r
-ushort RGB_32_To_16(uint c32);\r
-extern void (*Draw_Put_String)(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s);\r
-extern void (*Draw_Fill_Rectangle)(void *vram, uint xsize, uint c, uint x0, uint y0, uint x1, uint y1);\r
-extern void (*Draw_Slide_Line)(void *vram, uint xsize, uint ysize, uint vxsize, uint px, uint py);\r
-void Emergency_Out_Reset(void);\r
-int Emergency_Out(const uchar *format, ...);\r
-\r
-/*init.c*/\r
-void Initialise_System(System_CommonData *systemdata);\r
-\r
-/*inputbox.c*/\r
-UI_InputBox *InputBox_Initialise(UI_Sheet_Control *sheetctrl, IO_MemoryControl *memctrl, uint x, uint y, uint xsize, uint ysize, uint txtbufsize, uint forecol, uint backcol, uint height);\r
-int InputBox_Put_String(UI_InputBox *box, const uchar *s);\r
-int InputBox_Put_Character(UI_InputBox *box, uchar c);\r
-void InputBox_Put_String_Main(UI_InputBox *box, const uchar *str);\r
-void InputBox_Check_NewLine(UI_InputBox *box);\r
-void InputBox_NewLine_No_Prompt(UI_InputBox *box);\r
-void InputBox_NewLine(UI_InputBox *box);\r
-void InputBox_Slide_Line(UI_InputBox *box);\r
-void InputBox_Slide_Line(UI_InputBox *box);\r
-void InputBox_Put_Prompt(UI_InputBox *box);\r
-void InputBox_Reset_Input_Buffer(UI_InputBox *box);\r
-void InputBox_Change_Cursor_State(UI_InputBox *box);\r
-void InputBox_Clear(UI_InputBox *box);\r
-void InputBox_Set_Record(UI_InputBox *box, bool record);\r
-\r
-/*intrpt.c \8a\84\82è\8d\9e\82Ý\90Ý\92è\82Æ\82Ç\82±\82É\82à\91®\82³\82È\82¢\8a\84\82è\8d\9e\82Ý\83n\83\93\83h\83\89\81[*/\r
-void Initialise_ProgrammableInterruptController(void);\r
-void InterruptHandler27(int *esp);\r
-\r
-/*io.c*/\r
-uchar IO_Read_CMOS(uchar addr);\r
-void IO_Beep(uint fq, uint microsec);\r
-void IO_Wait(uint microsec);\r
-\r
-/*keyboard.c*/\r
-void Initialise_Keyboard(DATA_FIFO *sendto, DATA_FIFO *keycmd, uint offset, uint leds, int *keycmd_wait);\r
-void InterruptHandler21(int *esp);\r
-void Keyboard_Decode(UI_KeyInfo *info, uint data);\r
-void Keyboard_KeyLock(uint led);\r
-void Keyboard_Controller_Wait_SendReady(void);\r
-uint Keyboard_Get_KeyShift(void);\r
-\r
-/*memblock.c \83\81\83\82\83\8a\8aÖ\98A*/\r
-void Initialise_MemoryBlock(IO_MemoryControl *mainctrl);\r
-void *MemoryBlock_Allocate_System(uint size);\r
-void *MemoryBlock_Allocate_User(uint size, IO_MemoryControl *ctrl);\r
-Memory *MemoryBlock_Verify(void *addr);\r
-int MemoryBlock_Write_Description(void *addr, const uchar *description);\r
-int MemoryBlock_Free(void *addr);\r
-\r
-\r
-/*memory.c \83\81\83\82\83\8a\8aÖ\98A*/\r
-uint Memory_Test(uint start, uint end);\r
-void MemoryControl_Initialise(IO_MemoryControl *ctrl, void *start, uint size);\r
-uint MemoryControl_FreeSize(IO_MemoryControl *ctrl);\r
-void *MemoryControl_Allocate(IO_MemoryControl *ctrl, uint size);\r
-int MemoryControl_Free(IO_MemoryControl *ctrl, void *addr0, uint size);\r
-void *MemoryControl_Allocate_Page(IO_MemoryControl *ctrl);\r
-void MemoryControl_Output_Info(IO_MemoryControl *ctrl);\r
-void System_MemoryControl_Initialise(void);\r
-uint System_MemoryControl_FullSize(void);\r
-uint System_MemoryControl_FreeSize(void);\r
-void *System_MemoryControl_Allocate(uint size);\r
-int System_MemoryControl_Free(void *addr0, uint size);\r
-void *System_MemoryControl_Allocate_Page(void);\r
-void System_MemoryControl_Output_Info(void);\r
-\r
-/*mouse.c \83}\83E\83X\8aÖ\98A*/\r
-extern uchar mcursor_pattern0[24][24];\r
-void Initialise_Mouse(DATA_FIFO *sendto, uint offset, UI_MouseInfo *decode);\r
-void InterruptHandler2c(int *esp);\r
-int Mouse_Decode(uint data);\r
-void Mouse_Send_Command(uint data);\r
-void Mouse_Make_MouseCursor(UI_MouseCursor *cursor, int rangex0, int rangey0, int rangex1, int rangey1, uint height);\r
-void Mouse_Draw_MouseCursor(UI_MouseCursor *cursor, mcursor_state state);\r
-void Mouse_Move_Relative(UI_MouseCursor *cursor, int movex, int movey);\r
-void Mouse_Move_Absolute(UI_MouseCursor *cursor, int px, int py);\r
-\r
-/*mtask.c \83}\83\8b\83`\83^\83X\83N\8aÖ\98A*/\r
-void Initialise_MultiTask(void);\r
-UI_Task *MultiTask_Task_Get(const uchar *description);\r
-void MultiTask_Task_Change_Quantum(UI_Task *task, uint quantum);\r
-void MultiTask_Task_Run(UI_Task *task);\r
-void MultiTask_Task_Sleep(UI_Task *task);\r
-void MultiTask_Task_Remove(UI_Task *task);\r
-void MultiTask_Task_Arguments(UI_Task *task, int args, ...);\r
-void MultiTask_TaskSwitch(void);\r
-UI_Task *MultiTask_Get_NowTask(void);\r
-void MultiTask_IdleTask(void);\r
-\r
-/*paging.c \83y\81[\83W\83\93\83O\8aÖ\98A*/\r
-void Initialise_Paging(void *vram, uint xsize, uint ysize, uint bpp);\r
-void Paging_Set_Entry_Directory(uint *dir_entry, uint *table_base, uint attribute, uint available);\r
-void Paging_Set_Entry_Table(uint *table_entry, uint *page_base, uint attribute, uint available);\r
-uint *Paging_Get_Entry_Setting_Address(uint entry);\r
-\r
-/*serial.c \83V\83\8a\83A\83\8b\92Ê\90M\8aÖ\98A*/\r
-void Initialise_SerialPort(void);\r
-void Send_SerialPort(uchar *s);\r
-int debug(const uchar *format, ...);\r
-\r
-/*sheet.c \83V\81[\83g\8aÖ\98A*/\r
-void Sheet_Initialise(UI_Sheet_Control *sheetctrl, IO_MemoryControl *memctrl, void *vram, uint xsize, uint ysize, uint bpp);\r
-UI_Sheet *Sheet_Get(UI_Sheet_Control *ctrl, uint xsize, uint ysize, uint bpp, uint invcol);\r
-uint Sheet_Show(UI_Sheet *sheet, int px, int py, uint height);\r
-void Sheet_Set_Movable(UI_Sheet *sheet, bool movable);\r
-void Sheet_Set_MouseEventProcedure(UI_Sheet *sheet, void (*procedure)(UI_MouseEventArguments *e), uint flags);\r
-void Sheet_Set_FIFO(UI_Sheet *sheet, DATA_FIFO *fifo, uint flags);\r
-void Sheet_Slide(UI_Sheet *sheet, int px, int py);\r
-uint Sheet_UpDown(UI_Sheet *sheet, uint height);\r
-void Sheet_Remove(UI_Sheet *sheet);\r
-void Sheet_Refresh_Map(UI_Sheet *sheet, int x0, int y0, int x1, int y1);\r
-void Sheet_Write_Map_32(UI_Sheet *sheet, int x0, int y0, int x1, int y1);\r
-void Sheet_Write_Map_16(UI_Sheet *sheet, int x0, int y0, int x1, int y1);\r
-void Sheet_Write_Map_08(UI_Sheet *sheet, int x0, int y0, int x1, int y1);\r
-void Sheet_Write_Map_NoInvisible(UI_Sheet *sheet, int x0, int y0, int x1, int y1);\r
-void Sheet_Refresh_All(UI_Sheet *sheet0, UI_Sheet *sheet1, int x0, int y0, int x1, int y1);\r
-void Sheet_Refresh_32from32(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Refresh_16from32(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Refresh_08from32(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Refresh_16from16(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Refresh_08from08(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Refresh_Invalid(UI_Sheet *sheet, int px0, int py0, int px1, int py1);\r
-void Sheet_Draw_Put_String(UI_Sheet *sheet, uint x, uint y, uint c, const uchar *s);\r
-void Sheet_Draw_Put_String_With_BackColor(UI_Sheet *sheet, uint x, uint y, uint c, uint bc, const uchar *s);\r
-void Sheet_Draw_Fill_Rectangle(UI_Sheet *sheet, uint c, uint x0, uint y0, uint x1, uint y1);\r
-void Sheet_Draw_Fill_Rectangle_Gradation_Vertical(UI_Sheet *sheet, uint c0, uint c1, uint x0, uint y0, uint x1, uint y1);\r
-void Sheet_Draw_Point(UI_Sheet *sheet, uint c, uint x, uint y);\r
-void System_Sheet_Initialise(void *vram, uint xsize, uint ysize, uint bpp);\r
-UI_Sheet *System_Sheet_Get(uint xsize, uint ysize, uint bpp, uint invcol);\r
-UI_Sheet *Sheet_Get_From_Position(UI_Sheet_Control *ctrl, int x, int y);\r
-uint Sheet_Get_Top_Of_Height(UI_Sheet_Control *ctrl);\r
-uint System_Sheet_Get_Top_Of_Height(void);\r
-\r
-/*timer.c \83^\83C\83}\81[\8aÖ\98A*/\r
-void Initialise_ProgrammableIntervalTimer(void);\r
-void InterruptHandler20(int *esp);\r
-uint Timer_Get_Tick(void);\r
-UI_Timer *Timer_Get(DATA_FIFO *fifo, uint data);\r
-void Timer_Set(UI_Timer *timer, uint count, timer_mode mode);\r
-void Timer_Run(UI_Timer *timer);\r
-void Timer_Cancel(UI_Timer *timer);\r
-void Timer_TaskSwitch_Set(UI_Timer *ts);\r
-\r
-/*window.c \83E\83B\83\93\83h\83E\8aÖ\98A*/\r
-void Initialise_Window(UI_Window *windowctrl);\r
-UI_Window *Window_Create(const uchar *title, uint flags, uint xsize, uint ysize);\r
-UI_Window *Window_Create_User(const uchar *title, uint flags, UI_Sheet *client);\r
-UI_Window *Window_Get_From_Sheet(UI_Sheet *sheet);\r
-void Window_Control_MouseEventProcedure(UI_MouseEventArguments *e);\r
-void Window_Draw_CloseButton(UI_Window *win, bool pressed);\r
-\r
-/*xception.c CPU\97á\8aO\8aÖ\98A*/\r
-void CPU_Exception_Abort(int exception, int *esp);\r
-uint *CPU_Exception_Fault(int exception, int *esp);\r
-void CPU_ExceptionHandler00(int *esp);\r
-void CPU_ExceptionHandler01(int *esp);\r
-void CPU_ExceptionHandler02(int *esp);\r
-void CPU_ExceptionHandler03(int *esp);\r
-void CPU_ExceptionHandler04(int *esp);\r
-void CPU_ExceptionHandler05(int *esp);\r
-void CPU_ExceptionHandler06(int *esp);\r
-void CPU_ExceptionHandler07(int *esp);\r
-void CPU_ExceptionHandler08(int *esp);\r
-void CPU_ExceptionHandler09(int *esp);\r
-void CPU_ExceptionHandler0a(int *esp);\r
-void CPU_ExceptionHandler0b(int *esp);\r
-void CPU_ExceptionHandler0c(int *esp);\r
-uint *CPU_ExceptionHandler0d(int *esp);\r
-void CPU_ExceptionHandler0e(int *esp);\r
-void CPU_ExceptionHandler0f(int *esp);\r
-void CPU_ExceptionHandler10(int *esp);\r
-void CPU_ExceptionHandler11(int *esp);\r
-void CPU_ExceptionHandler12(int *esp);\r
-void CPU_ExceptionHandler13(int *esp);\r
-void CPU_ExceptionHandler14(int *esp);\r
-void CPU_ExceptionHandler15(int *esp);\r
-void CPU_ExceptionHandler16(int *esp);\r
-void CPU_ExceptionHandler17(int *esp);\r
-void CPU_ExceptionHandler18(int *esp);\r
-void CPU_ExceptionHandler19(int *esp);\r
-void CPU_ExceptionHandler1a(int *esp);\r
-void CPU_ExceptionHandler1b(int *esp);\r
-void CPU_ExceptionHandler1c(int *esp);\r
-void CPU_ExceptionHandler1d(int *esp);\r
-void CPU_ExceptionHandler1e(int *esp);\r
-void CPU_ExceptionHandler1f(int *esp);\r
-\r
-/*nasfunc0.nas \91¼\82Ì\8aÖ\90\94\82É\91S\82­\88Ë\91\82µ\82È\82¢\83A\83Z\83\93\83u\83\89\8aÖ\90\94\8cQ*/\r
-void IO_HLT(void);                     //CPU\82ð\92â\8e~\82³\82¹\82é\81B\8a\84\82è\8d\9e\82Ý\82ª\82 \82é\82Æ\8dÄ\8aJ\82·\82é\81B\93Á\8c \96½\97ß\81B\r
-void IO_CLI(void);                     //CPU\82Ö\82Ì\8aO\95\94\8a\84\82è\8d\9e\82Ý\82ð\92â\8e~\82³\82¹\82é\81B\93Á\8c \96½\97ß\81BNMI\82Æ\97á\8aO\82É\82Í\8cø\82©\82È\82¢\81B\r
-void IO_STI(void);                     //CPU\82Ö\82Ì\8aO\95\94\8a\84\82è\8d\9e\82Ý\82ð\8dÄ\8aJ\82³\82¹\82é\81B\93Á\8c \96½\97ß\81B\r
-void IO_STIHLT(void);                  //CPU\82Ö\82Ì\8aO\95\94\8a\84\82è\8d\9e\82Ý\82ð\8dÄ\8aJ\82³\82¹\82½\8cã\81ACPU\82ð\92â\8e~\82³\82¹\82é\81Bsti\82Æhlt\82Ì\8aÔ\82É\94­\90\82·\82é\8a\84\82è\8d\9e\82Ý\82Ö\82Ì\91Î\8dô\81B\81B\r
-uint IO_In8(uint port);                        //port\94Ô\82ÌI/O\83|\81[\83g\82©\82ç\83f\81[\83^\82ð\83o\83C\83g\92P\88Ê\82Å\8eó\82¯\8eæ\82é\81B\96ß\82è\92l\82Í\8eó\82¯\8eæ\82Á\82½\83f\81[\83^\81BI/O\93Á\8c \96½\97ß\81B\r
-void IO_Out8(uint port, uint data);    //port\94Ô\82ÌI/O\83|\81[\83g\82Édata\82ð\83o\83C\83g\92P\88Ê\82Å\8fo\97Í\82·\82é\81BI/O\93Á\8c \96½\97ß\81B\r
-uint IO_In16(uint port);               //port\94Ô\82ÌI/O\83|\81[\83g\82©\82ç\83f\81[\83^\82ð\83\8f\81[\83h\92P\88Ê\82Å\8eó\82¯\8eæ\82é\81B\96ß\82è\92l\82Í\8eó\82¯\8eæ\82Á\82½\83f\81[\83^\81BI/O\93Á\8c \96½\97ß\81B\r
-void IO_Out16(uint port, uint data);   //port\94Ô\82ÌI/O\83|\81[\83g\82Édata\82ð\83\8f\81[\83h\92P\88Ê\82Å\8fo\97Í\82·\82é\81BI/O\93Á\8c \96½\97ß\81B\r
-uint IO_In32(uint port);               //port\94Ô\82ÌI/O\83|\81[\83g\82©\82ç\83f\81[\83^\82ð\83_\83u\83\8b\83\8f\81[\83h\92P\88Ê\82Å\8eó\82¯\8eæ\82é\81B\96ß\82è\92l\82Í\8eó\82¯\8eæ\82Á\82½\83f\81[\83^\81BI/O\93Á\8c \96½\97ß\81B\r
-void IO_Out32(uint port, uint data);   //port\94Ô\82ÌI/O\83|\81[\83g\82Édata\82ð\83_\83u\83\8b\83\8f\81[\83h\92P\88Ê\82Å\8fo\97Í\82·\82é\81BI/O\93Á\8c \96½\97ß\81B\r
-uint IO_Load_EFlags(void);             //EFLAGS\83\8c\83W\83X\83^\82ð\93Ç\82Ý\8d\9e\82Þ\81B\r
-void IO_Store_EFlags(uint eflags);     //EFLAGS\83\8c\83W\83X\83^\82ðeflags\82É\95Ï\8dX\82·\82é\81B\r
-uint Load_CR0(void);                   //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^0\82ð\93Ç\82Ý\8d\9e\82Þ\81B\93Á\8c \96½\97ß\81B\r
-void Store_CR0(uint cr0);              //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^0\82ðcr0\82É\95Ï\8dX\82·\82é\81B\93Á\8c \96½\97ß\81B\r
-uint Load_CR2(void);                   //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^2\82ð\93Ç\82Ý\8d\9e\82Þ\81B\93Á\8c \96½\97ß\81B\r
-void Store_CR2(uint cr2);              //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^2\82ðcr2\82É\95Ï\8dX\82·\82é\81B\93Á\8c \96½\97ß\81B\r
-uint Load_CR3(void);                   //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^3\82ð\93Ç\82Ý\8d\9e\82Þ\81B\93Á\8c \96½\97ß\81B\r
-void Store_CR3(uint cr3);              //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^3\82ðcr3\82É\95Ï\8dX\82·\82é\81B\93Á\8c \96½\97ß\81B\r
-uint Load_CR4(void);                   //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^4\82ð\93Ç\82Ý\8d\9e\82Þ\81B\93Á\8c \96½\97ß\81B\r
-void Store_CR4(uint cr4);              //\83R\83\93\83g\83\8d\81[\83\8b\83\8c\83W\83X\83^4\82ðcr4\82É\95Ï\8dX\82·\82é\81B\93Á\8c \96½\97ß\81B\r
-void Load_GDTR(uint limit, uint addr); //\83O\83\8d\81[\83o\83\8b\81E\83f\83B\83X\83N\83\8a\83v\83^\81E\83e\81[\83u\83\8b\81E\83\8c\83W\83X\83^(GDTR)\82É\81Aaddr\82©\82çlimit\82Ì\94Í\88Í\82ðGDT\82Æ\82µ\82Ä\83\8d\81[\83h\82³\82¹\82é\81B\93Á\8c \96½\97ß\81B\r
-void Load_IDTR(uint limit, uint addr); //\83C\83\93\83^\83\89\83v\83g\81E\83f\83B\83X\83N\83\8a\83v\83^\81E\83e\81[\83u\83\8b\81E\83\8c\83W\83X\83^(IDTR)\82É\81Aaddr\82©\82çlimit\82Ì\94Í\88Í\82ðIDT\82Æ\82µ\82Ä\83\8d\81[\83h\82³\82¹\82é\81B\93Á\8c \96½\97ß\81B\r
-void Load_TR(uint tr);                 //\83Z\83O\83\81\83\93\83g\81E\83Z\83\8c\83N\83^tr\82ð\81A\83^\83X\83N\83\8c\83W\83X\83^\82É\8c»\8dÝ\82Ì\83^\83X\83N\82Æ\82µ\82Ä\83\8d\81[\83h\82³\82¹\82é\81B\93Á\8c \96½\97ß\81B\r
-void FarJMP(uint eip, uint cs);                //\8c»\8dÝ\82Ì\83Z\83O\83\81\83\93\83g\82Æ\82Í\88Ù\82È\82é\83Z\83O\83\81\83\93\83gcs\82Ì\83I\83t\83Z\83b\83geip\82É\83v\83\8d\83O\83\89\83\80\82Ì\90§\8cä\82ð\88Ú\82·\81B\r
-void FarCall(uint eip, uint cs);       //\8c»\8dÝ\82Ì\83Z\83O\83\81\83\93\83g\82Æ\82Í\88Ù\82È\82é\83Z\83O\83\81\83\93\83gcs\82Ì\83I\83t\83Z\83b\83geip\82É\83v\83\8d\83O\83\89\83\80\82Ì\90§\8cä\82ð\95ª\8aò\82³\82¹\82é\81B\r
-void CLTS(void);                       //\83R\83\93\83g\83\8d\81[\83\8b\81E\83\8c\83W\83X\83^0\93à\82É\82 \82é\81ATask-Switched\83t\83\89\83O\82ð\83N\83\8a\83A\82·\82é\81BFPU\82Ì\90§\8cä\82É\97\98\97p\81B\93Á\8c \96½\97ß\81B\r
-void FNSave(uint *addr);               //FPU\93®\8dì\8aÂ\8b«\82ðaddr\82©\82ç\8en\82Ü\82é108\83o\83C\83g\82É\8ai\94[\82µ\81AFPU\82ð\8f\89\8aú\89»\82·\82é\81B\8fÚ\8d×\82È\83`\83F\83b\83N\82Í\8ds\82í\82È\82¢\81B\r
-void FRStore(uint *addr);              //FPU\93®\8dì\8aÂ\8b«\82ðaddr\82©\82ç\8en\82Ü\82é108\83o\83C\83g\82©\82ç\95\9c\8c³\82·\82é\81B\r
-void PIT_Beep_On(void);                        //\83r\81[\83v\89¹\82ð\8aJ\8en\82·\82é\81B\r
-void PIT_Beep_Off(void);               //\83r\81[\83v\89¹\82ð\92â\8e~\82·\82é\81B\r
-void PIT_Beep_Set(uint fq);            //\83r\81[\83v\89¹\82Ì\8eü\94g\90\94\82ð\81AfqHz\82É\95Ï\8dX\82·\82é\81B\r
-                                       //fq\82Ì\92l\r
-                                       //C:262 C#:277 D:294 D#:311 E:330 F:349 F#:370 G:392 G#:415 A:440 A#:466 B:494 C:523\r
-void CPUID(void *addr, uint id);       //addr\94Ô\92n\82Ìuint[4]\82É\81ACPU\82Ì\8e¯\95Ê\8fî\95ñid\94Ô\82ðEAX\81EEBX\81EEDX\81EECX\82Ì\8f\87\94Ô\82Å\8ai\94[\82·\82é\81B\r
-void CPUID2(void *addr, uint id);      //addr\94Ô\92n\82Ìuint[4]\82É\81ACPU\82Ì\8e¯\95Ê\8fî\95ñid\94Ô\82ðEAX\81EEBX\81EECX\81EEDX\82Ì\8f\87\94Ô\82Å\8ai\94[\82·\82é\81B\r
-                                       //\8fã\8bL\93ñ\82Â\82Ì\8aÖ\90\94\82Í\81AEFLAGS\93à\82ÌID\83t\83\89\83O(\83r\83b\83g21)\82ª\95Ï\8dX\89Â\94\\82È\8fê\8d\87\82Ì\82Ý\8eÀ\8ds\82Å\82«\82é\81B\r
-void Read_TSC(uint *addr);             //addr\94Ô\92n\82Ìuint[2]\82É\81A\83}\83V\83\93\8cÅ\97L\83\8c\83W\83X\83^(MSR)\93à\82É\82 \82é\81A\83^\83C\83\80\81E\83X\83^\83\93\83v\81E\83J\83E\83\93\83^\82Ì\8fã\88Ê\81E\89º\88Ê\82»\82ê\82¼\82ê32\83r\83b\83g\82ð\93Ç\82Ý\8d\9e\82Þ\81B\r
-                                       //\82±\82Ì\8aÖ\90\94\82Í\81Acpuid\82ÌTSC\83r\83b\83g\82ª\97L\8cø\82Å\82È\82¯\82ê\82Î\8eg\97p\82Å\82«\82È\82¢\81B\r
-uint Memory_Test_Sub(uint start, uint end);\r
-void INT_3(void);                      //\83u\83\8c\81[\83N\83|\83C\83\93\83g\97á\8aO\82ð\94­\90\82³\82¹\82é\81B\r
-void APP_Run(uint eip, uint cs, uint esp, uint ds, uint *esp0);\r
-\r
-/*nasfunc1.nas C\8c¾\8cê\82Ì\8aÖ\90\94\82É\88Ë\91\82·\82é\8aÖ\90\94\8cQ\81B\82¨\82à\82É\8a\84\82è\8d\9e\82Ý\8aÖ\8cW\81B*/\r
-void asm_CPU_ExceptionHandler00(void);\r
-void asm_CPU_ExceptionHandler01(void);\r
-void asm_CPU_ExceptionHandler02(void);\r
-void asm_CPU_ExceptionHandler03(void);\r
-void asm_CPU_ExceptionHandler04(void);\r
-void asm_CPU_ExceptionHandler05(void);\r
-void asm_CPU_ExceptionHandler06(void);\r
-void asm_CPU_ExceptionHandler07(void);\r
-void asm_CPU_ExceptionHandler08(void);\r
-void asm_CPU_ExceptionHandler09(void);\r
-void asm_CPU_ExceptionHandler0a(void);\r
-void asm_CPU_ExceptionHandler0b(void);\r
-void asm_CPU_ExceptionHandler0c(void);\r
-void asm_CPU_ExceptionHandler0d(void);\r
-void asm_CPU_ExceptionHandler0e(void);\r
-void asm_CPU_ExceptionHandler0f(void);\r
-void asm_CPU_ExceptionHandler10(void);\r
-void asm_CPU_ExceptionHandler11(void);\r
-void asm_CPU_ExceptionHandler12(void);\r
-void asm_CPU_ExceptionHandler13(void);\r
-void asm_CPU_ExceptionHandler14(void);\r
-void asm_CPU_ExceptionHandler15(void);\r
-void asm_CPU_ExceptionHandler16(void);\r
-void asm_CPU_ExceptionHandler17(void);\r
-void asm_CPU_ExceptionHandler18(void);\r
-void asm_CPU_ExceptionHandler19(void);\r
-void asm_CPU_ExceptionHandler1a(void);\r
-void asm_CPU_ExceptionHandler1b(void);\r
-void asm_CPU_ExceptionHandler1c(void);\r
-void asm_CPU_ExceptionHandler1d(void);\r
-void asm_CPU_ExceptionHandler1e(void);\r
-void asm_CPU_ExceptionHandler1f(void);\r
-void asm_InterruptHandler20(void);\r
-void asm_InterruptHandler21(void);\r
-void asm_InterruptHandler27(void);\r
-void asm_InterruptHandler2c(void);\r
-void asm_API_Execute(void);\r