Subversion Repositories Kolibri OS

Rev

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