Rev 3774 | Rev 3778 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3774 | Rev 3777 | ||
---|---|---|---|
Line 69... | Line 69... | ||
69 | format binary as "mnt" |
69 | format binary as "mnt" |
Line 70... | Line 70... | ||
70 | 70 | ||
71 | include 'macros.inc' |
71 | include 'macros.inc' |
Line 72... | Line 72... | ||
72 | include 'struct.inc' |
72 | include 'struct.inc' |
Line 73... | Line 73... | ||
73 | 73 | ||
74 | $Revision: 3774 $ |
74 | $Revision: 3777 $ |
Line 75... | Line 75... | ||
75 | 75 | ||
76 | 76 | ||
77 | USE_COM_IRQ equ 1 ; make irq 3 and irq 4 available for PCI devices |
- | |
78 | VESA_1_2_VIDEO equ 0 ; enable vesa 1.2 bank switch functions |
- | |
Line 79... | Line 77... | ||
79 | 77 | USE_COM_IRQ equ 1 ; make irq 3 and irq 4 available for PCI devices |
|
80 | ; Enabling the next line will enable serial output console |
78 | VESA_1_2_VIDEO equ 0 ; enable vesa 1.2 bank switch functions |
81 | ;debug_com_base equ 0x3f8 ; 0x3f8 is com1, 0x2f8 is com2, 0x3e8 is com3, 0x2e8 is com4, no irq's are used |
79 | |
82 | ; The following constant, if nonzero, duplicates debug output to the screen. |
80 | ; Enabling the next line will enable serial output console |
Line 83... | Line 81... | ||
83 | debug_direct_print equ 0 |
81 | ;debug_com_base equ 0x3f8 ; 0x3f8 is com1, 0x2f8 is com2, 0x3e8 is com3, 0x2e8 is com4, no irq's are used |
- | 82 | ||
- | 83 | include "proc32.inc" |
|
- | 84 | include "kglobals.inc" |
|
- | 85 | include "lang.inc" |
|
- | 86 | include "encoding.inc" |
|
- | 87 | ||
- | 88 | include "const.inc" |
|
- | 89 | ||
84 | 90 | iglobal |
|
85 | include "proc32.inc" |
91 | ; The following variable, if equal to 1, duplicates debug output to the screen. |
Line 86... | Line -... | ||
86 | include "kglobals.inc" |
- | |
87 | include "lang.inc" |
92 | debug_direct_print db 0 |
88 | include "encoding.inc" |
93 | ; Start the first app (LAUNCHER) after kernel is loaded? (1=yes, 2 or 0=no) |
89 | 94 | launcher_start db 1 |
|
90 | include "const.inc" |
95 | endg |
91 | max_processes equ 255 |
96 | |
Line 469... | Line 474... | ||
469 | mov al, [BOOT_VARS+BOOT_DMA] ; DMA access |
474 | mov al, [BOOT_VARS+BOOT_DMA] ; DMA access |
470 | mov [allow_dma_access], al |
475 | mov [allow_dma_access], al |
471 | movzx eax, byte [BOOT_VARS+BOOT_BPP] ; bpp |
476 | movzx eax, byte [BOOT_VARS+BOOT_BPP] ; bpp |
472 | mov [_display.bpp], eax |
477 | mov [_display.bpp], eax |
473 | mov [_display.vrefresh], 60 |
478 | mov [_display.vrefresh], 60 |
474 | - | ||
- | 479 | mov al, [BOOT_VARS+BOOT_DEBUG_PRINT] ; If nonzero, duplicates debug output to the screen |
|
- | 480 | mov [debug_direct_print], al |
|
- | 481 | mov al, [BOOT_VARS+BOOT_LAUNCHER_START] ; Start the first app (LAUNCHER) after kernel is loaded? |
|
- | 482 | mov [launcher_start], al |
|
475 | movzx eax, word [BOOT_VARS+BOOT_X_RES]; X max |
483 | movzx eax, word [BOOT_VARS+BOOT_X_RES]; X max |
476 | mov [_display.width], eax |
484 | mov [_display.width], eax |
477 | mov [display_width_standard], eax |
485 | mov [display_width_standard], eax |
478 | dec eax |
486 | dec eax |
479 | mov [Screen_Max_X], eax |
487 | mov [Screen_Max_X], eax |
Line 959... | Line 967... | ||
959 | [SLOT_BASE+256+APPDATA.io_map], PG_MAP |
967 | [SLOT_BASE+256+APPDATA.io_map], PG_MAP |
960 | stdcall map_page, tss._io_map_1, \ |
968 | stdcall map_page, tss._io_map_1, \ |
961 | [SLOT_BASE+256+APPDATA.io_map+4], PG_MAP |
969 | [SLOT_BASE+256+APPDATA.io_map+4], PG_MAP |
Line 962... | Line 970... | ||
962 | 970 | ||
- | 971 | ; LOAD FIRST APPLICATION |
|
963 | ; LOAD FIRST APPLICATION |
972 | cmp byte [launcher_start], 1 ; Check if starting LAUNCHER is selected on blue screen (1 = yes) |
Line -... | Line 973... | ||
- | 973 | jnz @f |
|
964 | cli |
974 | |
965 | 975 | cli |
|
966 | mov ebp, firstapp |
976 | mov ebp, firstapp |
967 | call fs_execute_from_sysdir |
977 | call fs_execute_from_sysdir |
Line 4861... | Line 4871... | ||
4861 | pop ax dx |
4871 | pop ax dx |
Line 4862... | Line 4872... | ||
4862 | 4872 | ||
Line 4863... | Line 4873... | ||
4863 | end if |
4873 | end if |
4864 | 4874 | ||
- | 4875 | mov [msg_board_data+ecx], bl |
|
- | 4876 | ; // if debug_direct_print == 1 |
|
4865 | mov [msg_board_data+ecx], bl |
4877 | cmp byte [debug_direct_print], 1 |
4866 | if debug_direct_print |
4878 | jnz @f |
4867 | pusha |
4879 | pusha |
4868 | iglobal |
4880 | iglobal |
4869 | msg_board_pos dd 234*65536+10 |
4881 | msg_board_pos dd 234*65536+10 ; for printing debug output on the screen |
4870 | endg |
4882 | endg |
4871 | lea edx, [msg_board_data+ecx] |
4883 | lea edx, [msg_board_data+ecx] |
4872 | mov ecx, 0x40FFFFFF |
4884 | mov ecx, 0x40FFFFFF |
Line 4883... | Line 4895... | ||
4883 | mov ax, word [Screen_Max_Y] |
4895 | mov ax, word [Screen_Max_Y] |
4884 | cmp word [msg_board_pos], ax |
4896 | cmp word [msg_board_pos], ax |
4885 | jbe @f |
4897 | jbe @f |
4886 | mov word [msg_board_pos], 10 |
4898 | mov word [msg_board_pos], 10 |
4887 | @@: |
4899 | @@: |
4888 | end if |
4900 | ; // end if |
- | 4901 | ||
4889 | if 0 |
4902 | if 0 |
4890 | pusha |
4903 | pusha |
4891 | mov al, bl |
4904 | mov al, bl |
4892 | mov edx, 402h |
4905 | mov edx, 402h |
4893 | out dx, al |
4906 | out dx, al |