1) 3/11/2004 5080650806 50806.html">PICTURE ON Does Not Capture Picture after WINDOW Change (50806) - The PICTURE ON/OFF statements cannot capture graphics sent to several different WINDOWs. PICTURE ON only captures a graphics image in the WINDOW that is active when the PICTURE ON statement is executed. If the WINDOW being output to is changed, or...
2) 3/11/2004 4939949399 49399.html">Example Allocating Memory in MASM Released by Basic's SETMEM (49399) - The two programs shown below demonstrate how a Basic program can use SETMEM to free memory for an assembly routine to get dynamic memory. This information about interlanguage calling applies to QuickBasic versions 4.00, 4.00b, and 4.50 for MS-DOS, to...
3) 3/11/2004 4913049130 49130.html">"SELECT Without END SELECT" Flagged in Wrong Place by QB 4.00 (49130) - The QB.EXE editor in QuickBasic Versions 4.00, 4.00b, and 4.50 flags the error "SELECT without END SELECT." However, the editor does not correctly locate and highlight the area of the code where the error occurs. The editor incorrectly places the...
4) 3/9/2004 4637646376 46376.html">How to Pipe ( | ) Input into a QuickBasic Program (46376) - It is possible to use DOS redirection to pipe output from a program into a QuickBasic program. To do this, the QuickBasic program must CALL INTERRUPT 21 Hex, with function 3F Hex, to get the input from the DOS device CON. This information applies to...
5) 3/9/2004 4353143531 43531.html">INKEY$ Does Not Trap Extended Keys; Must Use Softkeys (43531) - The INKEY$ function does not produce a unique KeyboardFlag + Scancode for the extended keys on the enhanced or extended 101-key keyboard. For example, INKEY$ produces the same 2-byte code for the LEFT ARROW key on the numeric keypad as for the...
6) 3/9/2004 4352743527 43527.html">Basic Program to Read Characters from the Screen into a String (43527) - The program below demonstrates how to use the PEEK statement to read text that is printed on the screen into a Basic string variable. The program PEEKs video memory (at segment B000h) to read the characters from the screen. (Note: An easier method to...
7) 3/9/2004 4266742667 42667.html">Accessing Huge Array (Larger Than 64K) Can Hang 386 Computers (42667) - The program shown below, which works correctly on computers using 8088, 8086, and 80286 processors, causes many computers using the 80386 processor to hang when a huge array exceeds 64K and leaves a gap with an odd number of bytes in far heap. If the...
8) 3/1/2004 4266042660 42660.html">QuickBasic Updates Screen Faster than CGA Can Update (42660) - Below is an example of a basic program that attempts to print data on a screen. Most video systems are fast enough that all of the information can be printed to the screen. The Color Graphics Adapter (CGA) system, however, does not update the screen...
9) 2/17/2004 4144741447 41447.html">Examples of Loading MS-DOS Directory Listing into an Array (41447) - This article discusses three different methods of putting an MS-DOS disk directory listing into a string array. Example 1 demonstrates how to use the DIR$ function to read a directory listing into an array. This is probably the simplest method for use...
10) 2/17/2004 3938639386 39386.html">Error Message Explanations When Using COM1: and COM2 (39386) - The following error messages can appear when using the "COM1:" or "COM2:" device: Error Message Number ------------- ------ File Already OPEN (Error 55) Bad File Name or Number (Error 52) Out of Memory (Error 7) Device Unavailable (Error 68) Device...
11) 2/17/2004 4054740547 40547.html">BC.EXE Will Not Compile Files Named USER.* (40547) - The Basic compiler (BC.EXE) will not compile any source file with a name of USER.* (e.g. USER.BAS, USER.TXT, etc.). Instead, it will take input from the console and report any errors on each line as they are entered. BC.EXE will create an object file...
12) 2/17/2004 4104341043 41043.html">No Warning If GET or SEEK Past End of Random File; Use EOF(n) (41043) - When reading a random access file with the GET statement, if you GET or SEEK beyond the number of existing records, then no "END OF FILE" error occurs. The records that GET reads after the end of a random file are simply blank or set to zero. To avoid...
13) 2/17/2004 4018840188 40188.html">FRE(-2) Returns Fixed Lowest Value Even After Stack Shrinks (40188) - The FRE(-2) function returns in bytes the amount of unused stack space available for the program. However, when the stack-space allocation decreases, the value returned by FRE(-2) stays fixed at the smallest size that was unused by the stack up to...
14) 2/17/2004 3887838878 38878.html">Calling a BIOS Interrupt to Determine the Scan Code of a Key (38878) - This article includes an example of a CALL INTERRUPT routine that determines the scan code of a key. This program only reports the scan codes for keys that are supported in the ROM BIOS of the machine. Keys such as F11 and F12 do not return scan codes...
15) 2/17/2004 4015440154 40154.html">QB.EXE "OUT OF MEMORY" after SHELL to DOS PRINT, MODE, ASSIGN (40154) - The MS-DOS PRINT, MODE, and ASSIGN commands should not be run from the QuickBasic environment during a SHELL or from a SHELL statement in an executable program. The MS-DOS PRINT, MODE, and ASSIGN commands remain resident in memory after being invoked....