/kernel/trunk/boot/bootcode.inc |
---|
149,6 → 149,7 |
; 16-bit data |
; videomodes table |
org $+0x10000 |
gr_table: |
dw 0x112+0100000000000000b , 640 , 480 ; 1 |
dw 0x115+0100000000000000b , 800 , 600 ; 2 |
173,6 → 174,7 |
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 |
mov [es : 0x9046], cx ; Save APM flags |
; Write APM ver ---- |
jmp @f |
msg_apm:db ' APM x.x ', 0 |
@@: and ax, 0xf0f |
and ax, 0xf0f |
add ax, '00' |
mov [msg_apm - 0x10000 + 5], ah |
mov [msg_apm - 0x10000 + 7], al |
mov si, msg_apm - 0x10000 |
mov [si + 5], ah |
mov [si + 7], al |
_setcursor 0, 3 |
mov si, msg_apm - 0x10000 |
call printplain |
_setcursor d80x25_top_num,0 |
; ------------------ |
474,7 → 474,7 |
; get start time |
call .gettime |
mov [.starttime-0x10000], eax |
mov word [.timer-0x10000], .newtimer-0x10000 |
mov word [.timer-0x10000], .newtimer |
mov word [.timer-0x10000+2], cs |
.printcfg: |
_setcursor 9,0 |
631,7 → 631,9 |
.bSettingsChanged db ? |
.timer dd ? |
end virtual |
org $+0x10000 |
.loader_block dd 0 |
org $-0x10000 |
.gettime: |
mov ah, 0 |
int 1Ah |
723,7 → 725,7 |
mov byte [space_msg-0x10000+80], 186 |
pop eax |
push cs |
push .cont-0x10000 |
push .cont |
push eax |
retf |
.loadc: |
/kernel/trunk/boot/bootru.inc |
---|
55,6 → 55,7 |
novesa db "¨¤¥®ª àâ : EGA/CGA",13,10,0 |
vervesa db "¥àá¨ï VESA: Vesa x.x",13,10,0 |
vervesa_off=19 |
msg_apm db " APM x.x ", 0 |
gr_mode db 186," Vesa 2.0+ 16 M LFB: [1] 640x480, [2] 800x600, " |
db "[3] 1024x768, [4] 1280x1024",13,10 |
db 186," Vesa 1.2 16 M Bnk: [5] 640x480, [6] 800x600, " |
/kernel/trunk/boot/shutdown.inc |
---|
182,6 → 182,7 |
use16 |
pr_mode_exit: |
org $-0x10000 |
; setup stack |
mov ax, 3000h |
283,11 → 284,12 |
pause_key_1: |
loop pause_key_1 |
ret |
org $+0x10000 |
old_ints_h: |
dw 0x400 |
dd 0 |
dw 0 |
org $-0x10000 |
rdelay: |
ret |
366,7 → 368,7 |
; bootloader interface |
push 0x1000 |
pop ds |
mov si, .bootloader_block-0x10000 |
mov si, .bootloader_block;-0x10000 |
mov ax, 'KL' |
jmp 0x1000:0000 |
416,8 → 418,9 |
;!!!!!!!!!!!!!!!!!!!!!!!! |
fwwritedone: |
ret |
org $+0x10000 |
flm db 0 |
org $-0x10000 |
floppy_write: ; write diskette image to physical floppy |
478,7 → 481,7 |
dec ax |
jnz fwwrites |
ret |
org $+0x10000 |
fwmovedesc: |
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0 |
db 0x00,0x00,0x0,0x00,0x00,0x00,0x0,0x0 |
488,9 → 491,9 |
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 |
org $+0x10000 |
uglobal |
shutdownpos dd 0x0 |
endg |
/kernel/trunk/kernel.asm |
---|
59,10 → 59,11 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
use16 |
org 0x10000 |
org 0x0 |
jmp start_of_code |
; mike.dld { |
org $+0x10000 |
db 0 |
dd servetable-0x10000 |
draw_line dd __sys_draw_line |
149,6 → 150,7 |
and eax, 10011111b *65536*256 + 0xffffff ; caching enabled |
mov cr0, eax |
jmp $+2 |
org $+0x10000 |
mov ax,os_data ; Selector for os |
mov ds,ax |
mov es,ax |
/kernel/trunk/kernel16.inc |
---|
23,6 → 23,7 |
;!!! |
end if |
include "boot/ru.inc" ; Russian font |
org $-0x10000 |
include "boot/bootcode.inc" ; 16 bit system boot code |
/kernel/trunk/video/vga.inc |
---|
216,7 → 216,7 |
pop ecx |
dec ebx ; H-- |
jnz near pimvga |
jnz pimvga |
add esp,4 ; jump saved limit byte |
pop edx |