-
Notifications
You must be signed in to change notification settings - Fork 4
/
newstyle.h
86 lines (70 loc) · 2.98 KB
/
newstyle.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#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 */