TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: QBasic 4.5 on Android

234 pointsby thatha7777over 1 year ago
My father, who hung up his coding hat in the &#x27;80s, recently entered the golden years of retirement.<p>One day, he mused about the simplicity and educational value of BASIC and wondered if there was a way to share its charm using today&#x27;s technology.<p>Specifically, he was looking for an Android application that could run BASIC so he could &quot;teach programming while drinking coffee with [his] friends&quot;.<p>Thus, BabaBASIC was born—a hat tip to &#x27;Babá&#x27;, the Greek term for &quot;dad&quot;, and a reminder of who sparked this journey.<p>The first iteration of this was made over a 10-hour all-nighter using existing open-source libraries.<p>I ended up forking the BASIC-like implementation to make it more byte-for-byte compatible with QBasic 4.5, which is what my father used back in the 90s to teach me programming.<p>This is the first thing I have ever made of which he approves.

32 comments

jamon51over 1 year ago
I love this so much. I got my start on QBasic and made hundreds of games between 12 and 19 years old. I eventually left it behind, but always had a fond spot in my heart for it.<p>Last year, when I was going to rebuild my personal website, someone on Twitter challenged me: “Build it in QBasic, you coward”. I was like “haha…wait, can I?”<p>And I did! It runs on QB64 on a DigitalOcean droplet.<p>Here’s the source:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;jamonholmgren&#x2F;jamon.dev">https:&#x2F;&#x2F;github.com&#x2F;jamonholmgren&#x2F;jamon.dev</a><p>Check app.bas for the QBasic code.<p>I may eventually release a CLI and library that lets people spin up a QB64 website in little time.
评论 #38210168 未加载
评论 #38206585 未加载
评论 #38211967 未加载
评论 #38206372 未加载
stuaxoover 1 year ago
This is nice, I&#x27;d like to know the changes you made.<p>I started a discussion on GitHub, I think the killer feature of QBasic and even more so QuickBasic was the help and reference.<p>Even the ASCII table was fun to look at and go grab characters, you could imagine something analogous for Unicode.<p>Similarly for all the stuff in there working out modern equivilents.<p>The annoying stuff was how much hassle it was to do extra things like handle the mouse pointer via assembly, it would be good if this has extensions for touch etc all documented.
评论 #38204160 未加载
评论 #38206257 未加载
评论 #38204580 未加载
评论 #38204071 未加载
评论 #38205554 未加载
davexunitover 1 year ago
Awesome! QBasic was my first programming language, long obsolete by the time I discovered it but I had no idea. Had a lot of fun. Fond memories of browsing Pete&#x27;s QB site.<p>My favorite programs from those days are both games. Mysterious Song[0], a JRPG, and Monospace[1], a horizontally scrolling shmup.<p>[0] <a href="http:&#x2F;&#x2F;www.petesqbsite.com&#x2F;sections&#x2F;zines&#x2F;qbgamer&#x2F;issue1&#x2F;re_msong.html" rel="nofollow noreferrer">http:&#x2F;&#x2F;www.petesqbsite.com&#x2F;sections&#x2F;zines&#x2F;qbgamer&#x2F;issue1&#x2F;re_...</a><p>[1] <a href="http:&#x2F;&#x2F;www.petesqbsite.com&#x2F;reviews&#x2F;action&#x2F;mono.html" rel="nofollow noreferrer">http:&#x2F;&#x2F;www.petesqbsite.com&#x2F;reviews&#x2F;action&#x2F;mono.html</a>
评论 #38204889 未加载
评论 #38207089 未加载
ronyehover 1 year ago
Mid 90s qbasic was how I learned to program!<p>My friend and I extended the nibbles &#x2F; snake game ... I wonder if I can get it to run on your qbasic implementation:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;ronyeh&#x2F;nibbles">https:&#x2F;&#x2F;github.com&#x2F;ronyeh&#x2F;nibbles</a>
评论 #38211728 未加载
k1nsover 1 year ago
&gt; I couldn&#x27;t find anything that I felt comfortable recommending to him, so I pulled an all-nighter and made this.<p>All-nighters for an employer are one thing, but I have fond memories of exploration and discovery in computing while burning the midnight oil. There is something about programming that just excites the mind in a way that causes time to fly.<p>I hope your dad enjoys his new BASIC app! Really cool of you.
barbazooover 1 year ago
&gt; My father, who hung up his coding hat in the &#x27;80s, recently entered the golden years of retirement.<p>Totally off topic but what I would give for (a) my father being the kind of father I want to maintain contact with and (b) to share a common interest with me, someone that I could talk to about tech. You&#x27;re a lucky person!
ciesover 1 year ago
I learned with but hated QB, GW-B and MSX-B. Why? Because I could not make an &quot;fast&quot; executable (.exe) and the compilers those days (on those platforms) we&#x27;re al costly and impossible for me to come by as a kid.<p>Man you should have seen my eyes light up when someone should me a full opensource, Linux, computer boot up! I CAN STUDY&#x2F;MODIFY EVERYTHING! Muahuahaha.<p>It was a good learning tool, but not as good as LOGO (with the Turtle), of which I later made a clone (KTurtle, part of nearly all Linux distros).<p><a href="https:&#x2F;&#x2F;apps.kde.org&#x2F;nl&#x2F;kturtle&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;apps.kde.org&#x2F;nl&#x2F;kturtle&#x2F;</a>
评论 #38204976 未加载
_1sklover 1 year ago
So cool! When I was at GitLab I modified a CI runner to execute the script section of the CI YAML in VICE, a Commodore BASIC emulator. No particular reason and it wasn&#x27;t useful for anything, but it was pretty fun. <a href="https:&#x2F;&#x2F;gitlab.com&#x2F;jyavorska&#x2F;c64exec" rel="nofollow noreferrer">https:&#x2F;&#x2F;gitlab.com&#x2F;jyavorska&#x2F;c64exec</a>
thisisauseridover 1 year ago
Game of Life but no Gorillas?
评论 #38204232 未加载
jkonlineover 1 year ago
Yeah, but... Can it gorillas.bas?
评论 #38208199 未加载
londons_exploreover 1 year ago
Worth noting that you can also run the original qbasic in dosbox.<p>That&#x27;s handy if you want to run old qbasic code, since typically that code expects to be able to poke hardware registers to do anything beyond what the built in bits of basic can do (for example, adding mouse support or playing sounds beyond beeps).
评论 #38209481 未加载
评论 #38204517 未加载
评论 #38204525 未加载
vunderbaover 1 year ago
This is fantastic. What happens if you peek&#x2F;poke a random memory address though? ;)<p>I grew up on QB 4.5 and was one of the few kids on the block to have access to Microsoft PDS 7.1 which added some crazy (for BASIC) features like inlining assembly.<p>Also, recently watched Stranger Things and was super pleased to see Sean Aston uses BASIC to brute force an access code. Fingers crossed for a basic revival.<p><a href="https:&#x2F;&#x2F;specularrealms.com&#x2F;2021&#x2F;04&#x2F;21&#x2F;strangest-things" rel="nofollow noreferrer">https:&#x2F;&#x2F;specularrealms.com&#x2F;2021&#x2F;04&#x2F;21&#x2F;strangest-things</a>
评论 #38216487 未加载
gabrielsrokaover 1 year ago
I made a super cheesy version of BASIC you can run in a browser. It just does a search and replace from BASIC to JavaScript.<p><a href="https:&#x2F;&#x2F;gabrielsroka.github.io&#x2F;webpages&#x2F;BASIC.html" rel="nofollow noreferrer">https:&#x2F;&#x2F;gabrielsroka.github.io&#x2F;webpages&#x2F;BASIC.html</a><p>Src<p><a href="https:&#x2F;&#x2F;github.com&#x2F;gabrielsroka&#x2F;gabrielsroka.github.io&#x2F;blob&#x2F;master&#x2F;webpages&#x2F;BASIC.html">https:&#x2F;&#x2F;github.com&#x2F;gabrielsroka&#x2F;gabrielsroka.github.io&#x2F;blob&#x2F;...</a>
gramieover 1 year ago
You could also use B4A (<a href="https:&#x2F;&#x2F;www.b4x.com&#x2F;b4a.html" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.b4x.com&#x2F;b4a.html</a>), which compiles BASIC into Java bytecode and has an interface builder -- as well as versions available for iOS, Arduino, and desktop Java. Only the iOS one requires a payment, the others are 100% free.<p>The IDE runs on Windows. The whole thing was developed by one guy who is very active answering questions and providing lots of sample code.
pc2g4dover 1 year ago
I learned programming on QBASIC in the 90&#x27;s, aged 11 or so. My brother and I had dabbled with GW-BASIC, which a more knowledgeable friend used to draw cool-looking rainbows and whatnot on the screen. That same friend taught me the &quot;IF... THEN...&quot; construct and a new world opened up to me. QBASIC&#x27;s built-in help manual was a key resource in getting up-to-speed.
thatha7777over 1 year ago
For everyone who wanted a QuickBASIC 4.5-like documentation feature, there&#x27;s an early version now on the testing channel: <a href="https:&#x2F;&#x2F;play.google.com&#x2F;apps&#x2F;testing&#x2F;io.atha.quickbasic">https:&#x2F;&#x2F;play.google.com&#x2F;apps&#x2F;testing&#x2F;io.atha.quickbasic</a>
steve1977over 1 year ago
Cool stuff! Growing up in the 80s, my first programming language was BASIC on a Commodore 64.<p>This came in handy when I did a commercial apprenticeship in the early 90s, as there was QBasic on the PCs we had and it was a great tool to kill time when there was nothing interesting to do. So I’ll always have some fond memories of QBasic.
mholtover 1 year ago
What a wonderful and heartwarming story! Until that last sentence… I’m so sorry. At the risk of sounding too personal, I imagine many of us here can relate to that with someone in our family.<p>Coming from someone of a similar age who also started with QBASIC, I hope your dad realizes soon what a talented kid he has.
评论 #38208800 未加载
StuGossover 1 year ago
My first game was a version of Space Zap by Midway on a Timex Sinclair 1000 in Sinclair Basic. Recreated in on a Commodore 64 and then in QBasic on an early IBM at work. I still use the Model M keyboard from the IBM to this day.
kramergerover 1 year ago
Looks interesting :)<p>My first introduction to programming was BASIC on some 8-bit home computer. Sometimes I wonder what had happened if I had started with Pascal or Scheme instead.<p>I think a lot of developers own their carrier to BASIC being so accessible.
评论 #38203921 未加载
评论 #38204034 未加载
alekenover 1 year ago
Awesome! A blast from the past!<p>Feature request: could you make SOUND and&#x2F;or PLAY work? :-)
评论 #38208714 未加载
mrozbarryover 1 year ago
I&#x27;m a huge fan. I used to volunteer on allexperts.com to help people with QBasic stuff, before the dawn of stackoverflow and other probably more searchable places.<p>This is wonderful, and i&#x27;ll have to check it out!
评论 #38207465 未加载
flykespiceover 1 year ago
Does it supports graphics?
评论 #38204810 未加载
randombits0over 1 year ago
&gt;This is the first thing I have ever made of which he approves.<p>So no grandkids yet?
评论 #38207251 未加载
thehiasover 1 year ago
Very cool! Check out this software and games archive: <a href="http:&#x2F;&#x2F;qbasic.de&#x2F;" rel="nofollow noreferrer">http:&#x2F;&#x2F;qbasic.de&#x2F;</a>
评论 #38211518 未加载
malermeisterover 1 year ago
This isn&#x27;t as much about the project itself, but I just wanted to say that it sounds like you have a very special relationship with your dad. Cherish it!
评论 #38204829 未加载
baudauxover 1 year ago
For this reason I put bwbasic in <a href="https:&#x2F;&#x2F;www.exaequos.com" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.exaequos.com</a>
warrenmover 1 year ago
I learned on BASIC for the Tandy 102<p>Then moved to QuickBASIC for the Mac<p>Then TurboPascal<p>Then C (via C++, taught by a FORTRAN programmer)<p>BASIC will <i>always</i> hold a sweet spot in my heart :)
评论 #38206976 未加载
pixelpoetover 1 year ago
QB45, those were the days :D
评论 #38211619 未加载
评论 #38208819 未加载
ryanisnanover 1 year ago
Great post, congrats on the release.
评论 #38208810 未加载
e12eover 1 year ago
Impressive project! I remember a friend showed how to render some &quot;demo&quot; style graphics (not a fractal, I believe it was some kind of line-based art) on our pentium. First time I thought the PCs might be the bane of the Amiga (we had an Amiga 2000).<p>On the subject of Android - is it just me, or are there no good, FOSS, off-line capable repls for Android? Ideally I&#x27;d want ruby - but anything in the python&#x2F;js&#x2F;lisp vein that feels like a repl and is FOSS would be of interest?
评论 #38206676 未加载
ciesover 1 year ago
&gt; This is the first thing I have ever made of which he approves.<p>So sad. People from this kind of upbringings are usually very good at &quot;intrinsic motivation&quot;.
评论 #38205038 未加载