public inbox for linux-msdos@vger.kernel.org
 help / color / mirror / Atom feed
* vgaemu reserving 0x3b0-0x3bf incorrectly
@ 2004-06-12 12:25 Ryan Underwood
  0 siblings, 0 replies; only message in thread
From: Ryan Underwood @ 2004-06-12 12:25 UTC (permalink / raw)
  To: linux-msdos


[-- Attachment #1.1: Type: text/plain, Size: 584 bytes --]


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, <nemesis@icequake.net>

[-- Attachment #1.2: dosemu-hercules-ports.diff --]
[-- Type: text/plain, Size: 648 bytes --]

--- 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 #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-06-12 12:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-06-12 12:25 vgaemu reserving 0x3b0-0x3bf incorrectly Ryan Underwood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox