/* Automatically generated header! Do not edit! */

#ifndef _PPCINLINE_ISAPNP_H
#define _PPCINLINE_ISAPNP_H

#ifndef __PPCINLINE_MACROS_H
#include <ppcinline/macros.h>
#endif /* !__PPCINLINE_MACROS_H */

#ifndef ISAPNP_BASE_NAME
#define ISAPNP_BASE_NAME ISAPNPBase
#endif /* !ISAPNP_BASE_NAME */

#define ISAC_GetInterruptStatus(interrupt) \
	LP1(0x1e, BOOL, ISAC_GetInterruptStatus, UBYTE, interrupt, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_GetMasterInt() \
	LP0(0xc, BOOL, ISAC_GetMasterInt, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_GetRegByte(reg) \
	LP1(0x24, UBYTE, ISAC_GetRegByte, UWORD, reg, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_GetRegLong(reg) \
	LP1(0x3c, ULONG, ISAC_GetRegLong, UWORD, reg, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_GetRegWord(reg) \
	LP1(0x30, UWORD, ISAC_GetRegWord, UWORD, reg, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_GetWaitState() \
	LP0(0x18, BOOL, ISAC_GetWaitState, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_ReadByte(address) \
	LP1(0x48, UBYTE, ISAC_ReadByte, ULONG, address, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_ReadLong(address) \
	LP1(0x60, ULONG, ISAC_ReadLong, ULONG, address, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_ReadWord(address) \
	LP1(0x54, UWORD, ISAC_ReadWord, ULONG, address, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_SetMasterInt(on) \
	LP1NR(0x6, ISAC_SetMasterInt, BOOL, on, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_SetRegByte(reg, value) \
	LP2NR(0x2a, ISAC_SetRegByte, UWORD, reg, d0, UBYTE, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_SetRegLong(reg, value) \
	LP2NR(0x42, ISAC_SetRegLong, UWORD, reg, d0, ULONG, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_SetRegWord(reg, value) \
	LP2NR(0x36, ISAC_SetRegWord, UWORD, reg, d0, UWORD, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_SetWaitState(on) \
	LP1NR(0x12, ISAC_SetWaitState, BOOL, on, d0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_WriteByte(address, value) \
	LP2NR(0x4e, ISAC_WriteByte, ULONG, address, d0, UBYTE, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_WriteLong(address, value) \
	LP2NR(0x66, ISAC_WriteLong, ULONG, address, d0, ULONG, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAC_WriteWord(address, value) \
	LP2NR(0x5a, ISAC_WriteWord, ULONG, address, d0, UWORD, value, d1, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_FindCard(last_card, manufacturer, product, revision, serial) \
	LP5(0xa8, struct ISAPNP_Card*, ISAPNP_FindCard, struct ISAPNP_Card*, last_card, a0, LONG, manufacturer, d0, WORD, product, d1, BYTE, revision, d2, LONG, serial, d3, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_FindDevice(last_device, manufacturer, product, revision) \
	LP4(0xae, struct ISAPNP_Device*, ISAPNP_FindDevice, struct ISAPNP_Device*, last_device, a0, LONG, manufacturer, d0, WORD, product, d1, BYTE, revision, d2, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_LockCardsA(flags, cards) \
	LP2(0xb4, APTR, ISAPNP_LockCardsA, ULONG, flags, d0, struct ISAPNP_Card**, cards, a0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_LockDevicesA(flags, devices) \
	LP2(0xc0, APTR, ISAPNP_LockDevicesA, ULONG, flags, d0, struct ISAPNP_Device**, devices, a0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_UnlockCards(card_lock_handle) \
	LP1NR(0xba, ISAPNP_UnlockCards, APTR, card_lock_handle, a0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#define ISAPNP_UnlockDevices(device_lock_handle) \
	LP1NR(0xc6, ISAPNP_UnlockDevices, APTR, device_lock_handle, a0, \
	, ISAPNP_BASE_NAME, IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)

#endif /* !_PPCINLINE_ISAPNP_H */
