/*
 FR family I/O register declaration file V60L04
 ALL RIGHTS RESERVED, COPYRIGHT (C) FUJITSU LIMITED 1998
 LICENSED MATERIAL - PROGRAM PROPERTY OF FUJITSU LIMITED
*/

#include "_frdef.h"


/*********************/
/* structure of PDR0 */
/*********************/
__UNION io_pdr0 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	P07 , 1)
		__UCHARBIT(	P06 , 1)
		__UCHARBIT(	P05 , 1)
		__UCHARBIT(	P04 , 1)
		__UCHARBIT(	P03 , 1)
		__UCHARBIT(	P02 , 1)
		__UCHARBIT(	P01 , 1)
		__UCHARBIT(	P00 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR1 */
/*********************/
__UNION io_pdr1 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	P17 , 1)
		__UCHARBIT(	P16 , 1)
		__UCHARBIT(	P15 , 1)
		__UCHARBIT(	P14 , 1)
		__UCHARBIT(	P13 , 1)
		__UCHARBIT(	P12 , 1)
		__UCHARBIT(	P11 , 1)
		__UCHARBIT(	P10 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR2 */
/*********************/
__UNION io_pdr2 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    2)
		__UCHARBIT(	P25 , 1)
		__UCHARBIT(	P24 , 1)
		__UCHARBIT(	P23 , 1)
		__UCHARBIT(	P22 , 1)
		__UCHARBIT(	P21 , 1)
		__UCHARBIT(	P20 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR3 */
/*********************/
__UNION io_pdr3 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	P36 , 1)
		__UCHARBIT(	P35 , 1)
		__UCHARBIT(	P34 , 1)
		__UCHARBIT(	P33 , 1)
		__UCHARBIT(	P32 , 1)
		__UCHARBIT(	P31 , 1)
		__UCHARBIT(	P30 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR4 */
/*********************/
__UNION io_pdr4 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	P47 , 1)
		__UCHARBIT(	P46 , 1)
		__UCHARBIT(	P45 , 1)
		__UCHARBIT(	P44 , 1)
		__UCHARBIT(	P43 , 1)
		__UCHARBIT(	P42 , 1)
		__UCHARBIT(	P41 , 1)
		__UCHARBIT(	P40 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR5 */
/*********************/
__UNION io_pdr5 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	P57 , 1)
		__UCHARBIT(	P56 , 1)
		__UCHARBIT(	P55 , 1)
		__UCHARBIT(	P54 , 1)
		__UCHARBIT(	P53 , 1)
		__UCHARBIT(	P52 , 1)
		__UCHARBIT(	P51 , 1)
		__UCHARBIT(	P50 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR6 */
/*********************/
__UNION io_pdr6 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    2)
		__UCHARBIT(	P65 , 1)
		__UCHARBIT(	P64 , 1)
		__UCHARBIT(	P63 , 1)
		__UCHARBIT(	P62 , 1)
		__UCHARBIT(	P61 , 1)
		__UCHARBIT(	P60 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PDR7 */
/*********************/
__UNION io_pdr7 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    3)
		__UCHARBIT(	P74 , 1)
		__UCHARBIT(	P73 , 1)
		__UCHARBIT(	P72 , 1)
		__UCHARBIT(	P71 , 1)
		__UCHARBIT(	P70 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ADCT */
/*********************/
__UNION io_adct __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   6)
		__USHORTBIT(	TRG , 1)
		__USHORTBIT(	STR , 1)
		__USHORTBIT(	ASS , 4)
		__USHORTBIT(	BUSY, 1)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	INT , 1)
		__USHORTBIT(	INTE, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of EIRR */
/*********************/
__UNION io_eirr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	ER7 , 1)
		__UCHARBIT(	ER6 , 1)
		__UCHARBIT(	ER5 , 1)
		__UCHARBIT(	ER4 , 1)
		__UCHARBIT(	ER3 , 1)
		__UCHARBIT(	ER2 , 1)
		__UCHARBIT(	ER1 , 1)
		__UCHARBIT(	ER0 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ENIR */
/*********************/
__UNION io_enir __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	EN7 , 1)
		__UCHARBIT(	EN6 , 1)
		__UCHARBIT(	EN5 , 1)
		__UCHARBIT(	EN4 , 1)
		__UCHARBIT(	EN3 , 1)
		__UCHARBIT(	EN2 , 1)
		__UCHARBIT(	EN1 , 1)
		__UCHARBIT(	EN0 , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ELVR */
/*********************/
__UNION io_elvr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	LBLA7, 2)
		__USHORTBIT(	LBLA6, 2)
		__USHORTBIT(	LBLA5, 2)
		__USHORTBIT(	LBLA4, 2)
		__USHORTBIT(	LBLA3, 2)
		__USHORTBIT(	LBLA2, 2)
		__USHORTBIT(	LBLA1, 2)
		__USHORTBIT(	LBLA0, 2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of DICR */
/*********************/
__UNION io_dicr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    7)
		__UCHARBIT(	DLYI, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of HRCL */
/*********************/
__UNION io_hrcl __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	MHALTI, 1)
		__UCHARBIT_NONAME(      2)
		__UCHARBIT(	LVL   , 5)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* struture of TMCSR */
/*********************/
__UNION io_tmcsr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   4)
		__USHORTBIT(	CSL , 2)
		__USHORTBIT(	MOD , 3)
		__USHORTBIT_NONAME(   2)
		__USHORTBIT(	RELD, 1)
		__USHORTBIT(	INTE, 1)
		__USHORTBIT(	UF  , 1)
		__USHORTBIT(	CNTE, 1)
		__USHORTBIT(	TRG , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/********************/
/* structure of SSR */
/********************/
__UNION io_ssr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	PE  , 1)
		__UCHARBIT(	ORE , 1)
		__UCHARBIT(	FRE , 1)
		__UCHARBIT(	RDRF, 1)
		__UCHARBIT(	TDRE, 1)
		__UCHARBIT(	BDS , 1)
		__UCHARBIT(	RIE , 1)
		__UCHARBIT(	TIE , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/********************/
/* structure of SCR */
/********************/
__UNION io_scr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	PEN , 1)
		__UCHARBIT(	P   , 1)
		__UCHARBIT(	SBL , 1)
		__UCHARBIT(	CL  , 1)
		__UCHARBIT(	AD  , 1)
		__UCHARBIT(	REC , 1)
		__UCHARBIT(	RXE , 1)
		__UCHARBIT(	TXE , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/********************/
/* structure of SMR */
/********************/
__UNION io_smr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	MD  , 2)
		__UCHARBIT_NONAME(    6)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of UTIMC */
