Menu

Vdos 2018 version problem starting program

General
2018-05-02
2018-05-09
  • Mark Killingback

    Hi.
    I've tried out the new release and run into an issue.

    In the previous release a program I run works fine but in the new one it just freezes up and never gets back to the command prompt but I can shut vdos down from the close icon in the top right.

    The program is Btrieve.exe which is a TSR database program.

    If you need any further info I'm obviously happy to help.

     
    • Jos Schaars

      Jos Schaars - 2018-05-02

      That’s strange; I myself still use only one DOS program, that also uses the Btrieve database manager.
      I wanted to add the Btrieve version number, started Btrieve on its own. Behold, it stalled also!

      It is “Btrieve/N Record Manager Version 5.10a”, and works fine with “btrieve /f:40 /b:12 /u:8 /m:48 /e /c /o”. I have to look into why it doesn’t w/o parameters. Will be one (?) missing, and I suspect causing Btrieve to locate its internal stack in upper memory…

      Jos

       
  • Jos Schaars

    Jos Schaars - 2018-05-02

    It was Btrieve setting its stack to expanded memory (I also meant that, not upper memory); vDos doesn’t expect program code or a stack segment in there. It saves testing where memory is supposed to be (no relocating with a speed gain).

    A temporary quick and dirty modification/test seemed to do it. I then noticed a CPU exception was raised in both (!) versions, caused by an illegal IRET instruction. That puzzles me, seemingly Btrieve/vDos recovers from that, but can you confirm Btrieve ran fine with 2017.08.01 and eventually with what parameters.

    Jos

     
  • Mark Killingback

    It is btrieve version 5.10a. It's being started with the command line:

    btrieve /p:4096 /m:64 /f:32 /b:32

    It works fine on vDos 2017.08.01 but ont he new version it didn't.

     
    • Jos Schaars

      Jos Schaars - 2018-05-07

      It was of course the /e option (don’t use expanded memory) that made the difference.

      If a program locates its stack segment in expanded memory, and accesses the stack by both the
      SS register and another segment register, the memory locations could get mixed up.

      I did a silent update of vDosSetup.exe; it solves this issue (only detected with Btrieve TSR), as a result vDos is a bit slower. Also two other rather exotic issues are fixed.

      Jos

       

      Last edit: Jos Schaars 2018-05-07
  • Mark Killingback

    I've had a chance to test this out and it works fine. Awesome!

    Thanks.

     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.