Rev 3247 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3247 | Rev 6857 | ||
---|---|---|---|
Line 7... | Line 7... | ||
7 | char buf[4]; |
7 | char buf[4]; |
8 | 8 | ||
Line 9... | Line 9... | ||
9 | k70.p00 = 0; |
9 | k70.p00 = 0; |
10 | k70.p04 = 0; |
10 | k70.p04 = 0; |
11 | k70.p08 = 0; |
11 | //k70.p08 = 0; |
12 | k70.p12 = 4; // ÷èòàòü 4 áàéòà |
12 | k70.p12 = 4; // ÷èòàòü 4 áàéòà |
13 | k70.p16 = (unsigned) buf; |
13 | k70.p16 = (unsigned) buf; |
14 | k70.p20 = 0; |
14 | k70.p20 = 0; |
15 | k70.p21 = file; |
15 | k70.p21 = file; |
Line 28... | Line 28... | ||
28 | { |
28 | { |
29 | 29 | ||
Line 30... | Line 30... | ||
30 | kol_struct70 k70; |
30 | kol_struct70 k70; |
31 | kol_struct_BDVK bdvk; |
31 | kol_struct_BDVK bdvk; |
- | 32 | unsigned result, i; |
|
32 | unsigned result, filesize, pos, i; |
33 | unsigned long long filesize, pos; |
33 | char *buf; //áóôåð, êóäà êîïèðóåòñÿ ñêðèïò |
34 | char *buf; //áóôåð, êóäà êîïèðóåòñÿ ñêðèïò |
Line 34... | Line 35... | ||
34 | 35 | ||
35 | k70.p00 = 5; |
36 | k70.p00 = 5; |
- | 37 | k70.p04 = k70.p12 = 0; |
|
36 | k70.p04 = k70.p08 = k70.p12 = 0; |
38 | //k70.p08 = 0; |
37 | k70.p16 = (unsigned) &bdvk; |
39 | k70.p16 = (unsigned) &bdvk; |
38 | k70.p20 = 0; |
40 | k70.p20 = 0; |
Line 39... | Line 41... | ||
39 | k70.p21 = exec; |
41 | k70.p21 = exec; |
40 | 42 | ||
41 | result = kol_file_70(&k70); // ïîëó÷àåì èíôîðìàöèþ î ôàéëå |
43 | result = kol_file_70(&k70); // ïîëó÷àåì èíôîðìàöèþ î ôàéëå |
Line 42... | Line 44... | ||
42 | if ( 0 != result ) |
44 | if ( 0 != result ) |
Line 43... | Line 45... | ||
43 | return FALSE; |
45 | return FALSE; |
44 | 46 | ||
45 | filesize = bdvk.p32[0]; // ïîëó÷àåì ðàçìåð ôàéëà |
47 | filesize = bdvk.p32; // ïîëó÷àåì ðàçìåð ôàéëà |
Line 46... | Line 48... | ||
46 | 48 | ||
Line 47... | Line 49... | ||
47 | buf = malloc(filesize+256); |
49 | buf = malloc(filesize+256); // may fail for over 4Gb file, but impossible case |
- | 50 | if (NULL == buf) |
|
48 | if (NULL == buf) |
51 | return FALSE; |
49 | return FALSE; |
52 | |
50 | 53 | buf[filesize]=0; |
|
51 | buf[filesize]=0; |
54 | |
52 | 55 | k70.p00 = 0; |