forked from KolibriOS/kolibrios
Fix EN typos
- Corrections for en_US language. - Some whitespace sanitation. git-svn-id: svn://kolibrios.org@10059 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
349dbb6edf
commit
27f290d51b
@ -31,7 +31,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
; Shell`s initialization
|
; Shell's initialization
|
||||||
; without arguments
|
; without arguments
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
|
|
||||||
@ -105,7 +105,7 @@
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
; Wait answer from shell
|
; Wait for answer from the shell
|
||||||
;
|
;
|
||||||
; INPUT:
|
; INPUT:
|
||||||
; edi - shell-buffer
|
; edi - shell-buffer
|
||||||
@ -259,7 +259,7 @@
|
|||||||
; Get string from shell
|
; Get string from shell
|
||||||
;
|
;
|
||||||
; INPUT:
|
; INPUT:
|
||||||
; eax - addres of memory for str
|
; eax - address of memory for str
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
|
|
||||||
shell.get_string:
|
shell.get_string:
|
||||||
@ -380,7 +380,7 @@
|
|||||||
; Print string to shell
|
; Print string to shell
|
||||||
;
|
;
|
||||||
; INPUT:
|
; INPUT:
|
||||||
; arg1 - addres of string
|
; arg1 - address of string
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
|
|
||||||
macro shpsa [addr] {
|
macro shpsa [addr] {
|
||||||
@ -420,7 +420,7 @@
|
|||||||
; Get string from shell
|
; Get string from shell
|
||||||
;
|
;
|
||||||
; INPUT:
|
; INPUT:
|
||||||
; arg1 - addres of memory for str
|
; arg1 - address of memory for str
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
|
|
||||||
macro shgs [addr] {
|
macro shgs [addr] {
|
||||||
@ -432,7 +432,7 @@
|
|||||||
; Get number from shell
|
; Get number from shell
|
||||||
;
|
;
|
||||||
; INPUT:
|
; INPUT:
|
||||||
; arg1 - addres of memory for num
|
; arg1 - address of memory for num
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
|
|
||||||
macro shgn [addr] {
|
macro shgn [addr] {
|
||||||
@ -504,4 +504,4 @@
|
|||||||
sub eax, ..chs
|
sub eax, ..chs
|
||||||
|
|
||||||
pop ebx
|
pop ebx
|
||||||
}
|
}
|
||||||
|
@ -10,17 +10,17 @@
|
|||||||
;include 'smb_nf2.inc'
|
;include 'smb_nf2.inc'
|
||||||
|
|
||||||
smb_base dd 0 ; IO port base for SMBus acces
|
smb_base dd 0 ; IO port base for SMBus acces
|
||||||
smb_slave dd 0 ; SMBus addres for monitoring chip
|
smb_slave dd 0 ; SMBus address for monitoring chip
|
||||||
|
|
||||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||||
smbInit:
|
smbInit:
|
||||||
; Èçìåíèòü, êîä òîëüêî äëÿ òåñòèðîâàíèÿ !!!
|
; Èçìåíèòü, êîä òîëüêî äëÿ òåñòèðîâàíèÿ !!!
|
||||||
; mov dword[IO_Read ], nf2_readb
|
; mov dword[IO_Read ], nf2_readb
|
||||||
; mov dword[IO_Write], nf2_writeb
|
; mov dword[IO_Write], nf2_writeb
|
||||||
|
|
||||||
|
|
||||||
; See pci_pm.c -> pci_pm_smb_prob
|
; See pci_pm.c -> pci_pm_smb_prob
|
||||||
|
|
||||||
|
|
||||||
.exit_err:
|
.exit_err:
|
||||||
stc
|
stc
|
||||||
@ -28,7 +28,7 @@ smbInit:
|
|||||||
.exit_ok:
|
.exit_ok:
|
||||||
clc
|
clc
|
||||||
ret
|
ret
|
||||||
|
|
||||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||||
; pci_bus_num: db 2 ; Íîìåð øèíû
|
; pci_bus_num: db 2 ; Íîìåð øèíû
|
||||||
; pci_devfn: db 255
|
; pci_devfn: db 255
|
||||||
@ -67,6 +67,6 @@ smbInit:
|
|||||||
; ret
|
; ret
|
||||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||||
smbClose:
|
smbClose:
|
||||||
|
|
||||||
ret
|
ret
|
||||||
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
; version: 2.02
|
; version: 2.02
|
||||||
; last update: 15/03/2012
|
; last update: 15/03/2012
|
||||||
; changed by: Marat Zakiyanov aka Mario79, aka Mario
|
; changed by: Marat Zakiyanov aka Mario79, aka Mario
|
||||||
; changes: some optimisations and code refactoring
|
; changes: some optimizations and code refactoring
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; version: 2.01
|
; version: 2.01
|
||||||
; last update: 27/09/2011
|
; last update: 27/09/2011
|
||||||
@ -54,7 +54,7 @@
|
|||||||
; (working to kernel r.2244 and above)
|
; (working to kernel r.2244 and above)
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; Many fix's and changes created by:
|
; Many fix's and changes created by:
|
||||||
; Halyavin, Diamond, Heavyiron,
|
; Halyavin, Diamond, Heavyiron,
|
||||||
; SPraid, Dunkaist
|
; SPraid, Dunkaist
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; version: 2.00
|
; version: 2.00
|
||||||
@ -89,11 +89,11 @@ include '../../../load_lib.mac'
|
|||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
START: ; start of execution
|
START: ; start of execution
|
||||||
mcall 68,11
|
mcall 68,11
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
load_libraries l_libs_start,end_l_libs
|
load_libraries l_libs_start,end_l_libs
|
||||||
test eax,eax
|
test eax,eax
|
||||||
jnz close
|
jnz close
|
||||||
|
|
||||||
; unpack deflate
|
; unpack deflate
|
||||||
mov eax,[unpack_DeflateUnpack2]
|
mov eax,[unpack_DeflateUnpack2]
|
||||||
mov [deflate_unpack],eax
|
mov [deflate_unpack],eax
|
||||||
@ -129,7 +129,7 @@ load_libraries l_libs_start,end_l_libs
|
|||||||
mov [strip_file],eax
|
mov [strip_file],eax
|
||||||
; back memeory to system
|
; back memeory to system
|
||||||
mcall 68,13,[finfo.point]
|
mcall 68,13,[finfo.point]
|
||||||
|
|
||||||
mov eax,[raw_pointer]
|
mov eax,[raw_pointer]
|
||||||
mov eax,[eax+8]
|
mov eax,[eax+8]
|
||||||
shr eax,5
|
shr eax,5
|
||||||
@ -142,13 +142,13 @@ load_libraries l_libs_start,end_l_libs
|
|||||||
boot_str:
|
boot_str:
|
||||||
cmp [I_Param],dword 'BOOT'
|
cmp [I_Param],dword 'BOOT'
|
||||||
je START2
|
je START2
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
; ICON EDITOR MODE - START1 entering label
|
; ICON EDITOR MODE - START1 entering label
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
START1:
|
START1:
|
||||||
call load_icon_list
|
call load_icon_list
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
red:
|
red:
|
||||||
call draw_window ; at first, draw the window
|
call draw_window ; at first, draw the window
|
||||||
mov esi,[current_icon]
|
mov esi,[current_icon]
|
||||||
@ -159,7 +159,7 @@ still:
|
|||||||
mcall 10 ; wait here for event
|
mcall 10 ; wait here for event
|
||||||
dec eax ; redraw request ?
|
dec eax ; redraw request ?
|
||||||
jz red
|
jz red
|
||||||
|
|
||||||
dec eax ; key in buffer ?
|
dec eax ; key in buffer ?
|
||||||
jz key
|
jz key
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
@ -170,11 +170,11 @@ button:
|
|||||||
|
|
||||||
cmp eax,1 ; button id=1 ?
|
cmp eax,1 ; button id=1 ?
|
||||||
je close
|
je close
|
||||||
|
|
||||||
mov esi,[current_icon]
|
mov esi,[current_icon]
|
||||||
add esi,12
|
add esi,12
|
||||||
mov ebx,[cur_band]
|
mov ebx,[cur_band]
|
||||||
|
|
||||||
cmp eax,11
|
cmp eax,11
|
||||||
jb @f
|
jb @f
|
||||||
cmp eax,13
|
cmp eax,13
|
||||||
@ -186,26 +186,26 @@ align 4
|
|||||||
@@:
|
@@:
|
||||||
cmp eax,21 ; apply changes
|
cmp eax,21 ; apply changes
|
||||||
je apply
|
je apply
|
||||||
|
|
||||||
cmp eax,22 ; user pressed the 'add icon' button
|
cmp eax,22 ; user pressed the 'add icon' button
|
||||||
je add_icon
|
je add_icon
|
||||||
|
|
||||||
cmp eax,23 ; user pressed the remove icon button
|
cmp eax,23 ; user pressed the remove icon button
|
||||||
je remove_icon
|
je remove_icon
|
||||||
|
|
||||||
|
|
||||||
cmp eax,30 ; left arrow to icons bar
|
cmp eax,30 ; left arrow to icons bar
|
||||||
je arrow.left
|
je arrow.left
|
||||||
|
|
||||||
cmp eax,31 ; right arrow to icons bar
|
cmp eax,31 ; right arrow to icons bar
|
||||||
je arrow.right
|
je arrow.right
|
||||||
|
|
||||||
cmp eax,32
|
cmp eax,32
|
||||||
je ico
|
je ico
|
||||||
|
|
||||||
cmp eax,40 ; user pressed button for icon position
|
cmp eax,40 ; user pressed button for icon position
|
||||||
jae press_button_for_icon_position
|
jae press_button_for_icon_position
|
||||||
|
|
||||||
jmp still
|
jmp still
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -255,7 +255,7 @@ ico:
|
|||||||
call itoa
|
call itoa
|
||||||
jmp arrow.drwic1
|
jmp arrow.drwic1
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
apply:
|
apply:
|
||||||
; (1) save list
|
; (1) save list
|
||||||
mov ebx,finfo
|
mov ebx,finfo
|
||||||
@ -334,7 +334,7 @@ add_icon:
|
|||||||
jb no_f
|
jb no_f
|
||||||
mov edi,eax
|
mov edi,eax
|
||||||
sub eax,40
|
sub eax,40
|
||||||
|
|
||||||
xor edx,edx ; bcd -> 10
|
xor edx,edx ; bcd -> 10
|
||||||
mov ebx,16
|
mov ebx,16
|
||||||
div ebx
|
div ebx
|
||||||
@ -342,13 +342,13 @@ add_icon:
|
|||||||
shl eax,1 ; multiply x2
|
shl eax,1 ; multiply x2
|
||||||
lea eax,[eax+eax*4] ; multiply x5
|
lea eax,[eax+eax*4] ; multiply x5
|
||||||
add eax,edx
|
add eax,edx
|
||||||
|
|
||||||
mov ebx,eax
|
mov ebx,eax
|
||||||
add ebx,icons_reserved
|
add ebx,icons_reserved
|
||||||
cmp [ebx],byte 'x'
|
cmp [ebx],byte 'x'
|
||||||
je no_f
|
je no_f
|
||||||
mov [ebx],byte 'x'
|
mov [ebx],byte 'x'
|
||||||
|
|
||||||
mov [cur_btn],edi
|
mov [cur_btn],edi
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
mov ebx,10
|
mov ebx,10
|
||||||
@ -357,13 +357,13 @@ add_icon:
|
|||||||
add edx,65
|
add edx,65
|
||||||
mov [icon_default+0],dl
|
mov [icon_default+0],dl
|
||||||
mov [icon_default+1],al
|
mov [icon_default+1],al
|
||||||
|
|
||||||
inc dword [icons]
|
inc dword [icons]
|
||||||
mov edi,[icons]
|
mov edi,[icons]
|
||||||
dec edi
|
dec edi
|
||||||
imul edi,REC_SIZE
|
imul edi,REC_SIZE
|
||||||
add edi,icon_data
|
add edi,icon_data
|
||||||
|
|
||||||
mov [current_icon],edi
|
mov [current_icon],edi
|
||||||
|
|
||||||
mov esi,icon_default
|
mov esi,icon_default
|
||||||
@ -382,7 +382,7 @@ align 4
|
|||||||
remove_icon:
|
remove_icon:
|
||||||
mov ebx,24*65536+250+8*14
|
mov ebx,24*65536+250+8*14
|
||||||
mcall 4,,0xc0ff0000,rem_text,,0xffffff
|
mcall 4,,0xc0ff0000,rem_text,,0xffffff
|
||||||
|
|
||||||
mcall 10
|
mcall 10
|
||||||
cmp eax,3
|
cmp eax,3
|
||||||
jne no_f
|
jne no_f
|
||||||
@ -392,7 +392,7 @@ remove_icon:
|
|||||||
cmp eax,40
|
cmp eax,40
|
||||||
jb red
|
jb red
|
||||||
sub eax,40
|
sub eax,40
|
||||||
|
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
mov ebx,16
|
mov ebx,16
|
||||||
div ebx
|
div ebx
|
||||||
@ -400,27 +400,27 @@ remove_icon:
|
|||||||
shl eax,1 ; multiply x2
|
shl eax,1 ; multiply x2
|
||||||
lea eax,[eax+eax*4] ; multiply x5
|
lea eax,[eax+eax*4] ; multiply x5
|
||||||
add eax,edx
|
add eax,edx
|
||||||
|
|
||||||
mov ebx,eax
|
mov ebx,eax
|
||||||
add ebx,icons_reserved
|
add ebx,icons_reserved
|
||||||
cmp [ebx],byte 'x'
|
cmp [ebx],byte 'x'
|
||||||
jne red
|
jne red
|
||||||
mov [ebx],byte ' '
|
mov [ebx],byte ' '
|
||||||
|
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
mov ebx,10
|
mov ebx,10
|
||||||
div ebx
|
div ebx
|
||||||
shl eax,8
|
shl eax,8
|
||||||
mov al,dl
|
mov al,dl
|
||||||
|
|
||||||
add eax,65*256+65
|
add eax,65*256+65
|
||||||
|
|
||||||
mov esi,icon_data
|
mov esi,icon_data
|
||||||
mov edi,REC_SIZE
|
mov edi,REC_SIZE
|
||||||
imul edi,[icons]
|
imul edi,[icons]
|
||||||
add edi,icon_data
|
add edi,icon_data
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
news:
|
news:
|
||||||
cmp word [esi],ax
|
cmp word [esi],ax
|
||||||
je foundi
|
je foundi
|
||||||
@ -433,15 +433,15 @@ align 4
|
|||||||
foundi:
|
foundi:
|
||||||
mov ecx,edi
|
mov ecx,edi
|
||||||
sub ecx,esi
|
sub ecx,esi
|
||||||
|
|
||||||
mov edi,esi
|
mov edi,esi
|
||||||
add esi,REC_SIZE
|
add esi,REC_SIZE
|
||||||
|
|
||||||
cld
|
cld
|
||||||
rep movsb
|
rep movsb
|
||||||
|
|
||||||
dec [icons]
|
dec [icons]
|
||||||
|
|
||||||
mov eax,icon_data
|
mov eax,icon_data
|
||||||
mov [current_icon],eax
|
mov [current_icon],eax
|
||||||
movzx ebx,word[eax]
|
movzx ebx,word[eax]
|
||||||
@ -667,11 +667,11 @@ draw_window:
|
|||||||
mcall ,<20,280>,<135,135> ; HOROZONTAL LINE ON WINDOW AREA
|
mcall ,<20,280>,<135,135> ; HOROZONTAL LINE ON WINDOW AREA
|
||||||
|
|
||||||
mcall 8,<20,72>,<(275+1+14),(13-2)>,11,[bcolor] ;id 11 TEXT ENTER BUTTONS
|
mcall 8,<20,72>,<(275+1+14),(13-2)>,11,[bcolor] ;id 11 TEXT ENTER BUTTONS
|
||||||
|
|
||||||
inc edx
|
inc edx
|
||||||
add ecx,14*65536
|
add ecx,14*65536
|
||||||
mcall ; id 12
|
mcall ; id 12
|
||||||
|
|
||||||
inc edx
|
inc edx
|
||||||
add ecx,14*65536
|
add ecx,14*65536
|
||||||
mcall ; id 13
|
mcall ; id 13
|
||||||
@ -694,7 +694,7 @@ draw_window:
|
|||||||
|
|
||||||
add edx,1 + 1 shl 29
|
add edx,1 + 1 shl 29
|
||||||
mcall ,<(33-19),(34*8)> ; id 32
|
mcall ,<(33-19),(34*8)> ; id 32
|
||||||
|
|
||||||
mcall 4,<(23-15),(273-24)>,0,arrows,1
|
mcall 4,<(23-15),(273-24)>,0,arrows,1
|
||||||
|
|
||||||
add ebx,(36*7+27)shl 16
|
add ebx,(36*7+27)shl 16
|
||||||
@ -761,7 +761,7 @@ no_button:
|
|||||||
inc al
|
inc al
|
||||||
cmp al,9
|
cmp al,9
|
||||||
jbe newbline
|
jbe newbline
|
||||||
|
|
||||||
mov al,0
|
mov al,0
|
||||||
add edx,6
|
add edx,6
|
||||||
ror ebx,16
|
ror ebx,16
|
||||||
@ -810,12 +810,12 @@ align 4
|
|||||||
push ecx
|
push ecx
|
||||||
pusha
|
pusha
|
||||||
mov ebp,0
|
mov ebp,0
|
||||||
|
|
||||||
mov eax,[strip_file_size]
|
mov eax,[strip_file_size]
|
||||||
add eax,[strip_file]
|
add eax,[strip_file]
|
||||||
cmp eax,ebx
|
cmp eax,ebx
|
||||||
ja @f
|
ja @f
|
||||||
; draw a rectangle if icon does not exist
|
; draw a rectangle if icon does not exist
|
||||||
mov ebx,edx ; X
|
mov ebx,edx ; X
|
||||||
mov ecx,edx ; Y
|
mov ecx,edx ; Y
|
||||||
shl ecx,16
|
shl ecx,16
|
||||||
@ -843,14 +843,14 @@ align 4
|
|||||||
lea edx,[ebx+(8*5)shl 16]
|
lea edx,[ebx+(8*5)shl 16]
|
||||||
pop ecx
|
pop ecx
|
||||||
mcall 47,0x30000,,,0xff
|
mcall 47,0x30000,,,0xff
|
||||||
|
|
||||||
add ecx,7
|
add ecx,7
|
||||||
add edx,(3*8+4)shl 16
|
add edx,(3*8+4)shl 16
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
add edx,(5*8+4)shl 16
|
add edx,(5*8+4)shl 16
|
||||||
mcall ,,[icon_count]
|
mcall ,,[icon_count]
|
||||||
|
|
||||||
pop ecx
|
pop ecx
|
||||||
add edx,(10*8+4)shl 16
|
add edx,(10*8+4)shl 16
|
||||||
mcall ,,,,0xff0000
|
mcall ,,,,0xff0000
|
||||||
@ -866,17 +866,17 @@ close:
|
|||||||
align 4
|
align 4
|
||||||
START2:
|
START2:
|
||||||
mcall 40,10000b ; only Event 5 - draw background
|
mcall 40,10000b ; only Event 5 - draw background
|
||||||
|
|
||||||
mcall 48,5
|
mcall 48,5
|
||||||
mov [warea.by_x],eax
|
mov [warea.by_x],eax
|
||||||
mov [warea.by_y],ebx
|
mov [warea.by_y],ebx
|
||||||
|
|
||||||
mcall 51,1,START_mouse_thread,stack_mouse_thread
|
mcall 51,1,START_mouse_thread,stack_mouse_thread
|
||||||
|
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov [x_left],eax
|
mov [x_left],eax
|
||||||
mov [y_top],eax
|
mov [y_top],eax
|
||||||
|
|
||||||
mcall 14
|
mcall 14
|
||||||
mov ebx,eax
|
mov ebx,eax
|
||||||
shr eax,16
|
shr eax,16
|
||||||
@ -925,7 +925,7 @@ align 4
|
|||||||
dec ecx
|
dec ecx
|
||||||
jnz .start_new
|
jnz .start_new
|
||||||
jmp still2
|
jmp still2
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
draw_picture:
|
draw_picture:
|
||||||
mov eax,[current_X]
|
mov eax,[current_X]
|
||||||
@ -976,17 +976,17 @@ align 4
|
|||||||
mov ebx,32
|
mov ebx,32
|
||||||
cld
|
cld
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
.y:
|
.y:
|
||||||
mov ecx,32
|
mov ecx,32
|
||||||
rep movsd
|
rep movsd
|
||||||
|
|
||||||
add edi,(52-32)*4
|
add edi,(52-32)*4
|
||||||
dec ebx
|
dec ebx
|
||||||
jnz .y
|
jnz .y
|
||||||
|
|
||||||
call draw_text
|
call draw_text
|
||||||
|
|
||||||
mov edx,[current_X]
|
mov edx,[current_X]
|
||||||
shl edx,16
|
shl edx,16
|
||||||
add edx,[current_Y]
|
add edx,[current_Y]
|
||||||
@ -1020,18 +1020,18 @@ align 4
|
|||||||
founde:
|
founde:
|
||||||
sub eax,title
|
sub eax,title
|
||||||
mov [tl],eax
|
mov [tl],eax
|
||||||
|
|
||||||
mov eax,[tl]
|
mov eax,[tl]
|
||||||
lea eax,[eax+eax*2] ; eax *= char_width/2
|
lea eax,[eax+eax*2] ; eax *= char_width/2
|
||||||
shl eax,16
|
shl eax,16
|
||||||
|
|
||||||
mov ebx,27 shl 16+40
|
mov ebx,27 shl 16+40
|
||||||
sub ebx,eax
|
sub ebx,eax
|
||||||
|
|
||||||
xor ecx,ecx ; black shade of text
|
xor ecx,ecx ; black shade of text
|
||||||
or ecx,0x08000000 ; redirect the output to the user area
|
or ecx,0x08000000 ; redirect the output to the user area
|
||||||
add ebx,1 shl 16 ;*65536+1
|
add ebx,1 shl 16 ;*65536+1
|
||||||
|
|
||||||
mov edi,[draw_area]
|
mov edi,[draw_area]
|
||||||
mcall 4,,,title,[tl]
|
mcall 4,,,title,[tl]
|
||||||
|
|
||||||
|
@ -83,12 +83,12 @@ align 4
|
|||||||
align 4
|
align 4
|
||||||
START: ; start of execution
|
START: ; start of execution
|
||||||
mcall 68,11
|
mcall 68,11
|
||||||
|
|
||||||
mcall 30, 1, default_dir
|
mcall 30, 1, default_dir
|
||||||
|
|
||||||
; DEBUGF DBG_INFO, "MENU START! sc.work = %x\n", [sc.work]
|
; DEBUGF DBG_INFO, "MENU START! sc.work = %x\n", [sc.work]
|
||||||
|
|
||||||
mov esi,bootparam
|
mov esi,bootparam
|
||||||
cmp [esi],byte 0
|
cmp [esi],byte 0
|
||||||
je .no_boot_parameters
|
je .no_boot_parameters
|
||||||
; boot params - hex
|
; boot params - hex
|
||||||
@ -105,7 +105,7 @@ START: ; start of execution
|
|||||||
|
|
||||||
call conversion_ASCII_to_HEX
|
call conversion_ASCII_to_HEX
|
||||||
mov [menu_button_x.start],ebx
|
mov [menu_button_x.start],ebx
|
||||||
|
|
||||||
; dps "menu_button_x.start: "
|
; dps "menu_button_x.start: "
|
||||||
; dpd ebx
|
; dpd ebx
|
||||||
; newline
|
; newline
|
||||||
@ -123,34 +123,34 @@ START: ; start of execution
|
|||||||
; dps "menu_button_y.start: "
|
; dps "menu_button_y.start: "
|
||||||
; dpd ebx
|
; dpd ebx
|
||||||
; newline
|
; newline
|
||||||
|
|
||||||
call conversion_ASCII_to_HEX
|
call conversion_ASCII_to_HEX
|
||||||
mov [menu_button_y.size],ebx
|
mov [menu_button_y.size],ebx
|
||||||
|
|
||||||
; dps "menu_button_y.size: "
|
; dps "menu_button_y.size: "
|
||||||
; dpd ebx
|
; dpd ebx
|
||||||
; newline
|
; newline
|
||||||
|
|
||||||
call conversion_ASCII_to_HEX
|
call conversion_ASCII_to_HEX
|
||||||
mov [panel_height],ebx
|
mov [panel_height],ebx
|
||||||
|
|
||||||
; dps "panel_height: "
|
; dps "panel_height: "
|
||||||
; dpd ebx
|
; dpd ebx
|
||||||
; newline
|
; newline
|
||||||
|
|
||||||
call conversion_ASCII_to_HEX
|
call conversion_ASCII_to_HEX
|
||||||
mov [panel_attachment],ebx
|
mov [panel_attachment],ebx
|
||||||
|
|
||||||
; dps "panel_attachment: "
|
; dps "panel_attachment: "
|
||||||
; dpd ebx
|
; dpd ebx
|
||||||
; newline
|
; newline
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
.no_boot_parameters:
|
.no_boot_parameters:
|
||||||
call program_exist
|
call program_exist
|
||||||
mcall 14
|
mcall 14
|
||||||
mov [screen_size],eax
|
mov [screen_size],eax
|
||||||
|
|
||||||
mcall 48,3,sc,sizeof.system_colors ; load system colors
|
mcall 48,3,sc,sizeof.system_colors ; load system colors
|
||||||
|
|
||||||
; DEBUGF DBG_INFO, "sc.work = %x\n", [sc.work]
|
; DEBUGF DBG_INFO, "sc.work = %x\n", [sc.work]
|
||||||
@ -235,7 +235,7 @@ align 4
|
|||||||
jmp .for1
|
jmp .for1
|
||||||
.end_for1:
|
.end_for1:
|
||||||
.no_res:
|
.no_res:
|
||||||
|
|
||||||
; get size of file MENU.DAT
|
; get size of file MENU.DAT
|
||||||
mcall 70,fileinfo
|
mcall 70,fileinfo
|
||||||
test eax,eax
|
test eax,eax
|
||||||
@ -324,7 +324,7 @@ search_end1:
|
|||||||
xor ax,ax
|
xor ax,ax
|
||||||
jmp .store
|
jmp .store
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@@:
|
@@:
|
||||||
sub ax,[panel_height] ;20
|
sub ax,[panel_height] ;20
|
||||||
.store:
|
.store:
|
||||||
@ -354,7 +354,7 @@ align 4
|
|||||||
mcall 40,100111b ; mouse + button + key + redraw
|
mcall 40,100111b ; mouse + button + key + redraw
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
red:
|
red:
|
||||||
call draw_window ; redraw
|
call draw_window ; redraw
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -364,7 +364,7 @@ still: ; event loop
|
|||||||
mcall 23,5 ; wait here for event
|
mcall 23,5 ; wait here for event
|
||||||
test [close_now],1 ; is close flag set?
|
test [close_now],1 ; is close flag set?
|
||||||
jnz close
|
jnz close
|
||||||
|
|
||||||
cmp eax,1 ; redraw request ?
|
cmp eax,1 ; redraw request ?
|
||||||
je red
|
je red
|
||||||
cmp eax,2 ; key pressed ?
|
cmp eax,2 ; key pressed ?
|
||||||
@ -375,14 +375,14 @@ still: ; event loop
|
|||||||
je mouse
|
je mouse
|
||||||
cmp edi,[menu_data]
|
cmp edi,[menu_data]
|
||||||
je still ; if main process-ignored
|
je still ; if main process-ignored
|
||||||
|
|
||||||
movzx ebx,[edi + parent] ; parent id
|
movzx ebx,[edi + parent] ; parent id
|
||||||
shl ebx,4
|
shl ebx,4
|
||||||
add ebx,[menu_data] ; ebx = base of parent info
|
add ebx,[menu_data] ; ebx = base of parent info
|
||||||
call backconvert ; get my id in al
|
call backconvert ; get my id in al
|
||||||
cmp al,[ebx + child] ; if I'm not child of my parent, I shall die :)
|
cmp al,[ebx + child] ; if I'm not child of my parent, I shall die :)
|
||||||
jne close
|
jne close
|
||||||
|
|
||||||
jmp still
|
jmp still
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -392,7 +392,7 @@ key:
|
|||||||
mov al,[edi + rows] ; number of buttons
|
mov al,[edi + rows] ; number of buttons
|
||||||
cmp ah,178 ; KEY_UP
|
cmp ah,178 ; KEY_UP
|
||||||
jne .noup
|
jne .noup
|
||||||
|
|
||||||
mov ah,[edi+cur_sel]
|
mov ah,[edi+cur_sel]
|
||||||
mov [edi+prev_sel],ah
|
mov [edi+prev_sel],ah
|
||||||
dec byte [edi+cur_sel]
|
dec byte [edi+cur_sel]
|
||||||
@ -404,7 +404,7 @@ align 4
|
|||||||
.noup:
|
.noup:
|
||||||
cmp ah,177 ; KEY_DOWN
|
cmp ah,177 ; KEY_DOWN
|
||||||
jne .nodn
|
jne .nodn
|
||||||
|
|
||||||
mov ah,[edi + cur_sel]
|
mov ah,[edi + cur_sel]
|
||||||
mov [edi + prev_sel],ah
|
mov [edi + prev_sel],ah
|
||||||
inc [edi + cur_sel]
|
inc [edi + cur_sel]
|
||||||
@ -456,7 +456,7 @@ button1:
|
|||||||
mov al,[esi + cur_sel]
|
mov al,[esi + cur_sel]
|
||||||
mov [esi + prev_sel],al
|
mov [esi + prev_sel],al
|
||||||
mov [esi + cur_sel],ah
|
mov [esi + cur_sel],ah
|
||||||
|
|
||||||
pushad
|
pushad
|
||||||
mov edi,esi
|
mov edi,esi
|
||||||
; dph eax
|
; dph eax
|
||||||
@ -472,25 +472,25 @@ align 4
|
|||||||
dec ah
|
dec ah
|
||||||
jnz .next_string
|
jnz .next_string
|
||||||
pop eax
|
pop eax
|
||||||
|
|
||||||
mov ecx,40
|
mov ecx,40
|
||||||
mov al,'|'
|
mov al,'|'
|
||||||
cld
|
cld
|
||||||
repne scasb
|
repne scasb
|
||||||
test ecx,ecx ; if '|' not found
|
test ecx,ecx ; if '|' not found
|
||||||
je searchexit
|
je searchexit
|
||||||
|
|
||||||
cmp [edi],byte '@' ; check for submenu
|
cmp [edi],byte '@' ; check for submenu
|
||||||
je runthread
|
je runthread
|
||||||
|
|
||||||
cmp [last_key],179
|
cmp [last_key],179
|
||||||
je searchexit
|
je searchexit
|
||||||
|
|
||||||
;dec edi
|
;dec edi
|
||||||
push edi ; pointer to start of filename
|
push edi ; pointer to start of filename
|
||||||
call searchstartstring ; search for next string
|
call searchstartstring ; search for next string
|
||||||
sub edi,2 ; to last byte of string
|
sub edi,2 ; to last byte of string
|
||||||
|
|
||||||
mov ecx,edi
|
mov ecx,edi
|
||||||
pop esi
|
pop esi
|
||||||
sub ecx,esi
|
sub ecx,esi
|
||||||
@ -507,7 +507,7 @@ align 4
|
|||||||
jns close
|
jns close
|
||||||
mov eax, fileinfo_start.name
|
mov eax, fileinfo_start.name
|
||||||
mov [file_open.params], eax
|
mov [file_open.params], eax
|
||||||
mcall 70,file_open
|
mcall 70,file_open
|
||||||
jmp close
|
jmp close
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -518,23 +518,23 @@ searchexit:
|
|||||||
align 4
|
align 4
|
||||||
runthread:
|
runthread:
|
||||||
inc edi
|
inc edi
|
||||||
|
|
||||||
push eax
|
push eax
|
||||||
call get_number ; get number of this process
|
call get_number ; get number of this process
|
||||||
pop eax
|
pop eax
|
||||||
|
|
||||||
test ebx,ebx ; returned zero - main menu or not number
|
test ebx,ebx ; returned zero - main menu or not number
|
||||||
jz searchexit
|
jz searchexit
|
||||||
|
|
||||||
mov al,bl
|
mov al,bl
|
||||||
|
|
||||||
mov ebx,[processes]
|
mov ebx,[processes]
|
||||||
dec bl
|
dec bl
|
||||||
cmp al,bl
|
cmp al,bl
|
||||||
ja searchexit ; such process doesnt exist
|
ja searchexit ; such process doesn't exist
|
||||||
cmp al,[esi + child]
|
cmp al,[esi + child]
|
||||||
je searchexit ; such process already exists
|
je searchexit ; such process already exists
|
||||||
|
|
||||||
mov [esi + child],al ; this is my child
|
mov [esi + child],al ; this is my child
|
||||||
mov cx,[esi + x_start]
|
mov cx,[esi + x_start]
|
||||||
add cx,BTN_WIDTH+1 ; new x_start in cx
|
add cx,BTN_WIDTH+1 ; new x_start in cx
|
||||||
@ -546,7 +546,7 @@ runthread:
|
|||||||
mov bl,[esi + rows] ; number of buttons in bl
|
mov bl,[esi + rows] ; number of buttons in bl
|
||||||
sub bl,ah ; number of btn from bottom
|
sub bl,ah ; number of btn from bottom
|
||||||
|
|
||||||
; Leency: store vars for case when attachement=top
|
; Leency: store vars for case when attachement=top
|
||||||
pusha
|
pusha
|
||||||
mov [prior_thread_selected_y_end], bl
|
mov [prior_thread_selected_y_end], bl
|
||||||
mcall 9,procinfo,-1
|
mcall 9,procinfo,-1
|
||||||
@ -571,7 +571,7 @@ runthread:
|
|||||||
mov [edx + cur_sel],al ; clear current selected element
|
mov [edx + cur_sel],al ; clear current selected element
|
||||||
mov [edx + prev_sel],al ; clear previous selected element
|
mov [edx + prev_sel],al ; clear previous selected element
|
||||||
mov [edx + child],0
|
mov [edx + child],0
|
||||||
|
|
||||||
mcall 68,12,0x1000 ; stack of each thread is allocated 4 KB
|
mcall 68,12,0x1000 ; stack of each thread is allocated 4 KB
|
||||||
add eax,0x1000 ; set the stack pointer to the desired position
|
add eax,0x1000 ; set the stack pointer to the desired position
|
||||||
mov edx,eax
|
mov edx,eax
|
||||||
@ -629,9 +629,9 @@ align 4
|
|||||||
click:
|
click:
|
||||||
cmp [mousemask],0 ; not in a window (i.e. menu)
|
cmp [mousemask],0 ; not in a window (i.e. menu)
|
||||||
jne still
|
jne still
|
||||||
; checking for pressing 'MENU' on the taskbar
|
; checking for pressing 'MENU' on the taskbar
|
||||||
mov eax,[screen_mouse_position]
|
mov eax,[screen_mouse_position]
|
||||||
|
|
||||||
cmp [panel_attachment],byte 1
|
cmp [panel_attachment],byte 1
|
||||||
je @f
|
je @f
|
||||||
|
|
||||||
@ -652,25 +652,25 @@ align 4
|
|||||||
add bx,word [menu_button_y.size]
|
add bx,word [menu_button_y.size]
|
||||||
cmp bx,ax
|
cmp bx,ax
|
||||||
jb close
|
jb close
|
||||||
|
|
||||||
shr eax,16
|
shr eax,16
|
||||||
|
|
||||||
mov ebx,[menu_button_x.start]
|
mov ebx,[menu_button_x.start]
|
||||||
cmp bx,ax ; MENU_BOTTON_X_SIZE
|
cmp bx,ax ; MENU_BOTTON_X_SIZE
|
||||||
ja close
|
ja close
|
||||||
|
|
||||||
add bx,[menu_button_x.size]
|
add bx,[menu_button_x.size]
|
||||||
cmp bx,ax ; MENU_BOTTON_X_POS
|
cmp bx,ax ; MENU_BOTTON_X_POS
|
||||||
ja still
|
ja still
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
close:
|
close:
|
||||||
|
|
||||||
movzx ebx,[edi+parent] ; parent id
|
movzx ebx,[edi+parent] ; parent id
|
||||||
shl ebx,4
|
shl ebx,4
|
||||||
add ebx,[menu_data] ; ebx = base of parent info
|
add ebx,[menu_data] ; ebx = base of parent info
|
||||||
call backconvert
|
call backconvert
|
||||||
cmp [ebx + child],al ; if i am the child of my parent...
|
cmp [ebx + child],al ; if I am the child of my parent...
|
||||||
jnz @f
|
jnz @f
|
||||||
mov [ebx + child],-1 ; ...my parent now has no children
|
mov [ebx + child],-1 ; ...my parent now has no children
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
@ -678,10 +678,10 @@ align 4
|
|||||||
@@:
|
@@:
|
||||||
or eax,-1 ; close this thread
|
or eax,-1 ; close this thread
|
||||||
mov [edi + child],al ; my child is not mine
|
mov [edi + child],al ; my child is not mine
|
||||||
|
|
||||||
call free_area_if_set_mutex
|
call free_area_if_set_mutex
|
||||||
call set_mutex_for_free_area
|
call set_mutex_for_free_area
|
||||||
|
|
||||||
mcall
|
mcall
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -693,7 +693,7 @@ backconvert: ; convert from pointer to process id
|
|||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
set_mutex_for_free_area:
|
set_mutex_for_free_area:
|
||||||
; set mutex for free thread stack area
|
; set mutex for free thread stack area
|
||||||
push eax ebx
|
push eax ebx
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -732,7 +732,7 @@ align 4
|
|||||||
pop ecx ebx eax
|
pop ecx ebx eax
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
.end:
|
.end:
|
||||||
ret
|
ret
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
;==================================
|
;==================================
|
||||||
@ -824,13 +824,13 @@ draw_window:
|
|||||||
movzx ecx,[edi + y_end]
|
movzx ecx,[edi + y_end]
|
||||||
cmp [panel_attachment],byte 1
|
cmp [panel_attachment],byte 1
|
||||||
je @f
|
je @f
|
||||||
|
|
||||||
|
|
||||||
;cmp ebp,0x000 ; if this is first started thread
|
;cmp ebp,0x000 ; if this is first started thread
|
||||||
;je .1 ; then show it at the very top
|
;je .1 ; then show it at the very top
|
||||||
|
|
||||||
push ebx eax
|
push ebx eax
|
||||||
; if attachement=top
|
; if attachement=top
|
||||||
; then NEW_WIN_Y = PRIOR_WIN_Y + PRIOR_WIN_H - ITEM_H + 1 - SEL_ITEM_Y
|
; then NEW_WIN_Y = PRIOR_WIN_Y + PRIOR_WIN_H - ITEM_H + 1 - SEL_ITEM_Y
|
||||||
|
|
||||||
mov ecx, [prior_thread_y]
|
mov ecx, [prior_thread_y]
|
||||||
@ -842,17 +842,17 @@ draw_window:
|
|||||||
mov al, [prior_thread_selected_y_end]
|
mov al, [prior_thread_selected_y_end]
|
||||||
mov ebx, BTN_HEIGHT
|
mov ebx, BTN_HEIGHT
|
||||||
mul ebx
|
mul ebx
|
||||||
|
|
||||||
sub ecx, eax
|
sub ecx, eax
|
||||||
|
|
||||||
mov [edi + cur_sel],1 ;if attachement=top then set item=1 selected
|
mov [edi + cur_sel],1 ;if attachement=top then set item=1 selected
|
||||||
|
|
||||||
pop eax ebx
|
pop eax ebx
|
||||||
|
|
||||||
jmp .1
|
jmp .1
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@@:
|
@@:
|
||||||
sub ecx,eax ; ecx = Y_START
|
sub ecx,eax ; ecx = Y_START
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -866,7 +866,7 @@ align 4
|
|||||||
mov bx,BTN_WIDTH ; ebx = [ X_START | X_SIZE ]
|
mov bx,BTN_WIDTH ; ebx = [ X_START | X_SIZE ]
|
||||||
mov edx,0x01000000 ; color of work area RRGGBB,8->color gl
|
mov edx,0x01000000 ; color of work area RRGGBB,8->color gl
|
||||||
mov esi,edx ; unmovable window
|
mov esi,edx ; unmovable window
|
||||||
|
|
||||||
mov eax,[y_working_area]
|
mov eax,[y_working_area]
|
||||||
shr eax,16
|
shr eax,16
|
||||||
ror ecx,16
|
ror ecx,16
|
||||||
@ -878,14 +878,14 @@ align 4
|
|||||||
@@:
|
@@:
|
||||||
cmp cx,ax
|
cmp cx,ax
|
||||||
ja @f
|
ja @f
|
||||||
mov cx,ax
|
mov cx,ax
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@@:
|
@@:
|
||||||
rol ecx,16
|
rol ecx,16
|
||||||
xor eax,eax ; function 0 : define and draw window
|
xor eax,eax ; function 0 : define and draw window
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
; dps "[ Y_START | Y_SIZE ] : "
|
; dps "[ Y_START | Y_SIZE ] : "
|
||||||
; dph ecx
|
; dph ecx
|
||||||
; newline
|
; newline
|
||||||
@ -951,11 +951,11 @@ align 4
|
|||||||
; from system close button with 0x000001 id
|
; from system close button with 0x000001 id
|
||||||
; dunkaist]
|
; dunkaist]
|
||||||
mcall
|
mcall
|
||||||
push edx
|
push edx
|
||||||
|
|
||||||
mov edx, esi
|
mov edx, esi
|
||||||
mcall 13 ; draw rect
|
mcall 13 ; draw rect
|
||||||
|
|
||||||
mcall , BTN_WIDTH,<[draw_y],1>,[sc.work_light]
|
mcall , BTN_WIDTH,<[draw_y],1>,[sc.work_light]
|
||||||
add ecx, BTN_HEIGHT-1
|
add ecx, BTN_HEIGHT-1
|
||||||
mcall , 1
|
mcall , 1
|
||||||
@ -963,7 +963,7 @@ align 4
|
|||||||
mcall , <BTN_WIDTH,1>, , [sc.work_dark]
|
mcall , <BTN_WIDTH,1>, , [sc.work_dark]
|
||||||
add [draw_y], BTN_HEIGHT-1
|
add [draw_y], BTN_HEIGHT-1
|
||||||
mcall , BTN_WIDTH,<[draw_y],1>
|
mcall , BTN_WIDTH,<[draw_y],1>
|
||||||
|
|
||||||
pop edx
|
pop edx
|
||||||
movzx edx,dl
|
movzx edx,dl
|
||||||
dec dl
|
dec dl
|
||||||
@ -987,7 +987,7 @@ align 4
|
|||||||
jne .findline
|
jne .findline
|
||||||
dec ecx ; TODO what in ecx? button number?
|
dec ecx ; TODO what in ecx? button number?
|
||||||
jnz .findline
|
jnz .findline
|
||||||
|
|
||||||
mov ecx, [sc.work_text]
|
mov ecx, [sc.work_text]
|
||||||
add ecx, FONT_TYPE
|
add ecx, FONT_TYPE
|
||||||
|
|
||||||
@ -1044,13 +1044,13 @@ align 4
|
|||||||
cmp [is_icon_active], 1
|
cmp [is_icon_active], 1
|
||||||
jne .not_active_icon
|
jne .not_active_icon
|
||||||
mov ecx, [shared_icons_active_ptr]
|
mov ecx, [shared_icons_active_ptr]
|
||||||
.not_active_icon:
|
.not_active_icon:
|
||||||
add ebx, ecx
|
add ebx, ecx
|
||||||
mcall 65, ebx, <18,18>, [tmp], 32, 0, 0
|
mcall 65, ebx, <18,18>, [tmp], 32, 0, 0
|
||||||
|
|
||||||
@@:
|
@@:
|
||||||
pop ebp edi esi ecx
|
pop ebp edi esi ecx
|
||||||
|
|
||||||
pop edx
|
pop edx
|
||||||
ret
|
ret
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
params dd PARAMS
|
params dd PARAMS
|
||||||
dd 0x0
|
dd 0x0
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
delay dd 500
|
delay dd 500
|
||||||
mount_attempt dd 0
|
mount_attempt dd 0
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
fileinfo:
|
fileinfo:
|
||||||
@ -84,13 +84,13 @@ START:
|
|||||||
mov esi, [params]
|
mov esi, [params]
|
||||||
cmp [esi], byte '/'
|
cmp [esi], byte '/'
|
||||||
jne @f
|
jne @f
|
||||||
mov esi, [params] ;user gave us the path so lets mount it
|
mov esi, [params] ;user gave us the path so let's mount it
|
||||||
inc esi
|
inc esi
|
||||||
mov edi,f30_3_work_area+64
|
mov edi,f30_3_work_area+64
|
||||||
call proc_copy_path
|
call proc_copy_path
|
||||||
mcall 30,3,f30_3_work_area
|
mcall 30,3,f30_3_work_area
|
||||||
mcall -1
|
mcall -1
|
||||||
@@:
|
@@:
|
||||||
test [esi], byte 0xFF
|
test [esi], byte 0xFF
|
||||||
jz .params_done
|
jz .params_done
|
||||||
cmp word[esi], '-d' ; delay
|
cmp word[esi], '-d' ; delay
|
||||||
@ -262,7 +262,7 @@ load_file:
|
|||||||
jbe @f
|
jbe @f
|
||||||
mov ecx,eax
|
mov ecx,eax
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
@@:
|
@@:
|
||||||
mov [fileinfo.size],ecx
|
mov [fileinfo.size],ecx
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
DEBUGF 1, "Searchap: get file\n"
|
DEBUGF 1, "Searchap: get file\n"
|
||||||
@ -283,7 +283,7 @@ load_file:
|
|||||||
DEBUGF 1, "Searchap: read file - error!\n"
|
DEBUGF 1, "Searchap: read file - error!\n"
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
ret
|
ret
|
||||||
;-----------------------------------
|
;-----------------------------------
|
||||||
@@:
|
@@:
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
DEBUGF 1, "Searchap: read file corrected size: %d\n",[fileinfo.size]
|
DEBUGF 1, "Searchap: read file corrected size: %d\n",[fileinfo.size]
|
||||||
@ -446,7 +446,7 @@ mount_dir rb 1
|
|||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
f30_3_work_area:
|
f30_3_work_area:
|
||||||
db 'kolibrios',0
|
db 'kolibrios',0
|
||||||
rb 118
|
rb 118
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
align 4
|
align 4
|
||||||
@ -474,4 +474,4 @@ align 4
|
|||||||
stacktop:
|
stacktop:
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
I_END:
|
I_END:
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
|
@ -13,7 +13,7 @@ Shell 0.8.1 // 14.04.2020 - 01.04.2021 // rgimad, turbocat, Kenshin
|
|||||||
* fixed bug with ctrl+v
|
* fixed bug with ctrl+v
|
||||||
* added navigation in current string by Home, End
|
* added navigation in current string by Home, End
|
||||||
* directory highlighting in ls command output
|
* directory highlighting in ls command output
|
||||||
* Now for incorrect scripts (which doesnt start with #SHS) shell says
|
* Now for incorrect scripts (which doesn't start with #SHS) shell says
|
||||||
that they are incorrect, not "File not found".
|
that they are incorrect, not "File not found".
|
||||||
Also, translated comments from russian to english in two files.
|
Also, translated comments from russian to english in two files.
|
||||||
* added mv command
|
* added mv command
|
||||||
@ -47,7 +47,7 @@ Shell 0.7.7 // 06.02.2017 // Leency
|
|||||||
Shell 0.7.6 // 06.02.2017 // Siemargl
|
Shell 0.7.6 // 06.02.2017 // Siemargl
|
||||||
* Файловые операции используют 64-bit размеры файлов.
|
* Файловые операции используют 64-bit размеры файлов.
|
||||||
cp <file> <dest> теперь понимает, если <dest> - каталог
|
cp <file> <dest> теперь понимает, если <dest> - каталог
|
||||||
cp использует буфер 1Мб, или не более половины свободной памяти
|
cp использует буфер 1Мб, или не более половины свободной памяти
|
||||||
|
|
||||||
Shell 0.7.5 // 06.01.2017 // Siemargl
|
Shell 0.7.5 // 06.01.2017 // Siemargl
|
||||||
* Мелкие багфиксы, изменена логика обработки стрелок вверх/вниз, чтобы как у всех
|
* Мелкие багфиксы, изменена логика обработки стрелок вверх/вниз, чтобы как у всех
|
||||||
@ -111,18 +111,18 @@ Shell 0.5.4 // 04.06.2012 // Albom
|
|||||||
=======================================
|
=======================================
|
||||||
* Исправлен интерфейс исполняемых консольных приложений. Теперь они должны создавать буфер с именем pid-SHELL, где pid - идентификатор процесса без заглавных нулей
|
* Исправлен интерфейс исполняемых консольных приложений. Теперь они должны создавать буфер с именем pid-SHELL, где pid - идентификатор процесса без заглавных нулей
|
||||||
* Реинкарнированы команды ccpuid, free, killall
|
* Реинкарнированы команды ccpuid, free, killall
|
||||||
+ Добавлена команда history
|
+ Добавлена команда history
|
||||||
|
|
||||||
|
|
||||||
Shell 0.5.3 // 19.04.2012 // Albom
|
Shell 0.5.3 // 19.04.2012 // Albom
|
||||||
=======================================
|
=======================================
|
||||||
* Исправление в команде pwd
|
* Исправление в команде pwd
|
||||||
|
|
||||||
|
|
||||||
Shell 0.5.2 // 16.04.2012 // Albom
|
Shell 0.5.2 // 16.04.2012 // Albom
|
||||||
=======================================
|
=======================================
|
||||||
* Исправление в команде ls
|
* Исправление в команде ls
|
||||||
* Незначительные другие исправления
|
* Незначительные другие исправления
|
||||||
|
|
||||||
|
|
||||||
Shell 0.5.1 // 15.04.2012 // Albom
|
Shell 0.5.1 // 15.04.2012 // Albom
|
||||||
@ -164,10 +164,10 @@ Shell 0.4.4 // 20.08.2010 // Albom
|
|||||||
1) шелл корректно завершается при закрытии окна
|
1) шелл корректно завершается при закрытии окна
|
||||||
2) исправлено ещё 2 ошибки
|
2) исправлено ещё 2 ошибки
|
||||||
3) добавлены 2 команды:
|
3) добавлены 2 команды:
|
||||||
* sleep - ждать. параметр - время в сотых частях секунды. только целое число.
|
* sleep - ждать. параметр - время в сотых частях секунды. только целое число.
|
||||||
* ccpuid - вывод в консоль информации (пока скудно) о процессоре. пользы мало, но давно хотел с командой cpuid разобраться (в следующем семестре буду студентам курс читать, включил разбор команды в программу).
|
* ccpuid - вывод в консоль информации (пока скудно) о процессоре. пользы мало, но давно хотел с командой cpuid разобраться (в следующем семестре буду студентам курс читать, включил разбор команды в программу).
|
||||||
|
|
||||||
есть много идей. некоторые легко реализуются, некоторые сложнее. если интересно:
|
есть много идей. некоторые легко реализуются, некоторые сложнее. если интересно:
|
||||||
1) добавить переменную (одну!), в которую будет результат в текстовой форме (не то что возвращает функция) записываться. с ней можно будет работать из командной строки
|
1) добавить переменную (одну!), в которую будет результат в текстовой форме (не то что возвращает функция) записываться. с ней можно будет работать из командной строки
|
||||||
2) внедрить простую стековую машину для вычислений с вещественными числами
|
2) внедрить простую стековую машину для вычислений с вещественными числами
|
||||||
|
|
||||||
@ -218,7 +218,7 @@ shell /sys/somescript
|
|||||||
Shell 0.3 // 07.08.2008 // Albom
|
Shell 0.3 // 07.08.2008 // Albom
|
||||||
=======================================
|
=======================================
|
||||||
1) Возможность запуска скриптов
|
1) Возможность запуска скриптов
|
||||||
* каждая строка должна представляет собой команду
|
* каждая строка должна представляет собой команду
|
||||||
* строкой считается набор символов, который заканчивается CR+LF (Windows) или LF(UNIX) или CR(Mac)
|
* строкой считается набор символов, который заканчивается CR+LF (Windows) или LF(UNIX) или CR(Mac)
|
||||||
* если строка начинается с #, то вся строка (т.е. комментарий) игнорируется
|
* если строка начинается с #, то вся строка (т.е. комментарий) игнорируется
|
||||||
* скрипт должен начитаться с #SHS
|
* скрипт должен начитаться с #SHS
|
||||||
@ -251,7 +251,7 @@ Shell 0.1 // 29.07.2008 // Albom
|
|||||||
|
|
||||||
Shell 0.02 // 27.07.2008 // Albom
|
Shell 0.02 // 27.07.2008 // Albom
|
||||||
=======================================
|
=======================================
|
||||||
* Реализовал команды:
|
* Реализовал команды:
|
||||||
exit - выход
|
exit - выход
|
||||||
ls (с параметром и без) - вывод списка директории
|
ls (с параметром и без) - вывод списка директории
|
||||||
pwd - текущий каталог
|
pwd - текущий каталог
|
||||||
@ -259,9 +259,8 @@ Shell 0.02 // 27.07.2008 // Albom
|
|||||||
kill - завершить процесс по PID
|
kill - завершить процесс по PID
|
||||||
help (с параметром и без) - помощь
|
help (с параметром и без) - помощь
|
||||||
|
|
||||||
|
|
||||||
Shell 0.01 // 27.07.2008 // Albom
|
Shell 0.01 // 27.07.2008 // Albom
|
||||||
=======================================
|
=======================================
|
||||||
* Решил написать функциональный шелл на Си с использованием console.obj
|
* Решил написать функциональный шелл на Си с использованием console.obj
|
||||||
* Пока сделал функцию отделения команды и параметров, а также реализовал команды help (пока без параметров), ver и exit
|
* Пока сделал функцию отделения команды и параметров, а также реализовал команды help (пока без параметров), ver и exit
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ int newline_to_file(char *fn, unsigned long long pos)
|
|||||||
kol_struct70 k70_out;
|
kol_struct70 k70_out;
|
||||||
|
|
||||||
k70_out.p00 = 3;
|
k70_out.p00 = 3;
|
||||||
k70_out.p04 = pos; // offset
|
k70_out.p04 = pos; // offset
|
||||||
//k70_out.p08 = 0;
|
//k70_out.p08 = 0;
|
||||||
k70_out.p12 = 2;
|
k70_out.p12 = 2;
|
||||||
k70_out.p16 = (unsigned)newline;
|
k70_out.p16 = (unsigned)newline;
|
||||||
@ -60,7 +60,7 @@ int cmd_echo(char text[])
|
|||||||
// remove spaces at the end of out_len
|
// remove spaces at the end of out_len
|
||||||
while (out_len > 0 && text[out_len - 1] == ' ') { out_len--; }
|
while (out_len > 0 && text[out_len - 1] == ' ') { out_len--; }
|
||||||
|
|
||||||
// delete quotes if has
|
// delete quotes if present
|
||||||
if (text[out_len - 1] == '"') { out_len--; }
|
if (text[out_len - 1] == '"') { out_len--; }
|
||||||
if (text[0] == '"') { text++; out_len--; }
|
if (text[0] == '"') { text++; out_len--; }
|
||||||
|
|
||||||
@ -123,7 +123,7 @@ int cmd_echo(char text[])
|
|||||||
k70_in.p21 = filename_out;
|
k70_in.p21 = filename_out;
|
||||||
|
|
||||||
result = kol_file_70(&k70_in); // get information about file
|
result = kol_file_70(&k70_in); // get information about file
|
||||||
if ( 0 != result ) // file doesnt exist, then rewrite
|
if ( 0 != result ) // file doesn't exist, then rewrite
|
||||||
{
|
{
|
||||||
k70_out.p00 = 2;
|
k70_out.p00 = 2;
|
||||||
k70_out.p04 = 0; // offset
|
k70_out.p04 = 0; // offset
|
||||||
@ -148,7 +148,7 @@ int cmd_echo(char text[])
|
|||||||
unsigned long long filesize = bdvk.p32;
|
unsigned long long filesize = bdvk.p32;
|
||||||
|
|
||||||
k70_out.p00 = 3;
|
k70_out.p00 = 3;
|
||||||
k70_out.p04 = filesize; // offset
|
k70_out.p04 = filesize; // offset
|
||||||
//k70_out.p08 = 0;
|
//k70_out.p08 = 0;
|
||||||
k70_out.p12 = out_len;
|
k70_out.p12 = out_len;
|
||||||
k70_out.p16 = (unsigned)text;
|
k70_out.p16 = (unsigned)text;
|
||||||
@ -170,4 +170,3 @@ int cmd_echo(char text[])
|
|||||||
//free(filename_out);
|
//free(filename_out);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user