/**********************/
__UNION io_utimc __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	UCC1, 1)
		__UCHARBIT_NONAME(    2)
		__UCHARBIT(	UTIE, 1)
		__UCHARBIT(	UNDR, 1)
		__UCHARBIT(	CLKS, 1)
		__UCHARBIT(	UTST, 1)
		__UCHARBIT(	UTCR, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PWCC */
/*********************/
__UNION io_pwcc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	INT  , 1)
		__USHORTBIT(	INTE , 1)
		__USHORTBIT(	OVFL , 1)
		__USHORTBIT(	OVFLE, 1)
		__USHORTBIT_NONAME(    2)
		__USHORTBIT(	MSKE , 1)
		__USHORTBIT(	ST   , 1)
		__USHORTBIT(	TEST1, 1)
		__USHORTBIT(	TEST0, 1)
		__USHORTBIT_NONAME(    1)
		__USHORTBIT(	CSLF , 2)
		__USHORTBIT(	CSK  , 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of IBCR */
/*********************/
__UNION io_ibcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	BER , 1)
		__UCHARBIT(	BEIE, 1)
		__UCHARBIT(	SCC , 1)
		__UCHARBIT(	MSS , 1)
		__UCHARBIT(	ACK , 1)
		__UCHARBIT(	GCAA, 1)
		__UCHARBIT(	INTE, 1)
		__UCHARBIT(	INT , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of IBSR */
/*********************/
__UNION io_ibsr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	BB  , 1)
		__UCHARBIT(	RSC , 1)
		__UCHARBIT(	AL  , 1)
		__UCHARBIT(	LRB , 1)
		__UCHARBIT(	TRX , 1)
		__UCHARBIT(	AAS , 1)
		__UCHARBIT(	GCA , 1)
		__UCHARBIT(	ADT , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ITBA */
/*********************/
__UNION io_itba __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   6)
		__USHORTBIT(	TA  ,10)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ITMK */
/*********************/
__UNION io_itmk __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	ENTB, 1)
		__USHORTBIT(	RAL , 1)
		__USHORTBIT_NONAME(   4)
		__USHORTBIT(	TM  ,10)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ISMK */
/*********************/
__UNION io_ismk __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	ENSB, 1)
		__UCHARBIT(	SM  , 7)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ISBA */
/*********************/
__UNION io_isba __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	SA  , 7)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of ICCR */
/*********************/
__UNION io_iccr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	TEST, 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	EN  , 1)
		__UCHARBIT(	CS  , 5)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of IDBL */
/*********************/
__UNION io_idbl __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    7)
		__UCHARBIT(	DBL , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***********************/
/* structure of T0LPCR */
/***********************/
__UNION io_t0lpcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    5)
		__UCHARBIT(	FC0 , 2)
		__UCHARBIT(	F0EN, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***********************/
/* structure of T1LPCR */
/***********************/
__UNION io_t1lpcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    5)
		__UCHARBIT(	FC1 , 2)
		__UCHARBIT(	F1EN, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***********************/
/* structure of T2LPCR */
/***********************/
__UNION io_t2lpcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    5)
		__UCHARBIT(	FC2 , 2)
		__UCHARBIT(	F2EN, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***********************/
/* structure of T3LPCR */
/***********************/
__UNION io_t3lpcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    5)
		__UCHARBIT(	FC3 , 2)
		__UCHARBIT(	F3EN, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of TnCCR */
/**********************/
__UNION io_tnccr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	CPF , 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	CPST, 1)
		__UCHARBIT(	CPED, 1)
		__UCHARBIT(	CPIE, 1)
		__UCHARBIT(	CPOV, 1)
		__UCHARBIT(	CPMD, 1)
		__UCHARBIT(	CPIS, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of TnTCR */
/**********************/
__UNION io_tntcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	TCF , 1)
		__UCHARBIT(	TSES, 1)
		__UCHARBIT(	TCC , 1)
		__UCHARBIT(	TIE , 1)
		__UCHARBIT(	CINV, 1)
		__UCHARBIT(	TCS , 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/********************/
/* structure of TnR */
/********************/
__UNION io_tnr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    3)
		__UCHARBIT(	TST2, 1)
		__UCHARBIT(	TST1, 1)
		__UCHARBIT(	MD  , 2)
		__UCHARBIT(	ST  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*******************/
/* struture of PCN */
/*******************/
__UNION io_pcn __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	CNTE, 1)
		__USHORTBIT(	STGR, 1)
		__USHORTBIT(	MDSE, 1)
		__USHORTBIT(	RTRG, 1)
		__USHORTBIT(	CKS , 2)
		__USHORTBIT(	PGMS, 1)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	EGS , 2)
		__USHORTBIT(	IREN, 1)
		__USHORTBIT(	IRQF, 1)
		__USHORTBIT(	IRS , 2)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	OSEL, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of DMACA */
/**********************/
__UNION io_dmaca __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	DENB, 1)
		__ULONGBIT(	PAUS, 1)
		__ULONGBIT(	STRG, 1)
		__ULONGBIT(	IS  , 5)
		__ULONGBIT(	DDNO, 4)
		__ULONGBIT(	BLK , 4)
		__ULONGBIT_NONAME(   16)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of DMACB */
