Re: Memory-mapped video

BugALugs478_at_InfamousISP.gov
Date: 07/02/04

  • Next message: Richard: "Re: In answer to RW - again (was: Sorts (revised)"
    Date: Fri, 02 Jul 2004 02:47:31 GMT
    
    

    Since this is an old thread I'm putting the historical record at the
    bottom for the three people in the universe who might be interested
    <g>.

    The problem is resolved. XP Home does not correctly process
    memory-mapped video as generated by the old ScreenIO and Realia COBOL.
    At least that's what I've concluded based on my limited testing and
    some -- ask enough people and eventually someone knows something --
    comments by system programming types. They say that XP Pro doesn't
    have the problem but obviously they haven't tested exactly my system.

    I junked XP Home and installed Win2K Pro and not only do all my
    programs run correctly on the G200 Millenium but they also work on the
    S3 Pro Savage and an ATI Radeon 7000 I happened to pick up in
    desperation. No tweaking or special memory parameters. The properties
    box shows "Auto" all the way. And the drivers were the vanilla ones
    straight from the installation disks (or website for Matrox).

    All's well that ends well I suppose.

    BugALugs478@InfamousISP.gov wrote:

    >I'm running Realia COBOL with SCREENIO (old, very old...) and the
    >executables have been running for years on a variety of machines. I
    >recently upgraded and the executables stopped working (bizarre video
    >effects, machine hangs, etc). I've determined that the problem lies in
    >the use by Realia & Norcom of memory-mapped video.
    >
    >I'm able to make the compiler generate a BIOS-calls-executable by
    >linking in DISPDOS.OBJ. This fixes the problem for the compiler where
    >I just use simple DISPLAY's (no screen section).
    >
    >But SCREEN IO recognizes (and trivializes) the problem by providing a
    >means of making PEF itself use BIOS calls (SET IBMC=N) which allows
    >creation of panels but the generated code includes memory-mapping for
    >video (or it uses the Screen Section -- I don't know which). The
    >effect is that at execution time with a module that has been
    >linkedited with DISPDOS.OBJ and which uses SCREENIO.LIB, Realia issues
    >a fatal message "RCL0038 This function is unavailable for use with
    >DISPDOS" referencing a module, SCR_VIO.
    >
    >How can I force SCREENIO to generate BIOS callls instead of using
    >memory-mapped video?
    >
    **********************************

    robert.deletethis@wagner.net (Robert Wagner) wrote:

    >BugALugs478@InfamousISP.gov wrote:

    >>How can I force SCREENIO to generate BIOS callls instead of using
    >>memory-mapped video?

    >The best source for an answer would be Norcom.

    Sure, however I doubt they'd be willing to talk to me about the 1987
    version. Would you?

    >I run programs that do memory-mapped screens on a variety of operating systems,
    >including XP, without a problem. This is an operating system function, not a
    >hardware function, when in less than full screen mode. Check the properties of
    >your shortcut, making sure it doesn't say full screen.

    I've tried it every way possible including emulation of the four other
    OS's and a whole range of memory settings. I'm not sure but I think
    the IRQ or DMA or Memory Address (I can never get these straight)
    where the video adapter places its memory is a function of BIOS and
    the video adapter itself. Programs bound with the "E" switch abend
    even running MSDOS 6.2 from a floppy unless I use DISPDOS and refrain
    from using SCREENIO. Disabling video shadowing in the CMOS causes the
    machine to reboot instead of bizarre video displays and freezing,
    another reason to think it's hardware/BIOS related.

    Some video adapters work (e.g. Matrox Millennium G200, 3D FX
    Interactive Voodoo 3) without any change to my programs (i.e. no
    DISPDOS and as much use of SCREENIO as I like) but others (e.g. S3
    Graphics Pro Savage DDR) cause the problem. Interestingly the Voodoo 3
    didn't have an IRQ assigned to it: the Pro Savage did (IRQ 16).

    So, like me, your use of memory-mapped video may be an accident
    waiting to happen; you just haven't struck the right <g> video adapter
    yet.
    *************************
    BugALugs478@InfamousISP.gov wrote:

    >riplin@Azonic.co.nz (Richard) wrote:
    >
    >>BugALugs478@InfamousISP.gov wrote
    >
    >>> Some video adapters work (e.g. Matrox Millennium G200, 3D FX
    >>> Interactive Voodoo 3) without any change to my programs (i.e. no
    >>> DISPDOS and as much use of SCREENIO as I like) but others (e.g. S3
    >>> Graphics Pro Savage DDR) cause the problem. Interestingly the Voodoo 3
    >>> didn't have an IRQ assigned to it: the Pro Savage did (IRQ 16).
    >
    >>Perhaps they no longer emulate a CGA video card from 1981.
    >
    >If you really know something, rather than that being just a sarcastic
    >remark, please provide more detail.

    As I said, hardware is involved only when the app is in full screen
    mode. If you
    run the app in a maximized window, which is better anyway, the device
    driver
    maps text from virtual B000/B800 to a graphic font of your choice.

    Some S3 device drivers don't work right. I went through several before
    finding a
    good one. I think your time would be better spent on device drivers
    rather than
    changing the applications.

    **************

    robert.deletethis@wagner.net (Robert Wagner) wrote:

    >BugALugs478@InfamousISP.gov wrote:

    >>riplin@Azonic.co.nz (Richard) wrote:

    >>>BugALugs478@InfamousISP.gov wrote

    >>>> Some video adapters work (e.g. Matrox Millennium G200, 3D FX
    >>>> Interactive Voodoo 3) without any change to my programs (i.e. no
    >>>> DISPDOS and as much use of SCREENIO as I like) but others (e.g. S3
    >>>> Graphics Pro Savage DDR) cause the problem. Interestingly the Voodoo 3
    >>>> didn't have an IRQ assigned to it: the Pro Savage did (IRQ 16).

    >>>Perhaps they no longer emulate a CGA video card from 1981.

    >>If you really know something, rather than that being just a sarcastic
    >>remark, please provide more detail.

    >As I said, hardware is involved only when the app is in full screen mode. If you
    >run the app in a maximized window, which is better anyway, the device driver
    >maps text from virtual B000/B800 to a graphic font of your choice.

    >Some S3 device drivers don't work right. I went through several before finding a
    >good one. I think your time would be better spent on device drivers rather than
    >changing the applications.

    I think you're right. Changing the application seems to be a dead end.

    I shifted the Matrox G200 (this one worked OK under NT on a 466mhz
    Celeron) into my current machine (2.something Ghz AMD) replacing the
    S3 Graphics Pro Savage and under MSDOS 6.2 the original applications
    work fine (full screen of course). However under XP Home they only
    work in full screen mode no matter what the parameters in the
    Properties box. What happens is that (for the main program for
    example) it opens as a full screen, I hit Alt-Enter and it becomes a
    window...so far so good...but then when I hit any key at all except
    the right and left arrows and the shft, alt, and ctrl, it carries out
    the instruction appropriate to that key in the application and goes to
    full screen immediately. I can continue working in full screen and
    Alt-Tab functions correctly and Alt-Enter brings me back to the
    window. Interestingly the Edit|Mark and Paste work fine in the window.

    This is a sort of limp-along solution as it at least allows me to
    maintain my database, the point of the application, albeit with lots
    of clanging when it switches from window to full screen and back
    again. It also has the downside that the G200 doesn't seem to be as
    good at rendering the text throughout (even in Agent for ex) as the S3
    card was.

    Any ideas?

    Try a more modern Matrox card perhaps?
    ********************


  • Next message: Richard: "Re: In answer to RW - again (was: Sorts (revised)"