Rev 3952 | Rev 4968 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3952 | Rev 3955 | ||
---|---|---|---|
1 | ; |
1 | ; |
2 | ; CPU -process Manager |
2 | ; CPU -process Manager |
3 | ; |
3 | ; |
4 | ;------------------------------------------------------------------------------ |
4 | ;------------------------------------------------------------------------------ |
5 | ; version: 1.80 |
5 | ; version: 1.80 |
6 | ; last update: 07/04/2012 |
6 | ; last update: 07/04/2012 |
7 | ; changed by: Marat Zakiyanov aka Mario79, aka Mario |
7 | ; changed by: Marat Zakiyanov aka Mario79, aka Mario |
8 | ; changes: Complete elimination of flicker. |
8 | ; changes: Complete elimination of flicker. |
9 | ; Using f.0 C = 1 - don't fill working area on window draw. |
9 | ; Using f.0 C = 1 - don't fill working area on window draw. |
10 | ; Increasing the size of buttons and a bright color. |
10 | ; Increasing the size of buttons and a bright color. |
11 | ; Processing "window is rolled up" and "window is minimized" |
11 | ; Processing "window is rolled up" and "window is minimized" |
12 | ;------------------------------------------------------------------------------ |
12 | ;------------------------------------------------------------------------------ |
13 | ; version: 1.70 |
13 | ; version: 1.70 |
14 | ; last update: 04/04/2012 |
14 | ; last update: 04/04/2012 |
15 | ; changed by: Marat Zakiyanov aka Mario79, aka Mario |
15 | ; changed by: Marat Zakiyanov aka Mario79, aka Mario |
16 | ; changes: Code refactoring and optimization. |
16 | ; changes: Code refactoring and optimization. |
17 | ; Added russian language support. |
17 | ; Added russian language support. |
18 | ; Fix - processes information showing not been updated during |
18 | ; Fix - processes information showing not been updated during |
19 | ; the processing of mouse events. |
19 | ; the processing of mouse events. |
20 | ;------------------------------------------------------------------------------ |
20 | ;------------------------------------------------------------------------------ |
21 | ; Many fix's and changes created by: |
21 | ; Many fix's and changes created by: |
22 | ; Diamond, Heavyiron, SPraid, |
22 | ; Diamond, Heavyiron, SPraid, |
23 | ; Leency, IgorA, kaitz |
23 | ; Leency, IgorA, kaitz |
24 | ;--------------------------------------------------------------------- |
24 | ;--------------------------------------------------------------------- |
25 | ; integrated with load_lib.obj by |
25 | ; integrated with load_lib.obj by |
26 | ;--------------------------------------------------------------------- |
26 | ;--------------------------------------------------------------------- |
27 | ; additions by M.Lisovin lisovin@26.ru |
27 | ; additions by M.Lisovin lisovin@26.ru |
28 | ;--------------------------------------------------------------------- |
28 | ;--------------------------------------------------------------------- |
29 | ; original author - VTurjanmaa |
29 | ; original author - VTurjanmaa |
30 | ;------------------------------------------------------------------------------ |
30 | ;------------------------------------------------------------------------------ |
31 | format binary as "" |
31 | format binary as "" |
32 | 32 | ||
33 | use32 |
33 | use32 |
34 | org 0x0 |
34 | org 0x0 |
35 | db 'MENUET01' ; 8 byte id |
35 | db 'MENUET01' ; 8 byte id |
36 | dd 0x01 ; header version |
36 | dd 0x01 ; header version |
37 | dd START ; start of code |
37 | dd START ; start of code |
38 | dd IM_END ; size of image |
38 | dd IM_END ; size of image |
39 | dd U_END ; memory for app |
39 | dd U_END ; memory for app |
40 | dd stack_area ; esp |
40 | dd stack_area ; esp |
41 | dd 0x0 ; boot parameters |
41 | dd 0x0 ; boot parameters |
42 | dd 0x0 ; path |
42 | dd 0x0 ; path |
43 | ;------------------------------------------------------------------------------ |
43 | ;------------------------------------------------------------------------------ |
44 | include 'lang.inc' |
44 | include 'lang.inc' |
45 | include '../../../macros.inc' |
45 | include '../../../macros.inc' |
46 | include '../../../develop/libraries/box_lib/trunk/box_lib.mac' |
46 | include '../../../develop/libraries/box_lib/trunk/box_lib.mac' |
47 | include '../../../develop/libraries/box_lib/load_lib.mac' |
47 | include '../../../develop/libraries/box_lib/load_lib.mac' |
48 | ;------------------------------------------------------------------------------ |
48 | ;------------------------------------------------------------------------------ |
49 | display_processes=24 ;32 ; number of processes to show |
49 | display_processes=24 ;32 ; number of processes to show |
50 | window_x_size=524 |
50 | window_x_size=524 |
51 | window_y_size=430 |
51 | window_y_size=430 |
52 | ;------------------------------------------------------------------------------ |
52 | ;------------------------------------------------------------------------------ |
53 | @use_library ;use load lib macros |
53 | @use_library ;use load lib macros |
54 | ;------------------------------------------------------------------------------ |
54 | ;------------------------------------------------------------------------------ |
55 | START: ; start of execution |
55 | START: ; start of execution |
56 | mcall 9,process_info_buffer,-1 |
- | |
57 | mov ecx,[ebx+30] ; PID |
- | |
58 | mcall 18,21 |
- | |
59 | mov [active_process],eax ; WINDOW SLOT |
- | |
60 | ;------------------------------------------------------------------------------ |
- | |
61 | mcall 68,11 |
56 | mcall 68,11 |
62 | sys_load_library library_name, cur_dir_path, library_path, system_path, \ |
57 | sys_load_library library_name, cur_dir_path, library_path, system_path, \ |
63 | err_message_found_lib, head_f_l, myimport, err_message_import, head_f_i |
58 | err_message_found_lib, head_f_l, myimport, err_message_import, head_f_i |
64 | inc eax |
59 | inc eax |
65 | jz close |
60 | jz close |
66 | ;------------------------------------------------------------------------------ |
61 | ;------------------------------------------------------------------------------ |
67 | mcall 40,0x80000027 ;set event |
62 | mcall 40,0x80000027 ;set event |
68 | ;------------------------------------------------------------------------------ |
63 | ;------------------------------------------------------------------------------ |
69 | ;set window size and position for 0 function |
64 | ;set window size and position for 0 function |
70 | ;to [winxpos] and [winypos] variables |
65 | ;to [winxpos] and [winypos] variables |
71 | ;get screen size |
66 | ;get screen size |
72 | mcall 14 |
67 | mcall 14 |
73 | mov ebx,eax |
68 | mov ebx,eax |
74 | ;calculate (x_screen-window_x_size)/2 |
69 | ;calculate (x_screen-window_x_size)/2 |
75 | shr ebx,16+1 |
70 | shr ebx,16+1 |
76 | sub ebx,window_x_size/2 |
71 | sub ebx,window_x_size/2 |
77 | shl ebx,16 |
72 | shl ebx,16 |
78 | mov bx,window_x_size |
73 | mov bx,window_x_size |
79 | ;winxpos=xcoord*65536+xsize |
74 | ;winxpos=xcoord*65536+xsize |
80 | mov [winxpos],ebx |
75 | mov [winxpos],ebx |
81 | ;calculate (y_screen-window_y_size)/2 |
76 | ;calculate (y_screen-window_y_size)/2 |
82 | and eax,0xffff |
77 | and eax,0xffff |
83 | shr eax,1 |
78 | shr eax,1 |
84 | sub eax,window_y_size/2 |
79 | sub eax,window_y_size/2 |
85 | shl eax,16 |
80 | shl eax,16 |
86 | mov ax,window_y_size |
81 | mov ax,window_y_size |
87 | ;winypos=ycoord*65536+ysize |
82 | ;winypos=ycoord*65536+ysize |
88 | mov [winypos],eax |
83 | mov [winypos],eax |
89 | ;------------------------------------------------------------------------------ |
84 | ;------------------------------------------------------------------------------ |
90 | init_checkboxes2 check1,check1_end |
85 | init_checkboxes2 check1,check1_end |
91 | mcall 48,3,sc,40 |
86 | mcall 48,3,sc,40 |
92 | edit_boxes_set_sys_color edit1,edit1_end,sc ;set color |
87 | edit_boxes_set_sys_color edit1,edit1_end,sc ;set color |
93 | check_boxes_set_sys_color2 check1,check1_end,sc ;set color |
88 | check_boxes_set_sys_color2 check1,check1_end,sc ;set color |
94 | ;------------------------------------------------------------------------------ |
89 | ;------------------------------------------------------------------------------ |
95 | align 4 |
90 | align 4 |
96 | ;main loop when process name isn't edited. |
91 | ;main loop when process name isn't edited. |
97 | red: |
92 | red: |
98 | call draw_window ; redraw all window |
93 | call draw_window ; redraw all window |
99 | ;------------------------------------------------------------------------------ |
94 | ;------------------------------------------------------------------------------ |
100 | align 4 |
95 | align 4 |
101 | still: |
96 | still: |
102 | mcall 23,100 ; wait here for event 1 sec. |
97 | mcall 23,100 ; wait here for event 1 sec. |
- | 98 | ||
- | 99 | test eax,eax |
|
- | 100 | jz still_end |
|
103 | 101 | ||
104 | dec eax ; redraw request ? |
102 | dec eax ; redraw request ? |
105 | jz red |
103 | jz red |
106 | 104 | ||
107 | dec eax ; key in buffer ? |
105 | dec eax ; key in buffer ? |
108 | jz key |
106 | jz key |
109 | 107 | ||
110 | dec eax ; button in buffer ? |
108 | dec eax ; button in buffer ? |
111 | jz button |
109 | jz button |
112 | - | ||
113 | mcall 18,7 |
- | |
114 | cmp [active_process],eax |
- | |
115 | jne still_end |
- | |
116 | 110 | ||
117 | push dword edit1 |
111 | push dword edit1 |
118 | call [edit_box_mouse] |
112 | call [edit_box_mouse] |
119 | 113 | ||
120 | push dword[check1.flags] |
114 | push dword[check1.flags] |
121 | 115 | ||
122 | push dword check1 |
116 | push dword check1 |
123 | call [check_box_mouse] |
117 | call [check_box_mouse] |
124 | 118 | ||
125 | pop eax |
119 | pop eax |
126 | 120 | ||
127 | cmp eax, dword[check1.flags] |
121 | cmp eax, dword[check1.flags] |
128 | jz still_end |
122 | jz still_end |
129 | 123 | ||
130 | push dword check1 |
124 | push dword check1 |
131 | call [check_box_draw] |
125 | call [check_box_draw] |
132 | ;-------------------------------------- |
126 | ;-------------------------------------- |
133 | align 4 |
127 | align 4 |
134 | show_process_info_1: |
128 | show_process_info_1: |
135 | mcall 26,9 |
129 | mcall 26,9 |
136 | add eax,100 |
130 | add eax,100 |
137 | mov [time_counter],eax |
131 | mov [time_counter],eax |
138 | 132 | ||
139 | call show_process_info ; draw new state of processes |
133 | call show_process_info ; draw new state of processes |
140 | jmp still |
134 | jmp still |
141 | ;------------------------------------------------------------------------------ |
135 | ;------------------------------------------------------------------------------ |
142 | align 4 |
136 | align 4 |
143 | still_end: |
137 | still_end: |
144 | mcall 26,9 |
138 | mcall 26,9 |
145 | cmp [time_counter],eax |
139 | cmp [time_counter],eax |
146 | ja still |
140 | ja still |
147 | 141 | ||
148 | add eax,100 |
142 | add eax,100 |
149 | mov [time_counter],eax |
143 | mov [time_counter],eax |
150 | 144 | ||
151 | call show_process_info ; draw new state of processes |
145 | call show_process_info ; draw new state of processes |
152 | jmp still |
146 | jmp still |
153 | ;------------------------------------------------------------------------------ |
147 | ;------------------------------------------------------------------------------ |
154 | align 4 |
148 | align 4 |
155 | key: ; key |
149 | key: ; key |
156 | mcall 2 |
150 | mcall 2 |
157 | 151 | ||
158 | cmp ah,184 ; PageUp |
152 | cmp ah,184 ; PageUp |
159 | jz pgdn |
153 | jz pgdn |
160 | 154 | ||
161 | cmp ah,183 |
155 | cmp ah,183 |
162 | jz pgup ; PageDown |
156 | jz pgup ; PageDown |
163 | 157 | ||
164 | cmp ah,27 |
158 | cmp ah,27 |
165 | jz close ; Esc |
159 | jz close ; Esc |
166 | 160 | ||
167 | push dword edit1 |
161 | push dword edit1 |
168 | call [edit_box_key] |
162 | call [edit_box_key] |
169 | ; Check ENTER with ed_focus edit_box |
163 | ; Check ENTER with ed_focus edit_box |
170 | lea edi,[edit1] |
164 | lea edi,[edit1] |
171 | test word ed_flags,ed_focus |
165 | test word ed_flags,ed_focus |
172 | jz still_end |
166 | jz still_end |
173 | 167 | ||
174 | sub ah,13 ; ENTER? |
168 | sub ah,13 ; ENTER? |
175 | jz program_start ; RUN a program |
169 | jz program_start ; RUN a program |
176 | 170 | ||
177 | jmp still |
171 | jmp still |
178 | ;------------------------------------------------------------------------------ |
172 | ;------------------------------------------------------------------------------ |
179 | align 4 |
173 | align 4 |
180 | button: |
174 | button: |
181 | ; get button id |
175 | ; get button id |
182 | mcall 17 |
176 | mcall 17 |
183 | shr eax,8 |
177 | shr eax,8 |
184 | ;id in [10,50] corresponds to terminate buttons. |
178 | ;id in [10,50] corresponds to terminate buttons. |
185 | cmp eax,10 |
179 | cmp eax,10 |
186 | jb noterm |
180 | jb noterm |
187 | 181 | ||
188 | cmp eax,50 |
182 | cmp eax,50 |
189 | jg noterm |
183 | jg noterm |
190 | ;calculate button index |
184 | ;calculate button index |
191 | sub eax,11 |
185 | sub eax,11 |
192 | ;calculate process slot |
186 | ;calculate process slot |
193 | mov ecx,[tasklist+4*eax] |
187 | mov ecx,[tasklist+4*eax] |
194 | ;ignore empty buttons |
188 | ;ignore empty buttons |
195 | test ecx,ecx |
189 | test ecx,ecx |
196 | jle still_end |
190 | jle still_end |
197 | ;terminate application |
191 | ;terminate application |
198 | mcall 18,2 |
192 | mcall 18,2 |
199 | jmp show_process_info_1 |
193 | jmp show_process_info_1 |
200 | ;-------------------------------------- |
194 | ;-------------------------------------- |
201 | align 4 |
195 | align 4 |
202 | noterm: |
196 | noterm: |
203 | ;special buttons |
197 | ;special buttons |
204 | dec eax |
198 | dec eax |
205 | jz close |
199 | jz close |
206 | 200 | ||
207 | sub eax,50 |
201 | sub eax,50 |
208 | jz pgdn ;51 |
202 | jz pgdn ;51 |
209 | 203 | ||
210 | dec eax |
204 | dec eax |
211 | jz pgup ;52 |
205 | jz pgup ;52 |
212 | 206 | ||
213 | dec eax |
207 | dec eax |
214 | jz program_start ;53 |
208 | jz program_start ;53 |
215 | 209 | ||
216 | dec eax |
210 | dec eax |
217 | jz reboot ;54 |
211 | jz reboot ;54 |
218 | 212 | ||
219 | jmp still_end |
213 | jmp still_end |
220 | ;buttons handlers |
214 | ;buttons handlers |
221 | ;------------------------------------------------------------------------------ |
215 | ;------------------------------------------------------------------------------ |
222 | align 4 |
216 | align 4 |
223 | pgdn: |
217 | pgdn: |
224 | sub [list_start],display_processes |
218 | sub [list_start],display_processes |
225 | jge show_process_info_1 |
219 | jge show_process_info_1 |
226 | mov [list_start],0 |
220 | mov [list_start],0 |
227 | jmp show_process_info_1 |
221 | jmp show_process_info_1 |
228 | ;------------------------------------------------------------------------------ |
222 | ;------------------------------------------------------------------------------ |
229 | align 4 |
223 | align 4 |
230 | pgup: |
224 | pgup: |
231 | mov eax,[list_add] ;maximal displayed process slot |
225 | mov eax,[list_add] ;maximal displayed process slot |
232 | mov [list_start],eax |
226 | mov [list_start],eax |
233 | jmp show_process_info_1 |
227 | jmp show_process_info_1 |
234 | ;------------------------------------------------------------------------------ |
228 | ;------------------------------------------------------------------------------ |
235 | align 4 |
229 | align 4 |
236 | program_start: |
230 | program_start: |
237 | mcall 70,file_start |
231 | mcall 70,file_start |
238 | jmp show_process_info_1 |
232 | jmp show_process_info_1 |
239 | ;------------------------------------------------------------------------------ |
233 | ;------------------------------------------------------------------------------ |
240 | align 4 |
234 | align 4 |
241 | reboot: |
235 | reboot: |
242 | mcall 70,sys_reboot |
236 | mcall 70,sys_reboot |
243 | ;close program if we going to reboot |
237 | ;close program if we going to reboot |
244 | ;------------------------------------------------------------------------------ |
238 | ;------------------------------------------------------------------------------ |
245 | align 4 |
239 | align 4 |
246 | close: |
240 | close: |
247 | or eax,-1 ; close this program |
241 | or eax,-1 ; close this program |
248 | mcall |
242 | mcall |
249 | ;------------------------------------------------------------------------------ |
243 | ;------------------------------------------------------------------------------ |
250 | align 4 |
244 | align 4 |
251 | draw_empty_slot: |
245 | draw_empty_slot: |
252 | cmp [draw_window_flag],1 |
246 | cmp [draw_window_flag],1 |
253 | je @f |
247 | je @f |
254 | mov ecx,[curposy] |
248 | mov ecx,[curposy] |
255 | shl ecx,16 |
249 | shl ecx,16 |
256 | mov cx,10 ; button height |
250 | mov cx,10 ; button height |
257 | push ecx |
251 | push ecx |
258 | add ecx,3 shl 16 |
252 | add ecx,3 shl 16 |
259 | mcall 13,<11,95>,,[btn_bacground_color] |
253 | mcall 13,<11,95>,,[btn_bacground_color] |
260 | pop ecx |
254 | pop ecx |
261 | 255 | ||
262 | mcall 13,<111,393>,,[bar_bacground_color] |
256 | mcall 13,<111,393>,,[bar_bacground_color] |
263 | ;-------------------------------------- |
257 | ;-------------------------------------- |
264 | align 4 |
258 | align 4 |
265 | @@: |
259 | @@: |
266 | ret |
260 | ret |
267 | ;------------------------------------------------------------------------------ |
261 | ;------------------------------------------------------------------------------ |
268 | align 4 |
262 | align 4 |
269 | draw_next_process: |
263 | draw_next_process: |
270 | ;input: |
264 | ;input: |
271 | ; edi - current slot |
265 | ; edi - current slot |
272 | ; [curposy] - y position |
266 | ; [curposy] - y position |
273 | ;output: |
267 | ;output: |
274 | ; edi - next slot (or -1 if no next slot) |
268 | ; edi - next slot (or -1 if no next slot) |
275 | ;registers corrupted! |
269 | ;registers corrupted! |
276 | ;delete old button |
270 | ;delete old button |
277 | cmp [draw_window_flag],0 |
271 | cmp [draw_window_flag],0 |
278 | je @f |
272 | je @f |
279 | mov edx,[index] |
273 | mov edx,[index] |
280 | add edx,(1 shl 31)+11 |
274 | add edx,(1 shl 31)+11 |
281 | mcall 8 |
275 | mcall 8 |
282 | ;-------------------------------------- |
276 | ;-------------------------------------- |
283 | align 4 |
277 | align 4 |
284 | @@: |
278 | @@: |
285 | ;create terminate process button |
279 | ;create terminate process button |
286 | mov ecx,[curposy] |
280 | mov ecx,[curposy] |
287 | shl ecx,16 |
281 | shl ecx,16 |
288 | mov cx,13 ; button height |
282 | mov cx,13 ; button height |
289 | mov edx,[index] |
283 | mov edx,[index] |
290 | add edx,11 |
284 | add edx,11 |
291 | mov esi,0xccddee ; 0xaabbcc |
285 | mov esi,0xccddee ; 0xaabbcc |
292 | ;contrast |
286 | ;contrast |
293 | test dword [index],1 |
287 | test dword [index],1 |
294 | jz .change_color_button |
288 | jz .change_color_button |
295 | mov esi,0xaabbcc ; 0x8899aa |
289 | mov esi,0xaabbcc ; 0x8899aa |
296 | ;-------------------------------------- |
290 | ;-------------------------------------- |
297 | align 4 |
291 | align 4 |
298 | .change_color_button: |
292 | .change_color_button: |
299 | cmp [draw_window_flag],0 |
293 | cmp [draw_window_flag],0 |
300 | je @f |
294 | je @f |
301 | mcall 8,<10,99> |
295 | mcall 8,<10,99> |
302 | ;-------------------------------------- |
296 | ;-------------------------------------- |
303 | align 4 |
297 | align 4 |
304 | @@: |
298 | @@: |
305 | mov [btn_bacground_color],esi |
299 | mov [btn_bacground_color],esi |
306 | ;draw background for proccess information |
300 | ;draw background for proccess information |
307 | ; ecx was already set |
301 | ; ecx was already set |
308 | mov edx,0xddffdd ; 0x88ff88 |
302 | mov edx,0xddffdd ; 0x88ff88 |
309 | ;contrast |
303 | ;contrast |
310 | test dword [index],1 |
304 | test dword [index],1 |
311 | jz .change_color_info |
305 | jz .change_color_info |
312 | mov edx,0xffffff ; 0xddffdd |
306 | mov edx,0xffffff ; 0xddffdd |
313 | ;-------------------------------------- |
307 | ;-------------------------------------- |
314 | align 4 |
308 | align 4 |
315 | .change_color_info: |
309 | .change_color_info: |
316 | inc cx |
310 | inc cx |
317 | cmp [draw_window_flag],0 |
311 | cmp [draw_window_flag],0 |
318 | je @f |
312 | je @f |
319 | mcall 13,<110,395> |
313 | mcall 13,<110,395> |
320 | ;-------------------------------------- |
314 | ;-------------------------------------- |
321 | align 4 |
315 | align 4 |
322 | @@: |
316 | @@: |
323 | mov [bar_bacground_color],edx |
317 | mov [bar_bacground_color],edx |
324 | ;nothing else should be done |
318 | ;nothing else should be done |
325 | ;if there is no process for this button |
319 | ;if there is no process for this button |
326 | cmp edi,-1 |
320 | cmp edi,-1 |
327 | jne .return_1 |
321 | jne .return_1 |
328 | 322 | ||
329 | call draw_empty_slot |
323 | call draw_empty_slot |
330 | or edi,-1 |
324 | or edi,-1 |
331 | jmp .ret |
325 | jmp .ret |
332 | ;-------------------------------------- |
326 | ;-------------------------------------- |
333 | align 4 |
327 | align 4 |
334 | .return_1: |
328 | .return_1: |
335 | ;find process |
329 | ;find process |
336 | inc edi |
330 | inc edi |
337 | ;more comfortable register for next loop |
331 | ;more comfortable register for next loop |
338 | mov ecx,edi |
332 | mov ecx,edi |
339 | ;precacluate pointer to process buffer |
333 | ;precacluate pointer to process buffer |
340 | mov ebx,process_info_buffer |
334 | mov ebx,process_info_buffer |
341 | ;-------------------------------------- |
335 | ;-------------------------------------- |
342 | align 4 |
336 | align 4 |
343 | .find_loop: |
337 | .find_loop: |
344 | cmp ecx,256 |
338 | cmp ecx,256 |
345 | jge .no_processes |
339 | jge .no_processes |
346 | ;load process information in buffer |
340 | ;load process information in buffer |
347 | mcall 9 |
341 | mcall 9 |
348 | ;if current slot greater than maximal slot, |
342 | ;if current slot greater than maximal slot, |
349 | ;there is no more proccesses. |
343 | ;there is no more proccesses. |
350 | cmp ecx,eax |
344 | cmp ecx,eax |
351 | jg .no_processes |
345 | jg .no_processes |
352 | ;if slot state is equal to 9, it is empty. |
346 | ;if slot state is equal to 9, it is empty. |
353 | cmp [process_info_buffer+process_information.slot_state],9 |
347 | cmp [process_info_buffer+process_information.slot_state],9 |
354 | jnz .process_found |
348 | jnz .process_found |
355 | 349 | ||
356 | inc ecx |
350 | inc ecx |
357 | jmp .find_loop |
351 | jmp .find_loop |
358 | ;-------------------------------------- |
352 | ;-------------------------------------- |
359 | align 4 |
353 | align 4 |
360 | .no_processes: |
354 | .no_processes: |
361 | call draw_empty_slot |
355 | call draw_empty_slot |
362 | or edi,-1 |
356 | or edi,-1 |
363 | ret |
357 | ret |
364 | ;-------------------------------------- |
358 | ;-------------------------------------- |
365 | align 4 |
359 | align 4 |
366 | .process_found: |
360 | .process_found: |
367 | ;check on/off check box |
361 | ;check on/off check box |
368 | push edi |
362 | push edi |
369 | lea edi,[check1] |
363 | lea edi,[check1] |
370 | test dword ch_flags,ch_flag_en |
364 | test dword ch_flags,ch_flag_en |
371 | pop edi |
365 | pop edi |
372 | jnz .no_filter |
366 | jnz .no_filter |
373 | 367 | ||
374 | cmp dword [process_info_buffer+10],'ICON' |
368 | cmp dword [process_info_buffer+10],'ICON' |
375 | jnz @f |
369 | jnz @f |
376 | cmp dword [process_info_buffer+10+4],0 |
370 | cmp dword [process_info_buffer+10+4],0 |
377 | jz .return_1 |
371 | jz .return_1 |
378 | @@: |
372 | @@: |
379 | cmp dword [process_info_buffer+10],'IDLE' |
373 | cmp dword [process_info_buffer+10],'IDLE' |
380 | jnz @f |
374 | jnz @f |
381 | cmp dword [process_info_buffer+10+4],0 |
375 | cmp dword [process_info_buffer+10+4],0 |
382 | jz .return_1 |
376 | jz .return_1 |
383 | @@: |
377 | @@: |
384 | cmp word [process_info_buffer+10],'OS' |
378 | cmp word [process_info_buffer+10],'OS' |
385 | jnz @f |
379 | jnz @f |
386 | cmp dword [process_info_buffer+10+2],0 |
380 | cmp dword [process_info_buffer+10+2],0 |
387 | jz .return_1 |
381 | jz .return_1 |
388 | @@: |
382 | @@: |
389 | cmp byte [process_info_buffer+10],'@' |
383 | cmp byte [process_info_buffer+10],'@' |
390 | jz .return_1 |
384 | jz .return_1 |
391 | ;-------------------------------------- |
385 | ;-------------------------------------- |
392 | align 4 |
386 | align 4 |
393 | .no_filter: |
387 | .no_filter: |
394 | mov edi,ecx |
388 | mov edi,ecx |
395 | mov [list_add],ecx |
389 | mov [list_add],ecx |
396 | ;get processor cpeed |
390 | ;get processor cpeed |
397 | ;for percent calculating |
391 | ;for percent calculating |
398 | mcall 18,5 |
392 | mcall 18,5 |
399 | xor edx,edx |
393 | xor edx,edx |
400 | mov ebx,100 |
394 | mov ebx,100 |
401 | div ebx |
395 | div ebx |
402 | ;eax = number of operation for 1% now |
396 | ;eax = number of operation for 1% now |
403 | ;calculate process cpu usage percent |
397 | ;calculate process cpu usage percent |
404 | mov ebx,eax |
398 | mov ebx,eax |
405 | mov eax,[process_info_buffer+process_information.cpu_usage] |
399 | mov eax,[process_info_buffer+process_information.cpu_usage] |
406 | ; cdq |
400 | ; cdq |
407 | xor edx,edx ; for CPU more 2 GHz - mike.dld |
401 | xor edx,edx ; for CPU more 2 GHz - mike.dld |
408 | div ebx |
402 | div ebx |
409 | mov [cpu_percent],eax |
403 | mov [cpu_percent],eax |
410 | ;set text color to display process information |
404 | ;set text color to display process information |
411 | ;([tcolor] variable) |
405 | ;([tcolor] variable) |
412 | ;0% : black |
406 | ;0% : black |
413 | ;1-80% : green |
407 | ;1-80% : green |
414 | ;81-100% : red |
408 | ;81-100% : red |
415 | test eax,eax |
409 | test eax,eax |
416 | jnz .no_black |
410 | jnz .no_black |
417 | 411 | ||
418 | mov [tcolor],eax |
412 | mov [tcolor],eax |
419 | jmp .color_set |
413 | jmp .color_set |
420 | ;-------------------------------------- |
414 | ;-------------------------------------- |
421 | align 4 |
415 | align 4 |
422 | .no_black: |
416 | .no_black: |
423 | cmp eax,80 |
417 | cmp eax,80 |
424 | ja .no_green |
418 | ja .no_green |
425 | 419 | ||
426 | mov dword [tcolor],0x107a30 |
420 | mov dword [tcolor],0x107a30 |
427 | jmp .color_set |
421 | jmp .color_set |
428 | ;-------------------------------------- |
422 | ;-------------------------------------- |
429 | align 4 |
423 | align 4 |
430 | .no_green: |
424 | .no_green: |
431 | mov dword [tcolor],0xac0000 |
425 | mov dword [tcolor],0xac0000 |
432 | ;-------------------------------------- |
426 | ;-------------------------------------- |
433 | align 4 |
427 | align 4 |
434 | .color_set: |
428 | .color_set: |
435 | ;show slot number |
429 | ;show slot number |
436 | ;ecx haven't changed since .process_found |
430 | ;ecx haven't changed since .process_found |
437 | push edi |
431 | push edi |
438 | mov edx,[curposy] |
432 | mov edx,[curposy] |
439 | add edx,15*65536+3 |
433 | add edx,15*65536+3 |
440 | mov esi,[tcolor] |
434 | mov esi,[tcolor] |
441 | and esi,0xffffff |
435 | and esi,0xffffff |
442 | or esi,0x40000000 |
436 | or esi,0x40000000 |
443 | mcall 47,<2,256>,,,,[btn_bacground_color] |
437 | mcall 47,<2,256>,,,,[btn_bacground_color] |
444 | ;show process name |
438 | ;show process name |
445 | mov ebx,[curposy] |
439 | mov ebx,[curposy] |
446 | add ebx,40*65536+3 |
440 | add ebx,40*65536+3 |
447 | mov ecx,[tcolor] |
441 | mov ecx,[tcolor] |
448 | and ecx,0xffffff |
442 | and ecx,0xffffff |
449 | or ecx,0x40000000 |
443 | or ecx,0x40000000 |
450 | mcall 4,,,process_info_buffer.process_name,11,[btn_bacground_color] |
444 | mcall 4,,,process_info_buffer.process_name,11,[btn_bacground_color] |
451 | ;show pid |
445 | ;show pid |
452 | mov edx,[curposy] |
446 | mov edx,[curposy] |
453 | add edx,125*65536+3 |
447 | add edx,125*65536+3 |
454 | mov esi,[tcolor] |
448 | mov esi,[tcolor] |
455 | and esi,0xffffff |
449 | and esi,0xffffff |
456 | or esi,0x40000000 |
450 | or esi,0x40000000 |
457 | mcall 47,<8,256>,[process_info_buffer.PID],,,[bar_bacground_color] |
451 | mcall 47,<8,256>,[process_info_buffer.PID],,,[bar_bacground_color] |
458 | ;show cpu usage |
452 | ;show cpu usage |
459 | add edx,60*65536 |
453 | add edx,60*65536 |
460 | mcall ,,[process_info_buffer.cpu_usage] |
454 | mcall ,,[process_info_buffer.cpu_usage] |
461 | ;show cpu percent |
455 | ;show cpu percent |
462 | add edx,60*65536 |
456 | add edx,60*65536 |
463 | mcall ,<3,0>,[cpu_percent] |
457 | mcall ,<3,0>,[cpu_percent] |
464 | ;show memory start - obsolete |
458 | ;show memory start - obsolete |
465 | add edx,30*65536 |
459 | add edx,30*65536 |
466 | mcall ,<8,256>,[process_info_buffer.memory_start] |
460 | mcall ,<8,256>,[process_info_buffer.memory_start] |
467 | ;show memory usage |
461 | ;show memory usage |
468 | mov ecx,[process_info_buffer.used_memory] |
462 | mov ecx,[process_info_buffer.used_memory] |
469 | inc ecx |
463 | inc ecx |
470 | add edx,60*65536 |
464 | add edx,60*65536 |
471 | mcall |
465 | mcall |
472 | ;show window stack and value |
466 | ;show window stack and value |
473 | add edx,60*65536 |
467 | add edx,60*65536 |
474 | mcall ,,dword [process_info_buffer.window_stack_position] |
468 | mcall ,,dword [process_info_buffer.window_stack_position] |
475 | ;show window xy size |
469 | ;show window xy size |
476 | mov ecx,[process_info_buffer.box.left] |
470 | mov ecx,[process_info_buffer.box.left] |
477 | shl ecx,16 |
471 | shl ecx,16 |
478 | add ecx,[process_info_buffer.box.top] |
472 | add ecx,[process_info_buffer.box.top] |
479 | add edx,60*65536 |
473 | add edx,60*65536 |
480 | mcall |
474 | mcall |
481 | pop edi |
475 | pop edi |
482 | ;-------------------------------------- |
476 | ;-------------------------------------- |
483 | align 4 |
477 | align 4 |
484 | .ret: |
478 | .ret: |
485 | ;build index->slot map for terminating processes. |
479 | ;build index->slot map for terminating processes. |
486 | mov eax,[index] |
480 | mov eax,[index] |
487 | mov [tasklist+4*eax],edi |
481 | mov [tasklist+4*eax],edi |
488 | ret |
482 | ret |
489 | ;------------------------------------------------------------------------------ |
483 | ;------------------------------------------------------------------------------ |
490 | align 4 |
484 | align 4 |
491 | f11: |
485 | f11: |
492 | ;full update |
486 | ;full update |
493 | push edi |
487 | push edi |
494 | call draw_window |
488 | call draw_window |
495 | pop edi |
489 | pop edi |
496 | ;------------------------------------------------------------------------------ |
490 | ;------------------------------------------------------------------------------ |
497 | ; ********************************************* |
491 | ; ********************************************* |
498 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
492 | ; ******* WINDOW DEFINITIONS AND DRAW ******** |
499 | ; ********************************************* |
493 | ; ********************************************* |
500 | align 4 |
494 | align 4 |
501 | draw_window: |
495 | draw_window: |
502 | mcall 12, 1 |
496 | mcall 12, 1 |
503 | ; DRAW WINDOW |
497 | ; DRAW WINDOW |
504 | xor eax,eax ; function 0 : define and draw window |
498 | xor eax,eax ; function 0 : define and draw window |
505 | xor esi,esi |
499 | xor esi,esi |
506 | mcall ,[winxpos],[winypos],0x74ffffff,,title ;0x34ddffdd |
500 | mcall ,[winxpos],[winypos],0x74ffffff,,title ;0x34ddffdd |
507 | 501 | ||
508 | mcall 9,process_info_buffer,-1 |
502 | mcall 9,process_info_buffer,-1 |
509 | 503 | ||
510 | mov eax,[ebx+70] |
504 | mov eax,[ebx+70] |
511 | mov [window_status],eax |
505 | mov [window_status],eax |
512 | test [window_status],100b ; window is rolled up |
506 | test [window_status],100b ; window is rolled up |
513 | jnz .exit |
507 | jnz .exit |
514 | 508 | ||
515 | test [window_status],10b ; window is minimized to panel |
509 | test [window_status],10b ; window is minimized to panel |
516 | jnz .exit |
510 | jnz .exit |
517 | 511 | ||
518 | mov eax,[ebx+62] |
512 | mov eax,[ebx+62] |
519 | inc eax |
513 | inc eax |
520 | mov [client_area_x_size],eax |
514 | mov [client_area_x_size],eax |
521 | mov eax,[ebx+66] |
515 | mov eax,[ebx+66] |
522 | inc eax |
516 | inc eax |
523 | mov [client_area_y_size],eax |
517 | mov [client_area_y_size],eax |
524 | 518 | ||
525 | mov ebx,[client_area_x_size] |
519 | mov ebx,[client_area_x_size] |
526 | mcall 13,,<0,20>,0xffffff |
520 | mcall 13,,<0,20>,0xffffff |
527 | ; function 4 : write text to window |
521 | ; function 4 : write text to window |
528 | xor ecx,ecx |
522 | xor ecx,ecx |
529 | mcall 4,<17,8>,,text,text_len |
523 | mcall 4,<17,8>,,text,text_len |
530 | 524 | ||
531 | mcall 13,<0,10>,<20,336>,0xffffff |
525 | mcall 13,<0,10>,<20,336>,0xffffff |
532 | 526 | ||
533 | mov ebx,[client_area_x_size] |
527 | mov ebx,[client_area_x_size] |
534 | sub ebx,10+100+395 |
528 | sub ebx,10+100+395 |
535 | add ebx,(10+100+395) shl 16 |
529 | add ebx,(10+100+395) shl 16 |
536 | mcall |
530 | mcall |
537 | 531 | ||
538 | mcall 26,9 |
532 | mcall 26,9 |
539 | add eax,100 |
533 | add eax,100 |
540 | mov [time_counter],eax |
534 | mov [time_counter],eax |
541 | 535 | ||
542 | mov [draw_window_flag],1 |
536 | mov [draw_window_flag],1 |
543 | call show_process_info |
537 | call show_process_info |
544 | mov [draw_window_flag],0 |
538 | mov [draw_window_flag],0 |
545 | 539 | ||
546 | mov ebx,[client_area_x_size] |
540 | mov ebx,[client_area_x_size] |
547 | mov ecx,[client_area_y_size] |
541 | mov ecx,[client_area_y_size] |
548 | sub ecx,20+336 |
542 | sub ecx,20+336 |
549 | add ecx,(20+336) shl 16 |
543 | add ecx,(20+336) shl 16 |
550 | mcall 13,,,0xffffff |
544 | mcall 13,,,0xffffff |
551 | 545 | ||
552 | push dword edit1 |
546 | push dword edit1 |
553 | call [edit_box_draw] |
547 | call [edit_box_draw] |
554 | 548 | ||
555 | push dword check1 |
549 | push dword check1 |
556 | call [check_box_draw] |
550 | call [check_box_draw] |
557 | 551 | ||
558 | ; previous page button |
552 | ; previous page button |
559 | mcall 8,<25,96>,<361,14>,51,0xccddee ;0xaabbcc |
553 | mcall 8,<25,96>,<361,14>,51,0xccddee ;0xaabbcc |
560 | ; next page button 52 |
554 | ; next page button 52 |
561 | inc edx |
555 | inc edx |
562 | mcall ,<125,96> |
556 | mcall ,<125,96> |
563 | ; ">" (text enter) button |
557 | ; ">" (text enter) button |
564 | add ecx,20 shl 16 |
558 | add ecx,20 shl 16 |
565 | ; run button 53 |
559 | ; run button 53 |
566 | inc edx |
560 | inc edx |
567 | mcall ,<456,50> |
561 | mcall ,<456,50> |
568 | ; reboot button |
562 | ; reboot button |
569 | sub ebx,120*65536 |
563 | sub ebx,120*65536 |
570 | add ebx,60 |
564 | add ebx,60 |
571 | sub ecx,20 shl 16 |
565 | sub ecx,20 shl 16 |
572 | inc edx |
566 | inc edx |
573 | mcall |
567 | mcall |
574 | ;"PREV PAGE", "NEXT PAGE" and "REBOOT" labels |
568 | ;"PREV PAGE", "NEXT PAGE" and "REBOOT" labels |
575 | xor ecx,ecx |
569 | xor ecx,ecx |
576 | mcall 4,<45,365>,,tbts,tbte-tbts |
570 | mcall 4,<45,365>,,tbts,tbte-tbts |
577 | ;"RUN" labels |
571 | ;"RUN" labels |
578 | mcall ,<464,385>,,tbts_3,tbte_2-tbts_3 |
572 | mcall ,<464,385>,,tbts_3,tbte_2-tbts_3 |
579 | ;print application name in text box |
573 | ;print application name in text box |
580 | ;-------------------------------------- |
574 | ;-------------------------------------- |
581 | align 4 |
575 | align 4 |
582 | .exit: |
576 | .exit: |
583 | mcall 12, 2 |
577 | mcall 12, 2 |
584 | ret |
578 | ret |
585 | ;------------------------------------------------------------------------------ |
579 | ;------------------------------------------------------------------------------ |
586 | align 4 |
580 | align 4 |
587 | show_process_info: |
581 | show_process_info: |
588 | test [window_status],100b ; window is rolled up |
582 | test [window_status],100b ; window is rolled up |
589 | jnz .exit |
583 | jnz .exit |
590 | 584 | ||
591 | test [window_status],10b ; window is minimized to panel |
585 | test [window_status],10b ; window is minimized to panel |
592 | jnz .exit |
586 | jnz .exit |
593 | 587 | ||
594 | mov ecx,display_processes |
588 | mov ecx,display_processes |
595 | mov edi,tasklist |
589 | mov edi,tasklist |
596 | xor eax,eax |
590 | xor eax,eax |
597 | cld |
591 | cld |
598 | rep stosd |
592 | rep stosd |
599 | 593 | ||
600 | mov edi,[list_start] |
594 | mov edi,[list_start] |
601 | mov [list_add],edi |
595 | mov [list_add],edi |
602 | mov dword [index],0 |
596 | mov dword [index],0 |
603 | mov dword [curposy],20 |
597 | mov dword [curposy],20 |
604 | ;-------------------------------------- |
598 | ;-------------------------------------- |
605 | align 4 |
599 | align 4 |
606 | .loop_draw: |
600 | .loop_draw: |
607 | call draw_next_process |
601 | call draw_next_process |
608 | inc dword [index] |
602 | inc dword [index] |
609 | add dword [curposy],14 |
603 | add dword [curposy],14 |
610 | cmp [index],display_processes |
604 | cmp [index],display_processes |
611 | jl .loop_draw |
605 | jl .loop_draw |
612 | ;-------------------------------------- |
606 | ;-------------------------------------- |
613 | align 4 |
607 | align 4 |
614 | .exit: |
608 | .exit: |
615 | ret |
609 | ret |
616 | ;------------------------------------------------------------------------------ |
610 | ;------------------------------------------------------------------------------ |
617 | ; DATA AREA |
611 | ; DATA AREA |
618 | ;------------------------------------------------------------------------------ |
612 | ;------------------------------------------------------------------------------ |
619 | system_path db '/sys/lib/' |
613 | system_path db '/sys/lib/' |
620 | library_name db 'box_lib.obj',0 |
614 | library_name db 'box_lib.obj',0 |
621 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
615 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
622 | 616 | ||
623 | err_message_found_lib db 'Sorry I cannot load library box_lib.obj',0 |
617 | err_message_found_lib db 'Sorry I cannot load library box_lib.obj',0 |
624 | head_f_i: |
618 | head_f_i: |
625 | head_f_l db 'System error',0 |
619 | head_f_l db 'System error',0 |
626 | err_message_import db 'Error on load import library box_lib.obj',0 |
620 | err_message_import db 'Error on load import library box_lib.obj',0 |
627 | ;------------------------------------------------------------------------------ |
621 | ;------------------------------------------------------------------------------ |
628 | align 4 |
622 | align 4 |
629 | myimport: |
623 | myimport: |
630 | edit_box_draw dd aEdit_box_draw |
624 | edit_box_draw dd aEdit_box_draw |
631 | edit_box_key dd aEdit_box_key |
625 | edit_box_key dd aEdit_box_key |
632 | edit_box_mouse dd aEdit_box_mouse |
626 | edit_box_mouse dd aEdit_box_mouse |
633 | ;version_ed dd aVersion_ed |
627 | ;version_ed dd aVersion_ed |
634 | 628 | ||
635 | init_checkbox dd aInit_checkbox |
629 | init_checkbox dd aInit_checkbox |
636 | check_box_draw dd aCheck_box_draw |
630 | check_box_draw dd aCheck_box_draw |
637 | check_box_mouse dd aCheck_box_mouse |
631 | check_box_mouse dd aCheck_box_mouse |
638 | ;version_ch dd aVersion_ch |
632 | ;version_ch dd aVersion_ch |
639 | 633 | ||
640 | ;option_box_draw dd aOption_box_draw |
634 | ;option_box_draw dd aOption_box_draw |
641 | ;option_box_mouse dd aOption_box_mouse |
635 | ;option_box_mouse dd aOption_box_mouse |
642 | ;version_op dd aVersion_op |
636 | ;version_op dd aVersion_op |
643 | 637 | ||
644 | dd 0 |
638 | dd 0 |
645 | dd 0 |
639 | dd 0 |
646 | 640 | ||
647 | aEdit_box_draw db 'edit_box',0 |
641 | aEdit_box_draw db 'edit_box',0 |
648 | aEdit_box_key db 'edit_box_key',0 |
642 | aEdit_box_key db 'edit_box_key',0 |
649 | aEdit_box_mouse db 'edit_box_mouse',0 |
643 | aEdit_box_mouse db 'edit_box_mouse',0 |
650 | ;aVersion_ed db 'version_ed',0 |
644 | ;aVersion_ed db 'version_ed',0 |
651 | 645 | ||
652 | aInit_checkbox db 'init_checkbox2',0 |
646 | aInit_checkbox db 'init_checkbox2',0 |
653 | aCheck_box_draw db 'check_box_draw2',0 |
647 | aCheck_box_draw db 'check_box_draw2',0 |
654 | aCheck_box_mouse db 'check_box_mouse2',0 |
648 | aCheck_box_mouse db 'check_box_mouse2',0 |
655 | ;aVersion_ch db 'version_ch',0 |
649 | ;aVersion_ch db 'version_ch',0 |
656 | 650 | ||
657 | ;aOption_box_draw db 'option_box_draw',0 |
651 | ;aOption_box_draw db 'option_box_draw',0 |
658 | ;aOption_box_mouse db 'option_box_mouse',0 |
652 | ;aOption_box_mouse db 'option_box_mouse',0 |
659 | ;aVersion_op db 'version_op',0 |
653 | ;aVersion_op db 'version_op',0 |
660 | ;------------------------------------------------------------------------------ |
654 | ;------------------------------------------------------------------------------ |
661 | align 4 |
655 | align 4 |
662 | check1 check_box2 (10 shl 16)+11,(383 shl 16)+11,6, 0x80AABBCC,0,0,check_text, ch_flag_bottom ;ch_flag_en |
656 | check1 check_box2 (10 shl 16)+11,(383 shl 16)+11,6, 0x80AABBCC,0,0,check_text, ch_flag_bottom ;ch_flag_en |
663 | check1_end: |
657 | check1_end: |
664 | edit1 edit_box 350,95,381,0xffffff,0x6f9480,0,0xAABBCC,0,start_application_c,\ |
658 | edit1 edit_box 350,95,381,0xffffff,0x6f9480,0,0xAABBCC,0,start_application_c,\ |
665 | start_application,mouse_dd,ed_focus,start_application_e,start_application_e |
659 | start_application,mouse_dd,ed_focus,start_application_e,start_application_e |
666 | edit1_end: |
660 | edit1_end: |
667 | list_start dd 0 |
661 | list_start dd 0 |
668 | ;------------------------------------------------------------------------------ |
662 | ;------------------------------------------------------------------------------ |
669 | align 4 |
663 | align 4 |
670 | sys_reboot: |
664 | sys_reboot: |
671 | dd 7 |
665 | dd 7 |
672 | dd 0 |
666 | dd 0 |
673 | dd 0 |
667 | dd 0 |
674 | dd 0 |
668 | dd 0 |
675 | dd 0 |
669 | dd 0 |
676 | db '/sys/end',0 |
670 | db '/sys/end',0 |
677 | ;------------------------------------------------------------------------------ |
671 | ;------------------------------------------------------------------------------ |
678 | if lang eq de |
672 | if lang eq de |
679 | text: |
673 | text: |
680 | db 'NAME/BEENDEN PID CPU-LAST % ' |
674 | db 'NAME/BEENDEN PID CPU-LAST % ' |
681 | db 'SPEICHER START/NUTZUNG W-STACK W-POS' |
675 | db 'SPEICHER START/NUTZUNG W-STACK W-POS' |
682 | text_len = $-text |
676 | text_len = $-text |
683 | 677 | ||
684 | tbts: db 'SEITE ZURUECK SEITE VOR REBOOT SYSTEM' |
678 | tbts: db 'SEITE ZURUECK SEITE VOR REBOOT SYSTEM' |
685 | tbte: |
679 | tbte: |
686 | tbts_3 db 'START' |
680 | tbts_3 db 'START' |
687 | tbte_2: |
681 | tbte_2: |
688 | check_text db '@ on/off',0 |
682 | check_text db '@ on/off',0 |
689 | title db 'Prozesse - Ctrl/Alt/Del',0 |
683 | title db 'Prozesse - Ctrl/Alt/Del',0 |
690 | ;-------------------------------------- |
684 | ;-------------------------------------- |
691 | else if lang eq et |
685 | else if lang eq et |
692 | text: |
686 | text: |
693 | db 'NIMI/LÕPETA PID CPU-KASUTUS % ' |
687 | db 'NIMI/LÕPETA PID CPU-KASUTUS % ' |
694 | db 'MÄLU ALGUS/KASUTUS W-PUHVER W-SUURUS' |
688 | db 'MÄLU ALGUS/KASUTUS W-PUHVER W-SUURUS' |
695 | text_len = $-text |
689 | text_len = $-text |
696 | 690 | ||
697 | tbts: db 'EELMINE LEHT JÄRGMINE LEHT REBOODI SÜSTEEM' |
691 | tbts: db 'EELMINE LEHT JÄRGMINE LEHT REBOODI SÜSTEEM' |
698 | tbte: |
692 | tbte: |
699 | tbts_3 db 'START' |
693 | tbts_3 db 'START' |
700 | tbte_2: |
694 | tbte_2: |
701 | check_text db '@ sees/väl.',0 |
695 | check_text db '@ sees/väl.',0 |
702 | title db 'Protsessid - Ctrl/Alt/Del' |
696 | title db 'Protsessid - Ctrl/Alt/Del' |
703 | ;-------------------------------------- |
697 | ;-------------------------------------- |
704 | else if lang eq ru |
698 | else if lang eq ru |
705 | text: |
699 | text: |
706 | db '/ PID CPU- % ' |
700 | db '/ PID CPU- % ' |
707 | db ' / W-STACK W-POS' |
701 | db ' / W-STACK W-POS' |
708 | text_len = $-text |
702 | text_len = $-text |
709 | 703 | ||
710 | tbts: db ' . . ' |
704 | tbts: db ' . . ' |
711 | tbte: |
705 | tbte: |
712 | tbts_3 db '' |
706 | tbts_3 db '' |
713 | tbte_2: |
707 | tbte_2: |
714 | check_text db '@ ¢ª«/¢ëª«',0 |
708 | check_text db '@ ¢ª«/¢ëª«',0 |
715 | title db '¨á¯¥âç¥à ¯à®æ¥áᮢ - Ctrl/Alt/Del',0 |
709 | title db '¨á¯¥âç¥à ¯à®æ¥áᮢ - Ctrl/Alt/Del',0 |
716 | ;-------------------------------------- |
710 | ;-------------------------------------- |
717 | else if lang eq it |
711 | else if lang eq it |
718 | text: |
712 | text: |
719 | db 'NOME-PROGRAMMA PID USO CPU % ' |
713 | db 'NOME-PROGRAMMA PID USO CPU % ' |
720 | db 'MEMORY START/USAGE W-STACK W-POS' |
714 | db 'MEMORY START/USAGE W-STACK W-POS' |
721 | text_len = $-text |
715 | text_len = $-text |
722 | 716 | ||
723 | tbts: db 'INDIETRO AVANTI RIAVVIA SISTEMA' |
717 | tbts: db 'INDIETRO AVANTI RIAVVIA SISTEMA' |
724 | tbte: |
718 | tbte: |
725 | tbts_3 db 'START' |
719 | tbts_3 db 'START' |
726 | tbte_2: |
720 | tbte_2: |
727 | check_text db '@ on/off',0 |
721 | check_text db '@ on/off',0 |
728 | title db 'Gestore processi - Ctrl/Alt/Del',0 |
722 | title db 'Gestore processi - Ctrl/Alt/Del',0 |
729 | ;-------------------------------------- |
723 | ;-------------------------------------- |
730 | else |
724 | else |
731 | text: |
725 | text: |
732 | db 'NAME/TERMINATE PID CPU-USAGE % ' |
726 | db 'NAME/TERMINATE PID CPU-USAGE % ' |
733 | db 'MEMORY START/USAGE W-STACK W-POS' |
727 | db 'MEMORY START/USAGE W-STACK W-POS' |
734 | text_len = $-text |
728 | text_len = $-text |
735 | 729 | ||
736 | tbts: db 'PREV PAGE NEXT PAGE REBOOT SYSTEM' |
730 | tbts: db 'PREV PAGE NEXT PAGE REBOOT SYSTEM' |
737 | tbte: |
731 | tbte: |
738 | tbts_3 db ' RUN' |
732 | tbts_3 db ' RUN' |
739 | tbte_2: |
733 | tbte_2: |
740 | check_text db '@ on/off',0 |
734 | check_text db '@ on/off',0 |
741 | title db 'Process manager - Ctrl/Alt/Del',0 |
735 | title db 'Process manager - Ctrl/Alt/Del',0 |
742 | 736 | ||
743 | end if |
737 | end if |
744 | ;------------------------------------------------------------------------------ |
738 | ;------------------------------------------------------------------------------ |
745 | align 4 |
739 | align 4 |
746 | file_start: |
740 | file_start: |
747 | dd 7 |
741 | dd 7 |
748 | dd 0 |
742 | dd 0 |
749 | dd 0 |
743 | dd 0 |
750 | dd 0 |
744 | dd 0 |
751 | dd 0 |
745 | dd 0 |
752 | start_application: db '/sys/LAUNCHER',0 |
746 | start_application: db '/sys/LAUNCHER',0 |
753 | start_application_e=$-start_application-1 |
747 | start_application_e=$-start_application-1 |
754 | ; times 60 db 0 |
748 | ; times 60 db 0 |
755 | rb 60 |
749 | rb 60 |
756 | start_application_c=$-start_application-1 |
750 | start_application_c=$-start_application-1 |
757 | ;------------------------------------------------------------------------------ |
751 | ;------------------------------------------------------------------------------ |
758 | IM_END: |
752 | IM_END: |
759 | ;------------------------------------------------------------------------------ |
753 | ;------------------------------------------------------------------------------ |
760 | align 4 |
754 | align 4 |
761 | sc system_colors |
755 | sc system_colors |
762 | winxpos rd 1 |
756 | winxpos rd 1 |
763 | winypos rd 1 |
757 | winypos rd 1 |
764 | mouse_dd rd 1 |
758 | mouse_dd rd 1 |
765 | cpu_percent rd 1 |
759 | cpu_percent rd 1 |
766 | tcolor rd 1 |
760 | tcolor rd 1 |
767 | list_add rd 1 |
761 | list_add rd 1 |
768 | curposy rd 1 |
762 | curposy rd 1 |
769 | index rd 1 |
763 | index rd 1 |
770 | tasklist rd display_processes |
764 | tasklist rd display_processes |
771 | time_counter rd 1 |
765 | time_counter rd 1 |
772 | active_process rd 1 |
- | |
773 | 766 | ||
774 | window_status rd 1 |
767 | window_status rd 1 |
775 | client_area_x_size rd 1 |
768 | client_area_x_size rd 1 |
776 | client_area_y_size rd 1 |
769 | client_area_y_size rd 1 |
777 | bar_bacground_color rd 1 |
770 | bar_bacground_color rd 1 |
778 | btn_bacground_color rd 1 |
771 | btn_bacground_color rd 1 |
779 | draw_window_flag rd 1 |
772 | draw_window_flag rd 1 |
780 | ;------------------------------------------------------------------------------ |
773 | ;------------------------------------------------------------------------------ |
781 | align 4 |
774 | align 4 |
782 | library_path: |
775 | library_path: |
783 | process_info_buffer process_information |
776 | process_info_buffer process_information |
784 | ;------------------------------------------------------------------------------ |
777 | ;------------------------------------------------------------------------------ |
785 | align 4 |
778 | align 4 |
786 | cur_dir_path: |
779 | cur_dir_path: |
787 | rb 1024 |
780 | rb 1024 |
788 | ;------------------------------------------------------------------------------ |
781 | ;------------------------------------------------------------------------------ |
789 | align 4 |
782 | align 4 |
790 | rb 1024 |
783 | rb 1024 |
791 | stack_area: |
784 | stack_area: |
792 | ;------------------------------------------------------------------------------ |
785 | ;------------------------------------------------------------------------------ |
793 | U_END: |
786 | U_END: |
794 | ;------------------------------------------------------------------------------464,385>45,365>456,50>125,96>361,14>25,96>20,336>0,10>17,8>0,20>8,256>3,0>8,256>2,256>110,395>10,99>111,393>11,95> |
787 | ;------------------------------------------------------------------------------464,385>45,365>456,50>125,96>361,14>25,96>20,336>0,10>17,8>0,20>8,256>3,0>8,256>2,256>110,395>10,99>111,393>11,95> |