QBasic was my first programming language. I wrote an "operating system" called QWIN using it when I was 7 years old. It had a fake POST with a rising tone and some atonal beeps followed by a series of unnecessary pauses and prompts before getting to a text-based shell (you read that right - QWIN had no windows) which was a pile of spaghetti driven by IFs and GOTOs with arbitrary labels. I was afraid of GOSUB and loops of all types so the embedded unlicensed Pokemon text adventure was nothing more than a series of fleshed-out decision trees until you reached the end. My screensaver that drew random lines used a static seed for the RNG so it was the same every run. Fun times.
My best good friend still has a copy of it someplace on a floppy disk because we would run it on the computer that he put together out of spare parts on a piece of plywood. Thankfully he has a family and is too busy to dig it up and send it to me so I'm spared the embarrassment that would come with seeing it.
I'm always happy to see projects like this and OHRRPGCE where people did something useful with the language.
I wrote a ton of QBasic / QuickBasic code as a kid. Until I got turned-on to Turbo Pascal it was my jam.
Because QBasic would run on versions of Windows NT that had the NTVDM (virtual DOS machine) I used it as a scripting language on early NT systems I supported. Eventually I moved over to VBScript under Windows Scripting Host when it arrived on the scene.
> I used it as a scripting language on early NT systems I supported
Me too! Well, sort of. Between the ages of 14 and 19 I worked as a part-time helpdesk technician. When I started we used a series of bootable floppies with DOS to use Symantec Ghost. If memory serves two floppies were required - the first had DOS and the requisite NIC driver and the second was universal and merely had GHOST.EXE on it. I developed a bootable USB memory stick image comprising all of the NIC drivers along with Ghost and a series of other useful things like a WinPE environment and maaaaaybe a Linux one via loadlin.exe. I ended up making a boot menu/shell for it in QuickBasic.
It was still in use a year or two after I'd moved to doing software engineering professionally. I wonder whether it's sitting in a drawer someplace on the other side of the country. I also wonder how this thread turned into a chronicle of my youthful programming misadventures :-D
This brought me a wave of nostalgia for the old Qbasic "operating system" projects, of which there were many. This site has a lot of reviews and screenshots:
It was a popular style of project. Some even implemented their own programming languages so they could multitask applications written for them by running lines from each app in a round-robin fashion.
I did something very similar as a kid - a bunch of almost like DEMOSCENE stuff (simple line rotations, psetting all over the place, doppler sound effects, etc.) before dropping the user into a TUI with little games, etc.
I remember first reading about the DATA command in the IDE built-in help (what a fantastic resource) and laboriously copying my drawings of monsters on graph paper into lines of comma-delimited ones and zeroes in DATA statements.
Since we had a copy of QuickBasic 4.5 I was able to compile it to an EXE and place it in the AUTOEXEC.BAT - fun times!
Kindred spirits! Me discovering that QuickBasic was able to liberate my proggies (as I called them for a brief stint) from the confines of the editor by compiling them to EXEs was one of the happiest moments of my young computer life.
Hacking EXPLORER.EXE and changing the Start Menu side graphic with Borland Resource Workshop was another notable one.
Love it. One fun hack that I figured out as a kid was that while you couldn't get rid of the mouse in Win9x - you could deliberately create a completely transparent "CUR" file.
Watching an adult try to navigate in Windows with an invisible mouse was like the digital equivalent of using a dowsing rod to find water.
I wanted to share a project I’ve been building for decades The Labyrinth of Time’s Edge, a massive handcrafted text adventure written in QBasic. Yes, QBasic in 2025. The game currently spans over 3,600 interconnected rooms, with unique NPCs, branching pathways, cursed villages, haunted castles, and secrets hidden across an ever-growing world. Every room is written by hand. Every description is crafted to spark the imagination. It’s built to run on the barest of systems, and it will always remain free to download and play. Why QBasic? Because simplicity has power. Modern engines demand assets, shaders, and endless pipelines. QBasic lets me focus on what text adventures do best imagination, atmosphere, and story. My philosophy is to expand outward rather than upward: instead of inflating systems, the Labyrinth grows through new areas, new lore, and new journeys, ensuring it always feels alive and endless.
Inform6 would set these rooms in hours...
Just create a Room class, which is something done in miliseconds (basically
a room with a 'has light' atrribute), and being creating objects like crazy
until the v8 Z-Machine gets exhausted (very difficult as it has been pumped up to great limits).
Also the game would run on PC's, Linux/BSD machines, DOS, Classic Macs, Amiga, Ataris, Android, IOS, OSX, RiscOS... everywhere from 16 bit and up.
Super cool. Is it specific to QB64 only? I glanced over the source code and see a lot of stuff that doesn't look like it would be compatible with QBASIC / QuickBasic.
When I saw a zip file for a Windows application I was worried it would do that Windows thing and unzip its contents not in subdirectory. I was pleasantly surprised it did not!
Unfortunately, when I start the exe file in DOSBox Staging it only clears the screen, shows me a blinking cursor, and then does not seem to do anything beyond that.
I took a look through the BAS source file - it doesn't appear to be QBASIC source. If it was compiled with QB64 (which it seems to be) then it's not a DOS compatible binary, it'll be a 64-bit PE so unfortunately only runnable on a 64-bit version of Windows.
OP says that they've been at it for decades so my guess would be it started as a QBASIC game but then was later ported over to use QB64 and its modern features.
QBasic was my first programming language. I wrote an "operating system" called QWIN using it when I was 7 years old. It had a fake POST with a rising tone and some atonal beeps followed by a series of unnecessary pauses and prompts before getting to a text-based shell (you read that right - QWIN had no windows) which was a pile of spaghetti driven by IFs and GOTOs with arbitrary labels. I was afraid of GOSUB and loops of all types so the embedded unlicensed Pokemon text adventure was nothing more than a series of fleshed-out decision trees until you reached the end. My screensaver that drew random lines used a static seed for the RNG so it was the same every run. Fun times.
My best good friend still has a copy of it someplace on a floppy disk because we would run it on the computer that he put together out of spare parts on a piece of plywood. Thankfully he has a family and is too busy to dig it up and send it to me so I'm spared the embarrassment that would come with seeing it.
I'm always happy to see projects like this and OHRRPGCE where people did something useful with the language.
I wrote a ton of QBasic / QuickBasic code as a kid. Until I got turned-on to Turbo Pascal it was my jam.
Because QBasic would run on versions of Windows NT that had the NTVDM (virtual DOS machine) I used it as a scripting language on early NT systems I supported. Eventually I moved over to VBScript under Windows Scripting Host when it arrived on the scene.
> I used it as a scripting language on early NT systems I supported
Me too! Well, sort of. Between the ages of 14 and 19 I worked as a part-time helpdesk technician. When I started we used a series of bootable floppies with DOS to use Symantec Ghost. If memory serves two floppies were required - the first had DOS and the requisite NIC driver and the second was universal and merely had GHOST.EXE on it. I developed a bootable USB memory stick image comprising all of the NIC drivers along with Ghost and a series of other useful things like a WinPE environment and maaaaaybe a Linux one via loadlin.exe. I ended up making a boot menu/shell for it in QuickBasic.
It was still in use a year or two after I'd moved to doing software engineering professionally. I wonder whether it's sitting in a drawer someplace on the other side of the country. I also wonder how this thread turned into a chronicle of my youthful programming misadventures :-D
This brought me a wave of nostalgia for the old Qbasic "operating system" projects, of which there were many. This site has a lot of reviews and screenshots:
http://qbasicgui.datacomponents.net/
Ans this site has more
http://theguiblog.com/
It was a popular style of project. Some even implemented their own programming languages so they could multitask applications written for them by running lines from each app in a round-robin fashion.
I did something very similar as a kid - a bunch of almost like DEMOSCENE stuff (simple line rotations, psetting all over the place, doppler sound effects, etc.) before dropping the user into a TUI with little games, etc.
I remember first reading about the DATA command in the IDE built-in help (what a fantastic resource) and laboriously copying my drawings of monsters on graph paper into lines of comma-delimited ones and zeroes in DATA statements.
Since we had a copy of QuickBasic 4.5 I was able to compile it to an EXE and place it in the AUTOEXEC.BAT - fun times!
Kindred spirits! Me discovering that QuickBasic was able to liberate my proggies (as I called them for a brief stint) from the confines of the editor by compiling them to EXEs was one of the happiest moments of my young computer life.
Hacking EXPLORER.EXE and changing the Start Menu side graphic with Borland Resource Workshop was another notable one.
Love it. One fun hack that I figured out as a kid was that while you couldn't get rid of the mouse in Win9x - you could deliberately create a completely transparent "CUR" file.
Watching an adult try to navigate in Windows with an invisible mouse was like the digital equivalent of using a dowsing rod to find water.
Wonder if there are any QBasic projects still out there.
Windows 10
I wanted to share a project I’ve been building for decades The Labyrinth of Time’s Edge, a massive handcrafted text adventure written in QBasic. Yes, QBasic in 2025. The game currently spans over 3,600 interconnected rooms, with unique NPCs, branching pathways, cursed villages, haunted castles, and secrets hidden across an ever-growing world. Every room is written by hand. Every description is crafted to spark the imagination. It’s built to run on the barest of systems, and it will always remain free to download and play. Why QBasic? Because simplicity has power. Modern engines demand assets, shaders, and endless pipelines. QBasic lets me focus on what text adventures do best imagination, atmosphere, and story. My philosophy is to expand outward rather than upward: instead of inflating systems, the Labyrinth grows through new areas, new lore, and new journeys, ensuring it always feels alive and endless.
Amazing dedication! QBasic was also my first taste of programming.
I wonder what you'd consider the tradeoffs of QBasic vs something intentionally geared towards IF, like Inform[0]?
[0] https://en.wikipedia.org/wiki/Inform
Inform6 would set these rooms in hours... Just create a Room class, which is something done in miliseconds (basically a room with a 'has light' atrribute), and being creating objects like crazy until the v8 Z-Machine gets exhausted (very difficult as it has been pumped up to great limits).
Also the game would run on PC's, Linux/BSD machines, DOS, Classic Macs, Amiga, Ataris, Android, IOS, OSX, RiscOS... everywhere from 16 bit and up.
Super cool. Is it specific to QB64 only? I glanced over the source code and see a lot of stuff that doesn't look like it would be compatible with QBASIC / QuickBasic.
When I saw a zip file for a Windows application I was worried it would do that Windows thing and unzip its contents not in subdirectory. I was pleasantly surprised it did not!
Unfortunately, when I start the exe file in DOSBox Staging it only clears the screen, shows me a blinking cursor, and then does not seem to do anything beyond that.
I took a look through the BAS source file - it doesn't appear to be QBASIC source. If it was compiled with QB64 (which it seems to be) then it's not a DOS compatible binary, it'll be a 64-bit PE so unfortunately only runnable on a 64-bit version of Windows.
OP says that they've been at it for decades so my guess would be it started as a QBASIC game but then was later ported over to use QB64 and its modern features.
to the readers under about 25, qbasic was our roblox.