Do not advance the cursor in certain routines. This cleaned up the
implementation quite a bit.

diff --git a/msdos/int10.c b/msdos/int10.c
index 9a870af..c7ac518 100644
--- a/msdos/int10.c
+++ b/msdos/int10.c
@@ -405,13 +405,13 @@
 static void write_char_attribute_at_cursor(char output, char page_num, 
        char attribute, short times)
 {
-    /* !NOTE!: */
-    /* It appears that the cursor should not be advanced if times > 1 */
-    /* I will triple check this later but bzork.exe definately points this */
-    /* way */
+    /* Contrary to the interrupt list, this routine should not advance
+       the cursor. To keep this logic simple, we won't use the
+       CONSOLE_Put() routine. 
+    */
+
     int wattribute, fg_color, bg_color;
     char x, y;
-    int must_reset = 0;
 
     if (page_num) /* Only support one text page right now */
     {
@@ -423,11 +423,7 @@
     fg_color = conv_text_mode_attribute_fg_color(attribute);
     bg_color = conv_text_mode_attribute_bg_color(attribute);
 
-    if (times > 1)
-    {
-       must_reset = 1;
-       CONSOLE_GetCursorPosition(&x, &y);
-    }
+    CONSOLE_GetCursorPosition(&x, &y);
 
     while (times)
     {
@@ -435,8 +431,7 @@
        times--;
     }
   
-    if (must_reset)
-       CONSOLE_MoveCursor(x, y);
+    CONSOLE_MoveCursor(x, y);
 }
 
 static int conv_text_mode_attribute_fg_color(char attribute)