Subversion Repositories Kolibri OS

Rev

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

Rev 131 Rev 134
Line 184... Line 184...
184
;
184
;
Line 185... Line 185...
185
 
185
 
186
    cld
186
    cld
187
;;    mov esi,path
187
;;    mov esi,path
188
    mov edi,path
188
    mov edi,path
189
    mov eax,0
189
    xor eax,eax
190
    mov ecx,200
190
    mov ecx,(1024+16)/4
Line 191... Line 191...
191
    rep stosb
191
    rep stosd
192
 
192
 
Line 193... Line 193...
193
;mov [get_loops],0
193
;mov [get_loops],0
Line 228... Line 228...
228
 
228
 
229
; define IPC memory
229
; define IPC memory
230
    mov eax,60
230
    mov eax,60
231
    mov ebx,1        ; define IPC
231
    mov ebx,1        ; define IPC
232
    mov ecx,path     ; offset of area
232
    mov ecx,path     ; offset of area
233
    mov edx,150      ; size 150 bytes
233
    mov edx,1024+16  ; size
Line 234... Line 234...
234
    int 0x40
234
    int 0x40
235
 
235
 
236
; change wanted events list 7-bit IPC event
236
; change wanted events list 7-bit IPC event
Line 240... Line 240...
240
 
240
 
241
;
241
;
242
; STEP 3 run SYSTEM XTREE with parameters
242
; STEP 3 run SYSTEM XTREE with parameters
Line 243... Line 243...
243
;
243
;
244
 
244
 
245
    mov eax,58
245
    mov eax,70
Line 246... Line 246...
246
    mov ebx,run_fileinfo
246
    mov ebx,run_fileinfo
Line 247... Line 247...
247
    int 0x40
247
    int 0x40
248
 
248
 
249
    call redproc
249
    call redproc
250
 
250
 
251
    mov [get_loops],0
251
    mov [get_loops],0
252
getmesloop:
-
 
253
    mov eax,23
252
getmesloop:
254
    mov ebx,50     ;0.5 sec
253
    mov eax,23
255
    int 0x40
254
    mov ebx,50     ;0.5 sec
256
 
255
    int 0x40
257
    cmp eax,1
256
        dec     eax
258
    je  mred
257
        jz      mred
259
    cmp eax,2
258
        dec     eax
260
    je  mkey
259
        jz      mkey
Line 261... Line 260...
261
    cmp eax,3
260
        dec     eax
262
    je  mbutton
261
        jz      mbutton
263
    cmp eax,7
262
        cmp     al, 7-3
264
    je  mgetmes
263
        jz      mgetmes
Line 346... Line 345...
346
    jmp  getmesloop
345
    jmp  getmesloop
Line 347... Line 346...
347
 
346
 
348
ready:
347
ready:
349
;
348
;
350
; The second message get
349
; The second message get
351
; Second message is 100 bytes path to SAVE/OPEN file
350
; Second message is 1024 bytes path to SAVE/OPEN file
352
; shl path string on 16 bytes
351
; shl path string on 16 bytes
353
;
352
;
354
    cld
353
    cld
355
    mov esi,path+16
354
    mov esi,path+16
356
    mov edi,path
355
    mov edi,path
357
    mov ecx,200
356
    mov ecx,1024/4
358
    rep movsb
357
    rep movsd
Line 359... Line 358...
359
    mov [edi],byte 0
358
    mov [edi],byte 0
Line 369... Line 368...
369
param:
368
param:
370
   dd 0    ; My dec PID
369
   dd 0    ; My dec PID
371
   dd 0,0  ; Type of dialog
370
   dd 0,0  ; Type of dialog
Line 372... Line 371...
372
 
371
 
373
run_fileinfo:
372
run_fileinfo:
374
 dd 16
373
 dd 7
375
 dd 0
374
 dd 0
376
 dd param
375
 dd param
377
 dd 0
376
 dd 0
378
 dd procinfo ; 0x10000
377
 dd 0
379
;run_filepath
378
;run_filepath
Line 380... Line 379...
380
 db '/RD/1/SYSXTREE',0
