1999-12-10 04:46:20 +01:00
|
|
|
/*
|
|
|
|
* Tape handling functions
|
|
|
|
*
|
|
|
|
* Copyright 1999 Chris Morgan <cmorgan@wpi.edu>
|
|
|
|
* James Abbatiello <abbeyj@wpi.edu>
|
|
|
|
*
|
2002-03-10 00:29:33 +01:00
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
*
|
2002-06-01 01:06:46 +02:00
|
|
|
* TODO:
|
1999-12-10 04:46:20 +01:00
|
|
|
* Everything, all functions are stubs.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "winbase.h"
|
|
|
|
#include "winerror.h"
|
2002-03-10 00:29:33 +01:00
|
|
|
#include "wine/debug.h"
|
1999-12-10 04:46:20 +01:00
|
|
|
|
2002-03-10 00:29:33 +01:00
|
|
|
WINE_DEFAULT_DEBUG_CHANNEL(tape);
|
1999-12-10 04:46:20 +01:00
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* BackupRead (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
BOOL WINAPI BackupRead( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToRead,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPDWORD lpNumberOfBytesRead, BOOL bAbort,
|
|
|
|
BOOL bProcessSecurity, LPVOID *lpContext )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %p, %ld, %p, %d, %d, %p) stub!\n", hFile, lpBuffer,
|
1999-12-10 04:46:20 +01:00
|
|
|
nNumberOfBytesToRead, lpNumberOfBytesRead, bAbort, bProcessSecurity,
|
|
|
|
lpContext);
|
2002-06-01 01:06:46 +02:00
|
|
|
|
1999-12-10 04:46:20 +01:00
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* BackupSeek (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
BOOL WINAPI BackupSeek( HANDLE hFile, DWORD dwLowBytesToSeek, DWORD dwHighBytesToSeek,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPDWORD lpdwLowByteSeeked, LPDWORD lpdwHighByteSeeked,
|
|
|
|
LPVOID *lpContext )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %ld, %p, %p, %p) stub!\n", hFile, dwLowBytesToSeek,
|
1999-12-10 04:46:20 +01:00
|
|
|
dwHighBytesToSeek, lpdwLowByteSeeked, lpdwHighByteSeeked, lpContext);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
2002-06-01 01:06:46 +02:00
|
|
|
return FALSE;
|
|
|
|
}
|
1999-12-10 04:46:20 +01:00
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* BackupWrite (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
BOOL WINAPI BackupWrite( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToWrite,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPDWORD lpNumberOfBytesWritten, BOOL bAbort,
|
|
|
|
BOOL bProcessSecurity, LPVOID *lpContext )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %p, %ld, %p, %d, %d, %p) stub!\n", hFile, lpBuffer,
|
1999-12-10 04:46:20 +01:00
|
|
|
nNumberOfBytesToWrite, lpNumberOfBytesWritten, bAbort,
|
|
|
|
bProcessSecurity, lpContext);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* CreateTapePartition (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI CreateTapePartition( HANDLE hDevice, DWORD dwPartitionMethod,
|
1999-12-10 04:46:20 +01:00
|
|
|
DWORD dwCount, DWORD dwSize )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %ld, %ld) stub!\n", hDevice, dwPartitionMethod, dwCount,
|
1999-12-10 04:46:20 +01:00
|
|
|
dwSize);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* EraseTape (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI EraseTape( HANDLE hDevice, DWORD dwEraseType, BOOL bImmediate )
|
1999-12-10 04:46:20 +01:00
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %d) stub!\n", hDevice, dwEraseType, bImmediate);
|
1999-12-10 04:46:20 +01:00
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* GetTapeParameters (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI GetTapeParameters( HANDLE hDevice, DWORD dwOperation,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPDWORD lpdwSize, LPVOID lpTapeInformation )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %p, %p) stub!\n", hDevice, dwOperation, lpdwSize,
|
1999-12-10 04:46:20 +01:00
|
|
|
lpTapeInformation);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* GetTapePosition (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI GetTapePosition( HANDLE hDevice, DWORD dwPositionType,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPDWORD lpdwPartition, LPDWORD lpdwOffsetLow,
|
|
|
|
LPDWORD lpdwOffsetHigh )
|
2002-06-01 01:06:46 +02:00
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %p, %p, %p) stub!\n", hDevice, dwPositionType,
|
1999-12-10 04:46:20 +01:00
|
|
|
lpdwPartition, lpdwOffsetLow, lpdwOffsetHigh);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* GetTapeStatus (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI GetTapeStatus( HANDLE hDevice )
|
1999-12-10 04:46:20 +01:00
|
|
|
{
|
|
|
|
FIXME("(%04x) stub!\n", hDevice);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* PrepareTape (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI PrepareTape( HANDLE hDevice, DWORD dwOperation, BOOL bImmediate )
|
2002-06-01 01:06:46 +02:00
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %d) stub!\n", hDevice, dwOperation, bImmediate);
|
1999-12-10 04:46:20 +01:00
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* SetTapeParameters (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI SetTapeParameters( HANDLE hDevice, DWORD dwOperation,
|
1999-12-10 04:46:20 +01:00
|
|
|
LPVOID lpTapeInformation )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %p) stub!\n", hDevice, dwOperation, lpTapeInformation);
|
1999-12-10 04:46:20 +01:00
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* SetTapePosition (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI SetTapePosition( HANDLE hDevice, DWORD dwPositionMethod, DWORD
|
1999-12-10 04:46:20 +01:00
|
|
|
dwPartition, DWORD dwOffsetLow, DWORD dwOffsetHigh,
|
|
|
|
BOOL bImmediate )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %ld, %ld, %ld, %d) stub!\n", hDevice, dwPositionMethod,
|
1999-12-10 04:46:20 +01:00
|
|
|
dwPartition, dwOffsetLow, dwOffsetHigh, bImmediate);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/************************************************************************
|
2001-06-13 22:13:18 +02:00
|
|
|
* WriteTapemark (KERNEL32.@)
|
1999-12-10 04:46:20 +01:00
|
|
|
*/
|
1999-12-12 00:04:05 +01:00
|
|
|
DWORD WINAPI WriteTapemark( HANDLE hDevice, DWORD dwTapemarkType, DWORD
|
1999-12-10 04:46:20 +01:00
|
|
|
dwTapemarkCount, BOOL bImmediate )
|
|
|
|
{
|
1999-12-12 20:40:01 +01:00
|
|
|
FIXME("(%04x, %ld, %ld, %d) stub!\n", hDevice, dwTapemarkType,
|
1999-12-10 04:46:20 +01:00
|
|
|
dwTapemarkCount, bImmediate);
|
|
|
|
|
|
|
|
SetLastError( ERROR_NOT_SUPPORTED );
|
|
|
|
|
|
|
|
return FALSE;
|
1999-12-12 20:40:01 +01:00
|
|
|
}
|