Added stubs for msrle32.dll and implemented RLE8 decoder.
[wine] / files / tape.c
1 /*
2  * Tape handling functions
3  *
4  * Copyright 1999 Chris Morgan <cmorgan@wpi.edu>
5  *                James Abbatiello <abbeyj@wpi.edu>
6  *
7  * TODO: 
8  *    Everything, all functions are stubs.
9  */
10
11 #include "winbase.h"
12 #include "winerror.h"
13 #include "debugtools.h"
14
15 DEFAULT_DEBUG_CHANNEL(tape);
16
17
18 /************************************************************************
19  *              BackupRead  (KERNEL32.@)
20  */
21 BOOL WINAPI BackupRead( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToRead,
22                 LPDWORD lpNumberOfBytesRead, BOOL bAbort,
23                 BOOL bProcessSecurity, LPVOID *lpContext )
24 {
25   FIXME("(%04x, %p, %ld, %p, %d, %d, %p) stub!\n", hFile, lpBuffer,
26     nNumberOfBytesToRead, lpNumberOfBytesRead, bAbort, bProcessSecurity,
27     lpContext);
28     
29   SetLastError( ERROR_NOT_SUPPORTED );
30
31   return FALSE;
32 }
33
34
35 /************************************************************************
36  *              BackupSeek  (KERNEL32.@)
37  */
38 BOOL WINAPI BackupSeek( HANDLE hFile, DWORD dwLowBytesToSeek, DWORD dwHighBytesToSeek,
39                 LPDWORD lpdwLowByteSeeked, LPDWORD lpdwHighByteSeeked,
40                 LPVOID *lpContext )
41 {
42   FIXME("(%04x, %ld, %ld, %p, %p, %p) stub!\n", hFile, dwLowBytesToSeek,
43     dwHighBytesToSeek, lpdwLowByteSeeked, lpdwHighByteSeeked, lpContext);
44
45   SetLastError( ERROR_NOT_SUPPORTED );
46
47   return FALSE;  
48 }  
49
50
51 /************************************************************************
52  *              BackupWrite  (KERNEL32.@)
53  */
54 BOOL WINAPI BackupWrite( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToWrite,
55                 LPDWORD lpNumberOfBytesWritten, BOOL bAbort,
56                 BOOL bProcessSecurity, LPVOID *lpContext )
57 {
58   FIXME("(%04x, %p, %ld, %p, %d, %d, %p) stub!\n", hFile, lpBuffer,
59     nNumberOfBytesToWrite, lpNumberOfBytesWritten, bAbort,
60     bProcessSecurity, lpContext);
61
62   SetLastError( ERROR_NOT_SUPPORTED );
63
64   return FALSE;
65 }
66
67
68 /************************************************************************
69  *              CreateTapePartition  (KERNEL32.@)
70  */
71 DWORD WINAPI CreateTapePartition( HANDLE hDevice, DWORD dwPartitionMethod,
72                         DWORD dwCount, DWORD dwSize )
73 {
74   FIXME("(%04x, %ld, %ld, %ld) stub!\n", hDevice, dwPartitionMethod, dwCount,
75     dwSize);
76
77   SetLastError( ERROR_NOT_SUPPORTED );
78
79   return FALSE;
80 }
81
82
83 /************************************************************************
84  *              EraseTape  (KERNEL32.@)
85  */
86 DWORD WINAPI EraseTape( HANDLE hDevice, DWORD dwEraseType, BOOL bImmediate )
87 {
88   FIXME("(%04x, %ld, %d) stub!\n", hDevice, dwEraseType, bImmediate);
89
90   SetLastError( ERROR_NOT_SUPPORTED );
91
92   return FALSE;
93 }
94
95
96 /************************************************************************
97  *              GetTapeParameters  (KERNEL32.@)
98  */
99 DWORD WINAPI GetTapeParameters( HANDLE hDevice, DWORD dwOperation,
100                         LPDWORD lpdwSize, LPVOID lpTapeInformation )
101 {
102   FIXME("(%04x, %ld, %p, %p) stub!\n", hDevice, dwOperation, lpdwSize,
103     lpTapeInformation);
104
105   SetLastError( ERROR_NOT_SUPPORTED );
106
107   return FALSE;
108 }
109
110
111 /************************************************************************
112  *              GetTapePosition  (KERNEL32.@)
113  */
114 DWORD WINAPI GetTapePosition( HANDLE hDevice, DWORD dwPositionType,
115                         LPDWORD lpdwPartition, LPDWORD lpdwOffsetLow,
116                         LPDWORD lpdwOffsetHigh )
117
118   FIXME("(%04x, %ld, %p, %p, %p) stub!\n", hDevice, dwPositionType,
119     lpdwPartition, lpdwOffsetLow, lpdwOffsetHigh);
120
121   SetLastError( ERROR_NOT_SUPPORTED );
122
123   return FALSE;
124 }
125
126
127 /************************************************************************
128  *              GetTapeStatus  (KERNEL32.@)
129  */
130 DWORD WINAPI GetTapeStatus( HANDLE hDevice )
131 {
132   FIXME("(%04x) stub!\n", hDevice);
133
134   SetLastError( ERROR_NOT_SUPPORTED );
135
136   return FALSE;
137 }
138
139
140 /************************************************************************
141  *              PrepareTape  (KERNEL32.@)
142  */
143 DWORD WINAPI PrepareTape( HANDLE hDevice,  DWORD dwOperation,  BOOL bImmediate )
144
145   FIXME("(%04x, %ld, %d) stub!\n", hDevice, dwOperation, bImmediate);
146
147   SetLastError( ERROR_NOT_SUPPORTED );
148
149   return FALSE;
150 }
151
152
153 /************************************************************************
154  *              SetTapeParameters  (KERNEL32.@)
155  */
156 DWORD WINAPI SetTapeParameters( HANDLE hDevice, DWORD dwOperation,
157                          LPVOID lpTapeInformation )
158 {
159   FIXME("(%04x, %ld, %p) stub!\n", hDevice, dwOperation, lpTapeInformation);
160
161   SetLastError( ERROR_NOT_SUPPORTED );
162
163   return FALSE;
164 }
165
166
167 /************************************************************************
168  *              SetTapePosition  (KERNEL32.@)
169  */
170 DWORD WINAPI SetTapePosition( HANDLE hDevice, DWORD dwPositionMethod, DWORD
171                        dwPartition, DWORD dwOffsetLow, DWORD dwOffsetHigh,
172                        BOOL bImmediate )
173 {
174   FIXME("(%04x, %ld, %ld, %ld, %ld, %d) stub!\n", hDevice, dwPositionMethod,
175     dwPartition, dwOffsetLow, dwOffsetHigh, bImmediate);
176
177   SetLastError( ERROR_NOT_SUPPORTED );
178
179   return FALSE;
180 }
181
182
183 /************************************************************************
184  *              WriteTapemark  (KERNEL32.@)
185  */
186 DWORD WINAPI WriteTapemark( HANDLE hDevice,  DWORD dwTapemarkType, DWORD
187                      dwTapemarkCount, BOOL bImmediate )
188 {
189   FIXME("(%04x, %ld, %ld, %d) stub!\n", hDevice, dwTapemarkType,
190     dwTapemarkCount, bImmediate);
191
192   SetLastError( ERROR_NOT_SUPPORTED );
193
194   return FALSE;
195 }