Subversion Repositories Kolibri OS

Rev

Rev 109 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 109 Rev 134
Line 131... Line 131...
131
;
131
;
Line 132... Line 132...
132
 
132
 
133
    cld
133
    cld
134
;;    mov esi,path
134
;;    mov esi,path
135
    mov edi,path
135
    mov edi,path
136
    mov eax,0
136
    xor eax,eax
137
    mov ecx,200
137
    mov ecx,(1024+16)/4
Line 138... Line 138...
138
    rep stosb
138
    rep stosd
139
 
139
 
Line 140... Line 140...
140
;mov [get_loops],0
140
;mov [get_loops],0
Line 175... Line 175...
175
 
175
 
176
; define IPC memory
176
; define IPC memory
177
    mov eax,60
177
    mov eax,60
178
    mov ebx,1        ; define IPC
178
    mov ebx,1        ; define IPC
179
    mov ecx,path     ; offset of area
179
    mov ecx,path     ; offset of area
180
    mov edx,150      ; size 150 bytes
180
    mov edx,1024+16  ; size
Line 181... Line 181...
181
    int 0x40
181
    int 0x40
182
 
182
 
183
; change wanted events list 7-bit IPC event
183
; change wanted events list 7-bit IPC event
Line 187... Line 187...
187
 
187
 
188
;
188
;
189
; STEP 3 run SYSTEM XTREE with parameters
189
; STEP 3 run SYSTEM XTREE with parameters
Line 190... Line 190...
190
;
190
;
191
 
191
 
192
    mov eax,58
192
    mov eax,70
Line 193... Line 193...
193
    mov ebx,run_fileinfo
193
    mov ebx,run_fileinfo
Line 194... Line 194...
194
    int 0x40
194
    int 0x40
195
 
195
 
196
    call redproc
196
    call redproc
197
 
197
 
198
    mov [get_loops],0
198
    mov [get_loops],0
199
getmesloop:
-
 
200
    mov eax,23
199
getmesloop:
201
    mov ebx,50     ;0.5 sec
200
    mov eax,23
202
    int 0x40
201
    mov ebx,50     ;0.5 sec
203
 
202
    int 0x40
204
    cmp eax,1
203
        dec     eax
205
    je  mred
204
        jz      mred
206
    cmp eax,2
205
        dec     eax
207
    je  mkey
206
        jz      mkey
Line 208... Line 207...
208
    cmp eax,3
207
        dec     eax
209
    je  mbutton
208
        jz      mbutton
210
    cmp eax,7
209
        cmp     al, 7-3
211
    je  mgetmes
210
        jz      mgetmes
Line 293... Line 292...
293
    jmp  getmesloop
292
    jmp  getmesloop
Line 294... Line 293...
294
 
293
 
295
ready:
294
ready:
296
;
295
;
297
; The second message get
296
; The second message get
298
; Second message is 100 bytes path to SAVE/OPEN file
297
; Second message is 1024 bytes path to SAVE/OPEN file
299
; shl path string on 16 bytes
298
; shl path string on 16 bytes
300
;
299
;
301
    cld
300
    cld
302
    mov esi,path+16
301
    mov esi,path+16
303
    mov edi,path
302
    mov edi,path
304
    mov ecx,200
303
    mov ecx,1024/4
305
    rep movsb
304
    rep movsd
Line 306... Line 305...
306
    mov [edi],byte 0
305
    mov [edi],byte 0
Line 316... Line 315...
316
param:
315
param:
317
   dd 0    ; My dec PID
316
   dd 0    ; My dec PID
318
   dd 0,0  ; Type of dialog
317
   dd 0,0  ; Type of dialog
Line 319... Line 318...
319
 
318
 
320
run_fileinfo:
319
run_fileinfo:
321
 dd 16
320
 dd 7
322
 dd 0
321
 dd 0
323
 dd param
322
 dd param
324
 dd 0
323
 dd 0
325
 dd procinfo ; 0x10000
324
 dd 0
326
;run_filepath
325
;run_filepath
Line 327... Line 326...
327
 db '/RD/1/SYSXTREE',0
326
 db '/RD/1/SYSXTREE',0
328
 
327
 
329
procinfo:
328
procinfo:
Line 330... Line 329...
330
times 256 db 0
329
times 1024 db 0
331
}
330
}
Line 343... Line 342...
343
;
342
;
Line 344... Line 343...
344
 
343
 
345
    cld
344
    cld
346
;;    mov esi,path
345
;;    mov esi,path
347
    mov edi,path
346
    mov edi,path
348
    mov eax,0
347
    xor eax,eax
349
    mov ecx,200
348
    mov ecx,(1024+16)/4
