/*
* $Log$
+ * Revision 1.10 2008/02/24 00:42:53 james
+ * *** empty log message ***
+ *
+ * Revision 1.9 2008/02/20 19:25:09 james
+ * *** empty log message ***
+ *
+ * Revision 1.8 2008/02/13 09:12:21 james
+ * *** empty log message ***
+ *
+ * Revision 1.7 2008/02/13 01:08:18 james
+ * *** empty log message ***
+ *
+ * Revision 1.6 2008/02/07 13:22:51 james
+ * *** empty log message ***
+ *
+ * Revision 1.5 2008/02/07 12:41:06 james
+ * *** empty log message ***
+ *
* Revision 1.4 2008/02/07 12:16:04 james
* *** empty log message ***
*
#define CRT_ATTR_BOLD 0x8
-#define CRT_COLOR_BLACK 0x0
+#define CRT_COLOR_BLACK 0x0
#define CRT_COLOR_RED 0x1
#define CRT_COLOR_GREEN 0x2
#define CRT_COLOR_YELLOW 0x3
#define CRT_COLOR_NORMAL CRT_MAKE_COLOR(CRT_FGCOLOR_NORMAL,CRT_BGCOLOR_NORMAL)
-typedef struct
+typedef struct __attribute__ ((packed))
{
- uint8_t chr;
+ uint32_t chr;
uint8_t attr;
uint8_t color;
} CRT_CA;
typedef struct
+{
+ CRT_Pos s;
+ CRT_Pos e;
+ int dir;
+} CRT_ScrollHint;
+
+typedef struct CRT_struct
{
CRT_CA screen[CRT_CELS];
CRT_Pos pos;
+ CRT_ScrollHint sh;
int hide_cursor;
} CRT;
return memcmp (&a, &b, sizeof (a));
}
+static inline
+crt_pos_cmp (CRT_Pos a, CRT_Pos b)
+{
+ return memcmp (&a, &b, sizeof (a));
+}
+
#endif /* __CRT_H__ */