|
@@ -986,3 +986,66 @@ typedef volatile struct {
|
|
|
volatile unsigned short int w;
|
|
|
struct {
|
|
|
volatile unsigned char status;
|
|
|
+ volatile unsigned char txdata;
|
|
|
+ } b;
|
|
|
+ } utx;
|
|
|
+ volatile unsigned short int umisc;
|
|
|
+ volatile unsigned short int pad1;
|
|
|
+ volatile unsigned short int pad2;
|
|
|
+ volatile unsigned short int pad3;
|
|
|
+} __attribute__((packed)) m68328_uart;
|
|
|
+
|
|
|
+
|
|
|
+/**********
|
|
|
+ *
|
|
|
+ * 0xFFFFFAxx -- LCD Controller
|
|
|
+ *
|
|
|
+ **********/
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Screen Starting Address Register
|
|
|
+ */
|
|
|
+#define LSSA_ADDR 0xfffffa00
|
|
|
+#define LSSA LONG_REF(LSSA_ADDR)
|
|
|
+
|
|
|
+#define LSSA_SSA_MASK 0xfffffffe /* Bit 0 is reserved */
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Virtual Page Width Register
|
|
|
+ */
|
|
|
+#define LVPW_ADDR 0xfffffa05
|
|
|
+#define LVPW BYTE_REF(LVPW_ADDR)
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Screen Width Register (not compatible with 'EZ328 !!!)
|
|
|
+ */
|
|
|
+#define LXMAX_ADDR 0xfffffa08
|
|
|
+#define LXMAX WORD_REF(LXMAX_ADDR)
|
|
|
+
|
|
|
+#define LXMAX_XM_MASK 0x02ff /* Bits 0-3 are reserved */
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Screen Height Register
|
|
|
+ */
|
|
|
+#define LYMAX_ADDR 0xfffffa0a
|
|
|
+#define LYMAX WORD_REF(LYMAX_ADDR)
|
|
|
+
|
|
|
+#define LYMAX_YM_MASK 0x02ff /* Bits 10-15 are reserved */
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Cursor X Position Register
|
|
|
+ */
|
|
|
+#define LCXP_ADDR 0xfffffa18
|
|
|
+#define LCXP WORD_REF(LCXP_ADDR)
|
|
|
+
|
|
|
+#define LCXP_CC_MASK 0xc000 /* Cursor Control */
|
|
|
+#define LCXP_CC_TRAMSPARENT 0x0000
|
|
|
+#define LCXP_CC_BLACK 0x4000
|
|
|
+#define LCXP_CC_REVERSED 0x8000
|
|
|
+#define LCXP_CC_WHITE 0xc000
|
|
|
+#define LCXP_CXP_MASK 0x02ff /* Cursor X position */
|
|
|
+
|
|
|
+/*
|
|
|
+ * LCD Cursor Y Position Register
|
|
|
+ */
|
|
|
+#define LCYP_ADDR 0xfffffa1a
|