define __KERNEL_STRICT_NAMES to avoid inclusion of kernel types on systems that carry...
[cake.git] / rom / isapnp / controller.h
blobbf73f0f5b7edcb28c248f7eb664d7573fa9d7430
1 /* $Id: controller.h,v 1.6 2001/05/29 10:53:44 lcs Exp $ */
3 /*
4 ISA-PnP -- A Plug And Play ISA software layer for AmigaOS.
5 Copyright (C) 2001 Martin Blom <martin@blom.org>
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public
9 License as published by the Free Software Foundation; either
10 version 2 of the License, or (at your option) any later version.
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Library General Public License for more details.
17 You should have received a copy of the GNU Library General Public
18 License along with this library; if not, write to the
19 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Cambridge,
20 MA 02139, USA.
23 #ifndef ISA_PNP_controller_h
24 #define ISA_PNP_controller_h
26 #include "CompilerSpecific.h"
28 #include <exec/types.h>
30 struct ISAPNPBase;
32 void ASMCALL
33 ISAC_SetMasterInt( REG( d0, BOOL on ),
34 REG( a6, struct ISAPNPBase* res ) );
36 BOOL ASMCALL
37 ISAC_GetMasterInt( REG( a6, struct ISAPNPBase* res ) );
40 void ASMCALL
41 ISAC_SetWaitState( REG( d0, BOOL on ),
42 REG( a6, struct ISAPNPBase* res ) );
45 BOOL ASMCALL
46 ISAC_GetWaitState( REG( a6, struct ISAPNPBase* res ) );
49 BOOL ASMCALL
50 ISAC_GetInterruptStatus( REG( d0, UBYTE interrupt ),
51 REG( a6, struct ISAPNPBase* res ) );
53 UBYTE ASMCALL
54 ISAC_GetRegByte( REG( d0, UWORD reg ),
55 REG( a6, struct ISAPNPBase* res ) );
58 void ASMCALL
59 ISAC_SetRegByte( REG( d0, UWORD reg ),
60 REG( d1, UBYTE value ),
61 REG( a6, struct ISAPNPBase* res ) );
64 UWORD ASMCALL
65 ISAC_GetRegWord( REG( d0, UWORD reg ),
66 REG( a6, struct ISAPNPBase* res ) );
69 void ASMCALL
70 ISAC_SetRegWord( REG( d0, UWORD reg ),
71 REG( d1, UWORD value ),
72 REG( a6, struct ISAPNPBase* res ) );
74 ULONG ASMCALL
75 ISAC_GetRegLong( REG( d0, UWORD reg ),
76 REG( a6, struct ISAPNPBase* res ) );
79 void ASMCALL
80 ISAC_SetRegLong( REG( d0, UWORD reg ),
81 REG( d1, ULONG value ),
82 REG( a6, struct ISAPNPBase* res ) );
85 UBYTE ASMCALL
86 ISAC_ReadByte( REG( d0, ULONG address ),
87 REG( a6, struct ISAPNPBase* res ) );
90 void ASMCALL
91 ISAC_WriteByte( REG( d0, ULONG address ),
92 REG( d1, UBYTE value ),
93 REG( a6, struct ISAPNPBase* res ) );
96 UWORD ASMCALL
97 ISAC_ReadWord( REG( d0, ULONG address ),
98 REG( a6, struct ISAPNPBase* res ) );
101 void ASMCALL
102 ISAC_WriteWord( REG( d0, ULONG address ),
103 REG( d1, UWORD value ),
104 REG( a6, struct ISAPNPBase* res ) );
107 ULONG ASMCALL
108 ISAC_ReadLong( REG( d0, ULONG address ),
109 REG( a6, struct ISAPNPBase* res ) );
112 void ASMCALL
113 ISAC_WriteLong( REG( d0, ULONG address ),
114 REG( d1, ULONG value ),
115 REG( a6, struct ISAPNPBase* res ) );
118 #endif /* ISA_PNP_controller_h */