|
@@ -265,3 +265,109 @@
|
|
|
#define _IEEE_Status _IEEE( 0x0c00 )
|
|
|
#define _IEEE_IntStatus _IEEE( 0x1000 )
|
|
|
#define _IEEE_FifoLevels _IEEE( 0x1400 )
|
|
|
+#define _IEEE_InitTime _IEEE( 0x1800 )
|
|
|
+#define _IEEE_TimerStatus _IEEE( 0x1c00 )
|
|
|
+#define _IEEE_FifoReset _IEEE( 0x2000 )
|
|
|
+#define _IEEE_ReloadValue _IEEE( 0x3c00 )
|
|
|
+#define _IEEE_TestControl _IEEE( 0x2400 )
|
|
|
+#define _IEEE_TestDataIn _IEEE( 0x2800 )
|
|
|
+#define _IEEE_TestDataInEn _IEEE( 0x2c00 )
|
|
|
+#define _IEEE_TestCtrlIn _IEEE( 0x3000 )
|
|
|
+#define _IEEE_TestCtrlInEn _IEEE( 0x3400 )
|
|
|
+#define _IEEE_TestDataStat _IEEE( 0x3800 )
|
|
|
+
|
|
|
+
|
|
|
+#if LANGUAGE == C
|
|
|
+#define IEEE_Config (*((volatile Word *) SA1101_p2v (_IEEE_Config)))
|
|
|
+#define IEEE_Control (*((volatile Word *) SA1101_p2v (_IEEE_Control)))
|
|
|
+#define IEEE_Data (*((volatile Word *) SA1101_p2v (_IEEE_Data)))
|
|
|
+#define IEEE_Addr (*((volatile Word *) SA1101_p2v (_IEEE_Addr)))
|
|
|
+#define IEEE_Status (*((volatile Word *) SA1101_p2v (_IEEE_Status)))
|
|
|
+#define IEEE_IntStatus (*((volatile Word *) SA1101_p2v (_IEEE_IntStatus)))
|
|
|
+#define IEEE_FifoLevels (*((volatile Word *) SA1101_p2v (_IEEE_FifoLevels)))
|
|
|
+#define IEEE_InitTime (*((volatile Word *) SA1101_p2v (_IEEE_InitTime)))
|
|
|
+#define IEEE_TimerStatus (*((volatile Word *) SA1101_p2v (_IEEE_TimerStatus)))
|
|
|
+#define IEEE_FifoReset (*((volatile Word *) SA1101_p2v (_IEEE_FifoReset)))
|
|
|
+#define IEEE_ReloadValue (*((volatile Word *) SA1101_p2v (_IEEE_ReloadValue)))
|
|
|
+#define IEEE_TestControl (*((volatile Word *) SA1101_p2v (_IEEE_TestControl)))
|
|
|
+#define IEEE_TestDataIn (*((volatile Word *) SA1101_p2v (_IEEE_TestDataIn)))
|
|
|
+#define IEEE_TestDataInEn (*((volatile Word *) SA1101_p2v (_IEEE_TestDataInEn)))
|
|
|
+#define IEEE_TestCtrlIn (*((volatile Word *) SA1101_p2v (_IEEE_TestCtrlIn)))
|
|
|
+#define IEEE_TestCtrlInEn (*((volatile Word *) SA1101_p2v (_IEEE_TestCtrlInEn)))
|
|
|
+#define IEEE_TestDataStat (*((volatile Word *) SA1101_p2v (_IEEE_TestDataStat)))
|
|
|
+
|
|
|
+
|
|
|
+#define IEEE_Config_M Fld(3,0) /* Mode select */
|
|
|
+#define IEEE_Config_D 0x04 /* FIFO access enable */
|
|
|
+#define IEEE_Config_B 0x08 /* 9-bit word enable */
|
|
|
+#define IEEE_Config_T 0x10 /* Data transfer enable */
|
|
|
+#define IEEE_Config_A 0x20 /* Data transfer direction */
|
|
|
+#define IEEE_Config_E 0x40 /* Timer enable */
|
|
|
+#define IEEE_Control_A 0x08 /* AutoFd output */
|
|
|
+#define IEEE_Control_E 0x04 /* Selectin output */
|
|
|
+#define IEEE_Control_T 0x02 /* Strobe output */
|
|
|
+#define IEEE_Control_I 0x01 /* Port init output */
|
|
|
+#define IEEE_Data_C (1<<31) /* Byte count */
|
|
|
+#define IEEE_Data_Db Fld(9,16) /* Data byte 2 */
|
|
|
+#define IEEE_Data_Da Fld(9,0) /* Data byte 1 */
|
|
|
+#define IEEE_Addr_A Fld(8,0) /* forward address transfer byte */
|
|
|
+#define IEEE_Status_A 0x0100 /* nAutoFd port output status */
|
|
|
+#define IEEE_Status_E 0x0080 /* nSelectIn port output status */
|
|
|
+#define IEEE_Status_T 0x0040 /* nStrobe port output status */
|
|
|
+#define IEEE_Status_I 0x0020 /* nInit port output status */
|
|
|
+#define IEEE_Status_B 0x0010 /* Busy port inout status */
|
|
|
+#define IEEE_Status_S 0x0008 /* Select port input status */
|
|
|
+#define IEEE_Status_K 0x0004 /* nAck port input status */
|
|
|
+#define IEEE_Status_F 0x0002 /* nFault port input status */
|
|
|
+#define IEEE_Status_R 0x0001 /* pError port input status */
|
|
|
+
|
|
|
+#define IEEE_IntStatus_IntReqDat 0x0100
|
|
|
+#define IEEE_IntStatus_IntReqEmp 0x0080
|
|
|
+#define IEEE_IntStatus_IntReqInt 0x0040
|
|
|
+#define IEEE_IntStatus_IntReqRav 0x0020
|
|
|
+#define IEEE_IntStatus_IntReqTim 0x0010
|
|
|
+#define IEEE_IntStatus_RevAddrComp 0x0008
|
|
|
+#define IEEE_IntStatus_RevDataComp 0x0004
|
|
|
+#define IEEE_IntStatus_FwdAddrComp 0x0002
|
|
|
+#define IEEE_IntStatus_FwdDataComp 0x0001
|
|
|
+#define IEEE_FifoLevels_RevFifoLevel 2
|
|
|
+#define IEEE_FifoLevels_FwdFifoLevel 1
|
|
|
+#define IEEE_InitTime_TimValInit Fld(22,0)
|
|
|
+#define IEEE_TimerStatus_TimValStat Fld(22,0)
|
|
|
+#define IEEE_ReloadValue_Reload Fld(4,0)
|
|
|
+
|
|
|
+#define IEEE_TestControl_RegClk 0x04
|
|
|
+#define IEEE_TestControl_ClockSelect Fld(2,1)
|
|
|
+#define IEEE_TestControl_TimerTestModeEn 0x01
|
|
|
+#define IEEE_TestCtrlIn_PError 0x10
|
|
|
+#define IEEE_TestCtrlIn_nFault 0x08
|
|
|
+#define IEEE_TestCtrlIn_nAck 0x04
|
|
|
+#define IEEE_TestCtrlIn_PSel 0x02
|
|
|
+#define IEEE_TestCtrlIn_Busy 0x01
|
|
|
+
|
|
|
+#endif /* LANGUAGE == C */
|
|
|
+
|
|
|
+/*
|
|
|
+ * VGA Controller
|
|
|
+ *
|
|
|
+ * Registers
|
|
|
+ * VideoControl Video Control Register
|
|
|
+ * VgaTiming0 VGA Timing Register 0
|
|
|
+ * VgaTiming1 VGA Timing Register 1
|
|
|
+ * VgaTiming2 VGA Timing Register 2
|
|
|
+ * VgaTiming3 VGA Timing Register 3
|
|
|
+ * VgaBorder VGA Border Color Register
|
|
|
+ * VgaDBAR VGADMA Base Address Register
|
|
|
+ * VgaDCAR VGADMA Channel Current Address Register
|
|
|
+ * VgaStatus VGA Status Register
|
|
|
+ * VgaInterruptMask VGA Interrupt Mask Register
|
|
|
+ * VgaPalette VGA Palette Registers
|
|
|
+ * DacControl DAC Control Register
|
|
|
+ * VgaTest VGA Controller Test Register
|
|
|
+ */
|
|
|
+
|
|
|
+#define _VGA( x ) _SA1101( ( x ) + __VGA_CONTROL )
|
|
|
+
|
|
|
+#define _VideoControl _VGA( 0x0000 )
|
|
|
+#define _VgaTiming0 _VGA( 0x0400 )
|
|
|
+#define _VgaTiming1 _VGA( 0x0800 )
|