379
 db '/RD/1/SYSXTREE',0
381
 
380
 
Line 396... Line 395...
396
;
395
;
Line 397... Line 396...
397
 
396
 
398
    cld
397
    cld
399
;;    mov esi,path
398
;;    mov esi,path
400
    mov edi,path
399
    mov edi,path
401
    mov eax,0
400
    xor eax,eax
402
    mov ecx,200
401
    mov ecx,(1024+16)/4
Line 403... Line 402...
403
    rep stosb
402
    rep stosd
404
 
403
 
Line 405... Line 404...
405
;mov [get_loops],0
404
;mov [get_loops],0
Line 440... Line 439...
440
 
439
 
441
; define IPC memory
440
; define IPC memory
442
    mov eax,60
441
    mov eax,60
443
    mov ebx,1        ; define IPC
442
    mov ebx,1        ; define IPC
444
    mov ecx,path ; offset of area
443
    mov ecx,path ; offset of area
445
    mov edx,150      ; size 150 bytes
444
    mov edx,1024+16      ; size
Line 446... Line 445...
446
    int 0x40
445
    int 0x40
447
 
446
 
448
; change wanted events list 7-bit IPC event
447
; change wanted events list 7-bit IPC event
Line 452... Line 451...
452
 
451
 
453
;
452
;
454
; STEP 3 run SYSTEM XTREE with parameters
453
; STEP 3 run SYSTEM XTREE with parameters
Line 455... Line 454...
455
;
454
;
456
 
455
 
457
    mov eax,58
456
    mov eax,70
Line 458... Line 457...
458
    mov ebx,run_fileinfo
457
    mov ebx,run_fileinfo
Line 459... Line 458...
459
    int 0x40
458
    int 0x40
460
 
459
 
461
    call redproc
460
    call redproc
462
 
461
 
463
    mov [get_loops],0
462
    mov [get_loops],0
464
getmesloop:
-
 
465
    mov eax,23
463
getmesloop:
466
    mov ebx,50     ;0.5 sec
464
    mov eax,23
467
    int 0x40
465
    mov ebx,50     ;0.5 sec
468
 
466
    int 0x40
469
    cmp eax,1
467
        dec     eax
470
    je  mred
468
        jz      mred
471
    cmp eax,2
469
        dec     eax
472
    je  mkey
470
        jz      mkey
Line 473... Line 471...
473
    cmp eax,3
471
        dec     eax
474
    je  mbutton
472
        jz      mbutton
475
    cmp eax,7
473
        cmp     al, 7-3
476
    je  mgetmes
474
        jz      mgetmes
Line 558... Line 556...
558
    jmp  getmesloop
556
    jmp  getmesloop
Line 559... Line 557...
559
 
557
 
560
ready:
558
ready:
561
;
559
;
562
; The second message get
560
; The second message get
563
; Second message is 100 bytes path to SAVE/OPEN file
561
; Second message is 1024 bytes path to SAVE/OPEN file
564
; shl path string on 16 bytes
562
; shl path string on 16 bytes
565
;
563
;
566
    cld
564
    cld
567
    mov esi,path+16
565
    mov esi,path+16
568
    mov edi,path
566
    mov edi,path
569
    mov ecx,200
567
    mov ecx,1024/4
570
    rep movsb
568
    rep movsd
Line 571... Line 569...
571
    mov [edi],byte 0
569
    mov [edi],byte 0
Line 581... Line 579...
581
param:
579
param:
582
   dd 0  ; My dec PID
580
   dd 0  ; My dec PID
583
   dd 0,0  ; Type of dialog
581
   dd 0,0  ; Type of dialog
Line 584... Line 582...
584
 
582
 
585
run_fileinfo:
583
run_fileinfo:
586
 dd 16
584
 dd 7
587
 dd 0
585
 dd 0
588
 dd param
586
 dd param
589
 dd 0
587
 dd 0
590
 dd procinfo
588
 dd 0
591
;run_filepath:
589
;run_filepath:
Line 592... Line 590...
592
 db '/RD/1/SYSXTREE',0
590
 db '/RD/1/SYSXTREE',0
593
 
591