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]
|
||||
ja danger
|
||||
|
||||
cmp [allow_dma_write], 1
|
||||
jnz .nodma
|
||||
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>
|
||||
cmp ecx, 1
|
||||
jz .nonext
|
||||
@@ -586,6 +588,7 @@ cache_chain_size db 0
|
||||
cache_chain_started db 0
|
||||
dma_task_switched db 0
|
||||
dma_hdd db 0
|
||||
allow_dma_write db 0
|
||||
endg
|
||||
|
||||
align 4
|
||||
|
@@ -580,7 +580,7 @@ cfgmanager:
|
||||
; settings:
|
||||
; a) preboot_graph = graphical mode
|
||||
; preboot_gprobe = probe this mode?
|
||||
; b) preboot_mtrr = use hardware acceleration?
|
||||
; b) preboot_dma_write = use DMA write?
|
||||
; c) preboot_vrrm = use VRR?
|
||||
; d) preboot_device = from what boot?
|
||||
mov di, preboot_graph-0x10000
|
||||
@@ -620,8 +620,8 @@ cfgmanager:
|
||||
@@:
|
||||
mov [di], al
|
||||
.preboot_gr_end:
|
||||
cmp [di+preboot_mtrr-preboot_graph], 1
|
||||
adc [di+preboot_mtrr-preboot_graph], 0
|
||||
cmp [di+preboot_dma_write-preboot_graph], 1
|
||||
adc [di+preboot_dma_write-preboot_graph], 0
|
||||
cmp [di+preboot_vrrm-preboot_graph], 1
|
||||
adc [di+preboot_vrrm-preboot_graph], 0
|
||||
cmp [di+preboot_device-preboot_graph], 1
|
||||
@@ -676,8 +676,8 @@ cfgmanager:
|
||||
.c:
|
||||
mov si, linef-0x10000
|
||||
call printplain
|
||||
mov si, mtrr_msg-0x10000
|
||||
cmp [preboot_mtrr-0x10000], 1
|
||||
mov si, dma_msg-0x10000
|
||||
cmp [preboot_dma_write-0x10000], 1
|
||||
call .say_on_off
|
||||
mov si, vrrm_msg-0x10000
|
||||
cmp [preboot_vrrm-0x10000], 1
|
||||
@@ -761,11 +761,11 @@ cfgmanager:
|
||||
jmp .d
|
||||
.change_b:
|
||||
_setcursor 15,0
|
||||
mov si, gr_acc-0x10000
|
||||
mov si, ask_dma-0x10000
|
||||
call print
|
||||
mov bx, '12'
|
||||
call getkey
|
||||
mov [preboot_mtrr-0x10000], al
|
||||
mov [preboot_dma_write-0x10000], al
|
||||
_setcursor 11,0
|
||||
jmp .d
|
||||
.change_c:
|
||||
@@ -1018,9 +1018,13 @@ end if
|
||||
|
||||
|
||||
; GRAPHICS ACCELERATION
|
||||
; force yes
|
||||
mov [es:0x901C], byte 1
|
||||
|
||||
mov al, [preboot_mtrr-0x10000]
|
||||
mov [es:0x901C],al
|
||||
; DMA WRITE
|
||||
|
||||
mov al, [preboot_dma_write-0x10000]
|
||||
mov [es:0x901F],al
|
||||
|
||||
; VRR_M USE
|
||||
|
||||
|
@@ -73,8 +73,7 @@ vrrmprint db "Apply VRR? (picture frequency greater than 60Hz"
|
||||
; db " Select port [1-3]: ",0
|
||||
;no_com1 db 13,10,186, " No COM1 mouse",0
|
||||
;no_com2 db 13,10,186, " No COM2 mouse",0
|
||||
gr_acc db "Vesa 2.0+ : MTRR graphics acceleration "
|
||||
db "[1-yes/2-no] ? ",0
|
||||
ask_dma db "Use DMA for HDD writing? [1-yes/2-no]: ",0
|
||||
;gr_direct db 186," Use direct LFB writing? "
|
||||
; db "[1-yes/2-no] ? ",0
|
||||
;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
|
||||
probeno_msg db " (standard mode)",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
|
||||
off_msg db " off",13,10,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
|
||||
;no_com1 db 13,10,186, " No COM1 mouse",0
|
||||
;no_com2 db 13,10,186, " No COM2 mouse",0
|
||||
gr_acc db "Vesa 2.0+ : MTRR graafika kiirendus "
|
||||
db "[1-jah/2-ei] ? ",0
|
||||
ask_dma db "Use DMA for HDD writing? [1-jah/2-ei]: ",0
|
||||
;gr_direct db 186," Use direct LFB writing? "
|
||||
; db "[1-yes/2-no] ? ",0
|
||||
;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
|
||||
probeno_msg db " (standard reziim)",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
|
||||
off_msg db " v<>ljas",13,10,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
|
||||
;no_com1 db 13,10,186, " Keine COM1 Maus",0
|
||||
;no_com2 db 13,10,186, " Keine COM2 Maus",0
|
||||
gr_acc db "Vesa 2.0+ : MTRR Grafikbeschleunigung "
|
||||
db "[1-ja/2-nein] ? ",0
|
||||
ask_dma db "Nutze DMA zum HDD Aufschreiben? [1-ja/2-nein]: ",0
|
||||
;gr_direct db 186," Benutze direct LFB? "
|
||||
; db "[1-ja/2-nein] ? ",0
|
||||
;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
|
||||
probeno_msg db " (Standard Modus)",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
|
||||
off_msg db " aus",13,10,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
|
||||
;no_com1 db 13,10,186," No COM1 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>? "
|
||||
db "[1-<2D><>/2-<2D><><EFBFBD>]: ",0
|
||||
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
|
||||
;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
|
||||
;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
|
||||
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
|
||||
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
|
||||
off_msg db " <20>몫",13,10,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_gprobe db 0 ; probe vesa3 videomodes (1-no, 2-yes)
|
||||
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
|
||||
; (1-floppy 2-harddisk 3-kernel restart)
|
||||
;!!!! 0 - autodetect !!!!
|
||||
|
@@ -298,45 +298,13 @@ proc get_service stdcall, sz_name:dword
|
||||
mov edx, [edx+SRV.fd]
|
||||
jmp @B
|
||||
.not_load:
|
||||
stdcall find_service, [sz_name]
|
||||
test eax, eax
|
||||
jz @F
|
||||
stdcall load_driver, eax
|
||||
@@:
|
||||
ret
|
||||
pop ebp
|
||||
jmp load_driver
|
||||
.ok:
|
||||
mov eax, edx
|
||||
ret
|
||||
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
|
||||
reg_service:
|
||||
.sz_name equ esp+4
|
||||
@@ -705,7 +673,7 @@ proc fix_coff_relocs stdcall, coff:dword, sec:dword, sym:dword
|
||||
endp
|
||||
|
||||
align 4
|
||||
proc load_driver stdcall, file_name:dword
|
||||
proc load_driver stdcall, driver_name:dword
|
||||
locals
|
||||
coff dd ?
|
||||
sym dd ?
|
||||
@@ -716,9 +684,27 @@ proc load_driver stdcall, file_name:dword
|
||||
|
||||
exports dd ? ;fake exports table
|
||||
dd ?
|
||||
file_name rb 14+16+4+1 ; '/rd/1/drivers/<up-to-16-chars>.obj'
|
||||
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
|
||||
jz .exit
|
||||
@@ -835,7 +821,7 @@ proc load_driver stdcall, file_name:dword
|
||||
.ver_fail:
|
||||
mov esi, msg_CR
|
||||
call sys_msg_board_str
|
||||
mov esi, [file_name]
|
||||
mov esi, [driver_name]
|
||||
call sys_msg_board_str
|
||||
mov esi, msg_CR
|
||||
call sys_msg_board_str
|
||||
@@ -848,7 +834,7 @@ proc load_driver stdcall, file_name:dword
|
||||
.link_fail:
|
||||
mov esi, msg_module
|
||||
call sys_msg_board_str
|
||||
mov esi, [file_name]
|
||||
mov esi, [driver_name]
|
||||
call sys_msg_board_str
|
||||
mov esi, msg_CR
|
||||
call sys_msg_board_str
|
||||
@@ -1041,13 +1027,9 @@ destroy_kernel_object:
|
||||
ret
|
||||
|
||||
|
||||
drv_sound db '/rd/1/drivers/unisound.obj', 0
|
||||
drv_infinity db '/rd/1/drivers/infinity.obj', 0
|
||||
drv_hw_mouse db '/rd/1/drivers/ati2d.obj',0
|
||||
|
||||
szSound db 'SOUND',0
|
||||
szInfinity db 'INFINITY',0
|
||||
szHwMouse db 'HWCURSOR',0
|
||||
;szSound db 'SOUND',0
|
||||
;szInfinity db 'INFINITY',0
|
||||
szHwMouse db 'ATI2D',0
|
||||
|
||||
szSTART db 'START',0
|
||||
szEXPORTS db 'EXPORTS',0
|
||||
@@ -1063,10 +1045,3 @@ align 4
|
||||
create_cursor dd 0
|
||||
set_hw_cursor 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 [DiskNumber],0
|
||||
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
|
||||
call FindHDD_3
|
||||
; mov al,[Sector512+176]
|
||||
; mov [0x40007],al
|
||||
inc [ChannelNumber]
|
||||
mov [DiskNumber],0
|
||||
call FindHDD_3
|
||||
; mov al,[Sector512+176]
|
||||
; mov [0x40008],al
|
||||
mov [DiskNumber],1
|
||||
call FindHDD_1
|
||||
; mov al,[Sector512+176]
|
||||
; mov [0x40009],al
|
||||
|
||||
jmp EndFindHDD
|
||||
|
||||
FindHDD_1:
|
||||
call DeviceReset
|
||||
cmp [DevErrorCode],0
|
||||
jne FindHDD_2_2
|
||||
call ReadHDD_ID
|
||||
cmp [DevErrorCode],0
|
||||
jne FindHDD_2
|
||||
cmp [Sector512+6],word 16
|
||||
ja FindHDD_2
|
||||
cmp [Sector512+12],word 255
|
||||
ja FindHDD_2
|
||||
inc byte [0x40001]
|
||||
ret
|
||||
jmp FindHDD_2_2
|
||||
FindHDD_2:
|
||||
call DeviceReset
|
||||
cmp [DevErrorCode],0
|
||||
jne FindHDD_2_2
|
||||
call ReadCD_ID
|
||||
cmp [DevErrorCode],0
|
||||
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> <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 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>
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Kolibri 0.6.4.0:
|
||||
db 0,6,4,0
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> Kolibri 0.6.5.0:
|
||||
db 0,6,5,0
|
||||
db 2
|
||||
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. ===========
|
||||
======================================================================
|
||||
<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> <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> <20>㭪権 58 <20> 70 <20> ᮢ६<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> <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> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⮬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||
* 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. ==========
|
||||
======================================================================
|
||||
<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> <20> <20>㭪権, <20><><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><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
|
||||
<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>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <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>
|
||||
/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>:
|
||||
* eax = 21 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||
* 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. ============
|
||||
======================================================================
|
||||
<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> <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> <20>㭪権 58 <20> 70 <20> ᮢ६<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> <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> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD0,/HD1,/HD2,/HD3
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>⠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⮬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᪨.
|
||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||
* 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. ===========
|
||||
======================================================================
|
||||
<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> <20> <20>㭪権, <20><><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><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>
|
||||
ᮢ६<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>, <20><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ॢ襣<EFBFBD> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD> /HD <20> <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>
|
||||
/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>:
|
||||
* eax = 26 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||
* 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>
|
||||
* 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>
|
||||
* ebx ࠧ<><E0A0A7>蠥<EFBFBD><E8A0A5><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> <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>:
|
||||
* eax = 53 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||
* ebx = 11 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><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>
|
||||
* 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>)
|
||||
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD> ᮪<><E1AEAA><EFBFBD>
|
||||
* edx = 㪠<><E3AAA0>⥫<EFBFBD> <20><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><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>:
|
||||
* 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>:
|
||||
* <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>
|
||||
(<28><><EFBFBD>ᨬ<EFBFBD><E1A8AC> 4096 <20><><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>.
|
||||
|
||||
======================================================================
|
||||
<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>ᨬ<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><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> ⥪<>饩 ॠ<><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><EFBFBD><EFBFBD> <EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ABC <20><><EFBFBD><EFBFBD>㦠<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 䠩<><E4A0A9> /rd/1/drivers/ABC.obj.
|
||||
|
||||
======================================================================
|
||||
========== <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.
|
||||
The call of the system function is executed by "int 0x40" command.
|
||||
@@ -676,7 +676,7 @@ Parameters:
|
||||
Returned value:
|
||||
* eax = 0 - success
|
||||
* 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
|
||||
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 UID_xxx: one of UID_NONE=0, UID_MENUET=1, UID_KOLIBRI=2
|
||||
db 'name',0 - ASCIIZ-string with the name
|
||||
For Kolibri 0.6.4.0 kernel:
|
||||
db 0,6,4,0
|
||||
For Kolibri 0.6.5.0 kernel:
|
||||
db 0,6,5,0
|
||||
db 2
|
||||
db 'Kolibri',0
|
||||
|
||||
@@ -1112,10 +1112,8 @@ Remarks:
|
||||
============== Function 21, subfunction 7 - set HD base. =============
|
||||
======================================================================
|
||||
The HD base defines hard disk to write with usage of obsolete
|
||||
file system functions and functions implicitly using the hard disk
|
||||
(such as subfunction 6 of function 18);
|
||||
at usage of function 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
||||
these function set base themselves.
|
||||
syntax /HD in obsolete function 58; at usage of modern syntax
|
||||
/HD0,/HD1,/HD2,/HD3 base is set automatically.
|
||||
Parameters:
|
||||
* eax = 21 - function number
|
||||
* ebx = 7 - subfunction number
|
||||
@@ -1134,10 +1132,9 @@ Remarks:
|
||||
========= Function 21, subfunction 8 - set used HD partition. ========
|
||||
======================================================================
|
||||
The HD partition defines partition of the hard disk to write with
|
||||
usage of obsolete file system functions and functions implicitly
|
||||
using the hard disk (such as subfunction 6 of function 18);
|
||||
usage of obsolete syntax /HD and obsolete function 58;
|
||||
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:
|
||||
* eax = 21 - function number
|
||||
* ebx = 8 - subfunction number
|
||||
@@ -1532,10 +1529,8 @@ Remarks:
|
||||
============== Function 26, subfunction 7 - get HD base. =============
|
||||
======================================================================
|
||||
The HD base defines hard disk to write with usage of obsolete
|
||||
file system functions and functions implicitly using the hard disk
|
||||
(such as subfunction 6 of function 18);
|
||||
at usage of function 58 and 70 and modern syntax /HD0,/HD1,/HD2,/HD3
|
||||
these function set base themselves.
|
||||
syntax /HD in obsolete function 58; at usage of modern syntax
|
||||
/HD0,/HD1,/HD2,/HD3 base is set automatically.
|
||||
Parameters:
|
||||
* eax = 26 - function number
|
||||
* ebx = 7 - subfunction number
|
||||
@@ -1550,10 +1545,9 @@ Remarks:
|
||||
========= Function 26, subfunction 8 - get used HD partition. ========
|
||||
======================================================================
|
||||
The HD partition defines partition of the hard disk to write with
|
||||
usage of obsolete file system functions and functions implicitly
|
||||
using the hard disk (such as subfunction 6 of function 18);
|
||||
usage of obsolete syntax /HD in obsolete function 58;
|
||||
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:
|
||||
* eax = 26 - function number
|
||||
* ebx = 8 - subfunction number
|
||||
@@ -2696,24 +2690,26 @@ Returned value:
|
||||
does not support this function
|
||||
* al = 0 - Ethernet cable is unplugged
|
||||
* al = 1 - Ethernet cable is plugged
|
||||
* ebx destroyed
|
||||
Remarks:
|
||||
* The current kernel implementation supports this function
|
||||
only for RTL8139 network cards.
|
||||
|
||||
======================================================================
|
||||
===== Function 53, subfunction 10 - read data from stack. =====
|
||||
======= Function 53, subfunction 11 - read network stack data. =======
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 53
|
||||
* ebx = 11
|
||||
* ecx = socket number
|
||||
* edx = pointer to where data must be written
|
||||
* esi = buffer size (max bytes of data to copy)
|
||||
Paramters:
|
||||
* eax = 53 - function number
|
||||
* ebx = 11 - subfunction number
|
||||
* ecx = socket handle
|
||||
* edx = pointer to buffer
|
||||
* esi = number of bytes to read;
|
||||
* esi = 0 - read all data (maximum 4096 bytes)
|
||||
Returned value:
|
||||
* eax = number of bytes copied
|
||||
Remarks:
|
||||
* if buffer size is zero, all data will be copied
|
||||
(this will be max 4096 bytes)
|
||||
* eax = number of bytes read
|
||||
* ebx destroyed
|
||||
Remakrs:
|
||||
* There is no check on handle correctness.
|
||||
|
||||
======================================================================
|
||||
= Function 53, subfunction 255 - debug information of network driver.
|
||||
@@ -3662,11 +3658,7 @@ Remarks:
|
||||
* Driver name is case-sensitive.
|
||||
Maximum length of the name is 16 characters, including
|
||||
terminating null character, the rest is ignored.
|
||||
* The function can load only drivers which are registered in the
|
||||
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
|
||||
* Driver ABC is loaded from file /rd/1/drivers/ABC.obj.
|
||||
|
||||
======================================================================
|
||||
============ Function 68, subfunction 17 - driver control. ===========
|
||||
|
@@ -700,7 +700,7 @@ mm80 dq 0x8080808080808080
|
||||
mm_mask dq 0xFF00FF00FF00FF00
|
||||
|
||||
;stream_map dd 0xFFFF ; 16
|
||||
version dd 0x00030004
|
||||
version dd 0x00030003
|
||||
|
||||
szInfinity db 'INFINITY',0
|
||||
szSound db 'SOUND',0
|
||||
|
@@ -77,7 +77,7 @@ drawbar dd __sys_drawbar.forced
|
||||
putpixel dd __sys_putpixel
|
||||
; } 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
|
||||
|
||||
;db 'Boot02'
|
||||
@@ -231,7 +231,7 @@ iglobal
|
||||
char2 db 'FONTS/CHAR2.MT',0
|
||||
bootpath db '/KOLIBRI '
|
||||
bootpath2 db 0
|
||||
vmode db 'VMODE.MDR',0
|
||||
vmode db 'drivers/VMODE.MDR',0
|
||||
vrr_m db '/rd/1/VRR_M',0
|
||||
endg
|
||||
|
||||
@@ -290,6 +290,8 @@ B32:
|
||||
; -----------------------------------------
|
||||
; movzx eax,byte [0x2f0000+0x9010] ; mouse port
|
||||
; mov [0xF604],byte 1 ;al
|
||||
mov al, [0x2F0000+0x901F] ; DMA writing
|
||||
mov [allow_dma_write], al
|
||||
mov al,[0x2f0000+0x9000] ; bpp
|
||||
mov [0xFBF1],al
|
||||
movzx eax,word [0x2f0000+0x900A] ; X max
|
||||
@@ -2139,7 +2141,7 @@ endg
|
||||
|
||||
iglobal
|
||||
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 'Kolibri',0
|
||||
version_end:
|
||||
|
@@ -14,6 +14,7 @@
|
||||
; 0:901C byte 0 or 1 : enable MTRR graphics acceleration
|
||||
; 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:901F byte DMA write : 1=yes, 2=no
|
||||
; 0:9020 8bytes pci data
|
||||
; 0:9030 byte VRR start enabled 1, 2-no
|
||||
; 0:9031 word IDEContrRegsBaseAddr
|
||||
|
@@ -442,7 +442,7 @@ proc init_cursors
|
||||
.init:
|
||||
mov [cur_def_interl], ebx
|
||||
|
||||
stdcall load_driver, drv_hw_mouse
|
||||
stdcall load_driver, szHwMouse
|
||||
mov [hw_cursor], eax
|
||||
test eax, eax
|
||||
jz .sw_mouse
|
||||
|
Reference in New Issue
Block a user