Rev 255 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 255 | Rev 485 | ||
---|---|---|---|
Line 20... | Line 20... | ||
20 | mov [dlg_pid_get],0 |
20 | mov [dlg_pid_get],0 |
Line 21... | Line 21... | ||
21 | 21 | ||
22 | ; Get my PID in dec format 4 bytes |
22 | ; Get my PID in dec format 4 bytes |
23 | mov eax,9 |
23 | mov eax,9 |
24 | mov ebx,procinfo |
24 | mov ebx,procinfo |
25 | mov ecx,-1 |
25 | or ecx,-1 |
Line 26... | Line 26... | ||
26 | int 0x40 |
26 | mcall |
27 | 27 | ||
28 | ; convert eax bin to param dec |
28 | ; convert eax bin to param dec |
29 | mov eax,dword [procinfo+30] ;offset of myPID |
29 | mov eax,dword [procinfo+30] ;offset of myPID |
Line 55... | Line 55... | ||
55 | ; define IPC memory |
55 | ; define IPC memory |
56 | mov eax,60 |
56 | mov eax,60 |
57 | mov ebx,1 ; define IPC |
57 | mov ebx,1 ; define IPC |
58 | mov ecx,path ; offset of area |
58 | mov ecx,path ; offset of area |
59 | mov edx,1024+16 ; size |
59 | mov edx,1024+16 ; size |
60 | int 0x40 |
60 | mcall |
Line 61... | Line 61... | ||
61 | 61 | ||
62 | ; change wanted events list 7-bit IPC event |
62 | ; change wanted events list 7-bit IPC event |
63 | mov eax,40 |
63 | mov eax,40 |
64 | mov ebx,01000111b |
64 | mov ebx,01000111b |
Line 65... | Line 65... | ||
65 | int 0x40 |
65 | mcall |
66 | 66 | ||
67 | ; |
67 | ; |
Line 68... | Line 68... | ||
68 | ; STEP 3 run SYSTEM XTREE with parameters |
68 | ; STEP 3 run SYSTEM XTREE with parameters |
69 | ; |
69 | ; |
70 | 70 | ||
Line 71... | Line 71... | ||
71 | mov eax,70 |
71 | mov eax,70 |
Line 72... | Line 72... | ||
72 | mov ebx,run_fileinfo |
72 | mov ebx,run_fileinfo |
73 | int 0x40 |
73 | mcall |
74 | 74 | ||
75 | call redproc |
75 | call redproc |
76 | 76 | ||
77 | mov [get_loops],0 |
77 | mov [get_loops],0 |
78 | getmesloop: |
78 | getmesloop: |
79 | mov eax,23 |
79 | mov eax,23 |
80 | mov ebx,50 ;0.5 sec |
80 | mov ebx,50 ;0.5 sec |
81 | int 0x40 |
81 | mcall |
Line 90... | Line 90... | ||
90 | 90 | ||
91 | ; Get number of procces |
91 | ; Get number of procces |
92 | mov ebx,procinfo |
92 | mov ebx,procinfo |
93 | mov ecx,-1 |
93 | mov ecx,-1 |
94 | mov eax,9 |
94 | mov eax,9 |
95 | int 0x40 |
95 | mcall |
Line 96... | Line 96... | ||
96 | mov ebp,eax |
96 | mov ebp,eax |
97 | 97 | ||
98 | loox: |
98 | loox: |
99 | mov eax,9 |
99 | mov eax,9 |
100 | mov ebx,procinfo |
100 | mov ebx,procinfo |
101 | mov ecx,ebp |
101 | mov ecx,ebp |
102 | int 0x40 |
102 | mcall |
103 | mov eax,[DLGPID] |
103 | mov eax,[DLGPID] |
104 | cmp [procinfo+30],eax ;IF Dialog find |
104 | cmp [procinfo+30],eax ;IF Dialog find |
105 | je dlg_is_work ;jmp to dlg_is_work |
105 | je dlg_is_work ;jmp to dlg_is_work |
Line 122... | Line 122... | ||
122 | mred: |
122 | mred: |
123 | call redproc |
123 | call redproc |
124 | jmp getmesloop |
124 | jmp getmesloop |
125 | mkey: |
125 | mkey: |
126 | mov eax,2 |
126 | mov eax,2 |
127 | int 0x40 ; read (eax=2) |
127 | mcall ; read (eax=2) |
128 | jmp getmesloop |
128 | jmp getmesloop |
129 | mbutton: |
129 | mbutton: |
130 | mov eax,17 ; get id |
130 | mov eax,17 ; get id |
131 | int 0x40 |
131 | mcall |
132 | cmp ah,1 ; button id=1 ? |
132 | cmp ah,1 ; button id=1 ? |
133 | jne getmesloop |
133 | jne getmesloop |
134 | mov eax,-1 ; close this program |
134 | mov eax,-1 ; close this program |
135 | int 0x40 |
135 | mcall |
136 | mgetmes: |
136 | mgetmes: |
Line 137... | Line 137... | ||
137 | 137 | ||
138 | ; If dlg_pid_get then second message get jmp to still |
138 | ; If dlg_pid_get then second message get jmp to still |
139 | cmp [dlg_pid_get],dword 1 |
139 | cmp [dlg_pid_get],dword 1 |
Line 232... | Line 232... | ||
232 | 232 | ||
233 | ; Get my PID in dec format 4 bytes |
233 | ; Get my PID in dec format 4 bytes |
234 | mov eax,9 |
234 | mov eax,9 |
235 | mov ebx,procinfo |
235 | mov ebx,procinfo |
236 | mov ecx,-1 |
236 | mov ecx,-1 |
Line 237... | Line 237... | ||
237 | int 0x40 |
237 | mcall |
238 | 238 | ||
239 | ; convert eax bin to param dec |
239 | ; convert eax bin to param dec |
240 | mov eax,dword [procinfo+30] ;offset of myPID |
240 | mov eax,dword [procinfo+30] ;offset of myPID |
Line 266... | Line 266... | ||
266 | ; define IPC memory |
266 | ; define IPC memory |
267 | mov eax,60 |
267 | mov eax,60 |
268 | mov ebx,1 ; define IPC |
268 | mov ebx,1 ; define IPC |
269 | mov ecx,path ; offset of area |
269 | mov ecx,path ; offset of area |
270 | mov edx,1024+16 ; size |
270 | mov edx,1024+16 ; size |
271 | int 0x40 |
271 | mcall |
Line 272... | Line 272... | ||
272 | 272 | ||
273 | ; change wanted events list 7-bit IPC event |
273 | ; change wanted events list 7-bit IPC event |
274 | mov eax,40 |
274 | mov eax,40 |
275 | mov ebx,01000111b |
275 | mov ebx,01000111b |
Line 276... | Line 276... | ||
276 | int 0x40 |
276 | mcall |
277 | 277 | ||
278 | ; |
278 | ; |
Line 279... | Line 279... | ||
279 | ; STEP 3 run SYSTEM XTREE with parameters |
279 | ; STEP 3 run SYSTEM XTREE with parameters |
280 | ; |
280 | ; |
281 | 281 | ||
Line 282... | Line 282... | ||
282 | mov eax,70 |
282 | mov eax,70 |
Line 283... | Line 283... | ||
283 | mov ebx,run_fileinfo |
283 | mov ebx,run_fileinfo |
284 | int 0x40 |
284 | mcall |
285 | 285 | ||
286 | call redproc |
286 | call redproc |
287 | 287 | ||
288 | mov [get_loops],0 |
288 | mov [get_loops],0 |
289 | getmesloop: |
289 | getmesloop: |
290 | mov eax,23 |
290 | mov eax,23 |
291 | mov ebx,50 ;0.5 sec |
291 | mov ebx,50 ;0.5 sec |
292 | int 0x40 |
292 | mcall |
Line 301... | Line 301... | ||
301 | 301 | ||
302 | ; Get number of procces |
302 | ; Get number of procces |
303 | mov ebx,procinfo |
303 | mov ebx,procinfo |
304 | mov ecx,-1 |
304 | mov ecx,-1 |
305 | mov eax,9 |
305 | mov eax,9 |
306 | int 0x40 |
306 | mcall |
Line 307... | Line 307... | ||
307 | mov ebp,eax |
307 | mov ebp,eax |
308 | 308 | ||
309 | loox: |
309 | loox: |
310 | mov eax,9 |
310 | mov eax,9 |
311 | mov ebx,procinfo |
311 | mov ebx,procinfo |
312 | mov ecx,ebp |
312 | mov ecx,ebp |
313 | int 0x40 |
313 | mcall |
314 | mov eax,[DLGPID] |
314 | mov eax,[DLGPID] |
315 | cmp [procinfo+30],eax ;IF Dialog find |
315 | cmp [procinfo+30],eax ;IF Dialog find |
316 | je dlg_is_work ;jmp to dlg_is_work |
316 | je dlg_is_work ;jmp to dlg_is_work |
Line 333... | Line 333... | ||
333 | mred: |
333 | mred: |
334 | call redproc |
334 | call redproc |
335 | jmp getmesloop |
335 | jmp getmesloop |
336 | mkey: |
336 | mkey: |
337 | mov eax,2 |
337 | mov eax,2 |
338 | int 0x40 ; read (eax=2) |
338 | mcall ; read (eax=2) |
339 | jmp getmesloop |
339 | jmp getmesloop |
340 | mbutton: |
340 | mbutton: |
341 | mov eax,17 ; get id |
341 | mov eax,17 ; get id |
342 | int 0x40 |
342 | mcall |
343 | cmp ah,1 ; button id=1 ? |
343 | cmp ah,1 ; button id=1 ? |
344 | jne getmesloop |
344 | jne getmesloop |
345 | mov eax,-1 ; close this program |
345 | mov eax,-1 ; close this program |
346 | int 0x40 |
346 | mcall |
347 | mgetmes: |
347 | mgetmes: |
Line 348... | Line 348... | ||
348 | 348 | ||
349 | ; If dlg_pid_get then second message get jmp to still |
349 | ; If dlg_pid_get then second message get jmp to still |
350 | cmp [dlg_pid_get],dword 1 |
350 | cmp [dlg_pid_get],dword 1 |