/**********************/
__UNION io_dmacb __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	TYPE, 2)
		__ULONGBIT(	MOD , 2)
		__ULONGBIT(	WS  , 2)
		__ULONGBIT(	SADM, 1)
		__ULONGBIT(	DADM, 1)
		__ULONGBIT(	DTCR, 1)
		__ULONGBIT(	SADR, 1)
		__ULONGBIT(	DADR, 1)
		__ULONGBIT(	ERIE, 1)
		__ULONGBIT(	EDIE, 1)
		__ULONGBIT(	DSS , 3)
		__ULONGBIT_NONAME(   16)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/**********************/
/* structure of DMACR */
/**********************/
__UNION io_dmacr __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	DMAE, 1)
		__ULONGBIT_NONAME(    2)
		__ULONGBIT(	PM01, 1)
		__ULONGBIT(	DMAH, 4)
		__ULONGBIT_NONAME(   24)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of PORT */
/*********************/
__UNION io_pfr0 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	I2CTST, 1)
		__UCHARBIT_NONAME(      2)
		__UCHARBIT(	I2CE4,  1)
		__UCHARBIT(	I2CE3,  1)
		__UCHARBIT(	I2CE2,  1)
		__UCHARBIT(	I2CE1,  1)
		__UCHARBIT(	I2CE0,  1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_pfr1 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	UART3, 1)
		__UCHARBIT(	SCKE3, 1)
		__UCHARBIT(	UART2, 1)
		__UCHARBIT(	SCKE2, 1)
		__UCHARBIT(	UART1, 1)
		__UCHARBIT(	SCKE1, 1)
		__UCHARBIT(	UART0, 1)
		__UCHARBIT(	SCKE0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_pfr2 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	TOE2,  1)
		__UCHARBIT(	TOE1,  1)
		__UCHARBIT(	TOE0,  1)
		__UCHARBIT_NONAME(     3)
		__UCHARBIT(	UART4, 1)
		__UCHARBIT(	SCKE4, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_pfr3 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	TME3,  1)
		__UCHARBIT(	TME2,  1)
		__UCHARBIT(	TME1,  1)
		__UCHARBIT(	TME0,  1)
		__UCHARBIT(	PPGE3, 1)
		__UCHARBIT(	PPGE2, 1)
		__UCHARBIT(	PPGE1, 1)
		__UCHARBIT(	PPGE0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_pfr4 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	MSE,  1)
		__UCHARBIT_NONAME(    7)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_port __STRUCT_B
	__UNION_MEM(io_pdr0, IO_DDR0)
	__UNION_MEM(io_pdr1, IO_DDR1)
	__UNION_MEM(io_pdr2, IO_DDR2)
	__UNION_MEM(io_pdr3, IO_DDR3)
	__UNION_MEM(io_pdr4, IO_DDR4)
	__UNION_MEM(io_pdr5, IO_DDR5)
	__UNION_MEM(io_pdr6, IO_DDR6)
	__UNION_MEM(io_pdr7, IO_DDR7)
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UNION_MEM(io_pfr0, IO_PFR0)
	__UNION_MEM(io_pfr1, IO_PFR1)
	__UNION_MEM(io_pfr2, IO_PFR2)
	__UNION_MEM(io_pfr3, IO_PFR3)
	__UNION_MEM(io_pfr4, IO_PFR4)
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
	__UCHAR_NONAME(		    )
__STRUCT_E

/********************/
/* structure of ICR */
/********************/
__UNION io_icr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(    3)
		__UCHARBIT(	ICR , 5)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***********************************/
