Hi,

I noticed that I was unable to use a direct-access parallel port program
with dosemu -X because the port range was reserved for Hercules
emulation.  Looking into some Hercules programming docs, it looks like
only 0x3b0-0x3bb and 0x3bf are necessary for the graphics chip, leaving
0x3bc-0x3be (the 3 parallel port registers) open for the parallel port
which used to also come on a Hercules graphics card.  Also, linux hgcfb
follows the same approach.  The attached patch fixed that and let my
program run under dosemu -X

-- 
Ryan Underwood, <[EMAIL PROTECTED]>
--- src/env/video/vgaemu.bak    2004-06-12 04:29:27.000000000 -0500
+++ src/env/video/vgaemu.c      2004-06-12 07:03:54.000000000 -0500
@@ -1458,8 +1458,13 @@
    * if something is missing. -- sw
    */
   if(vga.config.mono_support) {
-    io_device.handler_name = "VGAEmu Mono/Hercules Card";
+    io_device.handler_name = "VGAEmu Mono/Hercules Card Range 0";
     io_device.start_addr = 0x3b0;
+    io_device.end_addr = 0x3bb;
+    port_register_handler(io_device, 0);
+
+    io_device.handler_name = "VGAEmu Mono/Hercules Card Range 1";
+    io_device.start_addr = 0x3bf;
     io_device.end_addr = 0x3bf;
     port_register_handler(io_device, 0);
   }

Attachment: signature.asc
Description: Digital signature

Reply via email to