+#define DISP_TABLE_EXTRA_SLOTS 6
+#define DISP_TRUNC_GLYPH(dp) ((dp)->extras[0])
+#define DISP_CONTINUE_GLYPH(dp) ((dp)->extras[1])
+#define DISP_ESCAPE_GLYPH(dp) ((dp)->extras[2])
+#define DISP_CTRL_GLYPH(dp) ((dp)->extras[3])
+#define DISP_INVIS_VECTOR(dp) ((dp)->extras[4])
+#define DISP_BORDER_GLYPH(dp) ((dp)->extras[5])
+
+extern Lisp_Object disp_char_vector P_ ((struct Lisp_Char_Table *, int));
+
+#define DISP_CHAR_VECTOR(dp, c) \
+ (SINGLE_BYTE_CHAR_P(c) ? (dp)->contents[c] : disp_char_vector ((dp), (c)))
+
+/* Defined in window.c. */
+extern struct Lisp_Char_Table *window_display_table P_ ((struct window *));
+
+/* Defined in indent.c. */
+extern struct Lisp_Char_Table *buffer_display_table P_ ((void));