🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: rec.games.programmer
Article #2250

Re: Calling VESA from Watcom C 9.0

#2250
From: Rob Janssen
Date: Sat, 11 Jun 1994 16:22
36 lines
3192 bytes
In <Cr6r0J.DDC@news.atitech.ca> phsieh@atitech.ca (Paul Hsieh) writes:

>Hello out there.  I realize that I'm about to be flamed for being such an
>advocate of WC and end up asking a question about it, however ...

>I have been trying to call my VESA driver from a WC 9.0 program.  The 
>DOS4GW version is 1.8 (which is pretty ancient, but it mostly works well
>for me).  The scenario is pretty simply.  I need to set AX=4F00, and
>ES:DI to my _far address (i.e., below the first meg) then call int 10
>and watch ES:DI fill up with lotsa goodly info.

>In real mode this is not a problem (I wrote a little .com file which
>functions perfectly).  To do this in WC, I first allocated some low
>memory using DPMI function 0x0400.  I got back a segment and selector
>that I verified were reasonable values.  Then to use it, I simply
>calculated the flat address equivalent (i.e., segment*0x10) in a
>variable I called "VIS".  Then, before calling int 10 I set ES to 
>(VIS & 0xF0000) >> 4 and DI to (VIS & 0xFFFF), AX=0x4F00.  Upon return
>from the int 10, I got the required 0x004F.  But the information in
>VIS was untouched.  I verified this with 3 different VESA drivers, so
>I am pretty sure that the VESA drivers are not at fault.

>Does anyone know exactly what's going wrong?  I might be mixing up the
>definition of selector and segment, but in most cases ES becomes 0,
>which I assume was translated to 0 either as a selector or a segment.
>Is version 1.8 of DOS4GW just too old or buggy?  Have I pulled a major
>braino here?  Any help on this problem would be greatly appreciated.

This has nothing to do with Linux, so please keep it off that group!

Rob
-- 
-------------------------------------------------------------------------
| Rob Janssen                | AMPRnet:   rob@pe1chl.ampr.org           |
| e-mail: pe1chl@rabo.nl     | AX.25 BBS: PE1CHL@PI8UTR.#UTR.NLD.EU     |
-------------------------------------------------------------------------
Technical Details
Message-ID: <Cr8qtz.2EA@pe1chl.ampr.org>
Path: arc1-ca.pugleaf.net!nntp.gmd.de!Germany.EU.net!EU.net!sun4nl!rnzll3!sys3.pe1chl!rob
References: <2t0sn7$m1r@harbinger.cc.monash.edu.au> <Cr6r0J.DDC@news.atitech.ca>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10f6aa,e6b2b5751c2b9056
X-Google-Attributes: gid10f6aa,public
X-Google-Thread: fe306,e6b2b5751c2b9056
X-Google-Attributes: gidfe306,public
X-Google-Thread: 1103af,e6b2b5751c2b9056
X-Google-Attributes: gid1103af,public
X-Google-Thread: f9382,e6b2b5751c2b9056
X-Google-Attributes: gidf9382,public
X-Google-Thread: 102bfa,e6b2b5751c2b9056
X-Google-Attributes: gid102bfa,public
X-Google-Thread: 102983,e6b2b5751c2b9056
X-Google-Attributes: gid102983,public
X-Google-Thread: 10a997,e6b2b5751c2b9056
X-Google-Attributes: gid10a997,public
X-Google-ArrivalTime: 1994-06-11 14:39:45 PST
Newsgroups: rec.games.programmer,alt.uu.comp.os.linux.questions,aus.computers.linux,comp.os.linux,comp.os.linux.misc,alt.msdos.programmer,comp.os.msdos.programmer
Path: arc1-ca.pugleaf.net!nntp.gmd.de!Germany.EU.net!EU.net!sun4nl!rnzll3!sys3.pe1chl!rob
From: rob@pe1chl.ampr.org (Rob Janssen)
Subject: Re: Calling VESA from Watcom C 9.0
Reply-To: pe1chl@rabo.nl
Organization: PE1CHL
Message-ID: <Cr8qtz.2EA@pe1chl.ampr.org>
References: <2t0sn7$m1r@harbinger.cc.monash.edu.au> <Cr6r0J.DDC@news.atitech.ca>
Date: Sat, 11 Jun 1994 16:22:47 GMT
Lines: 36