Subversion Repositories Kolibri OS

Rev

Rev 9870 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9870 Rev 9883
Line -... Line 1...
-
 
1
; AMDtemp -s/sd0/4/data/temp/log.grf -d"/sd0/4/data/äàò÷èê òåìïåðàòóðû com ïîðò/sensors.sys"
1
pars_cmd:
2
parse_cmd:
2
        mov     edi, PATH
3
        mov     edi, PATH
3
        mov     ecx, 512
4
        mov     ecx, 512
4
.still:
5
.still:
5
        mov     al, ' '
6
        mov     al, ' '
6
        repz    scasb
7
        repz    scasb
Line 7... Line 8...
7
 
8
 
8
        test    ecx, ecx
9
        test    ecx, ecx
Line 9... Line 10...
9
        jz      .end_parser
10
        jz      .end_parser
10
 
11
 
11
        dec     edi
-
 
12
        mov     ebx, edi  ;save edi
-
 
13
        cmp     byte[edi],'"'
-
 
14
        jnz     @f ;.skip_string
-
 
15
        mov     eax, [save_file]
-
 
16
        cmp     eax, [.flag_drv]
-
 
17
        jae     .str_save
-
 
18
 
-
 
19
        cmp     dword[drv_ptr], 0
-
 
20
        jnz     .err
-
 
21
        mov     [drv_ptr],edi
-
 
22
        inc     dword[drv_ptr]
-
 
23
        jmp     .skip_string
-
 
24
.str_save:
-
 
25
        cmp     dword[save_ptr], 0
-
 
26
        jnz     .err
-
 
27
        mov     [save_ptr],edi
-
 
28
        inc     dword[save_ptr]
-
 
Line 29... Line 12...
29
        jmp     .skip_string
12
        dec     edi
30
@@:
-
 
31
 
-
 
32
        cmp     word[edi], 's-'
13
        or      word[edi], 0x2020 ; ïåðåâîäèì â íèæíèé ðåãèñòð
-
 
14
 
-
 
15
        cmp     word[edi], '-s'
-
 
16
        jnz     @f
-
 
17
 
33
        jnz     @f
18
        add     edi, 2
-
 
19
        sub     ecx, 2
34
        cmp     dword[save_file], 0
20
        call    .get_str
35
        jnz     @f
21
        mov     [save_ptr],eax
36
        mov     [save_file], edi
-
 
37
@@:
-
 
38
        cmp     word[edi], 'd-'
22
        jmp     .still
39
        jnz     @f
-
 
-
 
23
@@:
40
        cmp     dword[.flag_drv], 0
24
        cmp     word[edi], '-d'
-
 
25
        jnz     @f
-
 
26
 
-
 
27
        add     edi, 2
-
 
28
        sub     ecx, 2
-
 
29
        call    .get_str
-
 
30
        mov     [drv_ptr],eax
-
 
31
        jmp     .still
-
 
32
@@:
-
 
33
        cmp     byte[edi], 0
41
        jnz     @f
34
        jnz     @f
42
        mov     [.flag_drv], edi
-
 
43
        add     edi, 2
35
.end_parser:
44
@@:
36
        ret
Line 45... Line 37...
45
        cmp     edi, ebx
37
@@:
46
        jz      .err
38
        inc     edi
-
 
39
        jmp     .still
47
        jmp     .still
40
 
48
 
41
.get_str:
49
.skip_string:
42
        push    edi
50
        inc     edi
43
        inc     dword[esp]
51
        mov     al, '"'
44
        mov     al, '"'
52
        rep     scasb
45
        cmp     byte[edi], al
53
        test    ecx, ecx
46
        jz      @f
54
        jz      .err
47
        dec     dword[esp]
55
        mov     byte[edi-1], 0x00
48
        mov     al, ' '
56
        jmp     .still
49
        dec     edi
57
.err:
50
@@:
58
        or      eax, -1
51
        inc     edi
59
        ret
-
 
60
.end_parser:
52
        repne   scasb