forked from KolibriOS/kolibrios
-A: minor updates
git-svn-id: svn://kolibrios.org@3168 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
94bd7630d1
commit
634c0e9aa4
@ -1,17 +0,0 @@
|
|||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
;; ;;
|
|
||||||
;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;;
|
|
||||||
;; Distributed under terms of the GNU General Public License ;;
|
|
||||||
;; ;;
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
|
|
||||||
;======================================================================
|
|
||||||
;
|
|
||||||
; BOOT DATA
|
|
||||||
;
|
|
||||||
;======================================================================
|
|
||||||
|
|
||||||
$Revision$
|
|
||||||
|
|
||||||
|
|
||||||
boot_dev db 0 ; 0=floppy, 1=hd
|
|
@ -20,7 +20,7 @@ irq0:
|
|||||||
mov es, ax
|
mov es, ax
|
||||||
inc [timer_ticks]
|
inc [timer_ticks]
|
||||||
mov eax, [timer_ticks]
|
mov eax, [timer_ticks]
|
||||||
call playNote ; <<<--- Speaker driver
|
; call playNote ; <<<--- Speaker driver
|
||||||
sub eax,[next_usage_update]
|
sub eax,[next_usage_update]
|
||||||
cmp eax,100
|
cmp eax,100
|
||||||
jb .nocounter
|
jb .nocounter
|
||||||
@ -43,21 +43,6 @@ change_task:
|
|||||||
pushfd
|
pushfd
|
||||||
cli
|
cli
|
||||||
pushad
|
pushad
|
||||||
if 0
|
|
||||||
; \begin{Mario79} ; <- must be refractoried, if used...
|
|
||||||
cmp [dma_task_switched], 1
|
|
||||||
jne .find_next_task
|
|
||||||
mov [dma_task_switched], 0
|
|
||||||
mov ebx, [dma_process]
|
|
||||||
cmp [CURRENT_TASK], ebx
|
|
||||||
je .return
|
|
||||||
mov edi, [dma_slot_ptr]
|
|
||||||
mov [CURRENT_TASK], ebx
|
|
||||||
mov [TASK_BASE], edi
|
|
||||||
jmp @f
|
|
||||||
.find_next_task:
|
|
||||||
; \end{Mario79}
|
|
||||||
end if
|
|
||||||
call find_next_task
|
call find_next_task
|
||||||
jz .return ; the same task -> skip switch
|
jz .return ; the same task -> skip switch
|
||||||
@@: mov byte[DONT_SWITCH], 1
|
@@: mov byte[DONT_SWITCH], 1
|
||||||
|
@ -106,9 +106,9 @@ diff16 "sdsh_data.table0: ",0,$
|
|||||||
dw (.ch0_88 -.chars)*16 + 2 ; #88 X
|
dw (.ch0_88 -.chars)*16 + 2 ; #88 X
|
||||||
dw (.ch0_89 -.chars)*16 + 2 ; #88 Y
|
dw (.ch0_89 -.chars)*16 + 2 ; #88 Y
|
||||||
dw (.ch0_90 -.chars)*16 + 3 ; #90 Z
|
dw (.ch0_90 -.chars)*16 + 3 ; #90 Z
|
||||||
dw (.ch0_91 -.chars)*16 + 3 ; #91 [
|
dw (.ch0_91 -.chars)*16 + 1 ; #91 [
|
||||||
dw (.ch0_92 -.chars)*16 + 1 ; #92 \
|
dw (.ch0_92 -.chars)*16 + 1 ; #92 \
|
||||||
dw (.ch0_93 -.chars)*16 + 3 ; #93 ]
|
dw (.ch0_93 -.chars)*16 + 1 ; #93 ]
|
||||||
dw (.ch0_94 -.chars)*16 + 1 ; #94 ^
|
dw (.ch0_94 -.chars)*16 + 1 ; #94 ^
|
||||||
dw (.ch0_95 -.chars)*16 + 1 ; #95 _
|
dw (.ch0_95 -.chars)*16 + 1 ; #95 _
|
||||||
dw (.ch0_96 -.chars)*16 + 1 ; #96 `
|
dw (.ch0_96 -.chars)*16 + 1 ; #96 `
|
||||||
@ -442,11 +442,9 @@ diff16 "sdsh_data.chars: ",0,$
|
|||||||
.ch0_92: ; \
|
.ch0_92: ; \
|
||||||
gptick 4, 6, 84
|
gptick 4, 6, 84
|
||||||
.ch0_91: ; [
|
.ch0_91: ; [
|
||||||
lntick 1, 3, 2, 5
|
gptick 19, 4, 99
|
||||||
.ch0_93: ; ]
|
.ch0_93: ; ]
|
||||||
lntick 1, 2, 0, 3
|
gptick 9, 0, 99
|
||||||
lntick 1, 8, 0, 3
|
|
||||||
lntick 3, 3, 2, 5
|
|
||||||
.ch0_65: ; A
|
.ch0_65: ; A
|
||||||
.ch0_128: ;
|
.ch0_128: ;
|
||||||
lntick 0, 2, 2, 4
|
lntick 0, 2, 2, 4
|
||||||
|
@ -18,9 +18,9 @@ align 4
|
|||||||
db 0x1A ; 6
|
db 0x1A ; 6
|
||||||
db 0x77 ; 7
|
db 0x77 ; 7
|
||||||
db 0x49 ; 8
|
db 0x49 ; 8
|
||||||
db 0x00 ; 9
|
db 0x62 ; 9
|
||||||
db 0x00 ; 10
|
db 0x2E ; 10
|
||||||
db 0x00 ; 11
|
db 0x1D ; 11
|
||||||
db 0x00 ; 12
|
db 0x00 ; 12
|
||||||
db 0x00 ; 13
|
db 0x00 ; 13
|
||||||
db 0x00 ; 14
|
db 0x00 ; 14
|
||||||
@ -48,36 +48,36 @@ align 4
|
|||||||
diff16 "font02.table: ",0,$
|
diff16 "font02.table: ",0,$
|
||||||
|
|
||||||
times 33 dw 0
|
times 33 dw 0
|
||||||
char_entry .ch_33, 4, 4 ; #33 !
|
char_entry .ch_33, 2, 4 ; #33 !
|
||||||
char_entry .ch_34, 4, 2 ; #34 "
|
char_entry .ch_34, 2, 2 ; #34 "
|
||||||
char_entry .ch_35, 0, 4 ; #35 #
|
char_entry .ch_35, 0, 4 ; #35 #
|
||||||
char_entry .ch_36, 0, 4 ; #36 $
|
char_entry .ch_36, 0, 4 ; #36 $
|
||||||
char_entry .ch_37, 0, 3 ; #37 %
|
char_entry .ch_37, 0, 3 ; #37 %
|
||||||
|
|
||||||
dw (.ch_38 -.chars)*16 + 4 ; #38 &
|
dw (.ch_38 -.chars)*16 + 4 ; #38 &
|
||||||
char_entry .ch_39, 5, 1 ; #39 '
|
char_entry .ch_39, 2, 1 ; #39 '
|
||||||
dw (.ch_40 -.chars)*16 + 1 ; #40 (
|
char_entry .ch_40, 2, 1 ; #40 (
|
||||||
dw (.ch_41 -.chars)*16 + 1 ; #41 )
|
char_entry .ch_41, 2, 1 ; #41 )
|
||||||
char_entry .ch_42, 1, 3 ; #42 *
|
char_entry .ch_42, 1, 3 ; #42 *
|
||||||
dw (.ch_43 -.chars)*16 + 2 ; #43 +
|
char_entry .ch_43, 1, 2 ; #43 +
|
||||||
dw (.ch_44 -.chars)*16 + 2 ; #44 ,
|
char_entry .ch_44, 2, 2 ; #44 ,
|
||||||
dw (.ch_45 -.chars)*16 + 1 ; #45 -
|
char_entry .ch_45, 1, 1 ; #45 -
|
||||||
dw (.ch_46 -.chars)*16 + 1 ; #46 .
|
char_entry .ch_46, 2, 2 ; #46 .
|
||||||
char_entry .ch_47, 2, 1 ; #47 /
|
char_entry .ch_47, 1, 1 ; #47 /
|
||||||
dw (.ch_48 -.chars)*16 + 2 ; #48 0
|
char_entry .ch_48, 1, 2 ; #48 0
|
||||||
dw (.ch_49 -.chars)*16 + 2 ; #49 1
|
char_entry .ch_49, 2, 3 ; #49 1
|
||||||
dw (.ch_50 -.chars)*16 + 3 ; #50 2
|
char_entry .ch_50, 1, 3 ; #50 2
|
||||||
dw (.ch_51 -.chars)*16 + 3 ; #51 3
|
char_entry .ch_51, 1, 2 ; #51 3
|
||||||
dw (.ch_52 -.chars)*16 + 3 ; #52 4
|
dw (.ch_52 -.chars)*16 + 3 ; #52 4
|
||||||
dw (.ch_53 -.chars)*16 + 2 ; #53 5
|
dw (.ch_53 -.chars)*16 + 2 ; #53 5
|
||||||
dw (.ch_54 -.chars)*16 + 2 ; #54 6
|
dw (.ch_54 -.chars)*16 + 2 ; #54 6
|
||||||
dw (.ch_55 -.chars)*16 + 2 ; #55 7
|
dw (.ch_55 -.chars)*16 + 2 ; #55 7
|
||||||
dw (.ch_56 -.chars)*16 + 2 ; #56 8
|
dw (.ch_56 -.chars)*16 + 2 ; #56 8
|
||||||
dw (.ch_57 -.chars)*16 + 2 ; #57 9
|
dw (.ch_57 -.chars)*16 + 2 ; #57 9
|
||||||
dw (.ch_58 -.chars)*16 + 2 ; #58 :
|
char_entry .ch_58, 4, 2 ; #58 :
|
||||||
dw (.ch_59 -.chars)*16 + 3 ; #59 ;
|
char_entry .ch_59, 4, 4 ; #59 ;
|
||||||
dw (.ch_60 -.chars)*16 + 1 ; #60 <
|
dw (.ch_60 -.chars)*16 + 1 ; #60 <
|
||||||
dw (.ch_61 -.chars)*16 + 2 ; #61 =
|
char_entry .ch_61, 0, 2 ; #61 =
|
||||||
dw (.ch_62 -.chars)*16 + 1 ; #62 >
|
dw (.ch_62 -.chars)*16 + 1 ; #62 >
|
||||||
dw (.ch_63 -.chars)*16 + 3 ; #63 ?
|
dw (.ch_63 -.chars)*16 + 3 ; #63 ?
|
||||||
dw (.ch_64 -.chars)*16 + 2 ; #64 @
|
dw (.ch_64 -.chars)*16 + 2 ; #64 @
|
||||||
@ -89,6 +89,7 @@ diff16 "font02.table: ",0,$
|
|||||||
dw (.ch_70 -.chars)*16 + 3 ; #70 F
|
dw (.ch_70 -.chars)*16 + 3 ; #70 F
|
||||||
dw (.ch_71 -.chars)*16 + 2 ; #71 G
|
dw (.ch_71 -.chars)*16 + 2 ; #71 G
|
||||||
dw (.ch_72 -.chars)*16 + 3 ; #72 H
|
dw (.ch_72 -.chars)*16 + 3 ; #72 H
|
||||||
|
char_entry .ch_73, 4, 3 ; #73 I
|
||||||
dw (.ch_73 -.chars)*16 + 3 ; #73 I
|
dw (.ch_73 -.chars)*16 + 3 ; #73 I
|
||||||
dw (.ch_74 -.chars)*16 + 2 ; #74 J
|
dw (.ch_74 -.chars)*16 + 2 ; #74 J
|
||||||
dw (.ch_75 -.chars)*16 + 3 ; #75 K
|
dw (.ch_75 -.chars)*16 + 3 ; #75 K
|
||||||
@ -100,7 +101,6 @@ diff16 "font02.table: ",0,$
|
|||||||
dw (.ch_81 -.chars)*16 + 3 ; #81 Q
|
dw (.ch_81 -.chars)*16 + 3 ; #81 Q
|
||||||
dw (.ch_82 -.chars)*16 + 3 ; #82 R
|
dw (.ch_82 -.chars)*16 + 3 ; #82 R
|
||||||
char_entry .ch_83, 0, 2 ; #83 S
|
char_entry .ch_83, 0, 2 ; #83 S
|
||||||
dw (.ch_83 -.chars)*16 + 3 ; #83 S
|
|
||||||
dw (.ch_84 -.chars)*16 + 2 ; #84 T
|
dw (.ch_84 -.chars)*16 + 2 ; #84 T
|
||||||
dw (.ch_85 -.chars)*16 + 3 ; #85 U
|
dw (.ch_85 -.chars)*16 + 3 ; #85 U
|
||||||
dw (.ch_86 -.chars)*16 + 3 ; #86 V
|
dw (.ch_86 -.chars)*16 + 3 ; #86 V
|
||||||
@ -152,8 +152,8 @@ diff16 "font02.table: ",0,$
|
|||||||
dw (.ch_131-.chars)*16 + 2 ; #131
|
dw (.ch_131-.chars)*16 + 2 ; #131
|
||||||
dw (.ch_132-.chars)*16 + 6 ; #132
|
dw (.ch_132-.chars)*16 + 6 ; #132
|
||||||
dw (.ch_133-.chars)*16 + 4 ; #133 E
|
dw (.ch_133-.chars)*16 + 4 ; #133 E
|
||||||
dw (.ch_134-.chars)*16 + 3 ; #134
|
dw (.ch_134-.chars)*16 + 3 ; #134 Zhe
|
||||||
dw (.ch_135-.chars)*16 + 3 ; #135
|
char_entry .ch_135, 0, 4 ; #135 'Ze'
|
||||||
dw (.ch_136-.chars)*16 + 3 ; #136
|
dw (.ch_136-.chars)*16 + 3 ; #136
|
||||||
dw (.ch_137-.chars)*16 + 4 ; #137
|
dw (.ch_137-.chars)*16 + 4 ; #137
|
||||||
dw (.ch_138-.chars)*16 + 3 ; #138 K
|
dw (.ch_138-.chars)*16 + 3 ; #138 K
|
||||||
@ -267,6 +267,7 @@ diff16 "font02.chars: ",0,$
|
|||||||
.chars:
|
.chars:
|
||||||
dw 0
|
dw 0
|
||||||
.ch_33: ; !
|
.ch_33: ; !
|
||||||
|
.ch_46: ; .
|
||||||
lntick 3, 3, 0, 3
|
lntick 3, 3, 0, 3
|
||||||
lntick 4, 2, 2, 3
|
lntick 4, 2, 2, 3
|
||||||
lntick 4, 7, 2, 6
|
lntick 4, 7, 2, 6
|
||||||
@ -281,13 +282,17 @@ diff16 "font02.chars: ",0,$
|
|||||||
lntick 0, 7, 0, 8
|
lntick 0, 7, 0, 8
|
||||||
lntick 1,11, 0, 8
|
lntick 1,11, 0, 8
|
||||||
|
|
||||||
|
.ch_135: ; 'Ze'
|
||||||
|
lntick 0,12, 0, 2
|
||||||
|
.ch_51: ; 3
|
||||||
|
gptick 11, 3, 106
|
||||||
.ch_36: ; $
|
.ch_36: ; $
|
||||||
lntick 3, 2, 2, 14
|
.ch_83: ; S
|
||||||
lntick 5, 2, 2, 14
|
|
||||||
.ch_83: ; S
|
|
||||||
gptick 8, 0, 125
|
gptick 8, 0, 125
|
||||||
gptick 1, 4, 118
|
gptick 1, 4, 118
|
||||||
lntick 0, 3, 3
|
lntick 0, 3, 3
|
||||||
|
lntick 3, 2, 2, 14
|
||||||
|
lntick 5, 2, 2, 14
|
||||||
|
|
||||||
.ch_37: ; %
|
.ch_37: ; %
|
||||||
.ch_47: ; /
|
.ch_47: ; /
|
||||||
@ -300,52 +305,63 @@ diff16 "font02.chars: ",0,$
|
|||||||
gptick 19, 4, 44
|
gptick 19, 4, 44
|
||||||
gptick 4, 0, 44
|
gptick 4, 0, 44
|
||||||
ritick 3, 3, 0
|
ritick 3, 3, 0
|
||||||
|
|
||||||
.ch_40: ; (
|
.ch_40: ; (
|
||||||
gptick 5, 3, 80
|
gptick 9, 3, 121
|
||||||
.ch_41: ; )
|
.ch_41: ; )
|
||||||
gptick 9, 7, 80
|
gptick 10, 7, 121
|
||||||
|
|
||||||
.ch_42: ; *
|
.ch_42: ; *
|
||||||
gptick 7, 4, 71
|
gptick 7, 4, 71
|
||||||
gptick 6, 0, 71
|
gptick 6, 0, 71
|
||||||
lntick 4, 5, 2, 8
|
|
||||||
.ch_43: ; +
|
.ch_43: ; +
|
||||||
lntick 2, 2, 2, 5
|
lntick 4, 5, 2, 7
|
||||||
.ch_45: ; -
|
.ch_45: ; -
|
||||||
|
lntick 1, 8, 0, 7
|
||||||
.ch_61: ; =
|
.ch_61: ; =
|
||||||
lntick 0, 4, 0, 5
|
lntick 1, 9, 0, 7
|
||||||
lntick 0, 6, 0, 5
|
lntick 1, 6, 0, 7
|
||||||
.ch_58: ; :
|
|
||||||
.ch_59: ; ;
|
.ch_59: ; ;
|
||||||
cstick 1, 7, 0, 0
|
lntick 5, 9, 2, 2
|
||||||
.ch_46: ; .
|
.ch_58: ; :
|
||||||
|
cstick 3,10, 0, 0
|
||||||
.ch_44: ; ,
|
.ch_44: ; ,
|
||||||
cstick 1, 3, 0, 0
|
cstick 3, 4, 0, 0
|
||||||
ritick 1, 1, 0
|
gptick 3, 6, 48
|
||||||
|
|
||||||
|
.ch_48: ; 0
|
||||||
|
gptick 7, 6, 122
|
||||||
|
gptick 6, 2, 122
|
||||||
|
|
||||||
.ch_55: ; 7
|
.ch_55: ; 7
|
||||||
gptick 1, 2, 81
|
gptick 1, 2, 81
|
||||||
lntick 0, 8, 0, 4
|
lntick 0, 8, 0, 4
|
||||||
.ch_64: ; @
|
.ch_64: ; @
|
||||||
cstick 2, 6, 0, 1
|
cstick 2, 6, 0, 1
|
||||||
.ch_48: ; 0
|
|
||||||
.ch_79: ; O
|
.ch_79: ; O
|
||||||
.ch_142: ;
|
.ch_142: ;
|
||||||
.ch_81: ; Q
|
.ch_81: ; Q
|
||||||
gptick 5, 4, 116
|
gptick 5, 4, 116
|
||||||
lntick 4, 3, 2, 5
|
lntick 4, 3, 2, 5
|
||||||
lntick 3, 1, 0, 2
|
lntick 3, 1, 0, 2
|
||||||
|
|
||||||
.ch_49: ; 1
|
.ch_49: ; 1
|
||||||
|
lntick 2,10, 1, 2
|
||||||
|
.ch_73: ; I
|
||||||
|
lntick 4, 4, 2, 11
|
||||||
|
lntick 2, 3, 0, 5
|
||||||
|
lntick 2,14, 0, 5
|
||||||
|
|
||||||
.ch_124: ; |
|
.ch_124: ; |
|
||||||
lntick 2, 2, 2, 7
|
|
||||||
ritick 1, 6, 0
|
|
||||||
.ch_50: ; 2
|
.ch_50: ; 2
|
||||||
lntick 0, 2, 0, 5
|
gptick 11, 1, 106
|
||||||
lntick 1, 3, 1, 3
|
lntick 1, 5, 1, 5
|
||||||
.ch_51: ; 3
|
gptick 12, 6, 99
|
||||||
gptick 8, 1, 64
|
|
||||||
gptick 10, 6, 65
|
|
||||||
.ch_83: ; S
|
|
||||||
lntick 1, 5, 0, 3
|
|
||||||
gptick 3, 2, 55
|
|
||||||
.ch_53: ; 5
|
.ch_53: ; 5
|
||||||
gptick 10, 6, 65
|
gptick 10, 6, 65
|
||||||
gptick 13, 4, 104
|
gptick 13, 4, 104
|
||||||
@ -407,10 +423,6 @@ diff16 "font02.chars: ",0,$
|
|||||||
lntick 1, 5, 0, 3
|
lntick 1, 5, 0, 3
|
||||||
lntick 0, 2, 2, 7
|
lntick 0, 2, 2, 7
|
||||||
lntick 4, 2, 2, 7
|
lntick 4, 2, 2, 7
|
||||||
.ch_73: ; I
|
|
||||||
lntick 1, 8, 0, 3
|
|
||||||
lntick 2, 3, 2, 5
|
|
||||||
lntick 1, 2, 0, 3
|
|
||||||
.ch_74: ; J
|
.ch_74: ; J
|
||||||
gptick 31, 6, 88
|
gptick 31, 6, 88
|
||||||
lntick 2, 8, 0, 3
|
lntick 2, 8, 0, 3
|
||||||
@ -610,8 +622,6 @@ diff16 "font02.chars: ",0,$
|
|||||||
gptick 14, 0, 89
|
gptick 14, 0, 89
|
||||||
lntick 1, 3, 2, 6
|
lntick 1, 3, 2, 6
|
||||||
ritick 0, 8, 0
|
ritick 0, 8, 0
|
||||||
.ch_135: ; ZE
|
|
||||||
ritick 3, 5, 0
|
|
||||||
.ch_157: ; AE
|
.ch_157: ; AE
|
||||||
gptick 8, 1, 64
|
gptick 8, 1, 64
|
||||||
gptick 10, 6, 65
|
gptick 10, 6, 65
|
||||||
|
@ -121,7 +121,7 @@ init_mem:
|
|||||||
dec ecx
|
dec ecx
|
||||||
jnz .map_kernel_tabs
|
jnz .map_kernel_tabs
|
||||||
|
|
||||||
; map pagetables to linear space
|
; map pagetables to linear space!
|
||||||
mov dword [sys_pgdir-OS_BASE+(page_tabs shr 20)], sys_pgdir+PG_SW-OS_BASE
|
mov dword [sys_pgdir-OS_BASE+(page_tabs shr 20)], sys_pgdir+PG_SW-OS_BASE
|
||||||
|
|
||||||
mov edi, (sys_pgdir-OS_BASE)
|
mov edi, (sys_pgdir-OS_BASE)
|
||||||
@ -149,7 +149,7 @@ init_page_map:
|
|||||||
|
|
||||||
mov edi, sys_pgmap-OS_BASE
|
mov edi, sys_pgmap-OS_BASE
|
||||||
mov ebx, ecx
|
mov ebx, ecx
|
||||||
shr ecx, 5
|
shr ecx, 5 ; 32 pagebits per dw
|
||||||
xor eax, eax
|
xor eax, eax
|
||||||
rep stosd
|
rep stosd
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
;;
|
;;
|
||||||
;; Copyright (C) KolibriOS team 2004-2010. All rights reserved.
|
;; Copyright (C) KolibriOS team 2004-2013. All rights reserved.
|
||||||
;; PROGRAMMING:
|
;; PROGRAMMING:
|
||||||
;; Ivan Poddubny
|
;; Ivan Poddubny
|
||||||
;; Marat Zakiyanov (Mario79)
|
;; Marat Zakiyanov (Mario79)
|
||||||
@ -87,7 +87,6 @@ pci_data_sel equ (pci_data_32-gdts)
|
|||||||
;; Included files:
|
;; Included files:
|
||||||
;;
|
;;
|
||||||
;; Kernel16.inc
|
;; Kernel16.inc
|
||||||
;; - Booteng.inc English text for bootup
|
|
||||||
;; - Bootcode.inc Hardware setup
|
;; - Bootcode.inc Hardware setup
|
||||||
;; - Pci16.inc PCI functions
|
;; - Pci16.inc PCI functions
|
||||||
;;
|
;;
|
||||||
@ -116,14 +115,12 @@ use16
|
|||||||
org 0x0
|
org 0x0
|
||||||
jmp start_of_code
|
jmp start_of_code
|
||||||
|
|
||||||
version db 'Kolibri OS version 0.7.7.0+ ',13,10,13,10,0
|
version db 'Kolibri-A version 0.1.0.0 ',13,10,13,10,0
|
||||||
|
|
||||||
;include "boot/bootstr.inc" ; language-independent boot messages
|
diff16 "preboot start: ",0,$
|
||||||
include "boot/preboot.inc"
|
include "boot/preboot.inc"
|
||||||
|
|
||||||
include "boot/booteng.inc" ; english system boot messages
|
|
||||||
diff16 "bootcode start: ",0,$
|
diff16 "bootcode start: ",0,$
|
||||||
|
|
||||||
include "boot/bootcode.inc" ; 16 bit system boot code
|
include "boot/bootcode.inc" ; 16 bit system boot code
|
||||||
|
|
||||||
diff16 "pci16 start: ",0,$
|
diff16 "pci16 start: ",0,$
|
||||||
@ -252,6 +249,8 @@ end if
|
|||||||
lgdt [gdts]
|
lgdt [gdts]
|
||||||
jmp pword os_code:high_code
|
jmp pword os_code:high_code
|
||||||
|
|
||||||
|
diff16 "32-bit init size ",B32,$
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
bios32_entry dd ?
|
bios32_entry dd ?
|
||||||
tmp_page_tabs dd ?
|
tmp_page_tabs dd ?
|
||||||
@ -478,7 +477,7 @@ high_code:
|
|||||||
stdcall kernel_alloc, (unpack.LZMA_BASE_SIZE+(unpack.LZMA_LIT_SIZE shl \
|
stdcall kernel_alloc, (unpack.LZMA_BASE_SIZE+(unpack.LZMA_LIT_SIZE shl \
|
||||||
(unpack.lc+unpack.lp)))*4
|
(unpack.lc+unpack.lp)))*4
|
||||||
|
|
||||||
mov [unpack.p], eax
|
mov [unpack.p], eax ; unpacker.inc
|
||||||
|
|
||||||
call init_events
|
call init_events
|
||||||
mov eax, srv.fd-SRV_FD_OFFSET
|
mov eax, srv.fd-SRV_FD_OFFSET
|
||||||
|
@ -219,7 +219,7 @@ include "fs/ext2.inc" ; read / write for ext2 filesystem
|
|||||||
|
|
||||||
; sound
|
; sound
|
||||||
|
|
||||||
include "sound/playnote.inc" ; player Note for Speaker PC
|
;include "sound/playnote.inc" ; player Note for Speaker PC
|
||||||
;include "sound/FHT.inc" ; fast Fourier transform routines
|
;include "sound/FHT.inc" ; fast Fourier transform routines
|
||||||
|
|
||||||
; display
|
; display
|
||||||
|
@ -267,9 +267,7 @@
|
|||||||
; 0x805FF000 -> 5FFF80 TSS
|
; 0x805FF000 -> 5FFF80 TSS
|
||||||
; 0x80600000 -> 601FFF i/o maps
|
; 0x80600000 -> 601FFF i/o maps
|
||||||
|
|
||||||
; 0x80800000 -> kernel heap
|
; 0x80800000 ->827FFFFF kernel heap
|
||||||
; 0x80FFFFFF heap min limit
|
|
||||||
; 0xEFFFFFFF heap max limit
|
|
||||||
|
|
||||||
; 0xF0000000 -> 0xF1FFFFFF PCI-express extended config space
|
; 0xF0000000 -> 0xF1FFFFFF PCI-express extended config space
|
||||||
; 0xFD000000 -> 0xFD3FFFFF static system buffer 4Mb
|
; 0xFD000000 -> 0xFD3FFFFF static system buffer 4Mb
|
||||||
|
@ -445,7 +445,7 @@ align 4
|
|||||||
.invert_force:
|
.invert_force:
|
||||||
mov ecx, [ebx+eax*4]
|
mov ecx, [ebx+eax*4]
|
||||||
xor ecx, 0x00FFFFFF
|
xor ecx, 0x00FFFFFF
|
||||||
or ecx, 0x01000000 ; keep bit[24] high !
|
bts ecx, 24 ; keep bit[24] high !
|
||||||
align 4
|
align 4
|
||||||
.putpixel:
|
.putpixel:
|
||||||
mov [ebx+eax*4], ecx
|
mov [ebx+eax*4], ecx
|
||||||
@ -956,6 +956,7 @@ bgr_cur_line rd 1920 ; maximum width of screen
|
|||||||
bgr_next_line rd 1920
|
bgr_next_line rd 1920
|
||||||
endg
|
endg
|
||||||
|
|
||||||
|
|
||||||
smooth_line:
|
smooth_line:
|
||||||
mov al, [esi+2]
|
mov al, [esi+2]
|
||||||
shl eax, 16
|
shl eax, 16
|
||||||
@ -1019,6 +1020,28 @@ align 4
|
|||||||
overlapping_of_points_ptr dd overlapping_of_points
|
overlapping_of_points_ptr dd overlapping_of_points
|
||||||
endg
|
endg
|
||||||
|
|
||||||
|
align 16
|
||||||
|
overlapping_of_points_mmx:
|
||||||
|
movd mm0, eax
|
||||||
|
movd mm4, eax
|
||||||
|
movd mm1, ebx
|
||||||
|
pxor mm2, mm2
|
||||||
|
punpcklbw mm0, mm2
|
||||||
|
punpcklbw mm1, mm2
|
||||||
|
psubw mm1, mm0
|
||||||
|
movd mm3, ecx
|
||||||
|
psrld mm3, 24
|
||||||
|
packuswb mm3, mm3
|
||||||
|
packuswb mm3, mm3
|
||||||
|
pmullw mm1, mm3
|
||||||
|
psrlw mm1, 8
|
||||||
|
packuswb mm1, mm2
|
||||||
|
paddb mm4, mm1
|
||||||
|
movd eax, mm4
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
init_background:
|
init_background:
|
||||||
mov edi, BgrAuxTable
|
mov edi, BgrAuxTable
|
||||||
xor edx, edx
|
xor edx, edx
|
||||||
@ -1040,25 +1063,7 @@ init_background:
|
|||||||
@@:
|
@@:
|
||||||
ret
|
ret
|
||||||
|
|
||||||
align 16
|
|
||||||
overlapping_of_points_mmx:
|
|
||||||
movd mm0, eax
|
|
||||||
movd mm4, eax
|
|
||||||
movd mm1, ebx
|
|
||||||
pxor mm2, mm2
|
|
||||||
punpcklbw mm0, mm2
|
|
||||||
punpcklbw mm1, mm2
|
|
||||||
psubw mm1, mm0
|
|
||||||
movd mm3, ecx
|
|
||||||
psrld mm3, 24
|
|
||||||
packuswb mm3, mm3
|
|
||||||
packuswb mm3, mm3
|
|
||||||
pmullw mm1, mm3
|
|
||||||
psrlw mm1, 8
|
|
||||||
packuswb mm1, mm2
|
|
||||||
paddb mm4, mm1
|
|
||||||
movd eax, mm4
|
|
||||||
ret
|
|
||||||
;diff16 "VESA2 code end ",0,$
|
;diff16 "VESA2 code end ",0,$
|
||||||
diff10 "VESA2 code size",get_pixel,$
|
diff10 "VESA2 code size",get_pixel,$
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user