I program in QBasic 1.1 and QuickBASIC 4.5 - on a 640 x 480 16 color DOS 6 machine.
So, I would like to upgrade: I have a Windows 98 laptop (and a 95, and a Me, but I want it to work on all of them) with a 800 x 600 display and 16 bit color. So, I'd like to make programs for the 98 laptop, and would use QBasic, but I want more colors and resolution. Any suggestions? I am looking for a programming language similar to QBasic, the number one sticking point being, it must compile to a .exe, as QBasic does. Need that feature, but I'd like to upgrade to compliling Windows programs instead of DOS programs.
We already discussed Visual BASIC (my complaint with it being cost) and BBC Basic, my complaints with it being: lack of real compiling, cost, and the fact that Benryves permanently associated it in my mind with the 2009 British movie "Micro Men". XD
Thank you!
As we discussed in IRC, QBasic and QuickBASIC are different products - QuickBASIC is a fully-fledged development environment (capable of compiling to executables and loading external libraries, but is a commercial product), whereas QBASIC is a simple interpreter that was bundled with DOS.
As you have access to QuickBASIC you can make use of external libraries to improve its fairly primitive graphics support.
UGL and
Future.Library may be of interest.
Yeah well, lets not discuss that here.
I may be compelled to use QuickBASIC, but, what is the implication of that? Will the programs I make, if I use those libraries, still work with DOS, and will they still be 16-bit programs?
Yes to both questions. Such libraries provide access to
VESA BIOS Extensions (which most video cards should support; I'm sure you're familiar with them from selecting higher resolution video modes in DOS games).
QuickBASIC's native drawing operations will likely be incompatible with these video modes so you'll need to switch to using the routines provided as part of the library.
Legacy video modes are no longer supported in Windows Vista or later - this means that graphical DOS programs (or full-screen text mode programs) will no longer run natively in Vista or later. (To be fair they ran pretty badly in Windows XP too with the palette usually being badly corrupted). DOSBox will run such programs well, however.
If you're already proficient in QuickBASIC, I strongly recommend exploring Visual Basic .NET. If your school is registered with Microsoft's DreamSpark program, you can register and download the full Visual Studio Professional Edition in just a few minutes (well, the downloading might take more than a few minutes). If not, Microsoft may still accept a photocopy of your student ID as proof of you being a student. There's also the free
Visual Studio Express, which will likely provide the majority of the functionality you could want, and yes, it compiles executables.
You should also consider looking at
DOSBox as a means to use QuickBASIC on modern PCs.
Finally, there's the
FreeBASIC project, which attempts to provide a modern clone of QuickBASIC.
I would strongly recommend trying Visual Studio Express. Whilst the older incarnations of Basic are interesting from a historic perspective the motives for persisting with this platform may be questionable in 2013. VisualBasic will also provide a useful conduit for developing for MS Office products such as Excel. Having said all of that, there is nothing wrong with what you are attempting if you plan to write legacy code for an old standalone box running an old OS: is there any compelling motive for this ?
I only have a Win 98 laptop, is that a good reason to program for one? I also have a DOS 5, a DOS 6,a Win 95, and a Win Me, if that helps. But I DO NOT HAVE a laptop "from 2013" - or even 2002. I cannot program for a machine I don't have. I am typing this on my mother's Samsung Galaxy Tab.
Do you have any other machines that aren't laptops that you can use? Like a desktop running XP or 7?
Any version of Visual BASIC.NET can target a system running .NET Framework 2.0 (or 1.1 for older versions of VB.NET), which will run on Windows 98 still, it seems.
Yeah, for desktops I have a 2K, a XP, and a Vista. But they are currently in storage, due to our having recently moved. Plus, I have a ton more access to a laptop than a desktop, anyway.
Later:
I found a download of Visual Basic For MS-DOS 1.0 on the site benryves linked to. I'm currently checking that out, plus the other downloads he linked to look promising (the QB libraries).
Not a bad place to look or be inspired. As someone said, benryves is a rock-god of hobbyist electronics and the UK's answer to Kerm.