OSDN Git Service

SimpleHTMLEditorを追加。
[chnosproject/CHNOSProject.git] / CHNOSProject / chnos / tolset_chn_000 / chnos_010 / chnos / bootpack.c
diff --git a/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/bootpack.c b/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/bootpack.c
deleted file mode 100644 (file)
index abed8d8..0000000
+++ /dev/null
@@ -1,416 +0,0 @@
-\r
-#include "core.h"\r
-\r
-void CHNMain(void)\r
-{\r
-       uchar s[128];\r
-       uint data;\r
-       UI_Task *mytask;\r
-       uint i;\r
-       IO_DisplayControl *disp_ctrl;\r
-       UI_Sheet *vramsheet, *testsheet, *sheet_desktop;\r
-       UI_Sheet *sheet08, *sheet16, *sheet32;\r
-       int x, y;\r
-       UI_Timer *timer1, *timer2, *timer3;\r
-       uint counter1, counter2, counter3;\r
-       UI_TextBox *textbox;\r
-       UI_Console *console;\r
-       IO_FloppyDisk *boot_fd;\r
-       IO_File *file;\r
-\r
-       i = 0;\r
-       data = 0;\r
-\r
-       Initialize_System();\r
-\r
-       mytask = System_MultiTask_GetNowTask();\r
-       disp_ctrl = System_Display_Get_Controller();\r
-       boot_fd = FloppyDisk_Initialize(ADR_DISKIMG);\r
-\r
-       vramsheet = disp_ctrl->vramsheet;\r
-\r
-       Sheet_Drawing_Fill_Rectangle(vramsheet, 0xffffff, 0, 0, vramsheet->size.x - 1, vramsheet->size.y - 1);\r
-       Sheet_Drawing_Put_String(vramsheet, 10, 10, 0x000000, "Welcome to CHNOSProject!");\r
-\r
-       if(disp_ctrl->display_mode == DISPLAYMODE_VBE_LINEAR){\r
-               i = 0;\r
-               Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 1, 0x000000, "Please Select the VideoMode Number.");\r
-               Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 2, 0x000000, "(Use cursor Up or Down, Select Enter.)");\r
-               Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 6, 0x000000, "Press Esc to boot in VGA(320x200 8bit).");\r
-               Sheet_Drawing_Fill_Rectangle(vramsheet, 0x00ff00, 10, 10 + 16 * 3, VGA08_VRAM_XSIZE - 10 - 1, 10 + 16 * 5 - 1);\r
-               snprintf(s, sizeof(s), "%d:0x%X %dx%d-%dbits", i, disp_ctrl->VBE.list_vmode[i].mode_number, disp_ctrl->VBE.list_vmode[i].xsize, disp_ctrl->VBE.list_vmode[i].ysize, disp_ctrl->VBE.list_vmode[i].bpp);\r
-               Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 3, 0x000000, s);\r
-\r
-               for(;;){\r
-                       if(FIFO32_MyTaskFIFO_Status() == 0){\r
-                               System_MultiTask_Task_Sleep(mytask);\r
-                       } else{\r
-                               data = FIFO32_MyTaskFIFO_Get();\r
-                               if(SIGNAL_KEY_OFFSET <= data && data <= (SIGNAL_KEY_OFFSET + 0xFFFF)){\r
-                                       data -= SIGNAL_KEY_OFFSET;\r
-                                       if(!(data & KEYID_MASK_BREAK) && (data & KEYID_MASK_EXTENDED)){\r
-                                               if((data & KEYID_MASK_ID) == KEYID_CURSOR_U){\r
-                                                       if(i == 0){\r
-                                                               i = disp_ctrl->VBE.list_vmode_tags - 1;\r
-                                                       } else{\r
-                                                               i--;\r
-                                                       }\r
-                                                       Sheet_Drawing_Fill_Rectangle(vramsheet, 0x00ff00, 10, 10 + 16 * 3, VGA08_VRAM_XSIZE - 10 - 1, 10 + 16 * 5 - 1);\r
-                                                       snprintf(s, sizeof(s), "%d:0x%X %dx%d-%dbits", i, disp_ctrl->VBE.list_vmode[i].mode_number, disp_ctrl->VBE.list_vmode[i].xsize, disp_ctrl->VBE.list_vmode[i].ysize, disp_ctrl->VBE.list_vmode[i].bpp);\r
-                                                       Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 3, 0x000000, s);\r
-                                               } else if((data & KEYID_MASK_ID) == KEYID_CURSOR_D){\r
-                                                       if(i == disp_ctrl->VBE.list_vmode_tags - 1){\r
-                                                               i = 0;\r
-                                                       } else{\r
-                                                               i ++;\r
-                                                       }\r
-                                                       Sheet_Drawing_Fill_Rectangle(vramsheet, 0x00ff00, 10, 10 + 16 * 3, VGA08_VRAM_XSIZE - 10 - 1, 10 + 16 * 5 - 1);\r
-                                                       snprintf(s, sizeof(s), "%d:0x%X %dx%d-%dbits", i, disp_ctrl->VBE.list_vmode[i].mode_number, disp_ctrl->VBE.list_vmode[i].xsize, disp_ctrl->VBE.list_vmode[i].ysize, disp_ctrl->VBE.list_vmode[i].bpp);\r
-                                                       Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 3, 0x000000, s);\r
-                                               } else if((data & KEYID_MASK_ID) == KEYID_ENTER){\r
-                                                       if(System_Display_VESA_Set_VideoMode(i) == 0){\r
-                                                               break;\r
-                                                       }\r
-                                                       Sheet_Drawing_Fill_Rectangle(vramsheet, 0x00ff00, 10, 10 + 16 * 3, VGA08_VRAM_XSIZE - 10 - 1, 10 + 16 * 4 - 1);\r
-                                                       Sheet_Drawing_Put_String(vramsheet, 10, 10 + 16 * 4, 0x000000, "Function Failed. Try again.");\r
-                                               } else if((data & KEYID_MASK_ID) == KEYID_ESC){\r
-                                                       System_TaskControlMessage_Send_AllTask(TCM_OFFSET + TCM_INFO_DISPLAY_UPDATE_RESOLUTION);\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-\r
-       Sheet_SetBuffer(vramsheet, disp_ctrl->vram, disp_ctrl->xsize, disp_ctrl->ysize, disp_ctrl->bpp);\r
-\r
-       sheet_desktop = Sheet_Initialize();\r
-       Sheet_SetBuffer(sheet_desktop, Null, disp_ctrl->xsize, disp_ctrl->ysize, disp_ctrl->bpp);\r
-\r
-       Sheet_Drawing_Fill_Rectangle(sheet_desktop, 0xffffff, 0, 0, disp_ctrl->xsize - 1, disp_ctrl->ysize - 1);\r
-       Sheet_Drawing_Put_String(sheet_desktop, 10, 10, 0x000000, "Welcome to CHNOSProject!");\r
-       if(FloppyDisk_IsPathExist(boot_fd, "chnlogo.bmp")){\r
-               file = File_Initilaize();\r
-               if(FloppyDisk_LoadFile(boot_fd, file, "chnlogo.bmp") == 0){\r
-                       Format_BMP_DrawPicture(sheet_desktop->vram, sheet_desktop->size.x, disp_ctrl->xsize - 128 - 4, 4, 0, 0, file->img);\r
-               }\r
-               File_Free(file);\r
-       }\r
-\r
-       testsheet = Sheet_Initialize();\r
-\r
-       sheet08 = Sheet_Initialize();\r
-       sheet16 = Sheet_Initialize();\r
-       sheet32 = Sheet_Initialize();\r
-\r
-       Sheet_SetBuffer(testsheet, Null, 256, 128, 8);\r
-       Sheet_SetBuffer(sheet08, Null, 128, 128, 8);\r
-       Sheet_SetBuffer(sheet16, Null, 128, 128, 16);\r
-       Sheet_SetBuffer(sheet32, Null, 128, 128, 32);\r
-\r
-       for(y = 0; y < testsheet->size.y; y++){\r
-               for(x = 0; x < testsheet->size.x; x++){\r
-                       ((uchar *)testsheet->vram)[y * testsheet->size.x + x] = x * 2;\r
-               }\r
-       }\r
-\r
-       Drawing08_Fill_Rectangle(testsheet->vram, testsheet->size.x, 0xc6c6c6, 4, 24, testsheet->size.x - 4 - 1, testsheet->size.y - 4 - 1);\r
-\r
-       textbox = TextBox_Initialize();\r
-       TextBox_SetBuffer(textbox, 20, 6, 8, testsheet);\r
-       TextBox_Show(textbox, 0, 4, 24);\r
-       TextBox_Put_Character(textbox, '>');\r
-       TextBox_SetEnable_RecordInputText(textbox, True);\r
-\r
-\r
-       Drawing08_Put_String(testsheet->vram, testsheet->size.x, 4, 4, 0xffffff, "TestSheet");\r
-       snprintf(s, sizeof(s), "Memory:%d Bytes", System_Get_PhisycalMemorySize());\r
-       Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24 + 16 * 4, 0xffffff, s);\r
-\r
-       for(y = 0; y < sheet08->size.y; y++){\r
-               for(x = 0; x < sheet08->size.x; x++){\r
-                       ((uchar *)sheet08->vram)[y * sheet08->size.x + x] = RGB_32_To_08(((x * 2) << 16) | ((y * 2) << 8) | (x + y));\r
-               }\r
-       }\r
-\r
-       for(y = 0; y < sheet16->size.y; y++){\r
-               for(x = 0; x < sheet16->size.x; x++){\r
-                       ((ushort *)sheet16->vram)[y * sheet16->size.x + x] = RGB_32_To_16(((x * 2) << 16) | ((y * 2) << 8) | (x + y));\r
-               }\r
-       }\r
-\r
-       for(y = 0; y < sheet32->size.y; y++){\r
-               for(x = 0; x < sheet32->size.x; x++){\r
-                       ((uint *)sheet32->vram)[y * sheet32->size.x + x] = ((x * 2) << 16) | ((y * 2) << 8) | (x + y);\r
-               }\r
-       }\r
-\r
-       Sheet_SetParent(sheet_desktop, vramsheet);\r
-       Sheet_Show(sheet_desktop, 0, 0, 0);\r
-\r
-       Sheet_SetParent(sheet08, vramsheet);\r
-       Sheet_Show(sheet08, 1, 20, vramsheet->size.y >> 1);\r
-\r
-       Sheet_SetParent(sheet16, vramsheet);\r
-       Sheet_Show(sheet16, 1, 220, vramsheet->size.y >> 1);\r
-\r
-       Sheet_SetParent(sheet32, vramsheet);\r
-       Sheet_Show(sheet32, 1, 420, vramsheet->size.y >> 1);\r
-\r
-       Sheet_SetParent(testsheet, vramsheet);\r
-       Sheet_SetMovable(testsheet, True);\r
-       Sheet_SetInputFIFO(testsheet, mytask->fifo);\r
-       Sheet_Show(testsheet, 6, 10, 10);\r
-\r
-       timer1 = Timer_Initialize();\r
-       Timer_Config(timer1, 50, mytask->fifo, 11, True);\r
-       counter1 = 0;\r
-       //Timer_Run(timer1);\r
-\r
-       timer2 = Timer_Initialize();\r
-       Timer_Config(timer2, 50, mytask->fifo, 12, False);\r
-       counter2 = 0;\r
-       //Timer_Run(timer2);\r
-\r
-       timer3 = Timer_Initialize();\r
-       Timer_Config(timer3, 200, mytask->fifo, 13, True);\r
-       counter3 = 0;\r
-       //Timer_Run(timer3);\r
-\r
-       console = Console_Initialize();\r
-       x = vramsheet->size.x >> (3 + 1);\r
-       y = vramsheet->size.y >> (4 + 1);\r
-\r
-       if(x < (VGA08_VRAM_XSIZE >> 3)){\r
-               x = (VGA08_VRAM_XSIZE >> 3);\r
-       }\r
-       if(y < (VGA08_VRAM_YSIZE >> 4)){\r
-               y = (VGA08_VRAM_YSIZE >> 4);\r
-       }\r
-\r
-       Console_SetSize(console, x, y);\r
-       Console_Run(console);\r
-       System_InputFocus_Change(console->textbox->sheet->input_fifo);\r
-\r
-       for(;;){\r
-               if(FIFO32_MyTaskFIFO_Status() == 0){\r
-                       System_MultiTask_Task_Sleep(mytask);\r
-               } else{\r
-                       data = FIFO32_MyTaskFIFO_Get();\r
-                       if(SIGNAL_KEY_OFFSET <= data && data <= (SIGNAL_KEY_OFFSET + 0xFFFF)){\r
-                               data -= SIGNAL_KEY_OFFSET;\r
-                               TextBox_Put_Key(textbox, data);\r
-                               if(!(data & KEYID_MASK_BREAK) && (data & KEYID_MASK_EXTENDED)){\r
-                                       if((data & KEYID_MASK_ID) == KEYID_ENTER){\r
-                                               TextBox_SetEnable_RecordInputText(textbox, False);\r
-                                               TextBox_Put_String(textbox, textbox->text_buf);\r
-                                               TextBox_Put_Character(textbox, '>');\r
-                                               TextBox_SetEnable_RecordInputText(textbox, True);\r
-                                       }\r
-                               }\r
-                       } else if(data == 11){\r
-                               Drawing08_Fill_Rectangle(testsheet->vram, testsheet->size.x, 0xc6c6c6, 8, 24, 8 + (20 * 8) - 1, 24 + (16 * 2) - 1);\r
-                               snprintf(s, sizeof(s), "Tick :%d", Timer_GetTick());\r
-                               Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24, 0xffffff, s);\r
-                               snprintf(s, sizeof(s), "Tick1:%d", counter1);\r
-                               Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24 + 16, 0xffffff, s);\r
-                               Sheet_RefreshSheet(testsheet, 8, 24, 8 + (20 * 8) - 1, 24 + (16 * 2) - 1);\r
-                               counter1++;\r
-                       } else if(data == 12){\r
-                               Drawing08_Fill_Rectangle(testsheet->vram, testsheet->size.x, 0xc6c6c6, 8, 24 + 16 * 2, 8 + (20 * 8) - 1, 24 + (16 * 3) - 1);\r
-                               snprintf(s, sizeof(s), "Tick2:%d", counter2);\r
-                               Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24 + 16 * 2, 0xffffff, s);\r
-                               Sheet_RefreshSheet(testsheet, 8, 24 + 16 * 2, 8 + (20 * 8) - 1, 24 + (16 * 3) - 1);\r
-                               Timer_Run(timer2);\r
-                               counter2++;\r
-                       } else if(data == 13){\r
-                               Drawing08_Fill_Rectangle(testsheet->vram, testsheet->size.x, 0xc6c6c6, 8, 24 + 16 * 3, 8 + (20 * 8) - 1, 24 + (16 * 4) - 1);\r
-                               snprintf(s, sizeof(s), "Tick3:%d", counter3);\r
-                               Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24 + 16 * 3, 0xffffff, s);\r
-                               Sheet_RefreshSheet(testsheet, 8, 24 + 16 * 3, 8 + (20 * 8) - 1, 24 + (16 * 4) - 1);\r
-                               counter3++;\r
-\r
-                               Drawing08_Fill_Rectangle(testsheet->vram, testsheet->size.x, 0xc6c6c6, 8, 24 + 16 * 5, 8 + (20 * 8) - 1, 24 + (16 * 6) - 1);\r
-                               snprintf(s, sizeof(s), "Free  :%d Bytes", System_Memory_Get_FreeSize());\r
-                               Drawing08_Put_String(testsheet->vram, testsheet->size.x, 8, 24 + 16 * 5, 0xffffff, s);\r
-                               Sheet_RefreshSheet(testsheet, 8, 24 + 16 * 5, 8 + (20 * 8) - 1, 24 + (16 * 6) - 1);\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-void KeyboardControlTask(DATA_FIFO32 **InputFocus)\r
-{\r
-       UI_Task *mytask;\r
-       uint data;\r
-\r
-       data = 0;\r
-\r
-       mytask = System_MultiTask_GetNowTask();\r
-\r
-       #ifdef CHNOSPROJECT_DEBUG\r
-               debug("KBCT:KeyboardControlTask Start Running.\nKBCT:UI_Task=0x%X\n", mytask);\r
-       #endif\r
-\r
-       Keyboard_Set_ReceiveFIFO(mytask->fifo, 0x100);\r
-\r
-       for(;;){\r
-               if(FIFO32_MyTaskFIFO_Status() == 0){\r
-                       System_MultiTask_Task_Sleep(mytask);\r
-               } else{\r
-                       data = FIFO32_MyTaskFIFO_Get();\r
-                       #ifdef CHNOSPROJECT_DEBUG_KBCT\r
-                               debug("KBCT:Receive data from FIFO(data:0x%X).\n", data);\r
-                       #endif\r
-                       if(0x100 <= data && data <= 0x1ff){\r
-                               data -= 0x100;\r
-                               data = Keyboard_Decode_KeyCode(data);\r
-                               if(InputFocus != 0 && data != 0){\r
-                                       FIFO32_Put(*InputFocus, data + SIGNAL_KEY_OFFSET);\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-void MouseControlTask(DATA_FIFO32 **InputFocus, UI_MouseCursor *mcursor)\r
-{\r
-       UI_Task *mytask;\r
-       uint data;\r
-       IO_MouseControl *mctrl;\r
-       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-               UI_Sheet *mouseinfosheet;\r
-               uchar s[16];\r
-       #endif\r
-       int scroll;\r
-\r
-       DATA_Location2D moveorg_mfocus;\r
-       UI_Sheet *mfocus;\r
-       bool old_mouse_buttonL;\r
-\r
-       data = 0;\r
-       scroll = 0;\r
-       mfocus = Null;\r
-       old_mouse_buttonL = False;\r
-\r
-       mytask = System_MultiTask_GetNowTask();\r
-\r
-       #ifdef CHNOSPROJECT_DEBUG\r
-               debug("MCT:MouseControlTask Start Running.\nMCT:UI_Task=0x%X\n", mytask);\r
-       #endif\r
-\r
-       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-               mouseinfosheet = Sheet_Initialize();\r
-               Sheet_SetBuffer(mouseinfosheet, Null, (4 * 2) + (8 * 16), 4 + 16 + (4 * 2) + (16 * 4), 8);\r
-               System_Sheet_SetParentToVRAM(mouseinfosheet);\r
-               Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0x99cc33, 0, 0, mouseinfosheet->size.x - 1, mouseinfosheet->size.y - 1);\r
-               Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0xccffff, 4, 24, mouseinfosheet->size.x - 1 - 4, mouseinfosheet->size.y - 1 - 4);\r
-               Sheet_Drawing_Put_String(mouseinfosheet, 4, 4, 0xffffff, "MouseInfo");\r
-       #endif\r
-\r
-       mctrl = Initialize_Mouse();\r
-\r
-       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-               debug("MCT:Mouse Initialized.\n");\r
-       #endif\r
-\r
-       Mouse_Set_ReceiveFIFO(mytask->fifo, 0x100);\r
-\r
-       Mouse_Decode(mctrl, 0x00);      //Decode start.\r
-\r
-       for(;;){\r
-               if(FIFO32_MyTaskFIFO_Status() == 0){\r
-                       if(mfocus != Null && ((mcursor->cursor_sheet->location.x - moveorg_mfocus.x) != 0 || (mcursor->cursor_sheet->location.y - moveorg_mfocus.y) != 0)){\r
-                               Sheet_Slide_Relative(mfocus, mcursor->cursor_sheet->location.x - moveorg_mfocus.x, mcursor->cursor_sheet->location.y - moveorg_mfocus.y);\r
-                               moveorg_mfocus.x = mcursor->cursor_sheet->location.x;\r
-                               moveorg_mfocus.y = mcursor->cursor_sheet->location.y;\r
-                       } else{\r
-                               System_MultiTask_Task_Sleep(mytask);\r
-                       }\r
-               } else{\r
-                       data = FIFO32_MyTaskFIFO_Get();\r
-                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                               debug("MCT:Receive data from FIFO(data:0x%X).\n", data);\r
-                       #endif\r
-                       if(0x100 <= data && data <= 0x1ff){\r
-                               if(Mouse_Decode(mctrl, data - 0x100)){\r
-                                       MouseCursor_Move_Relative(mcursor, mctrl->move.x, mctrl->move.y);\r
-                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                               Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0xccffff, 4, 24 + (16 * 0), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 0) + 15);\r
-                                               snprintf(s, sizeof(s), "X:%d", mcursor->cursor_sheet->location.x);\r
-                                               Sheet_Drawing_Put_String(mouseinfosheet, 4, 24 + (16 * 0), 0x000000, s);\r
-                                               Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0xccffff, 4, 24 + (16 * 1), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 1) + 15);\r
-                                               snprintf(s, sizeof(s), "Y:%d", mcursor->cursor_sheet->location.y);\r
-                                               Sheet_Drawing_Put_String(mouseinfosheet, 4, 24 + (16 * 1), 0x000000, s);\r
-                                               Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0xccffff, 4, 24 + (16 * 2), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 2) + 15);\r
-                                               snprintf(s, sizeof(s), "Button:lrc");\r
-                                       #endif\r
-\r
-                                       if(old_mouse_buttonL != mctrl->button.bit.L){\r
-                                               if(old_mouse_buttonL){  //up\r
-                                                       if(mfocus != Null){\r
-                                                               Sheet_Slide_Relative(mfocus, mcursor->cursor_sheet->location.x - moveorg_mfocus.x, mcursor->cursor_sheet->location.y - moveorg_mfocus.y);\r
-                                                       }\r
-                                                       mfocus = Null;\r
-                                               } else{ //down\r
-                                                       moveorg_mfocus.x = mcursor->cursor_sheet->location.x;\r
-                                                       moveorg_mfocus.y = mcursor->cursor_sheet->location.y;\r
-                                                       mfocus = Sheet_GetSheetFromLocation(mcursor->cursor_sheet->parent, mcursor->cursor_sheet->location.x, mcursor->cursor_sheet->location.y);\r
-                                                       System_InputFocus_Change(mfocus->input_fifo);\r
-                                                       if(mfocus != Null){\r
-                                                               if(mfocus->flags.bit.movable){\r
-                                                                       Sheet_ChangeHeight(mfocus, SHEET_MAX_CHILDREN);\r
-                                                               } else{\r
-                                                                       mfocus = Null;\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                               old_mouse_buttonL = mctrl->button.bit.L;\r
-                                       }\r
-                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                               if(mctrl->button.bit.L){\r
-                                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                                               s[7] -= 0x20;\r
-                                                       #endif\r
-                                               }\r
-                                               if(mctrl->button.bit.R){\r
-                                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                                               s[8] -= 0x20;\r
-                                                       #endif\r
-                                               }\r
-                                               if(mctrl->button.bit.C){\r
-                                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                                               s[9] -= 0x20;\r
-                                                       #endif\r
-                                               }\r
-                                       #endif\r
-                                       #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                               Sheet_Drawing_Put_String(mouseinfosheet, 4, 24 + (16 * 2), 0x000000, s);\r
-                                       #endif\r
-                                       if(mctrl->flags.scroll){\r
-                                               scroll += mctrl->scroll;\r
-                                               #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                                       Sheet_Drawing_Fill_Rectangle(mouseinfosheet, 0xccffff, 4, 24 + (16 * 3), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 3) + 15);\r
-                                                       snprintf(s, sizeof(s), "Scroll:%d", scroll);\r
-                                                       Sheet_Drawing_Put_String(mouseinfosheet, 4, 24 + (16 * 3), 0x000000, s);\r
-                                                       Sheet_RefreshSheet(mouseinfosheet, 4, 24 + (16 * 0), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 3) + 15);\r
-                                               #endif\r
-                                       } else{\r
-                                               #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                                       Sheet_RefreshSheet(mouseinfosheet, 4, 24 + (16 * 0), mouseinfosheet->size.x - 1 - 4, 24 + (16 * 2) + 15);\r
-                                               #endif\r
-                                       }\r
-                               }\r
-                       } else if(data == TCM_OFFSET + TCM_INFO_DISPLAY_UPDATE_RESOLUTION){\r
-                               MouseCursor_Move_Absolute(mcursor, mcursor->cursor_sheet->parent->size.x >> 1, mcursor->cursor_sheet->parent->size.y >> 1);\r
-                               MouseCursor_Show(mcursor);\r
-                               #ifdef CHNOSPROJECT_DEBUG_MCT\r
-                                       Sheet_Show(mouseinfosheet, 2, 200, 200);\r
-                               #endif\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-\r