Skip to main content

I just bought a copy of OpenQM to test some of my applications.  My first program to test is a main menu.  In this MVBASIC program I draw a character outline around the border of the screen, the fill in the menu options.  The program then calls a suproutine called XPRMT.  I use the XPRMT subroutine for all keyboard input in all programs, it is the only INPUT statement in my systems.  One of the parameters that I pass to XPRMT is PSTR which is the prompt string which XPRMT prints at @(0,24), the bottom of the screen.  In UniVerse this routine works perfectly, but in OpenQM it was displaying the PSTR value over the bottom line of the border which is row 23.  My last line printed in the menu program was the log off selection at row 22.  After much code changing in XPRMT, I modified the menu program to display the menu selections first and the draw the border and that presented everything properly.  What I see is that even though the XPRMT instruction is "PRINT@(0,24):PSTR;", PSTR is being printed at the next row after the last PRINT from the calling program.  Can anyone explain this and does anyone have a solution to get XPRMT to print the prompt string where the code specifies?

Thanks,

Dale



------------------------------
Dale Kelley
I'm it!
Dale W Kelley Inc
Hohenwald TN US
------------------------------

I just bought a copy of OpenQM to test some of my applications.  My first program to test is a main menu.  In this MVBASIC program I draw a character outline around the border of the screen, the fill in the menu options.  The program then calls a suproutine called XPRMT.  I use the XPRMT subroutine for all keyboard input in all programs, it is the only INPUT statement in my systems.  One of the parameters that I pass to XPRMT is PSTR which is the prompt string which XPRMT prints at @(0,24), the bottom of the screen.  In UniVerse this routine works perfectly, but in OpenQM it was displaying the PSTR value over the bottom line of the border which is row 23.  My last line printed in the menu program was the log off selection at row 22.  After much code changing in XPRMT, I modified the menu program to display the menu selections first and the draw the border and that presented everything properly.  What I see is that even though the XPRMT instruction is "PRINT@(0,24):PSTR;", PSTR is being printed at the next row after the last PRINT from the calling program.  Can anyone explain this and does anyone have a solution to get XPRMT to print the prompt string where the code specifies?

Thanks,

Dale



------------------------------
Dale Kelley
I'm it!
Dale W Kelley Inc
Hohenwald TN US
------------------------------

Just checking it isn't a typo in your program:

PRINT@(0,24):PSTR;

should be

PRINT@(0,24):PSTR:



------------------------------
Peter Falson
Rocket Internal - All Brands
------------------------------

I just bought a copy of OpenQM to test some of my applications.  My first program to test is a main menu.  In this MVBASIC program I draw a character outline around the border of the screen, the fill in the menu options.  The program then calls a suproutine called XPRMT.  I use the XPRMT subroutine for all keyboard input in all programs, it is the only INPUT statement in my systems.  One of the parameters that I pass to XPRMT is PSTR which is the prompt string which XPRMT prints at @(0,24), the bottom of the screen.  In UniVerse this routine works perfectly, but in OpenQM it was displaying the PSTR value over the bottom line of the border which is row 23.  My last line printed in the menu program was the log off selection at row 22.  After much code changing in XPRMT, I modified the menu program to display the menu selections first and the draw the border and that presented everything properly.  What I see is that even though the XPRMT instruction is "PRINT@(0,24):PSTR;", PSTR is being printed at the next row after the last PRINT from the calling program.  Can anyone explain this and does anyone have a solution to get XPRMT to print the prompt string where the code specifies?

Thanks,

Dale



------------------------------
Dale Kelley
I'm it!
Dale W Kelley Inc
Hohenwald TN US
------------------------------

Your use of @(0,24) suggests that you are expecting a screen size of at least 25 lines. The default screen size for OpenQM is 24 lines. Use the TERM command or equivalent environment variable to change this.



------------------------------
Martin Phillips
Rocket Forum Shared Account
------------------------------