--- /dev/null
+\r
+#ifndef __MODEX_H\r
+#define __MODEX_H\r
+\r
+ /* ===== SCREEN RESOLUTIONS ===== */\r
+\r
+#define Mode_320x200 0\r
+#define Mode_320x400 1\r
+#define Mode_360x200 2\r
+#define Mode_360x400 3\r
+#define Mode_320x240 4\r
+#define Mode_320x480 5\r
+#define Mode_360x240 6\r
+#define Mode_360x480 7\r
+\r
+ /* ===== MODE X SETUP ROUTINES ===== */\r
+\r
+int far pascal set_vga_modex (int Mode, int MaxXpos, int MaxYpos, int Pages);\r
+int far pascal set_modex (int Mode);\r
+\r
+ /* ===== BASIC GRAPHICS PRIMITIVES ===== */\r
+\r
+void far pascal clear_vga_screen (int Color);\r
+void far pascal set_point (int Xpos, int Ypos, int Color);\r
+int far pascal read_point (int Xpos, int Ypos);\r
+void far pascal fill_block (int Xpos1, int Ypos1, int Xpos2, int Ypos2,\r
+ int Color);\r
+void far pascal draw_line (int Xpos1, int Ypos1, int Xpos2, int Ypos2,\r
+ int Color);\r
+\r
+ /* ===== DAC COLOR REGISTER ROUTINES ===== */\r
+\r
+void far pascal set_dac_register (int RegNo, int Red, int Green, int Blue);\r
+void far pascal get_dac_register (int RegNo, int* Red, int* Green, int* Blue);\r
+void far pascal load_dac_registers (char far *PalData, int StartReg,\r
+ int EndReg, int VSync);\r
+void far pascal readd_dac_registers (char far *PalData, int StartReg,\r
+ int EndReg);\r
+\r
+ /* ===== PAGE FLIPPING AND SCROLLING ROUTINES ===== */\r
+\r
+void far pascal set_active_page (int PageNo);\r
+int far pascal get_active_page (void);\r
+void far pascal set_display_page (int PageNo);\r
+int far pascal get_display_page (void);\r
+void far pascal set_window (int DisplayPage, int XOffset, int YOffset);\r
+int far pascal get_x_offset (void);\r
+int far pascal get_y_offset (void);\r
+void far pascal sync_display (void);\r
+\r
+ /* ===== TEXT DISPLAY ROUTINES ===== */\r
+\r
+void far pascal gprintc (int CharNum, int Xpos, int Ypos, int ColorF,\r
+ int ColorB);\r
+void far pascal tgprintc (int CharNum, int Xpos, int Ypos, int ColorF);\r
+void far pascal print_str (char far *Text, int MaxLen, int Xpos, int Ypos,\r
+ int ColorF, int ColorB);\r
+void far pascal tprint_str (char far *Text, int MaxLen, int Xpos, int Ypos,\r
+ int ColorF);\r
+void far pascal set_display_font (char far *FontData, int FontNumber);\r
+\r
+ /* ===== BITMAP (SPRITE) DISPLAY ROUTINES ===== */\r
+\r
+void far pascal draw_bitmap (char far *Image, int Xpos, int Ypos,\r
+ int Width, int Height);\r
+void far pascal tdraw_bitmap (char far *Image, int Xpos, int Ypos,\r
+ int Width, int Height);\r
+\r
+ /* ==== VIDEO MEMORY to VIDEO MEMORY COPY ROUTINES ===== */\r
+\r
+void far pascal copy_page (int SourcePage, int DestPage);\r
+void far pascal copy_bitmap (int SourcePage, int X1, int Y1, int X2, int Y2,\r
+ int DestPage, int DestX1, int DestY1);\r
+\r
+\r
+#endif\r