/* structure of Clock Control unit */
/***********************************/
__UNION io_rsrr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	INIT, 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	WDOG, 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	SRST, 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	WT  , 2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_stcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	STOP , 1)
		__UCHARBIT(	SLEEP, 1)
		__UCHARBIT(	HIZ  , 1)
		__UCHARBIT(	SRST , 1)
		__UCHARBIT(	OS   , 2)
		__UCHARBIT(	OSCD2, 1)
		__UCHARBIT(	OSCD1, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_tbcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	TBIF , 1)
		__UCHARBIT(	TBIE , 1)
		__UCHARBIT(	TBC  , 3)
		__UCHARBIT_NONAME(     1)
		__UCHARBIT(	SYNCR, 1)
		__UCHARBIT(	SYNCS, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_clkr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	PLL2S0, 1)
		__UCHARBIT(	PLL1S , 3)
		__UCHARBIT(	PLL2EN, 1)
		__UCHARBIT(	PLL1EN, 1)
		__UCHARBIT(	CLKS  , 2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_divr0 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	B , 4)
		__UCHARBIT(	P , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_divr1 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	T ,    4)
		__UCHARBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osccr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(      7)
		__UCHARBIT(	OSCDS1, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_clk __STRUCT_B
	__UNION_MEM(io_rsrr,	IO_RSRR)
	__UNION_MEM(io_stcr,	IO_STCR)
	__UNION_MEM(io_tbcr,	IO_TBCR)
	__UCHAR(		IO_CTBR)
	__UNION_MEM(io_clkr,	IO_CLKR)
	__UCHAR(		IO_WPR)
	__UNION_MEM(io_divr0,	IO_DIVR0)
	__UNION_MEM(io_divr1,	IO_DIVR1)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UNION_MEM(io_osccr,	IO_OSCCR)
	__UCHAR_NONAME(		)
__STRUCT_E

/*********************/
/* structure of WPCR */
/*********************/
__UNION io_wpcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	WIF , 1)
		__UCHARBIT(	WIE , 1)
		__UCHARBIT_NONAME(    3)
		__UCHARBIT(	WS ,  2)
		__UCHARBIT(	WCL , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of OSCR */
/*********************/
__UNION io_oscr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	WIF , 1)
		__UCHARBIT(	WIE , 1)
		__UCHARBIT_NONAME(    3)
		__UCHARBIT(	WS ,  2)
		__UCHARBIT(	WCL , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/***************************************/
/* structure of external bus interface */
/***************************************/
__UNION io_acr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	ASZ , 4)
		__USHORTBIT(	DBW , 2)
		__USHORTBIT(	BST , 2)
		__USHORTBIT(	SREN, 1)
		__USHORTBIT(	PFEN, 1)
		__USHORTBIT(	WREN, 1)
		__USHORTBIT(	LEND, 1)
		__USHORTBIT(	TYP , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_iowr0 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	RYE0, 1)
		__UCHARBIT(	HLD0, 1)
		__UCHARBIT(	WR0 , 2)
		__UCHARBIT(	IW0 , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_iowr1 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	RYE1, 1)
		__UCHARBIT(	HLD1, 1)
		__UCHARBIT(	WR1 , 2)
		__UCHARBIT(	IW1 , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_iowr2 __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	RYE2, 1)
		__UCHARBIT(	HLD2, 1)
		__UCHARBIT(	WR2 , 2)
		__UCHARBIT(	IW2 , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cser __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	CSE7, 1)
		__UCHARBIT(	CSE6, 1)
		__UCHARBIT(	CSE5, 1)
		__UCHARBIT(	CSE4, 1)
		__UCHARBIT(	CSE3, 1)
		__UCHARBIT(	CSE2, 1)
		__UCHARBIT(	CSE1, 1)
		__UCHARBIT(	CSE0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cher __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	CHE7, 1)
		__UCHARBIT(	CHE6, 1)
		__UCHARBIT(	CHE5, 1)
		__UCHARBIT(	CHE4, 1)
		__UCHARBIT(	CHE3, 1)
		__UCHARBIT(	CHE2, 1)
		__UCHARBIT(	CHE1, 1)
		__UCHARBIT(	CHE0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_tcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	BREN, 1)
		__UCHARBIT(	PSUS, 1)
		__UCHARBIT(	PCLR, 1)
		__UCHARBIT_NONAME(    1)
		__UCHARBIT(	OHT,  2)
		__UCHARBIT(	RDW,  2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_ebus __STRUCT_B
	__USHORT(		IO_ASR0)
	__UNION_MEM(io_acr,	IO_ACR0)
	__USHORT(		IO_ASR1)
	__UNION_MEM(io_acr,	IO_ACR1)
	__USHORT(		IO_ASR2)
	__UNION_MEM(io_acr,	IO_ACR2)
	__USHORT(		IO_ASR3)
	__UNION_MEM(io_acr,	IO_ACR3)
	__USHORT(		IO_ASR4)
	__UNION_MEM(io_acr,	IO_ACR4)
	__USHORT(		IO_ASR5)
	__UNION_MEM(io_acr,	IO_ACR5)
	__USHORT(		IO_ASR6)
	__UNION_MEM(io_acr,	IO_ACR6)
	__USHORT(		IO_ASR7)
	__UNION_MEM(io_acr,	IO_ACR7)
	__USHORT(		IO_AWR0)
	__USHORT(		IO_AWR1)
	__USHORT(		IO_AWR2)
	__USHORT(		IO_AWR3)
	__USHORT(		IO_AWR4)
	__USHORT(		IO_AWR5)
	__USHORT(		IO_AWR6)
	__USHORT(		IO_AWR7)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UNION_MEM(io_iowr0,	IO_IOWR0)
	__UNION_MEM(io_iowr1,	IO_IOWR1)
	__UNION_MEM(io_iowr2,	IO_IOWR2)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UCHAR_NONAME(		)
	__UNION_MEM(io_cser,	IO_CSER)
	__UNION_MEM(io_cher,	IO_CHER)
	__UCHAR_NONAME(		)
	__UNION_MEM(io_tcr,	IO_TCR)
__STRUCT_E

/*********************/
/* structure of DMAD */
/*********************/
struct io_dmad __STRUCT_B
	__ULONG(	IO_DMASA0)
	__ULONG(	IO_DMADA0)
	__ULONG(	IO_DMASA1)
	__ULONG(	IO_DMADA1)
	__ULONG(	IO_DMASA2)
	__ULONG(	IO_DMADA2)
	__ULONG(	IO_DMASA3)
	__ULONG(	IO_DMADA3)
	__ULONG(	IO_DMASA4)
	__ULONG(	IO_DMADA4)
__STRUCT_E

/*********************/
/* structure of FLCR */
/*********************/
__UNION io_flcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(     4)
		__UCHARBIT(	RDY  , 1)
		__UCHARBIT_NONAME(     1)
		__UCHARBIT(	WE   , 1)
		__UCHARBIT_NONAME(     1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*********************/
/* structure of FLWC */
/*********************/
__UNION io_flwc __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT_NONAME(      2)
		__UCHARBIT(	FAC   , 2)
		__UCHARBIT_NONAME(      1)
		__UCHARBIT(	WTC   , 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

/*************************/
/* structure of USB Host */
/*************************/
__UNION io_hr __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(   24)
		__ULONGBIT(	REV,  8)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hc __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(   21)
		__ULONGBIT(	RWE , 1)
		__ULONGBIT(	RWC , 1)
		__ULONGBIT(	IR  , 1)
		__ULONGBIT(	HCFS, 2)
		__ULONGBIT(	BLE , 1)
		__ULONGBIT(	CLE , 1)
		__ULONGBIT(	IE,   1)
		__ULONGBIT(	PLE,  1)
		__ULONGBIT(	CBSR, 2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hcs __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(  14)
		__ULONGBIT(	SOC, 2)
		__ULONGBIT_NONAME(  12)
		__ULONGBIT(	OCR, 1)
		__ULONGBIT(	BLF, 1)
		__ULONGBIT(	CLF, 1)
		__ULONGBIT(	HCR, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_his __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(    1)
		__ULONGBIT(	OC  , 1)
		__ULONGBIT_NONAME(   23)
		__ULONGBIT(	RHSC, 1)
		__ULONGBIT(	FNO , 1)
		__ULONGBIT(	UE  , 1)
		__ULONGBIT(	RD  , 1)
		__ULONGBIT(	SF  , 1)
		__ULONGBIT(	WDH , 1)
		__ULONGBIT(	SO  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hie __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	MIE , 1)
		__ULONGBIT(	OC  , 1)
		__ULONGBIT_NONAME(   23)
		__ULONGBIT(	RHSC, 1)
		__ULONGBIT(	FNO , 1)
		__ULONGBIT(	UE  , 1)
		__ULONGBIT(	RD  , 1)
		__ULONGBIT(	SF  , 1)
		__ULONGBIT(	WDH , 1)
		__ULONGBIT(	SO  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hid __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	ME  , 1)
		__ULONGBIT(	OC  , 1)
		__ULONGBIT_NONAME(   23)
		__ULONGBIT(	RHSC, 1)
		__ULONGBIT(	FNO , 1)
		__ULONGBIT(	UE  , 1)
		__ULONGBIT(	RD  , 1)
		__ULONGBIT(	SF  , 1)
		__ULONGBIT(	WDH , 1)
		__ULONGBIT(	SO  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hhcca __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	HCCA, 24)
		__ULONGBIT_NONAME(     8)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hpced __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	PCED, 28)
		__ULONGBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hched __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	CHED, 28)
		__ULONGBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hcced __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	CCED, 28)
		__ULONGBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hbhed __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	BHED, 28)
		__ULONGBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hbced __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	BCED, 28)
		__ULONGBIT_NONAME(     4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hdh __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	DH, 28)
		__ULONGBIT_NONAME(   4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hfi __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	FIT  ,  1)
		__ULONGBIT(	FSMPS, 15)
		__ULONGBIT_NONAME(      2)
		__ULONGBIT(	FI   , 14)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hfr __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	FRT  ,  1)
		__ULONGBIT_NONAME(     17)
		__ULONGBIT(	FR   , 14)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hfn __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(  16)
		__ULONGBIT(	FN, 16)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hps __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(  18)
		__ULONGBIT(	PS, 14)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hlst __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(   20)
		__ULONGBIT(	LST, 12)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hrda __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	POTPGT, 8)
		__ULONGBIT_NONAME(     11)
		__ULONGBIT(	NOCP  , 1)
		__ULONGBIT(	OCPM  , 1)
		__ULONGBIT(	DT    , 1)
		__ULONGBIT(	NPS   , 1)
		__ULONGBIT(	PSM   , 1)
		__ULONGBIT(	NDP   , 8)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hrdb __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	PPCM, 16)
		__ULONGBIT(	DR  , 16)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hrs __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT(	CRWE, 1)
		__ULONGBIT_NONAME(   13)
		__ULONGBIT(	OCIC, 1)
		__ULONGBIT(	LPSC, 1)
		__ULONGBIT(	DRWE, 1)
		__ULONGBIT_NONAME(   13)
		__ULONGBIT(	OCI , 1)
		__ULONGBIT(	LPS , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_hrps __STRUCT_B
	__WORD_MEM
	__STRUCT_TYPE_B
		__ULONGBIT_NONAME(   11)
		__ULONGBIT(	PRSC, 1)
		__ULONGBIT(	OCIC, 1)
		__ULONGBIT(	PSSC, 1)
		__ULONGBIT(	PESC, 1)
		__ULONGBIT(	CSC , 1)
		__ULONGBIT_NONAME(    6)
		__ULONGBIT(	LSDA, 1)
		__ULONGBIT(	PPS , 1)
		__ULONGBIT_NONAME(    3)
		__ULONGBIT(	PRS , 1)
		__ULONGBIT(	POCI, 1)
		__ULONGBIT(	PSS , 1)
		__ULONGBIT(	PES , 1)
		__ULONGBIT(	CCS , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_usbh __STRUCT_B
	__UNION_MEM(io_hr,	IO_HR)
	__UNION_MEM(io_hc,	IO_HC)
	__UNION_MEM(io_hcs,	IO_HCS)
	__UNION_MEM(io_his,	IO_HIS)
	__UNION_MEM(io_hie,	IO_HIE)
	__UNION_MEM(io_hid,	IO_HID)
	__UNION_MEM(io_hhcca,	IO_HHCCA)
	__UNION_MEM(io_hpced,	IO_HPCED)
	__UNION_MEM(io_hched,	IO_HCHED)
	__UNION_MEM(io_hcced,	IO_HCCED)
	__UNION_MEM(io_hbhed,	IO_HBHED)
	__UNION_MEM(io_hbced,	IO_HBCED)
	__UNION_MEM(io_hdh,	IO_HDH)
	__UNION_MEM(io_hfi,	IO_HFI)
	__UNION_MEM(io_hfr,	IO_HFR)
	__UNION_MEM(io_hfn,	IO_HFN)
	__UNION_MEM(io_hps,	IO_HPS)
	__UNION_MEM(io_hlst,	IO_HLST)
	__UNION_MEM(io_hrda,	IO_HRDA)
	__UNION_MEM(io_hrdb,	IO_HRDB)
	__UNION_MEM(io_hrs,	IO_HRS)
	__UNION_MEM(io_hrps,	IO_HRPS1)
	__UNION_MEM(io_hrps,	IO_HRPS2)
__STRUCT_E

/*****************************/
/* structure of USB Function */
/*****************************/
__UNION io_cont1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(     5)
		__USHORTBIT(	RESUM , 1)
		__USHORTBIT_NONAME(     5)
		__USHORTBIT(	STALL3, 1)
		__USHORTBIT(	STALL2, 1)
		__USHORTBIT(	STALL1, 1)
		__USHORTBIT(	STALL0, 1)
		__USHORTBIT(	CFGEN , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   11)
		__USHORTBIT(	INI3 , 1)
		__USHORTBIT(	INI2 , 1)
		__USHORTBIT(	INI1 , 1)
		__USHORTBIT(	INI0i, 1)
		__USHORTBIT(	INI0o, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont3 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    11)
		__USHORTBIT(	BFOK3 , 1)
		__USHORTBIT(	BFOK2 , 1)
		__USHORTBIT(	BFOK1 , 1)
		__USHORTBIT(	BFOK0i, 1)
		__USHORTBIT(	BFOK0o, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont4 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(        11)
		__USHORTBIT(	FIFOBUSY3 , 1)
		__USHORTBIT(	FIFOBUSY2 , 1)
		__USHORTBIT(	FIFOBUSY1 , 1)
		__USHORTBIT(	FIFOBUSY0i, 1)
		__USHORTBIT(	FIFOBUSY0o, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont5 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(        12)
		__USHORTBIT(	DFIFOBUSY2, 1)
		__USHORTBIT(	DFIFOBUSY1, 1)
		__USHORTBIT_NONAME(         2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont6 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    12)
		__USHORTBIT(	MDREQ2, 1)
		__USHORTBIT(	MDREQ1, 1)
		__USHORTBIT_NONAME(     2)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont7 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    11)
		__USHORTBIT(	MACK3 , 1)
		__USHORTBIT(	MACK2 , 1)
		__USHORTBIT(	MACK1 , 1)
		__USHORTBIT(	MACK0i, 1)
		__USHORTBIT(	MACK0o, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont8 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(     11)
		__USHORTBIT(	MNACK3 , 1)
		__USHORTBIT(	MNACK2 , 1)
		__USHORTBIT(	MNACK1 , 1)
		__USHORTBIT(	MNACK0i, 1)
		__USHORTBIT(	MNACK0o, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont9 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(        8)
		__USHORTBIT(	MUSBRESET, 1)
		__USHORTBIT_NONAME(        3)
		__USHORTBIT(	MSTALL3  , 1)
		__USHORTBIT(	MSTALL2  , 1)
		__USHORTBIT(	MSTALL1  , 1)
		__USHORTBIT(	MSTALL0  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_cont10 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(       4)
		__USHORTBIT(	MULLSET3, 1)
		__USHORTBIT(	MULLSET2, 1)
		__USHORTBIT(	MULLSET0, 1)
		__USHORTBIT(	DMAMODE , 1)
		__USHORTBIT_NONAME(       1)
		__USHORTBIT(	LSTD3   , 1)
		__USHORTBIT(	LSTD2   , 1)
		__USHORTBIT(	LSTD0   , 1)
		__USHORTBIT(	TRCNTEN , 1)
		__USHORTBIT(	TTCNTEN , 1)
		__USHORTBIT(	ODD     , 1)
		__USHORTBIT_NONAME(       1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_rsize0 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    12)
		__USHORTBIT(	RSIZE0, 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_rsize1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(     9)
		__USHORTBIT(	RSIZE1, 7)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_st1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(     6)
		__USHORTBIT(	NACK3 , 1)
		__USHORTBIT(	ACK3  , 1)
		__USHORTBIT(	NACK2 , 1)
		__USHORTBIT(	ACK2  , 1)
		__USHORTBIT(	NACK1 , 1)
		__USHORTBIT(	ACK1  , 1)
		__USHORTBIT(	NACK0i, 1)
		__USHORTBIT(	ACK0i , 1)
		__USHORTBIT(	NACK0o, 1)
		__USHORTBIT(	ACK0o , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_st2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  9)
		__USHORTBIT(	DCT, 7)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_st3 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    11)
		__USHORTBIT(	SETUP , 1)
		__USHORTBIT(	CFEND , 1)
		__USHORTBIT(	SOF   , 1)
		__USHORTBIT(	SUSP  , 1)
		__USHORTBIT(	NACKOS, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_st4 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   5)
		__USHORTBIT(	FMR, 11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_st5 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(       4)
		__USHORTBIT(	USBRESET, 1)
		__USHORTBIT_NONAME(       5)
		__USHORTBIT(	STSTALL3, 1)
		__USHORTBIT(	STSTALL2, 1)
		__USHORTBIT(	STSTALL1, 1)
		__USHORTBIT(	STSTALL0, 1)
		__USHORTBIT(	TRCVEND , 1)
		__USHORTBIT(	TTRSEND , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_reset __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    14)
		__USHORTBIT(	SUSPEN, 1)
		__USHORTBIT(	RESETX, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_usbf __STRUCT_B
	__USHORT(		IO_FIFO0o)
	__USHORT(		IO_FIFO0i)
	__USHORT(		IO_FIFO1)
	__USHORT(		IO_FIFO2)
	__USHORT(		IO_FIFO3)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__UNION_MEM(io_cont1,	IO_CONT1)
	__UNION_MEM(io_cont2,	IO_CONT2)
	__UNION_MEM(io_cont3,	IO_CONT3)
	__UNION_MEM(io_cont4,	IO_CONT4)
	__UNION_MEM(io_cont5,	IO_CONT5)
	__UNION_MEM(io_cont6,	IO_CONT6)
	__UNION_MEM(io_cont7,	IO_CONT7)
	__UNION_MEM(io_cont8,	IO_CONT8)
	__UNION_MEM(io_cont9,	IO_CONT9)
	__UNION_MEM(io_cont10,	IO_CONT10)
	__USHORT(		IO_TTSIZE)
	__USHORT(		IO_TRSIZE)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__UNION_MEM(io_rsize0,	IO_RSIZE0)
	__USHORT_NONAME(		)
	__UNION_MEM(io_rsize1,	IO_RSIZE1)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__UNION_MEM(io_st1,	IO_ST1  )
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__UNION_MEM(io_st2,	IO_ST2  )
	__UNION_MEM(io_st3,	IO_ST3  )
	__UNION_MEM(io_st4,	IO_ST4  )
	__UNION_MEM(io_st5,	IO_ST5  )
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__USHORT_NONAME(		)
	__UNION_MEM(io_reset,	IO_RESET)
__STRUCT_E

/*****************************/
/* structure of Memory Stick */
/*****************************/
__UNION io_mscr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	PID     ,  4)
		__USHORTBIT_NONAME(        2)
		__USHORTBIT(	DATASIZE, 10)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_mssr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	INT, 1)
		__UCHARBIT(	DRQ, 1)
		__UCHARBIT_NONAME(   2)
		__UCHARBIT(	RBE, 1)
		__UCHARBIT(	RBF, 1)
		__UCHARBIT(	TBE, 1)
		__UCHARBIT(	TBF, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_mscntr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	RST   , 1)
		__UCHARBIT(	PWS   , 1)
		__UCHARBIT(	SIEN  , 1)
		__UCHARBIT(	DAKEN , 1)
		__UCHARBIT(	NONCRC, 1)
		__UCHARBIT(	BSYCNT, 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_msidr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	RDY , 1)
		__UCHARBIT(	SIF , 1)
		__UCHARBIT(	DREQ, 1)
		__UCHARBIT(	PIN , 1)
		__UCHARBIT_NONAME(    2)
		__UCHARBIT(	CRC , 1)
		__UCHARBIT(	TOE , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_msir __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	INT , 1)
		__UCHARBIT(	DREQ, 1)
		__UCHARBIT(	PIN , 1)
		__UCHARBIT_NONAME(    5)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_msppdr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	XPIN3, 1)
		__UCHARBIT(	XPIN2, 1)
		__UCHARBIT(	XPIN1, 1)
		__UCHARBIT(	XPIN0, 1)
		__UCHARBIT(	POUT3, 1)
		__UCHARBIT(	POUT2, 1)
		__UCHARBIT(	POUT1, 1)
		__UCHARBIT(	POUT0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_msppcr __STRUCT_B
	__BYTE_MEM
	__STRUCT_TYPE_B
		__UCHARBIT(	PIEN3, 1)
		__UCHARBIT(	PIEN2, 1)
		__UCHARBIT(	PIEN1, 1)
		__UCHARBIT(	PIEN0, 1)
		__UCHARBIT(	POEN3, 1)
		__UCHARBIT(	POEN2, 1)
		__UCHARBIT(	POEN1, 1)
		__UCHARBIT(	POEN0, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

struct io_mems __STRUCT_B
	__UNION_MEM(io_mscr,	IO_MSCR  )
	__UNION_MEM(io_mssr,	IO_MSSR  )
	__UNION_MEM(io_mscntr,	IO_MSCNTR)
	__USHORT(		IO_MSRTDR)
	__UNION_MEM(io_msidr,	IO_MSIDR )
	__UNION_MEM(io_msir,	IO_MSIR  )
	__UNION_MEM(io_msppdr,	IO_MSPPDR)
	__UNION_MEM(io_msppcr,	IO_MSPPCR)
	__USHORT_NONAME(		 )
__STRUCT_E

/*********************/
/* structure of OSBC */
/*********************/
__UNION io_osd_vadr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	FL , 1)
		__USHORTBIT_NONAME(  3)
		__USHORTBIT(	AY , 4)
		__USHORTBIT_NONAME(  2)
		__USHORTBIT(	AX , 6)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_cd1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	MIT, 1)
		__USHORTBIT(	MUL, 1)
		__USHORTBIT(	MBL, 1)
		__USHORTBIT(	MBB, 1)
		__USHORTBIT(	MS , 2)
		__USHORTBIT(	MM , 2)
		__USHORTBIT(	MB , 4)
		__USHORTBIT(	MC , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_cd2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	MR , 1)
		__USHORTBIT(	MG , 1)
		__USHORTBIT_NONAME(  3)
		__USHORTBIT(	M  ,11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_rcd1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   3)
		__USHORTBIT(	LHS , 1)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	LW  , 3)
		__USHORTBIT(	LFCD, 2)
		__USHORTBIT(	LFAB, 2)
		__USHORTBIT(	LF  , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_rcd2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   3)
		__USHORTBIT(	LDS , 1)
		__USHORTBIT(	LGY , 2)
		__USHORTBIT(	LGX , 2)
		__USHORTBIT(	LD  , 1)
		__USHORTBIT(	LE  , 1)
		__USHORTBIT(	LM  , 2)
		__USHORTBIT(	L   , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_soc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   8)
		__USHORTBIT(	SDS , 1)
		__USHORTBIT(	UDS , 1)
		__USHORTBIT(	PDS , 1)
		__USHORTBIT(	DSP , 1)
		__USHORTBIT_NONAME(   4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_soc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   6)
		__USHORTBIT(	FM  , 2)
		__USHORTBIT(	BT  , 2)
		__USHORTBIT(	BD  , 2)
		__USHORTBIT_NONAME(   4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_vdpc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME( 7)
		__USHORTBIT(	Y , 9)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_hdpc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME( 7)
		__USHORTBIT(	X , 9)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_cvsc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  9)
		__USHORTBIT(	HB , 3)
		__USHORTBIT_NONAME(  1)
		__USHORTBIT(	HA , 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_sbfcc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  8)
		__USHORTBIT(	BH , 4)
		__USHORTBIT(	BS , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_thcc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    6)
		__USHORTBIT(	TCC  , 1)
		__USHORTBIT(	HCC  , 1)
		__USHORTBIT(	TCC03, 4)
		__USHORTBIT(	HCC03, 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_gfcc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(    6)
		__USHORTBIT(	GFC  , 1)
		__USHORTBIT(	GCC  , 1)
		__USHORTBIT(	GFC03, 4)
		__USHORTBIT(	GC   , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_sbcc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	PCUT, 1)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	PD  , 2)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	PM  ,11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_sbcc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  9)
		__USHORTBIT(	PH , 3)
		__USHORTBIT(	U  , 4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_spcc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT(	SCUT, 1)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	SD  , 2)
		__USHORTBIT_NONAME(   1)
		__USHORTBIT(	SM  ,11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_spcc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  7)
		__USHORTBIT(	SBL, 1)
		__USHORTBIT_NONAME(  1)
		__USHORTBIT(	SH , 3)
		__USHORTBIT_NONAME(  4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_spcc3 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  6)
		__USHORTBIT(	SY, 10)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_spcc4 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  6)
		__USHORTBIT(	SX, 10)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_syncc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  9)
		__USHORTBIT(	IN,  1)
		__USHORTBIT_NONAME(  1)
		__USHORTBIT(	FC,  1)
		__USHORTBIT_NONAME(  4)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dclkc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   8)
		__USHORTBIT(	DR  , 2)
		__USHORTBIT(	DP  , 2)
		__USHORTBIT_NONAME(   2)
		__USHORTBIT(	DHRS, 1)
		__USHORTBIT(	DCO,  1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dclkc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  4)
		__USHORTBIT(	DK, 12)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dclkc3 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  8)
		__USHORTBIT(	VC , 1)
		__USHORTBIT(	VSL, 3)
		__USHORTBIT(	CPB, 2)
		__USHORTBIT(	CPE, 1)
		__USHORTBIT(	PDE, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_ioc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME( 13)
		__USHORTBIT(	OHX, 1)
		__USHORTBIT(	OBX, 1)
		__USHORTBIT(	OCX, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_ioc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  7)
		__USHORTBIT(	VHE, 1)
		__USHORTBIT(	HE , 1)
		__USHORTBIT_NONAME(  4)
		__USHORTBIT(	IHX, 1)
		__USHORTBIT(	IVX, 1)
		__USHORTBIT_NONAME(  1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dpc1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   5)
		__USHORTBIT(	DYS, 11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dpc2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   5)
		__USHORTBIT(	DYE, 11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dpc3 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   5)
		__USHORTBIT(	DXS, 11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_dpc4 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   5)
		__USHORTBIT(	DXE, 11)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_jrc __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  5)
		__USHORTBIT(	FIF, 1)
		__USHORTBIT(	LIF, 1)
		__USHORTBIT(	VIF, 1)
		__USHORTBIT_NONAME(  5)
		__USHORTBIT(	FIE, 1)
		__USHORTBIT(	LIE, 1)
		__USHORTBIT(	VIE, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_plr __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(  5)
		__USHORTBIT(	PLR, 3)
		__USHORTBIT_NONAME(  1)
		__USHORTBIT(	PLG, 3)
		__USHORTBIT_NONAME(  1)
		__USHORTBIT(	PLB, 3)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_act1 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME( 11)
		__USHORTBIT(	DCK, 1)
		__USHORTBIT_NONAME(  3)
		__USHORTBIT(	DPD, 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E

__UNION io_osd_act2 __STRUCT_B
	__HWORD_MEM
	__STRUCT_TYPE_B
		__USHORTBIT_NONAME(   11)
		__USHORTBIT(	OSDEN, 1)
		__USHORTBIT_NONAME(    1)
		__USHORTBIT(	FHO  , 1)
		__USHORTBIT(	DGO  , 1)
		__USHORTBIT(	ANO  , 1)
	__STRUCT_TYPE_E(bit)
__STRUCT_E


struct io_osdc __STRUCT_B
	__UNION_MEM(io_osd_vadr  , IO_OSD_VADR)
	__UNION_MEM(io_osd_cd1   , IO_OSD_CD1 )
	__UNION_MEM(io_osd_cd2   , IO_OSD_CD2 )
	__UNION_MEM(io_osd_rcd1  , IO_OSD_RCD1)
	__UNION_MEM(io_osd_rcd2  , IO_OSD_RCD2)
	__UNION_MEM(io_osd_soc1  , IO_OSD_SOC1)
	__UNION_MEM(io_osd_soc2  , IO_OSD_SOC2)
	__UNION_MEM(io_osd_vdpc  , IO_OSD_VDPC)
	__UNION_MEM(io_osd_hdpc  , IO_OSD_HDPC)
	__UNION_MEM(io_osd_cvsc  , IO_OSD_CVSC)
	__UNION_MEM(io_osd_sbfcc , IO_OSD_SBFCC)
	__UNION_MEM(io_osd_thcc  , IO_OSD_THCC)
	__UNION_MEM(io_osd_gfcc  , IO_OSD_GFCC)
	__UNION_MEM(io_osd_sbcc1 , IO_OSD_SBCC1)
	__UNION_MEM(io_osd_sbcc2 , IO_OSD_SBCC2)
	__UNION_MEM(io_osd_spcc1 , IO_OSD_SPCC1)
	__UNION_MEM(io_osd_spcc2 , IO_OSD_SPCC2)
	__UNION_MEM(io_osd_spcc3 , IO_OSD_SPCC3)
	__UNION_MEM(io_osd_spcc4 , IO_OSD_SPCC4)
	__UNION_MEM(io_osd_syncc , IO_OSD_SYNCC)
	__UNION_MEM(io_osd_dclkc1, IO_OSD_DCLKC1)
	__UNION_MEM(io_osd_dclkc2, IO_OSD_DCLKC2)
	__UNION_MEM(io_osd_dclkc3, IO_OSD_DCLKC3)
	__UNION_MEM(io_osd_ioc1  , IO_OSD_IOC1)
	__UNION_MEM(io_osd_ioc2  , IO_OSD_IOC2)
	__UNION_MEM(io_osd_dpc1  , IO_OSD_DPC1)
	__UNION_MEM(io_osd_dpc2  , IO_OSD_DPC2)
	__UNION_MEM(io_osd_dpc3  , IO_OSD_DPC3)
	__UNION_MEM(io_osd_dpc4  , IO_OSD_DPC4)
	__UNION_MEM(io_osd_jrc   , IO_OSD_JRC)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR0)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR1)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR2)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR3)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR4)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR5)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR6)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR7)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR8)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR9)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR10)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR11)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR12)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR13)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR14)
	__UNION_MEM(io_osd_plr   , IO_OSD_PLR15)
	__UNION_MEM(io_osd_act1  , IO_OSD_ACT1)
	__UNION_MEM(io_osd_act2  , IO_OSD_ACT2)
__STRUCT_E
