"BASIC" programming under XP

There’s no source control as far as I can tell.

The FreeBASIC package I linked to earlier has a compiler to produce standalone EXE files. The QuickBASIC environment it’s based on also has a compiler and you can find used copies available for next to nothing.

Thank you, thank you, Thank you!!!

I downloaded and installed this myself as well and I love it. I have some familiarity with VBA in access but always hated that my skills pretty much confined me to basic Access apps. I am running through a tutorial on making your own web browser right now and posting this with the browser I built with the tutorial.

That’s a ‘studio’ feature, isn’t it? Was it included in VB6? If not, is there anything in VB6 that has been pruned out of VB Express?

Generally speaking, if you install an emulator for a BASIC machine such as an Apple II or a Commodore 64, then any program you write in it will run only within the confines of the emulator. If you distribute that program, then anyone wishing to run it will need the emulator as well. If you download a BASIC compiler for your native operating system (say, Windows XP), then you will be able to produce an executable program that will run independently. You can send that executable to anyone else with Windows XP and they can run the program, even if they don’t have the compiler.

There are some exceptions to this rule, but you are unlikely to encounter them accidentally. (For example, some compilers can run on one operating system but produce executables for a completely different operating system; I have a compiler on my GNU/Linux machine which can produce executables for MS-DOS. Another example is that some operating systems can run executables for other operating systems; Windows XP can run most executables compiled for Windows 98 or MS-DOS.)

On the other hand, there’s really no need to create executables from QBASIC files since it runs so stupendously fast on modern machines. I’ve written programs in it that went back and forth between reading one file and writing another that completed, for all I could tell, instantly. So fast I thought it didn’t work. Somebody coming to it with memories of running BASIC on a machine from 20 or 30 years ago risks whiplash.

There is certainly a need to create executables if you want to distribute your program to people who don’t have the QBasic interpreter (i.e., the vast majority of home computer users).

Back in the good old days, there used to be very lightweight shareware BASIC compiler for DOS called ASIC; it’s abandonware now, but is still available for download at a few mirror sites and enthusiast websites.

It produced standalone .com or .exe files, but the language itself was very weird; no if-then-else (so you had to do if-then-goto, with the goto skipping over the else code) and it wouldn’t do mathematical operations with more than two arguments like ‘let a=(b+c) * 2’ (you had to do this in two operations; ‘let a = b+c’ and ‘let a=a*2’).

I think these limitations were largely due to the way that it had a very short translation path to assembler. Despite its shortcomings, I used it to write a database program with a GUI(of sorts) that remained in use for several years.

Not true, as many people, not just Luddites like me, still use Win9x, and it came with it. Then there are all the people who once used Win9x or MS-DOS 5 or 6 who still possess LEGAL copies of QBASIC. But you are correct that, in order to please the most people, an executable is in order.

Now that I’ve had a bit of time to check things out, I wanted to say thanks again.

I found my old Windows95 system disc and copied QBasic from it to my current machine. No problems running it. Of the various suggestions which everyone made, and for which I am really grateful, turns out that QBasic most closely resembles the ‘BASIC’ I knew and loved.

One question I have regarding QBasic (since, unfortunately, the Help file could NOT be read by XP), is how to clear the output display after each run of a program or even between programs. As it stands, the only way I can do that is either to exit the program completely (a pain) or run a little routine that prints 30 blank lines and thereby effectively clears the screen (also a pain). Anyone know the ‘real’ way?

Thanks!

I seem to recall the command to clear the screen is CLS. Put this in as the first line of your program to clear anything left over from the previous run, or the last line to clear the screen as you exit.

Indeed it is! Thanks!

The QB help file isn’t in the standard Windows Help format; but if you copy the help file over to the same directory as QB, you should be able to get help by pressing F1 in the good old way from inside the QB editor.