Ulehakeuse QuickBasic 4.5 whith at much memory available unther 640 kB and adressing extended and expanded memory on Windows XP or Windows 98. News wrote: This is an interesting thread and so I made a DOS boot disk in XP. However after booting in DOS I can't access my partitioned hard drive and I don't know why. The partition was created using Partition Magic and Windows XP assigned the letter G to it. After booting to DOS, nothing is accessible past drive letter C.
- Q - Which QBasic commands do not work when running Windows? A - Almost all QBasic programming commands work when running in a Windows environment.
- Qbasic for Windows 1.0. Windows 10 now reveals everything that it sends to Microsoft. Download qbasic for windows xp; Qbasic download for windows 8.
Microsoft qbasic free download - Nibbles QBasic, Microsoft ActiveSync, Microsoft Word, and many more programs.
What am I forgetting to do? Ray If XP is using NTFS, then I don't think DOS can access this file system. 'Ethan Winer, MVP' wrote in message news:ecFsGDjlCHA.1864@tkmsftngp02. MichaelI wonder what percentage of today's user-programmers even know what that means, leave alone being able to do it. I was astonished to see that Microsoft added an option to make a DOS boot diskette in Windows XP.
They had taken it out in Windows 2000. -Ethan - U s e ' R e p l y - T o ' a d d r e s s o r u n z i p ' F r o m ' t o s e n d m a i l Phil Robyn 27.11.02 21:13. 'News' wrote: This is an interesting thread and so I made a DOS boot disk in XP.
However after booting in DOS I can't access my partitioned hard drive and I don't know why. The partition was created using Partition Magic and Windows XP assigned the letter G to it. After booting to DOS, nothing is accessible past drive letter C. What am I forgetting to do? Ray (This appears to be a free-for-all discussion group now.) The likely reason is because the partitions are formatted for NTFS, or possibly hidden, which the generated WinME (not to be confused with Win2K)boot disk can not read. Now if your drive was partitioned/formatted for FAT32 only, or if you had any visible (use Partition Magic to verify) FAT or FAT32 partitions, it should have no problem reading those partitions. Interestingly, the OS on the boot disk is WinME, and the contents of msdos.sys shows ';W98EBD' instead of the more proper ';FORMAT'.
Also note, for being identified as W98EBD, that boot disk is shamefully dumbed down! All of the useful drivers and useful external DOS commands that a real W98EBD would have, are replaced with keyboard and display drivers, but the config.sys and autoexec.bat are left as zero byte files with no readme file to help.
Todd Vargo (body of message must contain my name to reply by email) Ethan Winer, MVP 28.11.02 7:26. Todd, The 'G' drive partition is FAT32 however when looking in Partition Magic I see that it is a logical partition under a primary partition named simply '.' Which is a designation that cannot be changed. I suppose the question is best suited for Power Quest tech support although I was hoping one of my fellow programmers on this NG had a quick answer.
I don't really think the question is so far off topic as XP does not run QB45 as it should and we are discussing solutions to that problem. Ray 'Todd Vargo' wrote in message news:#GatB7qlCHA.1928@tkmsftngp07. Todd Vargo 28.11.02 18:35. 'Ray' wrote: ToddThe 'G' drive partition is FAT32 however when looking in Partition Magic I see that it is a logical partition under a primary partition named simply '.' Which is a designation that cannot be changed. I suppose the question is best suited for Power Quest tech support although I was hoping one of my fellow programmers on this NG had a quick answer. Contacting support should be the prefered choice.
However, I feel they will want more information than was provided here. Such as: Where is the parent partition located? Is it Extended or ExtendedX? Sorry, I'm not here to field PQ tech support issues.
Microsoft Quickbasic
I don't really think the question is so far off topic as XP does not run QB45 as it should and we are discussing solutions to that problem. I assume you object to my observation below, unfortunately, I fail to see a connection between QB45 operation in XP, with partition accessibility.:-( (This appears to be a free-for-all discussion group now.) - Todd Vargo (body of message must contain my name to reply by email) P.S. Sorry if I have offended anyone by posting to this group without providing clear cut solutions to these problems.
Michael Mattias 29.11.02 6:00. 'Ray' wrote in message news:%MqF9.188063$Up6.35242663@twister.nyc.rr.com. I don't really think the question is so far off topic as XP does not run QB45 as it should and we are discussing solutions to that problem. Not that I plan on firing up QuickBASIC any time in the near future, but when you say, 'XP does not run QB45 as it should' do you mean.
The IDE will not run? The IDE runs to the exent you can edit, save and compile, but you cannot compile & run from the IDE? Programs compiled with QB 4.5 will not run on on XP machines (compiled for use with/without runtime support)? Certain BASIC verbs / functions do not work 'as advertised' when run on an XP-machine? Possible solutions depend on an accurate statement of the problem(s).
MCM Ethan Winer, MVP 29.11.02 6:57. Michael, There are a lot of annoying little quirks in the NTVDM that I hope could be avoided with a simple DOS boot. For instance it is already documented that the NTVDM does not handle chained programs very well. One of my apps does a lot of chaining yet at certain points it crashes the NTVDM with a 'string space corrupt' error. Sometimes the memory corruption is so severe that it crashes the entire XP operating system and that's a real bummer. And it's not the program! This particular program was completed years ago and works flawlessly in every pre-XP version of DOS.
The program also works without error in the QB45 environment running under XP so the best conclusion is that it's an NTVDM bug. Other annoyances: Blinking in PROBAS's XQPRINT call (I believe it's a bios routine) only works one-third of the time on each of the four XP machines I've tested. Dos application printing in XP is also very iffy.
Batch files do not execute in the QB45 dos shell, and so on. In fact there were several bugs that I found when XP was first released and I mentioned all of them on this NG last winter. BTW, there is a new version of NTVDM.EXE dated 8/29/2002 which was included with a recent 25 megabyte Windows update download. Unfortunately it didn't fix anything. Ray 'Michael Mattias' wrote in message news:VpKF9.3885$Kw6.2351552@newssrv26.news.prodigy.com. Michael Mattias 01.12.02 6:50. 'Ray' wrote in message news:5ugG9.185454$gB.37819696@twister.nyc.rr.com.
MichaelOne of my apps does a lot of chaining yet at certain points it crashes the NTVDM with a 'string space corrupt' error. Sometimes the memory corruption is so severe that it crashes the entire XP operating system and that's a real bummer.
And it's not the program! This particular program was completed years ago and works flawlessly in every pre-XP version of DOS. The program also works without error in the QB45 environment running under XP so the best conclusion is that it's an NTVDM bug. Now that we know the problem. Or at least the symptoms of the problem. We can look for a solution.
And would you believe. A few years ago I had that exact same problem with a QB 4.5 program which ran fine on my Win/98 machine - but when run on a Win/NT machine it got a 'string space corrupt' error on a CHAIN statement. I, too, thought it was the operating system: Heavens to Betsy, it surely could not have been a programming error on my part!
- but a little extra effort on my part discovered it was a porgramming error. It was a call to a function in another module in which the number of parameters passed was incorrect. I.e., in the calling module had. DECLARE FUNCTION Foo (param1, param2) AS INTEGER. Bar = Foo(x, y) But in the module containing the called function I had. FUNCTION foo (param1, param2, param3) AS INTEGER Since I had compiled and linked all the modules from the command line, this was not hard to do. Your indication that this runs fine in the IDE would seem to preclude this, but I would check nonetheless.
Can you even have such a mis-declaration in the IDE? What happens if the DECLARE in one module does not match the procedure header in another module. Does the IDE compiler catch this? Might there be a misdeclaration of a function located in a QuickLib? FWIW, the error message 'string space corrupt' in my application was not correct. The correct error should have been 'stack corruption error' (except I don't think that is a valid error code).
But the stack corruption manifested itself as string space corruption.at a later point in the program.; so I guess you can say the error message was at least partly correct. You should also check that you are not overrrunning/underrunning array bounds. If you do not have the array bounds error-checking enabled (not even sure you can disable it from the IDE, but it's easy to disable with the command-line compiler), the memory corruption this causes may not show up until you CHAIN. There are several acknowledged bugs in the QB 4.5 compiler which can cause stack corruption. (BION one of these bugs is the use of the TAB statement in a PRINT TAB(n). Check this link for list of bugs. FROM: 12/26/99 Yes, 'developr' not 'developer' Do a 'find' on 'hang' and you will get you over twenty hits.
(If that link is no good anymore, drop me a note and I will send you the text file. 114Kb uncompressed, will probably ZIP down to 15-20 Kb or so). Lastly, I might try compiling and linking from the command line (bc + link). There ARE differences in the generated code between the IDE and command-line. Bottom line: While Win/XP (with which I have.not. worked with.MS-DOS.
application development) is reportedly less MS-DOS-friendly than it might be, do not automatically blame the operating system. Michael Mattias Tal Systems, Inc. Racine WI Ray 01.12.02 10:53. Michael, Thanks for your suggestions. My very first thoughts were that problem was likely caused by an improper declare so I wrote a program to check for incorrect parameters in all of the modules. This was easy because I've always preferred calls to functions so I only had to check for the keyword 'Call' and then parse and match the results among all occurrences.
As expected, there was nothing wrong. I forgot to mention in my original post that it is not simply chaining. That does work okay by itself. The problems only happen after I shell to my credit card authorization program which accesses the com port. After that things may (or may not) get unstable and I must take the precaution of ending the dos session through Windows before exiting the program. It's very, very weird, Michael.
In this scenario the program runs fine but the system may crash and even reboot when the dos program ends. I have modified the program so the final line of code, after all files have been closed, etc., is 'Shut down with Windows or press Q and cross your fingers.' Again, there is no problem when running from the QB45 environment, only in the compiled version. Ray 'Michael Mattias' wrote in message news:elpG9.4171$Kw6.2681989@newssrv26.news.prodigy.com.