forked from KolibriOS/kolibrios
Now kernel can be compiled with fasm 1.66.
git-svn-id: svn://kolibrios.org@82 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
858db1a8a3
commit
26d6c6af0e
@ -149,6 +149,7 @@ pagetable_set:
|
|||||||
|
|
||||||
; 16-bit data
|
; 16-bit data
|
||||||
; videomodes table
|
; videomodes table
|
||||||
|
org $+0x10000
|
||||||
gr_table:
|
gr_table:
|
||||||
dw 0x112+0100000000000000b , 640 , 480 ; 1
|
dw 0x112+0100000000000000b , 640 , 480 ; 1
|
||||||
dw 0x115+0100000000000000b , 800 , 600 ; 2
|
dw 0x115+0100000000000000b , 800 , 600 ; 2
|
||||||
@ -173,6 +174,7 @@ gr_table:
|
|||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
|
org $-0x10000
|
||||||
|
|
||||||
;=========================================================================
|
;=========================================================================
|
||||||
;
|
;
|
||||||
@ -358,14 +360,12 @@ wait_loop: ; variant 2
|
|||||||
mov [es : 0x9046], cx ; Save APM flags
|
mov [es : 0x9046], cx ; Save APM flags
|
||||||
|
|
||||||
; Write APM ver ----
|
; Write APM ver ----
|
||||||
jmp @f
|
and ax, 0xf0f
|
||||||
msg_apm:db ' APM x.x ', 0
|
|
||||||
@@: and ax, 0xf0f
|
|
||||||
add ax, '00'
|
add ax, '00'
|
||||||
mov [msg_apm - 0x10000 + 5], ah
|
|
||||||
mov [msg_apm - 0x10000 + 7], al
|
|
||||||
_setcursor 0, 3
|
|
||||||
mov si, msg_apm - 0x10000
|
mov si, msg_apm - 0x10000
|
||||||
|
mov [si + 5], ah
|
||||||
|
mov [si + 7], al
|
||||||
|
_setcursor 0, 3
|
||||||
call printplain
|
call printplain
|
||||||
_setcursor d80x25_top_num,0
|
_setcursor d80x25_top_num,0
|
||||||
; ------------------
|
; ------------------
|
||||||
@ -474,7 +474,7 @@ cfgmanager:
|
|||||||
; get start time
|
; get start time
|
||||||
call .gettime
|
call .gettime
|
||||||
mov [.starttime-0x10000], eax
|
mov [.starttime-0x10000], eax
|
||||||
mov word [.timer-0x10000], .newtimer-0x10000
|
mov word [.timer-0x10000], .newtimer
|
||||||
mov word [.timer-0x10000+2], cs
|
mov word [.timer-0x10000+2], cs
|
||||||
.printcfg:
|
.printcfg:
|
||||||
_setcursor 9,0
|
_setcursor 9,0
|
||||||
@ -631,7 +631,9 @@ virtual at novesa
|
|||||||
.bSettingsChanged db ?
|
.bSettingsChanged db ?
|
||||||
.timer dd ?
|
.timer dd ?
|
||||||
end virtual
|
end virtual
|
||||||
|
org $+0x10000
|
||||||
.loader_block dd 0
|
.loader_block dd 0
|
||||||
|
org $-0x10000
|
||||||
.gettime:
|
.gettime:
|
||||||
mov ah, 0
|
mov ah, 0
|
||||||
int 1Ah
|
int 1Ah
|
||||||
@ -723,7 +725,7 @@ end if
|
|||||||
mov byte [space_msg-0x10000+80], 186
|
mov byte [space_msg-0x10000+80], 186
|
||||||
pop eax
|
pop eax
|
||||||
push cs
|
push cs
|
||||||
push .cont-0x10000
|
push .cont
|
||||||
push eax
|
push eax
|
||||||
retf
|
retf
|
||||||
.loadc:
|
.loadc:
|
||||||
|
@ -55,6 +55,7 @@ d80x25_bottom_num = 3
|
|||||||
novesa db "‚¨¤¥®ª àâ : EGA/CGA",13,10,0
|
novesa db "‚¨¤¥®ª àâ : EGA/CGA",13,10,0
|
||||||
vervesa db "‚¥àá¨ï VESA: Vesa x.x",13,10,0
|
vervesa db "‚¥àá¨ï VESA: Vesa x.x",13,10,0
|
||||||
vervesa_off=19
|
vervesa_off=19
|
||||||
|
msg_apm db " APM x.x ", 0
|
||||||
gr_mode db 186," Vesa 2.0+ 16 M LFB: [1] 640x480, [2] 800x600, "
|
gr_mode db 186," Vesa 2.0+ 16 M LFB: [1] 640x480, [2] 800x600, "
|
||||||
db "[3] 1024x768, [4] 1280x1024",13,10
|
db "[3] 1024x768, [4] 1280x1024",13,10
|
||||||
db 186," Vesa 1.2 16 M Bnk: [5] 640x480, [6] 800x600, "
|
db 186," Vesa 1.2 16 M Bnk: [5] 640x480, [6] 800x600, "
|
||||||
|
@ -182,6 +182,7 @@ system_shutdown: ; shut down the system
|
|||||||
use16
|
use16
|
||||||
|
|
||||||
pr_mode_exit:
|
pr_mode_exit:
|
||||||
|
org $-0x10000
|
||||||
|
|
||||||
; setup stack
|
; setup stack
|
||||||
mov ax, 3000h
|
mov ax, 3000h
|
||||||
@ -283,11 +284,12 @@ pr_mode_exit:
|
|||||||
pause_key_1:
|
pause_key_1:
|
||||||
loop pause_key_1
|
loop pause_key_1
|
||||||
ret
|
ret
|
||||||
|
org $+0x10000
|
||||||
old_ints_h:
|
old_ints_h:
|
||||||
dw 0x400
|
dw 0x400
|
||||||
dd 0
|
dd 0
|
||||||
dw 0
|
dw 0
|
||||||
|
org $-0x10000
|
||||||
|
|
||||||
rdelay:
|
rdelay:
|
||||||
ret
|
ret
|
||||||
@ -366,7 +368,7 @@ restart_kernel_4000:
|
|||||||
; bootloader interface
|
; bootloader interface
|
||||||
push 0x1000
|
push 0x1000
|
||||||
pop ds
|
pop ds
|
||||||
mov si, .bootloader_block-0x10000
|
mov si, .bootloader_block;-0x10000
|
||||||
mov ax, 'KL'
|
mov ax, 'KL'
|
||||||
jmp 0x1000:0000
|
jmp 0x1000:0000
|
||||||
|
|
||||||
@ -416,8 +418,9 @@ int 0x15
|
|||||||
;!!!!!!!!!!!!!!!!!!!!!!!!
|
;!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
fwwritedone:
|
fwwritedone:
|
||||||
ret
|
ret
|
||||||
|
org $+0x10000
|
||||||
flm db 0
|
flm db 0
|
||||||
|
org $-0x10000
|
||||||
|
|
||||||
floppy_write: ; write diskette image to physical floppy
|
floppy_write: ; write diskette image to physical floppy
|
||||||
|
|
||||||
@ -478,7 +481,7 @@ floppy_write: ; write diskette image to physical floppy
|
|||||||
dec ax
|
dec ax
|
||||||
jnz fwwrites
|
jnz fwwrites
|
||||||
ret
|
ret
|
||||||
|
org $+0x10000
|
||||||
fwmovedesc:
|
fwmovedesc:
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
@ -488,9 +491,9 @@ floppy_write: ; write diskette image to physical floppy
|
|||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0
|
||||||
|
org $-0x10000
|
||||||
use32
|
use32
|
||||||
|
org $+0x10000
|
||||||
uglobal
|
uglobal
|
||||||
shutdownpos dd 0x0
|
shutdownpos dd 0x0
|
||||||
endg
|
endg
|
||||||
|
@ -59,10 +59,11 @@ twdw equ (0x3000-window_data)
|
|||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
use16
|
use16
|
||||||
org 0x10000
|
org 0x0
|
||||||
jmp start_of_code
|
jmp start_of_code
|
||||||
|
|
||||||
; mike.dld {
|
; mike.dld {
|
||||||
|
org $+0x10000
|
||||||
db 0
|
db 0
|
||||||
dd servetable-0x10000
|
dd servetable-0x10000
|
||||||
draw_line dd __sys_draw_line
|
draw_line dd __sys_draw_line
|
||||||
@ -149,6 +150,7 @@ app_data equ 3+app_data_l-gdts
|
|||||||
and eax, 10011111b *65536*256 + 0xffffff ; caching enabled
|
and eax, 10011111b *65536*256 + 0xffffff ; caching enabled
|
||||||
mov cr0, eax
|
mov cr0, eax
|
||||||
jmp $+2
|
jmp $+2
|
||||||
|
org $+0x10000
|
||||||
mov ax,os_data ; Selector for os
|
mov ax,os_data ; Selector for os
|
||||||
mov ds,ax
|
mov ds,ax
|
||||||
mov es,ax
|
mov es,ax
|
||||||
|
@ -23,6 +23,7 @@ include "boot/bootru.inc" ; russian system boot messages
|
|||||||
;!!!
|
;!!!
|
||||||
end if
|
end if
|
||||||
include "boot/ru.inc" ; Russian font
|
include "boot/ru.inc" ; Russian font
|
||||||
|
org $-0x10000
|
||||||
|
|
||||||
include "boot/bootcode.inc" ; 16 bit system boot code
|
include "boot/bootcode.inc" ; 16 bit system boot code
|
||||||
|
|
||||||
|
@ -216,7 +216,7 @@ pimvga:
|
|||||||
pop ecx
|
pop ecx
|
||||||
|
|
||||||
dec ebx ; H--
|
dec ebx ; H--
|
||||||
jnz near pimvga
|
jnz pimvga
|
||||||
|
|
||||||
add esp,4 ; jump saved limit byte
|
add esp,4 ; jump saved limit byte
|
||||||
pop edx
|
pop edx
|
||||||
|
Loading…
Reference in New Issue
Block a user