Subversion Repositories Kolibri OS

Rev

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

Rev 7597 Rev 7693
Line 1... Line 1...
1
(*
1
(*
2
    BSD 2-Clause License
2
    BSD 2-Clause License
Line 3... Line 3...
3
 
3
 
4
    Copyright (c) 2018, Anton Krotov
4
    Copyright (c) 2018, 2019, Anton Krotov
5
    All rights reserved.
5
    All rights reserved.
Line 6... Line 6...
6
*)
6
*)
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
MODULE WRITER;
8
MODULE WRITER;
Line 9... Line 9...
9
 
9
 
Line 33... Line 33...
33
PROCEDURE WriteByte* (file: FILE; n: BYTE);
33
PROCEDURE WriteByte* (file: FILE; n: BYTE);
34
BEGIN
34
BEGIN
35
    IF FILES.WriteByte(file, n) THEN
35
    IF FILES.WriteByte(file, n) THEN
36
        INC(counter)
36
        INC(counter)
37
    ELSE
37
    ELSE
38
        ERRORS.error1("writing file error")
38
        ERRORS.Error(201)
39
    END
39
    END
40
END WriteByte;
40
END WriteByte;
Line 41... Line 41...
41
 
41
 
Line 45... Line 45...
45
    n: INTEGER;
45
    n: INTEGER;
Line 46... Line 46...
46
 
46
 
47
BEGIN
47
BEGIN
48
    n := FILES.write(file, chunk, bytes);
48
    n := FILES.write(file, chunk, bytes);
49
    IF n # bytes THEN
49
    IF n # bytes THEN
50
        ERRORS.error1("writing file error")
50
        ERRORS.Error(201)
51
    END;
51
    END;
52
    INC(counter, n)
52
    INC(counter, n)
Line 57... Line 57...
57
VAR
57
VAR
58
    i: INTEGER;
58
    i: INTEGER;
Line 59... Line 59...
59
 
59
 
60
BEGIN
60
BEGIN
61
    FOR i := 0 TO 7 DO
61
    FOR i := 0 TO 7 DO
62
        WriteByte(file, MACHINE.Byte(n, i))
62
        WriteByte(file, UTILS.Byte(n, i))
63
    END
63
    END
Line 64... Line 64...
64
END Write64LE;
64
END Write64LE;
65
 
65
 
66
 
66
 
Line 67... Line 67...
67
PROCEDURE Write32LE* (file: FILE; n: INTEGER);
67
PROCEDURE Write32LE* (file: FILE; n: INTEGER);
68
VAR
68
VAR
69
    i: INTEGER;
69
    i: INTEGER;
70
 
70
 
71
BEGIN
71
BEGIN
Line 72... Line 72...
72
    FOR i := 0 TO 3 DO
72
    FOR i := 0 TO 3 DO
73
        WriteByte(file, MACHINE.Byte(n, i))
73
        WriteByte(file, UTILS.Byte(n, i))
74
    END
74
    END
75
END Write32LE;
75
END Write32LE;
76
 
76
 
Line 77... Line 77...
77
 
77
 
78
PROCEDURE Write16LE* (file: FILE; n: INTEGER);
78
PROCEDURE Write16LE* (file: FILE; n: INTEGER);