@RB
- bug-fix and optimization git-svn-id: svn://kolibrios.org@604 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -13,27 +13,27 @@ include '..\..\..\macros.inc'
|
|||||||
meos_app_start
|
meos_app_start
|
||||||
code
|
code
|
||||||
|
|
||||||
mov eax, 48 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> 梥<><E6A2A5>
|
mov eax, 48 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> 梥<><E6A2A5>
|
||||||
mov ebx, 3
|
mov ebx, 3
|
||||||
mov ecx, sc ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov ecx, sc ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov edx, sizeof.system_colors ; <20> <20><> ࠧ<><E0A0A7><EFBFBD>
|
mov edx, sizeof.system_colors ; <20> <20><> ࠧ<><E0A0A7><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov eax,40 ; <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ᮡ<>⨩
|
mov eax,40 ; <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ᮡ<>⨩
|
||||||
mov ebx,100000b ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20><><EFBFBD><EFBFBD>
|
mov ebx,100000b ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20><><EFBFBD><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
still: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<> <20>᭮<EFBFBD><E1ADAE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
still: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<> <20>᭮<EFBFBD><E1ADAE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
mov eax,10 ; <20><><EFBFBD><EFBFBD> ᮡ<><E1AEA1><EFBFBD><EFBFBD>
|
mov eax,10 ; <20><><EFBFBD><EFBFBD> ᮡ<><E1AEA1><EFBFBD><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov eax,37 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
mov eax,37 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||||
mov ebx,2
|
mov ebx,2
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
cmp eax,2 ; <20> <20><> <20>ࠢ<EFBFBD><E0A0A2>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
cmp eax,ebx ; <20> <20><> <20>ࠢ<EFBFBD><E0A0A2>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
jne still
|
jne still
|
||||||
|
|
||||||
;---<2D><><EFBFBD>堫<EFBFBD>!---
|
;---<2D><><EFBFBD>堫<EFBFBD>!---
|
||||||
|
|
||||||
@@ -44,99 +44,99 @@ still: ;
|
|||||||
; je exit
|
; je exit
|
||||||
|
|
||||||
|
|
||||||
mov eax,9 ; <20><><EFBFBD><EFBFBD>稬 <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ <20> <20><><EFBFBD>⥬<EFBFBD>
|
mov eax,9 ; <20><><EFBFBD><EFBFBD>稬 <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ <20> <20><><EFBFBD>⥬<EFBFBD>
|
||||||
mov ebx,procinfo
|
mov ebx,procinfo
|
||||||
xor ecx,ecx
|
xor ecx,ecx
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
inc eax ; ⥯<><E2A5AF><EFBFBD> <20> eax ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ + 1
|
inc eax ; ⥯<><E2A5AF><EFBFBD> <20> eax ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ + 1
|
||||||
mov [processes],eax
|
mov [processes],eax
|
||||||
mov ecx,1
|
mov ecx,1
|
||||||
|
|
||||||
new_process:
|
new_process:
|
||||||
pushad
|
pushad
|
||||||
mov eax,9 ; <20><><EFBFBD><EFBFBD>稬 <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>; <20><><EFBFBD><EFBFBD><EFBFBD> - <20> ecx
|
mov eax,9 ; <20><><EFBFBD><EFBFBD>稬 <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>; <20><><EFBFBD><EFBFBD><EFBFBD> - <20> ecx
|
||||||
mov ebx,procinfo
|
mov ebx,procinfo
|
||||||
mcall
|
mcall
|
||||||
mov eax,37 ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,37 ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
xor ebx,ebx
|
xor ebx,ebx
|
||||||
mcall
|
mcall
|
||||||
mov ebx,eax ; eax = cursor_x
|
mov ebx,eax ; eax = cursor_x
|
||||||
shr eax,16 ; ebx = cursor_y
|
shr eax,16 ; ebx = cursor_y
|
||||||
and ebx,0xffff
|
and ebx,0xffff
|
||||||
mov [curx1],eax ; curx1 = cursor_x
|
mov [curx1],eax ; curx1 = cursor_x
|
||||||
mov [cury1],ebx ; cury1 = cursor_y
|
mov [cury1],ebx ; cury1 = cursor_y
|
||||||
; \begin{diamond}[18.09.2006]
|
; \begin{diamond}[18.09.2006]
|
||||||
; ignore minimized windows
|
; ignore minimized windows
|
||||||
test [procinfo.wnd_state], 2
|
test [procinfo.wnd_state], 2
|
||||||
jnz ne_goden
|
jnz ne_goden
|
||||||
; \end{diamond}[18.09.2006]
|
; \end{diamond}[18.09.2006]
|
||||||
mov eax,[procinfo.box.left] ; eax = wnd_x_start
|
mov eax,[procinfo.box.left] ; eax = wnd_x_start
|
||||||
mov ebx,[procinfo.box.top] ; ebx = wnd_y_start
|
mov ebx,[procinfo.box.top] ; ebx = wnd_y_start
|
||||||
|
|
||||||
mov ecx,[procinfo.box.width]
|
mov ecx,[procinfo.box.width]
|
||||||
add ecx,eax ; ecx = wnd_x_end
|
add ecx,eax ; ecx = wnd_x_end
|
||||||
mov edx,[procinfo.box.height]
|
mov edx,[procinfo.box.height]
|
||||||
add edx,ebx ; ecx = wnd_y_end
|
add edx,ebx ; ecx = wnd_y_end
|
||||||
|
|
||||||
cmp eax,[curx1] ; wnd_x_start > cursor_x => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
cmp eax,[curx1] ; wnd_x_start > cursor_x => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
jg ne_goden
|
jg ne_goden
|
||||||
cmp ecx,[curx1] ; wnd_x_end < cursor_x => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠢ<EFBFBD><E0A0A2> <20><><EFBFBD><EFBFBD>
|
cmp ecx,[curx1] ; wnd_x_end < cursor_x => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠢ<EFBFBD><E0A0A2> <20><><EFBFBD><EFBFBD>
|
||||||
jl ne_goden
|
jl ne_goden
|
||||||
cmp ebx,[cury1] ; wnd_y_start > cursor_y => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
cmp ebx,[cury1] ; wnd_y_start > cursor_y => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
jg ne_goden
|
jg ne_goden
|
||||||
cmp edx,[cury1] ; wnd_y_end < cursor_y => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
cmp edx,[cury1] ; wnd_y_end < cursor_y => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
jl ne_goden
|
jl ne_goden
|
||||||
|
|
||||||
goden: ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD>⮬<EFBFBD> <20><>祣<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
goden: ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD>⮬<EFBFBD> <20><>祣<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
popad
|
popad
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
ne_goden: ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> ᭠<>㦨 <20><><EFBFBD>ᬠ<EFBFBD>ਢ<EFBFBD><E0A8A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD>⮬<EFBFBD>
|
ne_goden: ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> ᭠<>㦨 <20><><EFBFBD>ᬠ<EFBFBD>ਢ<EFBFBD><E0A8A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD>⮬<EFBFBD>
|
||||||
popad
|
popad
|
||||||
inc ecx
|
inc ecx
|
||||||
cmp ecx,[processes]
|
cmp ecx,[processes]
|
||||||
jl new_process ; <20><><EFBFBD><EFBFBD> ᬮਬ <><E1ABA5><EFBFBD>饥 <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD>
|
jl new_process ; <20><><EFBFBD><EFBFBD> ᬮਬ <><E1ABA5><EFBFBD>饥 <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
|
||||||
@@: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>⨫ <20>ࠢ<EFBFBD><E0A0A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
@@: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>⨫ <20>ࠢ<EFBFBD><E0A0A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
mov eax,37
|
mov eax,37
|
||||||
mov ebx,2 ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 37-2:
|
mov ebx,2 ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 37-2:
|
||||||
mcall ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>?
|
mcall ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>?
|
||||||
cmp eax,ebx ; <20> <20><><EFBFBD><EFBFBD><EFBFBD>⨫, (eax != 2)
|
test eax,ebx ; <20> <20><><EFBFBD><EFBFBD><EFBFBD>⨫, (eax != 2)
|
||||||
jnz @f ; <20><><EFBFBD><EFBFBD> <20> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<><E6A8AA>
|
jz @f ; <20><><EFBFBD><EFBFBD> <20> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<><E6A8AA>
|
||||||
|
|
||||||
mov eax,5 ; <20><><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,5 ; <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ebx,2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 <20><>
|
;mov ebx,2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2 <20><>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
jmp @b ; <20> <20><EFBFBD>ਬ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
jmp @b ; <20> <20><EFBFBD>ਬ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
; <20> 㦥 <20>뫮 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20>㦭<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><E0AEA5><EFBFBD>:
|
; <20> 㦥 <20>뫮 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20>㦭<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><E0AEA5><EFBFBD>:
|
||||||
@@:
|
@@:
|
||||||
cmp [menu_opened],0
|
cmp [menu_opened],0
|
||||||
je @f
|
je @f
|
||||||
mov eax,5
|
mov eax,5
|
||||||
mov ebx,3 ; <20><><EFBFBD><EFBFBD> 3 <20><>
|
mov ebx,3 ; <20><><EFBFBD><EFBFBD> 3 <20><>
|
||||||
mcall
|
mcall
|
||||||
jmp @b
|
jmp @b
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mov eax,51 ; <20> ⥯<><E2A5AF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ᬥ<><E1ACA5> <20><><EFBFBD><EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><>⮪) <20><><EFBFBD><EFBFBD>
|
mov eax,51 ; <20> ⥯<><E2A5AF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ᬥ<><E1ACA5> <20><><EFBFBD><EFBFBD>᪠<EFBFBD><E1AAA0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><>⮪) <20><><EFBFBD><EFBFBD>
|
||||||
mov ebx,1 ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><>⮪ (thread)
|
mov ebx,1 ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><>⮪ (thread)
|
||||||
mov ecx,start_wnd ; <20><>窠 <20>室<EFBFBD> <20><>⮪<EFBFBD>
|
mov ecx,start_wnd ; <20><>窠 <20>室<EFBFBD> <20><>⮪<EFBFBD>
|
||||||
mov edx,stack_wnd ; <20><><EFBFBD>設<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>⮪<EFBFBD>
|
mov edx,stack_wnd ; <20><><EFBFBD>設<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>⮪<EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
exit_menu: ; <20> <20><>室<EFBFBD><E5AEA4> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> [menu_opened] 0
|
exit_menu: ; <20> <20><>室<EFBFBD><E5AEA4> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> [menu_opened] 0
|
||||||
mov [menu_opened],0
|
mov [menu_opened],0
|
||||||
exit: ; <20> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><>室<EFBFBD><E5AEA4> <20><> <20>᭮<EFBFBD><E1ADAE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
exit: ; <20> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><>室<EFBFBD><E5AEA4> <20><> <20>᭮<EFBFBD><E1ADAE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
or eax,-1 ; eax = -1
|
or eax,-1 ; eax = -1
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
|
|
||||||
@@ -144,80 +144,80 @@ exit: ;
|
|||||||
|
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
start_wnd:
|
start_wnd:
|
||||||
mov [menu_opened],1
|
mov [menu_opened],1
|
||||||
mov eax,40 ; <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮡ<>⨩ <20><><EFBFBD> <20>⮣<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,40 ; <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮡ<>⨩ <20><><EFBFBD> <20>⮣<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ebx,100101b ; <20><><EFBFBD><EFBFBD> + <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2>
|
mov ebx,100101b ; <20><><EFBFBD><EFBFBD> + <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
red:
|
red:
|
||||||
call draw_window
|
call draw_window
|
||||||
|
|
||||||
still2: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
still2: ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
mov eax,10 ; <20><><EFBFBD><EFBFBD> ᮡ<><E1AEA1><EFBFBD><EFBFBD>
|
mov eax,10 ; <20><><EFBFBD><EFBFBD> ᮡ<><E1AEA1><EFBFBD><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
cmp eax,1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2>?
|
cmp eax,1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2>?
|
||||||
je red
|
je red
|
||||||
cmp eax,3 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
cmp eax,3 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||||
je button
|
je button
|
||||||
cmp eax,6 ; <20><><EFBFBD><EFBFBD>?
|
cmp eax,6 ; <20><><EFBFBD><EFBFBD>?
|
||||||
je mouse
|
je mouse
|
||||||
|
|
||||||
jmp still2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<><E6A8AA>
|
jmp still2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><>砫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<><E6A8AA>
|
||||||
|
|
||||||
|
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
mouse: ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><E0AEA5><EFBFBD>
|
mouse: ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>짮<EFBFBD><ECA7AE>⥫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><E0AEA5><EFBFBD>
|
||||||
mov eax,37
|
mov eax,37
|
||||||
mov ebx,2 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
mov ebx,2 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||||
mcall
|
mcall
|
||||||
test eax,eax ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? - ⮣<><E2AEA3> <20>४<EFBFBD><E0A5AA>᭮! <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<>
|
test eax,eax ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? - ⮣<><E2AEA3> <20>४<EFBFBD><E0A5AA>᭮! <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 横<>
|
||||||
jz still2
|
jz still2
|
||||||
jmp exit_menu ; <20> <20> <20><><EFBFBD>-⠪<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
jmp exit_menu ; <20> <20> <20><><EFBFBD>-⠪<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
button:
|
button:
|
||||||
mov eax,17 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⮩ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,17 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⮩ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
sub ah,10 ; <20>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> 10
|
sub ah,10 ; <20>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> 10
|
||||||
jl nofuncbtns ; <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD>
|
jl nofuncbtns ; <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
movzx ebx,ah ; <20><><EFBFBD><EFBFBD>稫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20> ᯨ᪥ <20> ebx
|
movzx ebx,ah ; <20><><EFBFBD><EFBFBD>稫<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20> ᯨ᪥ <20> ebx
|
||||||
mov esi, [startapps + ebx*4]
|
mov esi, [startapps + ebx*4]
|
||||||
mov edi, start_info.path
|
mov edi, start_info.path
|
||||||
cld
|
cld
|
||||||
@@:
|
@@:
|
||||||
lodsb
|
lodsb
|
||||||
stosb
|
stosb
|
||||||
test al, al
|
test al, al
|
||||||
jnz @b
|
jnz @b
|
||||||
mcall 70, start_info
|
mcall 70, start_info
|
||||||
|
|
||||||
; mov eax,5 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; mov eax,5 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
; mov ebx,1 ; <20> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><> <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2><EFBFBD> (<28><><EFBFBD> <20> <20><><EFBFBD><EFBFBD>???)
|
; mov ebx,1 ; <20> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><> <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2><EFBFBD> (<28><><EFBFBD> <20> <20><><EFBFBD><EFBFBD>???)
|
||||||
; mcall ; <20><><EFBFBD><E1AAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>ப<EFBFBD>, <20> <20> <20><><EFBFBD> <20><EFBFBD><E0AEA1><EFBFBD><EFBFBD>
|
; mcall ; <20><><EFBFBD><E1AAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>ப<EFBFBD>, <20> <20> <20><><EFBFBD> <20><EFBFBD><E0AEA1><EFBFBD><EFBFBD>
|
||||||
; <20> <20><><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2><EFBFBD>
|
; <20> <20><><EFBFBD><EFBFBD>ᮢ<EFBFBD><E1AEA2><EFBFBD>
|
||||||
|
|
||||||
nofuncbtns: ; <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD>
|
nofuncbtns: ; <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD>
|
||||||
jmp exit_menu
|
jmp exit_menu
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
_BTNS_ = 6 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ("<22>㭪⮢ <20><><EFBFBD><EFBFBD>")
|
_BTNS_ = 6 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ("<22>㭪⮢ <20><><EFBFBD><EFBFBD>")
|
||||||
|
|
||||||
if lang eq ru
|
if lang eq ru
|
||||||
font = 0x00000000
|
font = 0x00000000
|
||||||
string_length = 20 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
string_length = 20 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
wnd_x_size = 133 ; <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
wnd_x_size = 133 ; <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
title_pos = 36 shl 16 + 7
|
title_pos = 36 shl 16 + 7
|
||||||
else
|
else
|
||||||
font = 0x10000000
|
font = 0x10000000
|
||||||
string_length = 12 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
string_length = 12 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
wnd_x_size = 105 ; <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
wnd_x_size = 105 ; <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
title_pos = 23 shl 16 + 7
|
title_pos = 23 shl 16 + 7
|
||||||
end if
|
end if
|
||||||
|
|
||||||
;*******************************
|
;*******************************
|
||||||
@@ -226,106 +226,106 @@ end if
|
|||||||
|
|
||||||
draw_window:
|
draw_window:
|
||||||
|
|
||||||
mov eax,12 ; <20><>稭<EFBFBD><E7A8AD><EFBFBD> "<22><>ᮢ<EFBFBD><E1AEA2><EFBFBD>"
|
mov eax,12 ; <20><>稭<EFBFBD><E7A8AD><EFBFBD> "<22><>ᮢ<EFBFBD><E1AEA2><EFBFBD>"
|
||||||
mov ebx,1
|
mov ebx,1
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov eax,[curx1] ; ⥪<>騥 <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,[curx1] ; ⥪<>騥 <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov [curx],eax ; <20><><EFBFBD><EFBFBD>襬 <20> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
mov [curx],eax ; <20><><EFBFBD><EFBFBD>襬 <20> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
mov eax,[cury1]
|
mov eax,[cury1]
|
||||||
mov [cury],eax
|
mov [cury],eax
|
||||||
|
|
||||||
; ⥯<><E2A5AF><EFBFBD> <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20>⮡<EFBFBD> <20><><EFBFBD> <20><> <20>ࠩ <20><>࠭<EFBFBD> <20><> <20>뫥<EFBFBD><EBABA5><EFBFBD>
|
; ⥯<><E2A5AF><EFBFBD> <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20>⮡<EFBFBD> <20><><EFBFBD> <20><> <20>ࠩ <20><>࠭<EFBFBD> <20><> <20>뫥<EFBFBD><EBABA5><EFBFBD>
|
||||||
mov eax,14 ; <20><><EFBFBD><EFBFBD>稬 ࠧ<><E0A0A7><EFBFBD> <20><>࠭<EFBFBD>
|
mov eax,14 ; <20><><EFBFBD><EFBFBD>稬 ࠧ<><E0A0A7><EFBFBD> <20><>࠭<EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
mov ebx,eax
|
mov ebx,eax
|
||||||
shr eax,16 ; <20> eax - x_screen
|
shr eax,16 ; <20> eax - x_screen
|
||||||
and ebx,0xffff ; <20> ebx - y_screen
|
and ebx,0xffff ; <20> ebx - y_screen
|
||||||
add eax,-wnd_x_size ; eax = [x_screen - <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>]
|
add eax,-wnd_x_size ; eax = [x_screen - <20><>ਭ<EFBFBD> <20><><EFBFBD><EFBFBD>]
|
||||||
add ebx,-_BTNS_*15-21 ; ebx = [y_screen - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>]
|
add ebx,-_BTNS_*15-21 ; ebx = [y_screen - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>]
|
||||||
|
|
||||||
cmp eax,[curx]
|
cmp eax,[curx]
|
||||||
jg .okx ; <20> <20><><EFBFBD><EFBFBD> 誮<E1ABA8> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>ࠢ<EFBFBD><E0A0A2><EFBFBD> <20><><EFBFBD><EFBFBD>,
|
jg .okx ; <20> <20><><EFBFBD><EFBFBD> 誮<E1ABA8> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>ࠢ<EFBFBD><E0A0A2><EFBFBD> <20><><EFBFBD><EFBFBD>,
|
||||||
add [curx],-wnd_x_size ; ᤢ<><E1A4A2><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> 100
|
add [curx],-wnd_x_size ; ᤢ<><E1A4A2><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> 100
|
||||||
.okx:
|
.okx:
|
||||||
|
|
||||||
cmp ebx, [cury]
|
cmp ebx, [cury]
|
||||||
jg .oky ; <20><> <20><><EFBFBD>⨪<EFBFBD><E2A8AA><EFBFBD> <20><>筮 ⠪<><E2A0AA>
|
jg .oky ; <20><> <20><><EFBFBD>⨪<EFBFBD><E2A8AA><EFBFBD> <20><>筮 ⠪<><E2A0AA>
|
||||||
add [cury], -_BTNS_*15-21
|
add [cury], -_BTNS_*15-21
|
||||||
.oky:
|
.oky:
|
||||||
|
|
||||||
xor eax, eax ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 0 - ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
xor eax, eax ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 0 - ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
mov ebx, [curx] ; ebx = [<5B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><> x] shl 16 + [<5B><>ਭ<EFBFBD>]
|
mov ebx, [curx] ; ebx = [<5B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><> x] shl 16 + [<5B><>ਭ<EFBFBD>]
|
||||||
shl ebx, 16
|
shl ebx, 16
|
||||||
add ebx, wnd_x_size
|
add ebx, wnd_x_size
|
||||||
mov ecx, [cury] ; ecx = [<5B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><> y] shl 16 + [<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
mov ecx, [cury] ; ecx = [<5B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><> y] shl 16 + [<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||||
shl ecx, 16
|
shl ecx, 16
|
||||||
add ecx, _BTNS_*15+21
|
add ecx, _BTNS_*15+21
|
||||||
mov edx, [sc.work] ; 梥<> ࠡ<>祩 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov edx, [sc.work] ; 梥<> ࠡ<>祩 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov esi, [sc.grab] ; 梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov esi, [sc.grab] ; 梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
or esi, 0x81000000
|
or esi, 0x81000000
|
||||||
mov edi, [sc.frame] ; 梥<> ࠬ<><E0A0AC>
|
mov edi, [sc.frame] ; 梥<> ࠬ<><E0A0AC>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov eax, 4 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax, 4 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ebx, title_pos ; [x] shl 16 + [y]
|
mov ebx, title_pos ; [x] shl 16 + [y]
|
||||||
mov ecx, [sc.grab_text]; <20><><EFBFBD><EFBFBD><EFBFBD> <20> 梥<> (<28><><EFBFBD><EFBFBD><EFBFBD>)
|
mov ecx, [sc.grab_text]; <20><><EFBFBD><EFBFBD><EFBFBD> <20> 梥<> (<28><><EFBFBD><EFBFBD><EFBFBD>)
|
||||||
or ecx, 0x10000000
|
or ecx, 0x10000000
|
||||||
; add ecx, -0x333333
|
; add ecx, -0x333333
|
||||||
push ecx
|
push ecx
|
||||||
push ecx
|
push ecx
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
.dec_color:
|
.dec_color:
|
||||||
sub byte [esp+edx], 0x33
|
sub byte [esp+edx], 0x33
|
||||||
jae @f
|
jae @f
|
||||||
mov byte [esp+edx], 0
|
mov byte [esp+edx], 0
|
||||||
@@:
|
@@:
|
||||||
inc edx
|
inc edx
|
||||||
jnp .dec_color
|
jnp .dec_color
|
||||||
pop ecx
|
pop ecx
|
||||||
mov edx, title ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov edx, title ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov esi, title.size ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ("M E N U")
|
mov esi, title.size ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ("M E N U")
|
||||||
mcall
|
mcall
|
||||||
pop ecx
|
pop ecx
|
||||||
add ebx, 1 shl 16 ; ᤢ<><E1A4A2><EFBFBD><EFBFBD> <20><>ࠢ<EFBFBD> <20><> 1
|
add ebx, 1 shl 16 ; ᤢ<><E1A4A2><EFBFBD><EFBFBD> <20><>ࠢ<EFBFBD> <20><> 1
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
mov ebx, 1*65536+wnd_x_size-2 ; <20><>稭<EFBFBD><E7A8AD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov ebx, 1*65536+wnd_x_size-2 ; <20><>稭<EFBFBD><E7A8AD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ecx, 20*65536+15
|
mov ecx, 20*65536+15
|
||||||
mov edx, 10 or 0x40000000 ; <20><><EFBFBD> 30 <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov edx, 10 or 0x40000000 ; <20><><EFBFBD> 30 <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> => <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
mov edi,_BTNS_ ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD>稪)
|
mov edi,_BTNS_ ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD>稪)
|
||||||
|
|
||||||
newbtn: ; <20><>砫<EFBFBD> 横<><E6A8AA>
|
newbtn: ; <20><>砫<EFBFBD> 横<><E6A8AA>
|
||||||
mov eax,8 ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,8 ; ᮧ<><E1AEA7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
; <20><>襬 ⥪<><E2A5AA> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <20><>襬 ⥪<><E2A5AA> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
pushad ; ᯠᠥ<E1AFA0> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD>
|
pushad ; ᯠᠥ<E1AFA0> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD>
|
||||||
shr ecx, 16
|
shr ecx, 16
|
||||||
and ebx, 0xffff0000
|
and ebx, 0xffff0000
|
||||||
add ebx, ecx ; ebx = [x] shl 16 + [y];
|
add ebx, ecx ; ebx = [x] shl 16 + [y];
|
||||||
add ebx, 10*65536+4 ; ebx += ᬥ饭<E1ACA5><E9A5AD> <20>⭮<EFBFBD><E2ADAE>⥫쭮 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
add ebx, 10*65536+4 ; ebx += ᬥ饭<E1ACA5><E9A5AD> <20>⭮<EFBFBD><E2ADAE>⥫쭮 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||||||
mov ecx, [sc.work_text] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20> 梥<>
|
mov ecx, [sc.work_text] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20> 梥<>
|
||||||
or ecx, font
|
or ecx, font
|
||||||
add edx, -10 ; edx = <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
add edx, -10 ; edx = <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||||||
imul edx, string_length ; edx *= <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>;
|
imul edx, string_length ; edx *= <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>;
|
||||||
add edx, text ; edx += text; ⥯<><E2A5AF><EFBFBD> <20> edx <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
add edx, text ; edx += text; ⥯<><E2A5AF><EFBFBD> <20> edx <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
mov esi, string_length ; <20> esi - <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
mov esi, string_length ; <20> esi - <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
mov eax, 4 ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 4 - <20>뢮<EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
mov eax, 4 ; <20>㭪<EFBFBD><E3ADAA><EFBFBD> 4 - <20>뢮<EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
||||||
mcall
|
mcall
|
||||||
popad
|
popad
|
||||||
|
|
||||||
inc edx ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>++;
|
inc edx ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>++;
|
||||||
add ecx,15*65536 ; 㢥<><E3A2A5>稬 ᬥ饭<E1ACA5><E9A5AD> <20><> y
|
add ecx,15*65536 ; 㢥<><E3A2A5>稬 ᬥ饭<E1ACA5><E9A5AD> <20><> y
|
||||||
dec edi ; 㬥<><E3ACA5>訬 <20><><EFBFBD><EFBFBD>稪
|
dec edi ; 㬥<><E3ACA5>訬 <20><><EFBFBD><EFBFBD>稪
|
||||||
jnz newbtn ; <20> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>ਬ <20><><EFBFBD> <20><><EFBFBD> ࠧ
|
jnz newbtn ; <20> <20><> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>ਬ <20><><EFBFBD> <20><><EFBFBD> ࠧ
|
||||||
|
|
||||||
mov eax,12 ; <20><><EFBFBD><EFBFBD><EFBFBD>稫<EFBFBD> "<22><>ᮢ<EFBFBD><E1AEA2><EFBFBD>"
|
mov eax,12 ; <20><><EFBFBD><EFBFBD><EFBFBD>稫<EFBFBD> "<22><>ᮢ<EFBFBD><E1AEA2><EFBFBD>"
|
||||||
mov ebx,2
|
mov ebx,2
|
||||||
mcall
|
mcall
|
||||||
|
|
||||||
ret ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
ret ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -343,11 +343,11 @@ DATA
|
|||||||
str db string
|
str db string
|
||||||
}
|
}
|
||||||
|
|
||||||
strtbl startapps ,\
|
strtbl startapps ,\
|
||||||
<"/sys/PIC4",0> ,\
|
<"/sys/PIC4",0> ,\
|
||||||
<"/sys/DESKTOP",0> ,\
|
<"/sys/DESKTOP",0> ,\
|
||||||
<"/sys/ICON",0>,\
|
<"/sys/ICON",0>,\
|
||||||
<"/sys/SETUP",0> ,\
|
<"/sys/SETUP",0> ,\
|
||||||
<"/sys/VRR",0> ,\
|
<"/sys/VRR",0> ,\
|
||||||
<"/sys/CPU",0>
|
<"/sys/CPU",0>
|
||||||
|
|
||||||
@@ -369,31 +369,31 @@ DATA
|
|||||||
ru, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '
|
ru, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '
|
||||||
|
|
||||||
start_info:
|
start_info:
|
||||||
.mode dd 7
|
.mode dd 7
|
||||||
dd 0
|
dd 0
|
||||||
.params dd 0
|
.params dd 0
|
||||||
dd 0
|
dd 0
|
||||||
dd 0
|
dd 0
|
||||||
db 0
|
db 0
|
||||||
dd start_info.path
|
dd start_info.path
|
||||||
|
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
UDATA
|
UDATA
|
||||||
processes dd ? ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ <20> <20><><EFBFBD>⥬<EFBFBD>
|
processes dd ? ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ <20> <20><><EFBFBD>⥬<EFBFBD>
|
||||||
curx1 dd ? ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
curx1 dd ? ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
cury1 dd ?
|
cury1 dd ?
|
||||||
curx dd ? ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
curx dd ? ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
cury dd ?
|
cury dd ?
|
||||||
|
|
||||||
menu_opened db ? ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>? (1-<2D><>, 0-<2D><><EFBFBD>)
|
menu_opened db ? ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>? (1-<2D><>, 0-<2D><><EFBFBD>)
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
start_info.path rb 256
|
start_info.path rb 256
|
||||||
|
|
||||||
sc system_colors ; <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> 梥<><E6A2A5>
|
sc system_colors ; <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> 梥<><E6A2A5>
|
||||||
procinfo process_information ; <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
procinfo process_information ; <20><><EFBFBD><EFBFBD>ଠ<EFBFBD><E0ACA0><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
rb 1024 ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> - 墠<><E5A2A0><EFBFBD> <20> 1 <20><>
|
rb 1024 ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> - 墠<><E5A2A0><EFBFBD> <20> 1 <20><>
|
||||||
align 32
|
align 32
|
||||||
stack_wnd:
|
stack_wnd:
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user