Kernel updated to 0.6.5.0
git-svn-id: svn://kolibrios.org@346 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -221,8 +221,10 @@ write_cache:
|
|||||||
cmp eax,[PARTITION_END]
|
cmp eax,[PARTITION_END]
|
||||||
ja danger
|
ja danger
|
||||||
|
|
||||||
|
cmp [allow_dma_write], 1
|
||||||
|
jnz .nodma
|
||||||
cmp [dma_hdd], 1
|
cmp [dma_hdd], 1
|
||||||
jmp .nodma
|
jnz .nodma
|
||||||
; <EFBFBD><EFBFBD>ꥤ<EFBFBD><EFBFBD>塞 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 楯<EFBFBD>窨 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>饭<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <EFBFBD><EFBFBD>ꥤ<EFBFBD><EFBFBD>塞 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 楯<EFBFBD>窨 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>饭<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
cmp ecx, 1
|
cmp ecx, 1
|
||||||
jz .nonext
|
jz .nonext
|
||||||
@@ -586,6 +588,7 @@ cache_chain_size db 0
|
|||||||
cache_chain_started db 0
|
cache_chain_started db 0
|
||||||
dma_task_switched db 0
|
dma_task_switched db 0
|
||||||
dma_hdd db 0
|
dma_hdd db 0
|
||||||
|
allow_dma_write db 0
|
||||||
endg
|
endg
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
|
@@ -580,7 +580,7 @@ cfgmanager:
|
|||||||
; settings:
|
; settings:
|
||||||
; a) preboot_graph = graphical mode
|
; a) preboot_graph = graphical mode
|
||||||
; preboot_gprobe = probe this mode?
|
; preboot_gprobe = probe this mode?
|
||||||
; b) preboot_mtrr = use hardware acceleration?
|
; b) preboot_dma_write = use DMA write?
|
||||||
; c) preboot_vrrm = use VRR?
|
; c) preboot_vrrm = use VRR?
|
||||||
; d) preboot_device = from what boot?
|
; d) preboot_device = from what boot?
|
||||||
mov di, preboot_graph-0x10000
|
mov di, preboot_graph-0x10000
|
||||||
@@ -620,8 +620,8 @@ cfgmanager:
|
|||||||
@@:
|
@@:
|
||||||
mov [di], al
|
mov [di], al
|
||||||
.preboot_gr_end:
|
.preboot_gr_end:
|
||||||
cmp [di+preboot_mtrr-preboot_graph], 1
|
cmp [di+preboot_dma_write-preboot_graph], 1
|
||||||
adc [di+preboot_mtrr-preboot_graph], 0
|
adc [di+preboot_dma_write-preboot_graph], 0
|
||||||
cmp [di+preboot_vrrm-preboot_graph], 1
|
cmp [di+preboot_vrrm-preboot_graph], 1
|
||||||
adc [di+preboot_vrrm-preboot_graph], 0
|
adc [di+preboot_vrrm-preboot_graph], 0
|
||||||
cmp [di+preboot_device-preboot_graph], 1
|
cmp [di+preboot_device-preboot_graph], 1
|
||||||
@@ -676,8 +676,8 @@ cfgmanager:
|
|||||||
.c:
|
.c:
|
||||||
mov si, linef-0x10000
|
mov si, linef-0x10000
|
||||||
call printplain
|
call printplain
|
||||||
mov si, mtrr_msg-0x10000
|
mov si, dma_msg-0x10000
|
||||||
cmp [preboot_mtrr-0x10000], 1
|
cmp [preboot_dma_write-0x10000], 1
|
||||||
call .say_on_off
|
call .say_on_off
|
||||||
mov si, vrrm_msg-0x10000
|
mov si, vrrm_msg-0x10000
|
||||||
cmp [preboot_vrrm-0x10000], 1
|
cmp [preboot_vrrm-0x10000], 1
|
||||||
@@ -761,11 +761,11 @@ cfgmanager:
|
|||||||
jmp .d
|
jmp .d
|
||||||
.change_b:
|
.change_b:
|
||||||
_setcursor 15,0
|
_setcursor 15,0
|
||||||
mov si, gr_acc-0x10000
|
mov si, ask_dma-0x10000
|
||||||
call print
|
call print
|
||||||
mov bx, '12'
|
mov bx, '12'
|
||||||
call getkey
|
call getkey
|
||||||
mov [preboot_mtrr-0x10000], al
|
mov [preboot_dma_write-0x10000], al
|
||||||
_setcursor 11,0
|
_setcursor 11,0
|
||||||
jmp .d
|
jmp .d
|
||||||
.change_c:
|
.change_c:
|
||||||
@@ -1018,9 +1018,13 @@ end if
|
|||||||
|
|
||||||
|
|
||||||
; GRAPHICS ACCELERATION
|
; GRAPHICS ACCELERATION
|
||||||
|
; force yes
|
||||||
|
mov [es:0x901C], byte 1
|
||||||
|
|
||||||
mov al, [preboot_mtrr-0x10000]
|
; DMA WRITE
|
||||||
mov [es:0x901C],al
|
|
||||||
|
mov al, [preboot_dma_write-0x10000]
|
||||||
|
mov [es:0x901F],al
|
||||||
|
|
||||||
; VRR_M USE
|
; VRR_M USE
|
||||||
|
|
||||||
|
@@ -73,8 +73,7 @@ vrrmprint db "Apply VRR? (picture frequency greater than 60Hz"
|
|||||||
; db " Select port [1-3]: ",0
|
; db " Select port [1-3]: ",0
|
||||||
;no_com1 db 13,10,186, " No COM1 mouse",0
|
;no_com1 db 13,10,186, " No COM1 mouse",0
|
||||||
;no_com2 db 13,10,186, " No COM2 mouse",0
|
;no_com2 db 13,10,186, " No COM2 mouse",0
|
||||||
gr_acc db "Vesa 2.0+ : MTRR graphics acceleration "
|
ask_dma db "Use DMA for HDD writing? [1-yes/2-no]: ",0
|
||||||
db "[1-yes/2-no] ? ",0
|
|
||||||
;gr_direct db 186," Use direct LFB writing? "
|
;gr_direct db 186," Use direct LFB writing? "
|
||||||
; db "[1-yes/2-no] ? ",0
|
; db "[1-yes/2-no] ? ",0
|
||||||
;mem_model db 13,10,186," Motherboard memory [1-16 Mb / 2-32 Mb / "
|
;mem_model db 13,10,186," Motherboard memory [1-16 Mb / 2-32 Mb / "
|
||||||
@@ -120,7 +119,7 @@ mode9 db "320x200, EGA/CGA 256 colors",0
|
|||||||
mode10 db "640x480, VGA 16 colors",0
|
mode10 db "640x480, VGA 16 colors",0
|
||||||
probeno_msg db " (standard mode)",0
|
probeno_msg db " (standard mode)",0
|
||||||
probeok_msg db " (check nonstandard modes)",0
|
probeok_msg db " (check nonstandard modes)",0
|
||||||
mtrr_msg db " [b] Use MTRR for graphics acceleration:",0
|
dma_msg db " [b] Use DMA for HDD writing:",0
|
||||||
on_msg db " on",13,10,0
|
on_msg db " on",13,10,0
|
||||||
off_msg db " off",13,10,0
|
off_msg db " off",13,10,0
|
||||||
vrrm_msg db " [c] Use VRR:",0
|
vrrm_msg db " [c] Use VRR:",0
|
||||||
|
@@ -73,8 +73,7 @@ vrrmprint db "Kinnita VRR? (ekraani sagedus suurem kui 60Hz"
|
|||||||
; db " Vali port [1-3]: ",0
|
; db " Vali port [1-3]: ",0
|
||||||
;no_com1 db 13,10,186, " No COM1 mouse",0
|
;no_com1 db 13,10,186, " No COM1 mouse",0
|
||||||
;no_com2 db 13,10,186, " No COM2 mouse",0
|
;no_com2 db 13,10,186, " No COM2 mouse",0
|
||||||
gr_acc db "Vesa 2.0+ : MTRR graafika kiirendus "
|
ask_dma db "Use DMA for HDD writing? [1-jah/2-ei]: ",0
|
||||||
db "[1-jah/2-ei] ? ",0
|
|
||||||
;gr_direct db 186," Use direct LFB writing? "
|
;gr_direct db 186," Use direct LFB writing? "
|
||||||
; db "[1-yes/2-no] ? ",0
|
; db "[1-yes/2-no] ? ",0
|
||||||
;mem_model db 13,10,186," Motherboard memory [1-16 Mb / 2-32 Mb / "
|
;mem_model db 13,10,186," Motherboard memory [1-16 Mb / 2-32 Mb / "
|
||||||
@@ -120,7 +119,7 @@ mode9 db "320x200, EGA/CGA 256 v
|
|||||||
mode10 db "640x480, VGA 16 v<>rvi",0
|
mode10 db "640x480, VGA 16 v<>rvi",0
|
||||||
probeno_msg db " (standard reziim)",0
|
probeno_msg db " (standard reziim)",0
|
||||||
probeok_msg db " (kontrolli ebastandardseid reziime)",0
|
probeok_msg db " (kontrolli ebastandardseid reziime)",0
|
||||||
mtrr_msg db " [b] kasuta MTRR graafika kiirendamiseks:",0
|
dma_msg db " [b] Use DMA for HDD writing:",0
|
||||||
on_msg db " sees",13,10,0
|
on_msg db " sees",13,10,0
|
||||||
off_msg db " v<>ljas",13,10,0
|
off_msg db " v<>ljas",13,10,0
|
||||||
vrrm_msg db " [c] Kasuta VRR:",0
|
vrrm_msg db " [c] Kasuta VRR:",0
|
||||||
|
@@ -78,8 +78,7 @@ vrrmprint db "VRR verwenden? (Monitorfrequenz groesser als 60Hz"
|
|||||||
; db " Waehle Port [1-3]: ",0
|
; db " Waehle Port [1-3]: ",0
|
||||||
;no_com1 db 13,10,186, " Keine COM1 Maus",0
|
;no_com1 db 13,10,186, " Keine COM1 Maus",0
|
||||||
;no_com2 db 13,10,186, " Keine COM2 Maus",0
|
;no_com2 db 13,10,186, " Keine COM2 Maus",0
|
||||||
gr_acc db "Vesa 2.0+ : MTRR Grafikbeschleunigung "
|
ask_dma db "Nutze DMA zum HDD Aufschreiben? [1-ja/2-nein]: ",0
|
||||||
db "[1-ja/2-nein] ? ",0
|
|
||||||
;gr_direct db 186," Benutze direct LFB? "
|
;gr_direct db 186," Benutze direct LFB? "
|
||||||
; db "[1-ja/2-nein] ? ",0
|
; db "[1-ja/2-nein] ? ",0
|
||||||
;mem_model db 13,10,186," Hauptspeicher [1-16 Mb / 2-32 Mb / "
|
;mem_model db 13,10,186," Hauptspeicher [1-16 Mb / 2-32 Mb / "
|
||||||
@@ -125,7 +124,7 @@ mode9 db "320x200, EGA/CGA 256 colors",0
|
|||||||
mode10 db "640x480, VGA 16 colors",0
|
mode10 db "640x480, VGA 16 colors",0
|
||||||
probeno_msg db " (Standard Modus)",0
|
probeno_msg db " (Standard Modus)",0
|
||||||
probeok_msg db " (teste nicht-standard Modi)",0
|
probeok_msg db " (teste nicht-standard Modi)",0
|
||||||
mtrr_msg db " [b] Nutze MTRR fuer Graphibeschleunigung:",0
|
dma_msg db " [b] Nutze DMA zum HDD Aufschreiben:",0
|
||||||
on_msg db " an",13,10,0
|
on_msg db " an",13,10,0
|
||||||
off_msg db " aus",13,10,0
|
off_msg db " aus",13,10,0
|
||||||
vrrm_msg db " [c] Nutze VRR:",0
|
vrrm_msg db " [c] Nutze VRR:",0
|
||||||
|
@@ -73,8 +73,7 @@ vrrmprint db "
|
|||||||
; db " <20>롥<EFBFBD><EBA1A5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> [1-3]: ",0
|
; db " <20>롥<EFBFBD><EBA1A5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> [1-3]: ",0
|
||||||
;no_com1 db 13,10,186," No COM1 mouse",0
|
;no_com1 db 13,10,186," No COM1 mouse",0
|
||||||
;no_com2 db 13,10,186," No COM2 mouse",0
|
;no_com2 db 13,10,186," No COM2 mouse",0
|
||||||
gr_acc db "Vesa 2.0+: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MTRR <20><><EFBFBD> <20>७<EFBFBD><EFBFBD> <20><><EFBFBD>䨪<EFBFBD>? "
|
ask_dma db "<EFBFBD>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD> DMA <20><><EFBFBD> <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> HDD? [1-<2D><>/2-<2D><><EFBFBD>]: ",0
|
||||||
db "[1-<2D><>/2-<2D><><EFBFBD>]: ",0
|
|
||||||
;gr_direct db 186," <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? "
|
;gr_direct db 186," <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? "
|
||||||
; db "[1-<2D><>/2-<2D><><EFBFBD>]: ",0
|
; db "[1-<2D><>/2-<2D><><EFBFBD>]: ",0
|
||||||
;mem_model db 13,10,186," <20><><EFBFBD>+<2B> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [1-16 Mb / 2-32 Mb / "
|
;mem_model db 13,10,186," <20><><EFBFBD>+<2B> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [1-16 Mb / 2-32 Mb / "
|
||||||
@@ -120,7 +119,7 @@ mode9 db "320x200, EGA/CGA 256 梥⮢",0
|
|||||||
mode10 db "640x480, VGA 16 梥⮢",0
|
mode10 db "640x480, VGA 16 梥⮢",0
|
||||||
probeno_msg db " (<28>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>०<EFBFBD><E0A5A6>)",0
|
probeno_msg db " (<28>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>०<EFBFBD><E0A5A6>)",0
|
||||||
probeok_msg db " (<28><EFBFBD><E0AEA2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ०<><E0A5A6><EFBFBD>)",0
|
probeok_msg db " (<28><EFBFBD><E0AEA2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ०<><E0A5A6><EFBFBD>)",0
|
||||||
mtrr_msg db " [b] <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> MTRR <20><><EFBFBD> <20>७<EFBFBD><EFBFBD> <20><><EFBFBD>䨪<EFBFBD>:",0
|
dma_msg db " [b] <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> DMA <20><><EFBFBD> <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> HDD:",0
|
||||||
on_msg db " <20><><EFBFBD>",13,10,0
|
on_msg db " <20><><EFBFBD>",13,10,0
|
||||||
off_msg db " <20>몫",13,10,0
|
off_msg db " <20>몫",13,10,0
|
||||||
vrrm_msg db " [c] <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> VRR:",0
|
vrrm_msg db " [c] <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> VRR:",0
|
||||||
|
@@ -10,7 +10,7 @@ display_atboot db 0 ; show boot screen messages ( 2-no )
|
|||||||
preboot_graph db 0 ; graph mode
|
preboot_graph db 0 ; graph mode
|
||||||
preboot_gprobe db 0 ; probe vesa3 videomodes (1-no, 2-yes)
|
preboot_gprobe db 0 ; probe vesa3 videomodes (1-no, 2-yes)
|
||||||
preboot_vrrm db 0 ; use VRR_M (1-yes, 2- no)
|
preboot_vrrm db 0 ; use VRR_M (1-yes, 2- no)
|
||||||
preboot_mtrr db 0 ; mtrr acceleration (1-yes, 2-no)
|
preboot_dma_write db 0 ; use DMA for writing to HDD (1-yes, 2-no)
|
||||||
preboot_device db 0 ; boot device
|
preboot_device db 0 ; boot device
|
||||||
; (1-floppy 2-harddisk 3-kernel restart)
|
; (1-floppy 2-harddisk 3-kernel restart)
|
||||||
;!!!! 0 - autodetect !!!!
|
;!!!! 0 - autodetect !!!!
|
||||||
|
@@ -298,45 +298,13 @@ proc get_service stdcall, sz_name:dword
|
|||||||
mov edx, [edx+SRV.fd]
|
mov edx, [edx+SRV.fd]
|
||||||
jmp @B
|
jmp @B
|
||||||
.not_load:
|
.not_load:
|
||||||
stdcall find_service, [sz_name]
|
pop ebp
|
||||||
test eax, eax
|
jmp load_driver
|
||||||
jz @F
|
|
||||||
stdcall load_driver, eax
|
|
||||||
@@:
|
|
||||||
ret
|
|
||||||
.ok:
|
.ok:
|
||||||
mov eax, edx
|
mov eax, edx
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
align 4
|
|
||||||
proc find_service stdcall ,sz_name:dword
|
|
||||||
|
|
||||||
mov eax, [sz_name]
|
|
||||||
test eax, eax
|
|
||||||
jz .fail
|
|
||||||
|
|
||||||
mov esi, services
|
|
||||||
@@:
|
|
||||||
mov eax, [esi]
|
|
||||||
test eax, eax
|
|
||||||
jz .fail
|
|
||||||
push esi
|
|
||||||
stdcall strncmp, eax, [sz_name], 16
|
|
||||||
pop esi
|
|
||||||
test eax, eax
|
|
||||||
je .ok
|
|
||||||
|
|
||||||
add esi, 8
|
|
||||||
jmp @B
|
|
||||||
.ok:
|
|
||||||
mov eax, [esi+4]
|
|
||||||
ret
|
|
||||||
.fail:
|
|
||||||
xor eax, eax
|
|
||||||
ret
|
|
||||||
endp
|
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
reg_service:
|
reg_service:
|
||||||
.sz_name equ esp+4
|
.sz_name equ esp+4
|
||||||
@@ -705,7 +673,7 @@ proc fix_coff_relocs stdcall, coff:dword, sec:dword, sym:dword
|
|||||||
endp
|
endp
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
proc load_driver stdcall, file_name:dword
|
proc load_driver stdcall, driver_name:dword
|
||||||
locals
|
locals
|
||||||
coff dd ?
|
coff dd ?
|
||||||
sym dd ?
|
sym dd ?
|
||||||
@@ -716,9 +684,27 @@ proc load_driver stdcall, file_name:dword
|
|||||||
|
|
||||||
exports dd ? ;fake exports table
|
exports dd ? ;fake exports table
|
||||||
dd ?
|
dd ?
|
||||||
|
file_name rb 14+16+4+1 ; '/rd/1/drivers/<up-to-16-chars>.obj'
|
||||||
endl
|
endl
|
||||||
|
|
||||||
stdcall load_file, [file_name]
|
lea edx, [file_name]
|
||||||
|
mov dword [edx], '/rd/'
|
||||||
|
mov dword [edx+4], '1/dr'
|
||||||
|
mov dword [edx+8], 'iver'
|
||||||
|
mov word [edx+12], 's/'
|
||||||
|
mov esi, [driver_name]
|
||||||
|
lea edi, [edx+14]
|
||||||
|
mov ecx, 16
|
||||||
|
@@:
|
||||||
|
lodsb
|
||||||
|
test al, al
|
||||||
|
jz @f
|
||||||
|
stosb
|
||||||
|
loop @b
|
||||||
|
@@:
|
||||||
|
mov dword [edi], '.obj'
|
||||||
|
mov byte [edi+4], 0
|
||||||
|
stdcall load_file, edx
|
||||||
|
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jz .exit
|
jz .exit
|
||||||
@@ -835,7 +821,7 @@ proc load_driver stdcall, file_name:dword
|
|||||||
.ver_fail:
|
.ver_fail:
|
||||||
mov esi, msg_CR
|
mov esi, msg_CR
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
mov esi, [file_name]
|
mov esi, [driver_name]
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
mov esi, msg_CR
|
mov esi, msg_CR
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
@@ -848,7 +834,7 @@ proc load_driver stdcall, file_name:dword
|
|||||||
.link_fail:
|
.link_fail:
|
||||||
mov esi, msg_module
|
mov esi, msg_module
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
mov esi, [file_name]
|
mov esi, [driver_name]
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
mov esi, msg_CR
|
mov esi, msg_CR
|
||||||
call sys_msg_board_str
|
call sys_msg_board_str
|
||||||
@@ -1041,13 +1027,9 @@ destroy_kernel_object:
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
drv_sound db '/rd/1/drivers/unisound.obj', 0
|
;szSound db 'SOUND',0
|
||||||
drv_infinity db '/rd/1/drivers/infinity.obj', 0
|
;szInfinity db 'INFINITY',0
|
||||||
drv_hw_mouse db '/rd/1/drivers/ati2d.obj',0
|
szHwMouse db 'ATI2D',0
|
||||||
|
|
||||||
szSound db 'SOUND',0
|
|
||||||
szInfinity db 'INFINITY',0
|
|
||||||
szHwMouse db 'HWCURSOR',0
|
|
||||||
|
|
||||||
szSTART db 'START',0
|
szSTART db 'START',0
|
||||||
szEXPORTS db 'EXPORTS',0
|
szEXPORTS db 'EXPORTS',0
|
||||||
@@ -1063,10 +1045,3 @@ align 4
|
|||||||
create_cursor dd 0
|
create_cursor dd 0
|
||||||
set_hw_cursor dd 0
|
set_hw_cursor dd 0
|
||||||
hw_restore dd 0
|
hw_restore dd 0
|
||||||
|
|
||||||
align 16
|
|
||||||
services:
|
|
||||||
dd szSound, drv_sound
|
|
||||||
dd szInfinity, drv_infinity
|
|
||||||
dd szHwMouse, drv_hw_mouse
|
|
||||||
dd 0
|
|
||||||
|
@@ -11,25 +11,42 @@ FindHDD:
|
|||||||
mov [ChannelNumber],1
|
mov [ChannelNumber],1
|
||||||
mov [DiskNumber],0
|
mov [DiskNumber],0
|
||||||
call FindHDD_3
|
call FindHDD_3
|
||||||
|
; mov ax,[Sector512+176]
|
||||||
|
; mov [0x40006],ax
|
||||||
|
; mov ax,[Sector512+126]
|
||||||
|
; mov [0x40008],ax
|
||||||
|
; mov ax,[Sector512+128]
|
||||||
|
; mov [0x40008],ax
|
||||||
mov [DiskNumber],1
|
mov [DiskNumber],1
|
||||||
call FindHDD_3
|
call FindHDD_3
|
||||||
|
; mov al,[Sector512+176]
|
||||||
|
; mov [0x40007],al
|
||||||
inc [ChannelNumber]
|
inc [ChannelNumber]
|
||||||
mov [DiskNumber],0
|
mov [DiskNumber],0
|
||||||
call FindHDD_3
|
call FindHDD_3
|
||||||
|
; mov al,[Sector512+176]
|
||||||
|
; mov [0x40008],al
|
||||||
mov [DiskNumber],1
|
mov [DiskNumber],1
|
||||||
call FindHDD_1
|
call FindHDD_1
|
||||||
|
; mov al,[Sector512+176]
|
||||||
|
; mov [0x40009],al
|
||||||
|
|
||||||
jmp EndFindHDD
|
jmp EndFindHDD
|
||||||
|
|
||||||
FindHDD_1:
|
FindHDD_1:
|
||||||
call DeviceReset
|
|
||||||
cmp [DevErrorCode],0
|
|
||||||
jne FindHDD_2_2
|
|
||||||
call ReadHDD_ID
|
call ReadHDD_ID
|
||||||
cmp [DevErrorCode],0
|
cmp [DevErrorCode],0
|
||||||
jne FindHDD_2
|
jne FindHDD_2
|
||||||
|
cmp [Sector512+6],word 16
|
||||||
|
ja FindHDD_2
|
||||||
|
cmp [Sector512+12],word 255
|
||||||
|
ja FindHDD_2
|
||||||
inc byte [0x40001]
|
inc byte [0x40001]
|
||||||
ret
|
jmp FindHDD_2_2
|
||||||
FindHDD_2:
|
FindHDD_2:
|
||||||
|
call DeviceReset
|
||||||
|
cmp [DevErrorCode],0
|
||||||
|
jne FindHDD_2_2
|
||||||
call ReadCD_ID
|
call ReadCD_ID
|
||||||
cmp [DevErrorCode],0
|
cmp [DevErrorCode],0
|
||||||
jne FindHDD_2_2
|
jne FindHDD_2_2
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Kolibri 0.6.4.0
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Kolibri 0.6.5.0
|
||||||
|
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD>頥<EFBFBD><E9A0A5><EFBFBD> <20> ॣ<><E0A5A3><EFBFBD><EFBFBD> eax.
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD>頥<EFBFBD><E9A0A5><EFBFBD> <20> ॣ<><E0A5A3><EFBFBD><EFBFBD> eax.
|
||||||
<EFBFBD>맮<EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢫<EFBFBD><E2A2AB><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "int 0x40".
|
<EFBFBD>맮<EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20>㭪樨 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢫<EFBFBD><E2A2AB><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "int 0x40".
|
||||||
@@ -844,8 +844,8 @@
|
|||||||
db a,b,c,d <20><><EFBFBD> <20><><EFBFBD>ᨨ a.b.c.d
|
db a,b,c,d <20><><EFBFBD> <20><><EFBFBD>ᨨ a.b.c.d
|
||||||
db UID_xxx: <20><><EFBFBD><EFBFBD> <20><> UID_NONE=0, UID_MENUET=1, UID_KOLIBRI=2
|
db UID_xxx: <20><><EFBFBD><EFBFBD> <20><> UID_NONE=0, UID_MENUET=1, UID_KOLIBRI=2
|
||||||
db 'name',0 - ASCIIZ-<2D><>ப<EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
db 'name',0 - ASCIIZ-<2D><>ப<EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Kolibri 0.6.4.0:
|
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Kolibri 0.6.5.0:
|
||||||
db 0,6,4,0
|
db 0,6,5,0
|
||||||
db 2
|
db 2
|
||||||
db 'Kolibri',0
|
db 'Kolibri',0
|
||||||
|
|
||||||
@@ -1118,10 +1118,9 @@ db 'Kolibri',0
|
|||||||
=========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 21, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 7 - <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> HD. ===========
|
=========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 21, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 7 - <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> HD. ===========
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦭<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦭<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>
|
||||||
<EFBFBD>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ<EFBFBD><EFBFBD><EFBFBD> <20>㭪権 ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC> <20> <20>㭪権,
|
<EFBFBD>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <20><><EFBFBD><EFBFBD>ॢ襩 <20>㭪樨 58;
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> (⨯<> <20><><EFBFBD><EFBFBD>㭪樨 6 <20>㭪樨 18);
|
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㭪権 58 <20> 70 <20> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⮬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||||
/HD0,/HD1,/HD2,/HD3 <20><><EFBFBD> <20>㭪樨 ᠬ<> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
* ebx = 7 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
* ebx = 7 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
||||||
@@ -1140,11 +1139,9 @@ db 'Kolibri',0
|
|||||||
========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 21, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 8 - <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> HD. ==========
|
========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 21, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 8 - <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> HD. ==========
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦥<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD>⪮<EFBFBD><E2AAAE> <20><>᪠
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦥<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD>⪮<EFBFBD><E2AAAE> <20><>᪠
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ<EFBFBD><EFBFBD><EFBFBD> <20>㭪権 ࠡ<><E0A0A1><EFBFBD> <20> 䠩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ॢ襩
|
||||||
<EFBFBD><EFBFBD><EFBFBD>⥬<EFBFBD><EFBFBD> <20> <20>㭪権, <20><><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⪨<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> (⨯<EFBFBD>
|
<EFBFBD>㭪樨 58; <EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㭪樨 6 <20>㭪樨 18); <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20>㭪権 58 <20> 70
|
/HD0,/HD1,/HD2,/HD3 <20><><EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⮬<EFBFBD><E2AEAC><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||||
<EFBFBD> ᮢ६<E1AEA2><E0A5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3 <20><><EFBFBD> <20>㭪樨 ᠬ<>
|
|
||||||
<EFBFBD><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD>.
|
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
* ebx = 8 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
* ebx = 8 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
||||||
@@ -1552,10 +1549,9 @@ db 'Kolibri',0
|
|||||||
============ <20>㭪<EFBFBD><E3ADAA><EFBFBD> 26, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 7 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> HD. ============
|
============ <20>㭪<EFBFBD><E3ADAA><EFBFBD> 26, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 7 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> HD. ============
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦭<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦭<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>
|
||||||
<EFBFBD>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ<EFBFBD><EFBFBD><EFBFBD> <20>㭪権 ࠡ<><E0A0A1><EFBFBD> <20> 䠩<><E4A0A9><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC> <20> <20>㭪権,
|
<EFBFBD>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <20><><EFBFBD><EFBFBD>ॢ襩 <20>㭪樨 58;
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⪨<EFBFBD> <20><><EFBFBD><EFBFBD> (⨯<> <20><><EFBFBD><EFBFBD>㭪樨 6 <20>㭪樨 18);
|
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㭪権 58 <20> 70 <20> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⮬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||||
/HD0,/HD1,/HD2,/HD3 <20><><EFBFBD> <20>㭪樨 ᠬ<> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
* ebx = 7 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
* ebx = 7 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
||||||
@@ -1570,11 +1566,9 @@ db 'Kolibri',0
|
|||||||
=========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 26, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 8 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> HD. ===========
|
=========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 26, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 8 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> HD. ===========
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦥<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD>⪮<EFBFBD><E2AAAE> <20><>᪠
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HD <20>㦥<EFBFBD> <20><><EFBFBD> <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD>⪮<EFBFBD><E2AAAE> <20><>᪠
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ<EFBFBD><EFBFBD><EFBFBD> <20>㭪権 ࠡ<><E0A0A1><EFBFBD> <20> 䠩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ॢ襩
|
||||||
<EFBFBD><EFBFBD><EFBFBD>⥬<EFBFBD><EFBFBD> <20> <20>㭪権, <20><><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⪨<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> (⨯<EFBFBD>
|
<EFBFBD>㭪樨 58; <EFBFBD><EFBFBD><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㭪樨 6 <20>㭪樨 18); <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20>㭪権 58 <20> 70 <20>
|
/HD0,/HD1,/HD2,/HD3 <20><><EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⮬<EFBFBD><E2AEAC><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||||
ᮢ६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3 <20><><EFBFBD> <20>㭪樨 ᠬ<>
|
|
||||||
<EFBFBD><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD>.
|
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
* ebx = 8 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
* ebx = 8 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
||||||
@@ -2720,24 +2714,26 @@ dword-
|
|||||||
<20><> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD> <20>㭪<EFBFBD><E3ADAA><EFBFBD>
|
<20><> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD> <20>㭪<EFBFBD><E3ADAA><EFBFBD>
|
||||||
* al = 0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* al = 0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
* al = 1 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* al = 1 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
* ebx ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
||||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ॠ<><E0A5A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD> <20>㭪<EFBFBD><E3ADAA><EFBFBD>
|
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ॠ<><E0A5A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD> <20>㭪<EFBFBD><E3ADAA><EFBFBD>
|
||||||
⮫쪮 <20><><EFBFBD> <20><>⥢<EFBFBD><E2A5A2> <20><><EFBFBD><EFBFBD> RTL8139.
|
⮫쪮 <20><><EFBFBD> <20><>⥢<EFBFBD><E2A5A2> <20><><EFBFBD><EFBFBD> RTL8139.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
==== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 53, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 11 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>⥪<EFBFBD>. ====
|
==== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 53, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 11 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⥢<EFBFBD><EFBFBD><EFBFBD> <20>⥪<EFBFBD>. ====
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 53 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 53 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
* ebx = 11 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
* ebx = 11 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨
|
||||||
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD> ᮪<><E1AEAA><EFBFBD>
|
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD> ᮪<><E1AEAA><EFBFBD>
|
||||||
* edx = 㪠<><E3AAA0>⥫<EFBFBD>, <20>㤠 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ᠭ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* edx = 㪠<><E3AAA0>⥫<EFBFBD> <20><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
* esi = ࠧ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD>ᨬ<EFBFBD><E1A8AC> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <><E1AAAE><EFBFBD><E0AEA2><EFBFBD>)
|
* esi = <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20>⥭<EFBFBD><E2A5AD>;
|
||||||
|
* esi = 0 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD>ᨬ<EFBFBD><E1A8AC> 4096 <20><><EFBFBD><EFBFBD>)
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
||||||
* eax = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <><E1AAAE><EFBFBD><E0AEA2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
* eax = <20><> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
* ebx ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
||||||
* <20> ࠧ<><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠢ<EFBFBD><EFBFBD> 0, <20><><EFBFBD><EFBFBD><EFBFBD> <><E1AAAE><EFBFBD><E0AEA2><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* <20><EFBFBD>ન <EFBFBD><EFBFBD> <20>ࠢ<EFBFBD><EFBFBD>쭮<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||||
(<28><><EFBFBD>ᨬ<EFBFBD><E1A8AC> 4096 <20><><EFBFBD><EFBFBD>)
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
<20>㭪<EFBFBD><E3ADAA><EFBFBD> 53, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 255 - <20>⫠<EFBFBD><E2ABA0>筠<EFBFBD> <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20><>⥢<EFBFBD><E2A5A2><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD>.
|
<20>㭪<EFBFBD><E3ADAA><EFBFBD> 53, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 255 - <20>⫠<EFBFBD><E2ABA0>筠<EFBFBD> <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20><>⥢<EFBFBD><E2A5A2><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD>.
|
||||||
@@ -3692,10 +3688,7 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* <20><><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⢨⥫쭮 <20> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>.
|
* <20><><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⢨⥫쭮 <20> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>.
|
||||||
<20><><EFBFBD>ᨬ<EFBFBD><E1A8AC>쭠<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> - 16 ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>騩
|
<20><><EFBFBD>ᨬ<EFBFBD><E1A8AC>쭠<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> - 16 ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>騩
|
||||||
<20>㫥<EFBFBD><E3ABA5><EFBFBD> ᨬ<><E1A8AC><EFBFBD>, <20><>⠫<EFBFBD><E2A0AB><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
<20>㫥<EFBFBD><E3ABA5><EFBFBD> ᨬ<><E1A8AC><EFBFBD>, <20><>⠫<EFBFBD><E2A0AB><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||||
* <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㦠<EFBFBD><EFBFBD> ⮫쪮 <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD>, <20><>ॣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>⥬<EFBFBD>;
|
* <20>ࠩ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ABC <20><><EFBFBD><EFBFBD>㦠<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 䠩<><E4A0A9> /rd/1/drivers/ABC.obj.
|
||||||
<20> ⥪<>饩 ॠ<><E0A5A0><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD> <><E0AEA2> 2 ⠪<><E2A0AA> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD>:
|
|
||||||
* <20><><EFBFBD> SOUND, 䠩<> /rd/1/drivers/unisound.obj
|
|
||||||
* <20><><EFBFBD> INFINITY, 䠩<> /rd/1/drivers/infinity.obj
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 68, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 17 - <20><>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9>. =========
|
========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 68, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 17 - <20><>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20>ࠩ<EFBFBD><E0A0A9>. =========
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
SYSTEM FUNCTIONS of OS Kolibri 0.6.4.0
|
SYSTEM FUNCTIONS of OS Kolibri 0.6.5.0
|
||||||
|
|
||||||
Number of the function is located in the register eax.
|
Number of the function is located in the register eax.
|
||||||
The call of the system function is executed by "int 0x40" command.
|
The call of the system function is executed by "int 0x40" command.
|
||||||
@@ -676,7 +676,7 @@ Parameters:
|
|||||||
Returned value:
|
Returned value:
|
||||||
* eax = 0 - success
|
* eax = 0 - success
|
||||||
* else eax = error code of the file system
|
* else eax = error code of the file system
|
||||||
Remarks:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* All folders in the given path must exist, otherwise function
|
* All folders in the given path must exist, otherwise function
|
||||||
returns value 5, "file not found".
|
returns value 5, "file not found".
|
||||||
|
|
||||||
@@ -843,8 +843,8 @@ Structure of the buffer:
|
|||||||
db a,b,c,d for version a.b.c.d
|
db a,b,c,d for version a.b.c.d
|
||||||
db UID_xxx: one of UID_NONE=0, UID_MENUET=1, UID_KOLIBRI=2
|
db UID_xxx: one of UID_NONE=0, UID_MENUET=1, UID_KOLIBRI=2
|
||||||
db 'name',0 - ASCIIZ-string with the name
|
db 'name',0 - ASCIIZ-string with the name
|
||||||
For Kolibri 0.6.4.0 kernel:
|
For Kolibri 0.6.5.0 kernel:
|
||||||
db 0,6,4,0
|
db 0,6,5,0
|
||||||
db 2
|
db 2
|
||||||
db 'Kolibri',0
|
db 'Kolibri',0
|
||||||
|
|
||||||
@@ -1112,10 +1112,8 @@ Remarks:
|
|||||||
============== Function 21, subfunction 7 - set HD base. =============
|
============== Function 21, subfunction 7 - set HD base. =============
|
||||||
======================================================================
|
======================================================================
|
||||||
The HD base defines hard disk to write with usage of obsolete
|
The HD base defines hard disk to write with usage of obsolete
|
||||||
file system functions and functions implicitly using the hard disk
|
syntax /HD in obsolete function 58; at usage of modern syntax
|
||||||
(such as subfunction 6 of function 18);
|
/HD0,/HD1,/HD2,/HD3 base is set automatically.
|
||||||
at usage of function 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
|
||||||
these function set base themselves.
|
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 21 - function number
|
* eax = 21 - function number
|
||||||
* ebx = 7 - subfunction number
|
* ebx = 7 - subfunction number
|
||||||
@@ -1134,10 +1132,9 @@ Remarks:
|
|||||||
========= Function 21, subfunction 8 - set used HD partition. ========
|
========= Function 21, subfunction 8 - set used HD partition. ========
|
||||||
======================================================================
|
======================================================================
|
||||||
The HD partition defines partition of the hard disk to write with
|
The HD partition defines partition of the hard disk to write with
|
||||||
usage of obsolete file system functions and functions implicitly
|
usage of obsolete syntax /HD and obsolete function 58;
|
||||||
using the hard disk (such as subfunction 6 of function 18);
|
|
||||||
at usage of functions 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
at usage of functions 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
||||||
these functions set base and partition themselves.
|
base and partition are set automatically.
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 21 - function number
|
* eax = 21 - function number
|
||||||
* ebx = 8 - subfunction number
|
* ebx = 8 - subfunction number
|
||||||
@@ -1532,10 +1529,8 @@ Remarks:
|
|||||||
============== Function 26, subfunction 7 - get HD base. =============
|
============== Function 26, subfunction 7 - get HD base. =============
|
||||||
======================================================================
|
======================================================================
|
||||||
The HD base defines hard disk to write with usage of obsolete
|
The HD base defines hard disk to write with usage of obsolete
|
||||||
file system functions and functions implicitly using the hard disk
|
syntax /HD in obsolete function 58; at usage of modern syntax
|
||||||
(such as subfunction 6 of function 18);
|
/HD0,/HD1,/HD2,/HD3 base is set automatically.
|
||||||
at usage of function 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
|
||||||
these function set base themselves.
|
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 26 - function number
|
* eax = 26 - function number
|
||||||
* ebx = 7 - subfunction number
|
* ebx = 7 - subfunction number
|
||||||
@@ -1550,10 +1545,9 @@ Remarks:
|
|||||||
========= Function 26, subfunction 8 - get used HD partition. ========
|
========= Function 26, subfunction 8 - get used HD partition. ========
|
||||||
======================================================================
|
======================================================================
|
||||||
The HD partition defines partition of the hard disk to write with
|
The HD partition defines partition of the hard disk to write with
|
||||||
usage of obsolete file system functions and functions implicitly
|
usage of obsolete syntax /HD in obsolete function 58;
|
||||||
using the hard disk (such as subfunction 6 of function 18);
|
|
||||||
at usage of functions 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
at usage of functions 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
||||||
these functions set base and partition themselves.
|
base and partition are set automatically.
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 26 - function number
|
* eax = 26 - function number
|
||||||
* ebx = 8 - subfunction number
|
* ebx = 8 - subfunction number
|
||||||
@@ -2696,24 +2690,26 @@ Returned value:
|
|||||||
does not support this function
|
does not support this function
|
||||||
* al = 0 - Ethernet cable is unplugged
|
* al = 0 - Ethernet cable is unplugged
|
||||||
* al = 1 - Ethernet cable is plugged
|
* al = 1 - Ethernet cable is plugged
|
||||||
|
* ebx destroyed
|
||||||
Remarks:
|
Remarks:
|
||||||
* The current kernel implementation supports this function
|
* The current kernel implementation supports this function
|
||||||
only for RTL8139 network cards.
|
only for RTL8139 network cards.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
===== Function 53, subfunction 10 - read data from stack. =====
|
======= Function 53, subfunction 11 - read network stack data. =======
|
||||||
======================================================================
|
======================================================================
|
||||||
Parameters:
|
Paramters:
|
||||||
* eax = 53
|
* eax = 53 - function number
|
||||||
* ebx = 11
|
* ebx = 11 - subfunction number
|
||||||
* ecx = socket number
|
* ecx = socket handle
|
||||||
* edx = pointer to where data must be written
|
* edx = pointer to buffer
|
||||||
* esi = buffer size (max bytes of data to copy)
|
* esi = number of bytes to read;
|
||||||
|
* esi = 0 - read all data (maximum 4096 bytes)
|
||||||
Returned value:
|
Returned value:
|
||||||
* eax = number of bytes copied
|
* eax = number of bytes read
|
||||||
Remarks:
|
* ebx destroyed
|
||||||
* if buffer size is zero, all data will be copied
|
Remakrs:
|
||||||
(this will be max 4096 bytes)
|
* There is no check on handle correctness.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
= Function 53, subfunction 255 - debug information of network driver.
|
= Function 53, subfunction 255 - debug information of network driver.
|
||||||
@@ -3662,11 +3658,7 @@ Remarks:
|
|||||||
* Driver name is case-sensitive.
|
* Driver name is case-sensitive.
|
||||||
Maximum length of the name is 16 characters, including
|
Maximum length of the name is 16 characters, including
|
||||||
terminating null character, the rest is ignored.
|
terminating null character, the rest is ignored.
|
||||||
* The function can load only drivers which are registered in the
|
* Driver ABC is loaded from file /rd/1/drivers/ABC.obj.
|
||||||
system; the current implementation contains
|
|
||||||
exactly 2 such drivers:
|
|
||||||
* name SOUND, file /rd/1/drivers/unisound.obj
|
|
||||||
* name INFINITY, file /rd/1/drivers/infinity.obj
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
============ Function 68, subfunction 17 - driver control. ===========
|
============ Function 68, subfunction 17 - driver control. ===========
|
||||||
|
@@ -700,7 +700,7 @@ mm80 dq 0x8080808080808080
|
|||||||
mm_mask dq 0xFF00FF00FF00FF00
|
mm_mask dq 0xFF00FF00FF00FF00
|
||||||
|
|
||||||
;stream_map dd 0xFFFF ; 16
|
;stream_map dd 0xFFFF ; 16
|
||||||
version dd 0x00030004
|
version dd 0x00030003
|
||||||
|
|
||||||
szInfinity db 'INFINITY',0
|
szInfinity db 'INFINITY',0
|
||||||
szSound db 'SOUND',0
|
szSound db 'SOUND',0
|
||||||
|
@@ -77,7 +77,7 @@ drawbar dd __sys_drawbar.forced
|
|||||||
putpixel dd __sys_putpixel
|
putpixel dd __sys_putpixel
|
||||||
; } mike.dld
|
; } mike.dld
|
||||||
|
|
||||||
version db 'Kolibri OS version 0.6.3.0 ',13,10,13,10,0
|
version db 'Kolibri OS version 0.6.5.0 ',13,10,13,10,0
|
||||||
;dd endofcode-0x10000
|
;dd endofcode-0x10000
|
||||||
|
|
||||||
;db 'Boot02'
|
;db 'Boot02'
|
||||||
@@ -231,7 +231,7 @@ iglobal
|
|||||||
char2 db 'FONTS/CHAR2.MT',0
|
char2 db 'FONTS/CHAR2.MT',0
|
||||||
bootpath db '/KOLIBRI '
|
bootpath db '/KOLIBRI '
|
||||||
bootpath2 db 0
|
bootpath2 db 0
|
||||||
vmode db 'VMODE.MDR',0
|
vmode db 'drivers/VMODE.MDR',0
|
||||||
vrr_m db '/rd/1/VRR_M',0
|
vrr_m db '/rd/1/VRR_M',0
|
||||||
endg
|
endg
|
||||||
|
|
||||||
@@ -290,6 +290,8 @@ B32:
|
|||||||
; -----------------------------------------
|
; -----------------------------------------
|
||||||
; movzx eax,byte [0x2f0000+0x9010] ; mouse port
|
; movzx eax,byte [0x2f0000+0x9010] ; mouse port
|
||||||
; mov [0xF604],byte 1 ;al
|
; mov [0xF604],byte 1 ;al
|
||||||
|
mov al, [0x2F0000+0x901F] ; DMA writing
|
||||||
|
mov [allow_dma_write], al
|
||||||
mov al,[0x2f0000+0x9000] ; bpp
|
mov al,[0x2f0000+0x9000] ; bpp
|
||||||
mov [0xFBF1],al
|
mov [0xFBF1],al
|
||||||
movzx eax,word [0x2f0000+0x900A] ; X max
|
movzx eax,word [0x2f0000+0x900A] ; X max
|
||||||
@@ -2139,7 +2141,7 @@ endg
|
|||||||
|
|
||||||
iglobal
|
iglobal
|
||||||
version_inf:
|
version_inf:
|
||||||
db 0,6,3,0 ; version 0.6.3.0
|
db 0,6,5,0 ; version 0.6.5.0
|
||||||
db UID_KOLIBRI
|
db UID_KOLIBRI
|
||||||
db 'Kolibri',0
|
db 'Kolibri',0
|
||||||
version_end:
|
version_end:
|
||||||
|
@@ -14,6 +14,7 @@
|
|||||||
; 0:901C byte 0 or 1 : enable MTRR graphics acceleration
|
; 0:901C byte 0 or 1 : enable MTRR graphics acceleration
|
||||||
; 0:901D byte not used anymore (0 or 1 : enable system log display)
|
; 0:901D byte not used anymore (0 or 1 : enable system log display)
|
||||||
; 0:901E byte 0 or 1 : enable direct lfb write, paging disabled
|
; 0:901E byte 0 or 1 : enable direct lfb write, paging disabled
|
||||||
|
; 0:901F byte DMA write : 1=yes, 2=no
|
||||||
; 0:9020 8bytes pci data
|
; 0:9020 8bytes pci data
|
||||||
; 0:9030 byte VRR start enabled 1, 2-no
|
; 0:9030 byte VRR start enabled 1, 2-no
|
||||||
; 0:9031 word IDEContrRegsBaseAddr
|
; 0:9031 word IDEContrRegsBaseAddr
|
||||||
|
@@ -442,7 +442,7 @@ proc init_cursors
|
|||||||
.init:
|
.init:
|
||||||
mov [cur_def_interl], ebx
|
mov [cur_def_interl], ebx
|
||||||
|
|
||||||
stdcall load_driver, drv_hw_mouse
|
stdcall load_driver, szHwMouse
|
||||||
mov [hw_cursor], eax
|
mov [hw_cursor], eax
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jz .sw_mouse
|
jz .sw_mouse
|
||||||
|
Reference in New Issue
Block a user