Subversion Repositories Kolibri OS

Rev

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

Rev 9073 Rev 9174
Line 22... Line 22...
22
IMPORT SYSTEM, K := KOSAPI, E := Encodings, Lines;
22
IMPORT SYSTEM, K := KOSAPI, E := Encodings, Lines;
Line 23... Line 23...
23
 
23
 
24
CONST
24
CONST
25
    TTEXT = 0;
25
    TTEXT = 0;
-
 
26
    lenEOL* = 2;
Line 26... Line 27...
26
    lenEOL* = 2;
27
    TAB = 9X;
27
 
28
 
28
TYPE
29
TYPE
29
    tBuffer* = POINTER TO RECORD
30
    tBuffer* = POINTER TO RECORD
Line 51... Line 52...
51
BEGIN
52
BEGIN
52
    cnt := bufSize(buffer) DIV 2;
53
    cnt := bufSize(buffer) DIV 2;
53
    size := cnt + 12;
54
    size := cnt + 12;
54
    a := K.malloc(size);
55
    a := K.malloc(size);
55
    ASSERT(a # 0);
56
    ASSERT(a # 0);
56
    SYSTEM.PUT32(a, size);
-
 
57
    SYSTEM.PUT32(a + 4, TTEXT);
57
    SYSTEM.PUT32(a + 4, TTEXT);
58
    SYSTEM.PUT32(a + 8, 1);
58
    SYSTEM.PUT32(a + 8, 1);
59
    pchar := a + 12;
59
    pchar := a + 12;
60
    ptr := buffer.dataPtr;
60
    ptr := buffer.dataPtr;
61
    WHILE cnt > 0 DO
61
    WHILE cnt > 0 DO
62
        SYSTEM.GET(ptr, wch);
62
        SYSTEM.GET(ptr, wch);
-
 
63
        IF wch # Lines.TAB1 THEN
63
        SYSTEM.PUT(pchar, CHR(E.UNI[ORD(wch), E.CP866] MOD 256));
64
            SYSTEM.PUT(pchar, CHR(E.UNI[ORD(wch), E.CP866] MOD 256));
64
        INC(pchar);
65
            INC(pchar)
-
 
66
        ELSE
-
 
67
            DEC(size);
-
 
68
        END;
65
        INC(ptr, 2);
69
        INC(ptr, 2);
66
        DEC(cnt)
70
        DEC(cnt)
67
    END;
71
    END;
-
 
72
    SYSTEM.PUT32(a, size);
68
    K.sysfunc2(54, 3);
73
    K.sysfunc2(54, 3);
69
    K.sysfunc4(54, 2, size, a)
74
    K.sysfunc4(54, 2, size, a)
70
END put;
75
END put;