mirror of
https://github.com/LIV2/lide.device.git
synced 2025-12-06 00:32:45 +00:00
86 lines
3.0 KiB
C
86 lines
3.0 KiB
C
#ifndef DEVICES_NEWSTYLE_H
|
|
#define DEVICES_NEWSTYLE_H
|
|
/*------------------------------------------------------------------------*/
|
|
/*
|
|
* $Id: newstyle.h 1.1 1997/05/15 18:53:15 heinz Exp $
|
|
*
|
|
* Support header for the New Style Device standard
|
|
*
|
|
* (C)1996-1997 by Amiga International, Inc.
|
|
*
|
|
*/
|
|
/*------------------------------------------------------------------------*/
|
|
|
|
/*
|
|
* At the moment there is just a single new style general command:
|
|
*/
|
|
|
|
#define NSCMD_DEVICEQUERY 0x4000
|
|
|
|
struct NSDeviceQueryResult {
|
|
/*
|
|
** Standard information, must be reset for every query
|
|
*/
|
|
ULONG DevQueryFormat; /* this is type 0 */
|
|
ULONG SizeAvailable; /* bytes available */
|
|
|
|
/*
|
|
** Common information (READ ONLY!)
|
|
*/
|
|
UWORD DeviceType; /* what the device does */
|
|
UWORD DeviceSubType; /* depends on the main type */
|
|
UWORD *SupportedCommands; /* 0 terminated list of cmd's */
|
|
|
|
/* May be extended in the future! Check SizeAvailable! */
|
|
};
|
|
|
|
|
|
#define NSDEVTYPE_UNKNOWN 0 /* No suitable category, anything */
|
|
#define NSDEVTYPE_GAMEPORT 1 /* like gameport.device */
|
|
#define NSDEVTYPE_TIMER 2 /* like timer.device */
|
|
#define NSDEVTYPE_KEYBOARD 3 /* like keyboard.device */
|
|
#define NSDEVTYPE_INPUT 4 /* like input.device */
|
|
#define NSDEVTYPE_TRACKDISK 5 /* like trackdisk.device */
|
|
#define NSDEVTYPE_CONSOLE 6 /* like console.device */
|
|
#define NSDEVTYPE_SANA2 7 /* A >=SANA2R2 networking device */
|
|
#define NSDEVTYPE_AUDIO 8 /* like audio.device */
|
|
#define NSDEVTYPE_CLIPBOARD 9 /* like clipboard.device */
|
|
#define NSDEVTYPE_PRINTER 10 /* like printer.device */
|
|
#define NSDEVTYPE_SERIAL 11 /* like serial.device */
|
|
#define NSDEVTYPE_PARALLEL 12 /* like parallel.device */
|
|
|
|
|
|
/*------------------------------------------------------------------------*/
|
|
/* The following defines should really be part of device specific
|
|
* includes. So we protect them from being redefined.
|
|
*/
|
|
#ifndef NSCMD_TD_READ64
|
|
/*
|
|
* An early new style trackdisk like device can also return this
|
|
* new identifier for TD_GETDRIVETYPE. This should no longer
|
|
* be the case though for newly written or updated NSD devices.
|
|
* This identifier is ***OBSOLETE***
|
|
*/
|
|
|
|
#define DRIVE_NEWSTYLE (0x4E535459L) /* 'NSTY' */
|
|
|
|
|
|
/*
|
|
* At the moment, only four new style commands in the device
|
|
* specific range and their ETD counterparts may be implemented.
|
|
*/
|
|
|
|
#define NSCMD_TD_READ64 0xC000
|
|
#define NSCMD_TD_WRITE64 0xC001
|
|
#define NSCMD_TD_SEEK64 0xC002
|
|
#define NSCMD_TD_FORMAT64 0xC003
|
|
|
|
#define NSCMD_ETD_READ64 0xE000
|
|
#define NSCMD_ETD_WRITE64 0xE001
|
|
#define NSCMD_ETD_SEEK64 0xE002
|
|
#define NSCMD_ETD_FORMAT64 0xE003
|
|
#endif /* NSCMD_TD_READ64 */
|
|
|
|
/*------------------------------------------------------------------------*/
|
|
|
|
#endif /* DEVICES_NEWSTYLE_H */ |