Line 350... Line 349...
350
    rep stosb
349
    rep stosd
351
 
350
 
Line 352... Line 351...
352
;mov [get_loops],0
351
;mov [get_loops],0
Line 387... Line 386...
387
 
386
 
388
; define IPC memory
387
; define IPC memory
389
    mov eax,60
388
    mov eax,60
390
    mov ebx,1        ; define IPC
389
    mov ebx,1        ; define IPC
391
    mov ecx,path ; offset of area
390
    mov ecx,path ; offset of area
392
    mov edx,120      ; size 150 bytes
391
    mov edx,1024+16      ; size
Line 393... Line 392...
393
    int 0x40
392
    int 0x40
394
 
393
 
395
; change wanted events list 7-bit IPC event
394
; change wanted events list 7-bit IPC event
Line 399... Line 398...
399
 
398
 
400
;
399
;
401
; STEP 3 run SYSTEM XTREE with parameters
400
; STEP 3 run SYSTEM XTREE with parameters
Line 402... Line 401...
402
;
401
;
403
 
402
 
404
    mov eax,58
403
    mov eax,70
Line 405... Line 404...
405
    mov ebx,run_fileinfo
404
    mov ebx,run_fileinfo
Line 406... Line 405...
406
    int 0x40
405
    int 0x40
407
 
406
 
408
    call redproc
407
    call redproc
409
 
408
 
410
    mov [get_loops],0
409
    mov [get_loops],0
411
getmesloop:
-
 
412
    mov eax,23
410
getmesloop:
413
    mov ebx,50     ;0.5 sec
411
    mov eax,23
414
    int 0x40
412
    mov ebx,50     ;0.5 sec
415
 
413
    int 0x40
416
    cmp eax,1
414
        dec     eax
417
    je  mred
415
        jz      mred
418
    cmp eax,2
416
        dec     eax
419
    je  mkey
417
        jz      mkey
Line 420... Line 418...
420
    cmp eax,3
418
        dec     eax
421
    je  mbutton
419
        jz      mbutton
422
    cmp eax,7
420
        cmp     al, 7-3
423
    je  mgetmes
421
        jz      mgetmes
Line 455... Line 453...
455
 
453
 
456
mred:
454
mred:
457
    call redproc
455
    call redproc
458
    jmp  getmesloop
456
    jmp  getmesloop
-
 
457
mkey:
459
mkey:
458
    mov  eax,2
460
    int  0x40                   ; read (eax=2)
459
    int  0x40                   ; read (eax=2)
461
    jmp  getmesloop
460
    jmp  getmesloop
462
mbutton:
461
mbutton:
463
    mov  eax,17                 ; get id
462
    mov  eax,17                 ; get id
Line 504... Line 503...
504
    jmp  getmesloop
503
    jmp  getmesloop
Line 505... Line 504...
505
 
504
 
506
ready:
505
ready:
507
;
506
;
508
; The second message get
507
; The second message get
509
; Second message is 100 bytes path to SAVE/OPEN file
508
; Second message is 1024 bytes path to SAVE/OPEN file
510
; shl path string on 16 bytes
509
; shl path string on 16 bytes
511
;
510
;
512
    cld
511
    cld
513
    mov esi,path+16
512
    mov esi,path+16
514
    mov edi,path
513
    mov edi,path
515
    mov ecx,200
514
    mov ecx,1024/4
516
    rep movsb
515
    rep movsd
Line 517... Line 516...
517
    mov [edi],byte 0
516
    mov [edi],byte 0
Line 523... Line 522...
523
get_loops   dd 0
522
get_loops   dd 0
524
dlg_pid_get dd 0
523
dlg_pid_get dd 0
525
DLGPID      dd 0
524
DLGPID      dd 0
Line 526... Line 525...
526
 
525
 
527
param:
526
param:
528
   rb 4  ; My dec PID
527
   dd 0  ; My dec PID
Line 529... Line 528...
529
   rb 6  ; Type of dialog
528
   dd 0,0  ; Type of dialog
530
 
529
 
531
run_fileinfo:
530
run_fileinfo:
532
 dd 16
531
 dd 7
533
 dd 0
532
 dd 0
534
 dd param
533
 dd param
535
 dd 0
534
 dd 0
536
 dd procinfo
535
 dd 0
Line 537... Line 536...
537
run_filepath:
536
;run_filepath:
538
 db '/RD/1/SYSXTREE',0
537
 db '/RD/1/SYSXTREE',0
539
 
538
 
Line -... Line 539...
-
 
539
procinfo:
540
procinfo:
540
times 1024 db 0
541
times 256 db 0
541
}
542
}
542
 
543
 
543