Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

133 lines
4.3 KiB

/**
Copyright(c) Maynard Electronics, Inc. 1984-89
Name: lwprotos.h
Date Updated: $./FDT$ $./FTM$
Description: Contains the layer wide function prototypes.
$Log: G:/LOGFILES/LWPROTOS.H_V $
*
* Rev 1.16 17 Mar 1993 14:55:52 GREGG
* This is Terri Lynn. Added Gregg's change to switch a tape drive's block mode
* to match the block size of the current tape.
*
* Rev 1.15 09 Mar 1993 18:14:08 GREGG
* Initial changes for new stream and EOM processing.
*
* Rev 1.14 18 Jan 1993 14:09:58 GREGG
* Changes to allow format command passed to driver through TpErase.
*
* Rev 1.13 11 Nov 1992 22:10:02 GREGG
* Changed proto for EraseDrive.
*
* Rev 1.12 22 Sep 1992 09:15:50 GREGG
* Initial changes to handle physical block sizes greater than 1K.
*
* Rev 1.11 17 Aug 1992 09:09:14 GREGG
* Changes to deal with block sizeing scheme.
*
* Rev 1.10 29 Apr 1992 13:11:44 GREGG
* ROLLER BLADES - Added prototype for ReadABuff.
*
* Rev 1.9 25 Mar 1992 18:27:50 GREGG
* ROLLER BLADES - Changed GotoBlock prototype.
*
* Rev 1.8 15 Jan 1992 01:51:50 GREGG
* Added BOOLEAN vcb_only parameter to PositionAtSet.
*
* Rev 1.7 03 Jan 1992 11:23:52 NED
* Added prototype for DumpDebug()
*
* Rev 1.6 10 Dec 1991 16:42:02 GREGG
* SKATEBOARD - New Buf. Mgr. - Initial integration.
*
* Rev 1.5 14 Oct 1991 10:56:36 GREGG
* Changed return type for UpdateDriveStatus.
*
* Rev 1.4 21 Aug 1991 14:45:06 GREGG
* Added prototype for new function 'RewindDriveImmediate'.
*
* Rev 1.3 09 Jul 1991 16:48:28 NED
* Changed prototype for GotoBckUpSet.
*
* Rev 1.2 05 Jun 1991 19:16:08 NED
* added prototype for FormatIndexFromID()
*
* Rev 1.1 10 May 1991 17:10:08 GREGG
* Ned's new stuff.
Rev 1.0 10 May 1991 10:13:06 GREGG
Initial revision.
**/
#ifndef _LW_PROTOPLASM
#define _LW_PROTOPLASM
#include "reqrep.h"
#include "channel.h"
#include "tpos.h"
/* For the device driver */
#include "retbuf.h"
#include "dilhwd.h"
/* $end$ include list */
INT16 PositionAtSet( CHANNEL_PTR channel, TPOS_PTR position, BOOLEAN vcb_only ) ;
INT16 UpdateDriveStatus( DRIVE_PTR drive ) ;
INT16 SetupDriveList( DIL_HWD_PTR cards, INT16 no_cards ) ;
INT16 OpenDrive( DRIVE_PTR, TPOS_PTR ) ;
INT16 CloseDrive( DRIVE_PTR, TPOS_PTR, UINT16, BOOLEAN ) ;
INT16 MountTape( DRIVE_PTR, TPOS_PTR, BOOLEAN_PTR ) ;
INT16 DisMountTape( DRIVE_PTR, TPOS_PTR, BOOLEAN ) ;
INT16 ResetChannelList( CHANNEL_PTR channel, BOOLEAN rew_cur_drv ) ;
INT16 NextDriveInChannel( CHANNEL_PTR channel, BOOLEAN rew_cur_drv ) ;
INT16 PrevDriveInChannel( CHANNEL_PTR channel, BOOLEAN rew_cur_drv ) ;
INT16 RewindDrive( DRIVE_PTR curDRV, TPOS_PTR ui_tpos, BOOLEAN call_ui, BOOLEAN reset_flg, UINT16 mode ) ;
INT16 EraseDrive( CHANNEL_PTR channel, BOOLEAN security, BOOLEAN format ) ;
INT16 RetensionDrive( CHANNEL_PTR ) ;
INT16 WriteEndSet( DRIVE_PTR ) ;
INT16 MapGenErr2UIMesg( INT16 gen_error ) ;
INT16 GotoBckUpSet( CHANNEL_PTR channel, INT16_PTR desired_set_ptr, TPOS_PTR ui_tpos ) ;
VOID ResetDrivePosition( DRIVE_PTR ) ;
INT16 GotoBlock( CHANNEL_PTR, UINT32, TPOS_PTR, UINT16_PTR ) ;
INT16 GetCurrentPosition( DRIVE_PTR ) ;
INT16 MoveFileMarks( CHANNEL_PTR channel, INT16 number, INT16 direction ) ;
VOID RewindDriveImmediate( DRIVE_PTR curDRV ) ;
VOID DumpDebug( INT16 drv_hdl );
/* routines in drives.c */
INT16 ReadABuff( CHANNEL_PTR channel, BOOLEAN try_resize, BOOLEAN_PTR resized_buff ) ;
INT16 SetDrvBlkSize( CHANNEL_PTR channel, BUF_PTR buffer, UINT32 size, BOOLEAN_PTR resized_buff ) ;
INT16 MoveNextSet( CHANNEL_PTR channel, TPOS_PTR ui_tpos ) ;
INT16 ReadThisSet( CHANNEL_PTR channel ) ;
INT16 ReadNewTape( CHANNEL_PTR channel, TPOS_PTR ui_tpos, BOOLEAN read_tape ) ;
/* Buffer Engineering */
INT16 GetDBLKMapStorage( CHANNEL_PTR channel, BUF_PTR buffer ) ;
UINT8_PTR GetDATAStorage( CHANNEL_PTR, UINT16_PTR ) ;
BUF_PTR SnagBuffer( CHANNEL_PTR ) ;
VOID PuntBuffer( CHANNEL_PTR ) ;
UINT16 FormatIndexFromID( UINT16 format_id ) ;
/* IO Functions */
INT16 DoWrite( CHANNEL_PTR, RR_PTR ) ;
INT16 DoRead( CHANNEL_PTR, RR_PTR ) ;
/* This determines if a return value is a TFLE_xxx error code (as opposed
to a TF_xxx message.
*/
#define IsTFLE( x ) ( ((INT16) (x) ) < 0 )
#endif