The Golden Anniversary of BASIC

Previous topic - Next topic

TI-994A

As many of you may know, the BASIC programming language celebrates its 50th birthday this 1st of May. Since it was originally developed at Dartmouth College, they are celebrating the anniversary with a series of public events, starting on the 30th of April. Here's a link to their dedicated site.

Being a BASIC community ourselves, it's only befitting that we too pay tribute to our programming comrade. And what better way than for us to share some of our fond memories of this wonderful language. I'll kick it off.

I was introduced to BASIC through my first computer, the Texas Instruments 99/4A Home Computer. It came built-in with TI-Basic, along with some very educational manuals. One of its unique peripherals was the solid state speech synthesizer, which could be programmed directly through the BASIC console; something that other BASICs of the time weren't able to do. Here's a sample listing of TI-Basic:

Code (glbasic) Select
100 CALL CLEAR
110 PRINT "Start Program? (Y/N)"
120 CALL KEY (0, K, S)
130 IF K = 89 THEN 160
140 IF K <> 78 THEN 120
150 END
160 CALL SAY ("#READY TO START#")
170 REM start program...


From there, I went on to GW-Basic, QuickBasic, Basic PDS, Visual Basic for DOS, and finally Visual Basic 6.0. Then, about three years ago, while surfing the net in search of BASIC-like programming languages for development on OSX, I stumbled upon GLBasic and PureBasic. While GLBasic's forte is clearly multi-platform, multi-device game programming, PureBasic is more geared towards desktop applications for Windows, OSX, and Linux, supporting game development as well.

Since then, thanks to the bridging syntax of PureBasic, I have been able to make the long-resisted migration to C/C++, and other languages as well, including Objective-C, Java, JavaScript, and PHP.

Today, regardless of the language I may be coding in, I find that my programming practices are still dictated by the BASIC that I had learned more than thirty years ago!

What's your story?  :)
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too!

MrTAToad

I started off with C64 BASIC V2, and then moved onto BlitzMax for the Amiga, followed by BBC Basic for the Archimedes (ironically, I never liked BBC Basic on the BBC Micro machine).

After that I used DarkBasic for the PC (which was quickly followed by DarkBasic Professional) and then the venerable GLBasic.

I have also used PureBasic, VisualBasic 6 and VisualBasic.Net

Have also done a very small amount of coding with Locomotion BASIC.

SnooPI

I started in programming with : GFA BASIC the best basic in the world (in the past of course, now it's GLB  =D)

After that : Assembler ==> C ==> GLB + C

Happy birthday  <3 BASIC <3

Alex_R

My first Basic was from a MSX. It was a very "basic" version of Microsoft. After that great experience I programmed with other languages. Few years ago I was learning Unity in order to produce games for mobiles. But I realize the battery of all mobiles get warm when you play a lot, and I personally don't like this issue. So I decide return to 2D. I did a search in internet looking for a easy language and I found our extraordinary GLBASIC. Heeeeaaaahhh!!!!   :D :D :D :D :D

Moru

#4
GFA basic was really wonderful :-)

I started with Compis basic, some awful buggy thing on the schools Compis computers (Swedish computer). Might have been called COMAL though, not sure it was BASIC. After that I have worked myself through every Basic I could get my hands on. Also did things in 68k assembler, c, c++, COBOL, RPG/400 and so on, lost count over the years :-)

For work I have mostly used RPG/400, Visual basic, GLBasic and PHP in increasing order of usage.
GLBasic mostly for quickly and automatically handling large logfiles and textfiles for batchjobs actually :-)

MrPlow

#5
Sinclair BASIC in 83, make some crude games...LotR room-based adventure, crappy slow platformer, a great art program (wish I still had the code for that!) plus many more...if i had a printer or typewriter I might have sent my Art prog to YS or Sinclair User... lol!

Then triffled with AMOS for Amiga (but the great games, PD and BBS Scenes distracted me!!) 
Then on PC - BASIC on a NIMBUS College comp, VB 6, VBA (ms access and excel), ASP (VBScript), PHP,  some C#, now having great fun with GLB!

Below is my Flappy Game for Sinclair BASIC - (re-posting due to the forum crash)

Code (glbasic) Select


   1 REM OPEN #
   2 PRINT AT 10,10;"LOADING GRAPHICS"
   3 GO SUB 3000
   4 REM a Speccy Conversion by G Plowman ( Gazzapper Games)
   5 BRIGHT 1
   6 PAPER 7
   7 INK 1: CLS
   8 LET hscore=0
  10 PRINT AT 1,0: INK 2: PRINT "\a\a\a\a \a   \a\a\a\a \a\a\a\a  \a\a\a\a  \a  \a"
  20 INK 3: PRINT "\a    \a   \a  \a \a   \a \a   \a \a  \a"
  21 INK 4: PRINT "\a\a\a  \a   \a\a\a\a \a\a\a\a  \a\a\a\a  \a\a\a\a"
  22 INK 5: PRINT "\a    \a   \a  \a \a     \a      \a"
  24 INK 1: PRINT "\a    \a   \a  \a \a     \a      \a"
  26 INK 5: PRINT "\a    \a   \a  \a \a     \a      \a"
  28 INK 6: PRINT "\a    \a\a\a\a\a  \a \a     \a      \a"
  30 PRINT ""
  32 INK 2: PRINT "\a\a\a\a  \a\a \a\a\a\a \a\a\a"
  34 INK 1: PRINT "\a  \a  \a\a \a  \a \a  \a"
  36 INK 3: PRINT "\a\a\a\a  \a\a \a\a\a\a \a  \a"
  38 INK 2: PRINT "\a  \a  \a\a \a \a  \a  \a"
  40 INK 1: PRINT "\a  \a  \a\a \a  \a \a  \a"
  42 INK 4: PRINT "\a\a\a\a  \a\a \a  \a \a\a\a"
  43 PRINT "": INK 0
  48 PRINT "SINCLAIR SPECTRUM CONVERSION"
  49 PRINT "By Gary Plowman 2014"
  50 PRINT
  51 PRINT " PRESS A KEY TO START"
  55 PRINT " (CONTROLS : ANY KEY TO FLY"
  56 INK 4: PRINT AT 19,0;"\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ ."
  60 FOR n=1 TO 30
  62 PRINT AT 1,n;" \a"
  64 PAUSE 5
  66 PRINT AT 1,n;" \b"
  68 BEEP .02,1
  70 PAUSE 5
  75 IF INKEY$<>"" THEN GO TO 200
  80 NEXT n
  82 GO TO 56
  85 PRINT AT 1,n;"  "
200 LET score=0: LET r=1
202 DIM x(10): DIM h(10)
203 LET pipes=1
204 LET fly=12: LET anim=0
205 BRIGHT 1: PAPER 7: INK 2
206 CLS
210 PRINT AT 10,10;"G E T  R E A D Y!"
220 PRINT ""
222 INK 1: PRINT AT 12,10;"  \a"
226 PRINT
227 INK 2: PRINT "      Tap To Fly"
230 IF INKEY$="" THEN GO TO 230
300 REM ****** START **********
302 FOR o=1 TO 10
303 LET h(o)=INT (RND*8)+1
305 NEXT o
306 FOR l=1 TO 10
307 REM LET h(l)=INT (RND*8+1)
308 LET x(l)=25+(l*5)
309 NEXT l
310 GO SUB 1000
600 GO TO 310
999 REM ***********************
1000 REM **** DRAW PIPES
1002 CLS
1010 INK 1: PRINT AT fly,10;"  \a": LET fly=fly+1
1011 INK 3: PRINT AT 19,0;"\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .": PRINT AT 20,0;" G.Plowman - Orig. by D.Nguyen"
1012 IF anim=1 THEN INK 1: PRINT AT fly-1,10;"  \b"
1013 LET anim=0
1016 LET r=r+1
1017 INK 3: PRINT AT 0,2;"SCORE: ";score: PRINT AT 0,20;"HI-SCORE:";hscore
1018 IF INKEY$<>"" THEN LET fly=fly-2
1030 FOR p=1 TO 10
1033 IF INKEY$<>"" THEN LET anim=1
1035 INK 4
1039 LET bh=h(p)*8: IF x(p)<30 AND x(p)>1 AND h(p)>0 THEN PLOT x(p)*8,3*8: DRAW 0,bh: DRAW 8,0: DRAW 0,-(bh)
1040 LET nh=(13-(h(p)))*8: IF x(p)<30 AND x(p)>1 AND h(p)>0 THEN PLOT x(p)*8,150: DRAW 0,-nh: DRAW 8,0: DRAW 0,nh
1041 IF x(p)<1 THEN LET h(p)=INT (RND*8)+1
1042 IF x(p)<1 THEN LET x(p)=40
1050 REM NEXT j
1052 LET x(p)=x(p)-1
1059 IF x(p)=9 AND h(p)>0 THEN LET score=score+1
1070 IF x(p)=12 AND fly>19-h(p) THEN GO SUB 1200
1075 IF x(p)=12 AND fly<19-(h(p)+3) THEN GO SUB 1200
1076 IF fly=20 THEN GO SUB 1200
1080 NEXT p
1100 RETURN
1200 REM **** DEAD ****
1210 PRINT AT 10,4;"OUCH!!"
1220 BEEP 1,7: BEEP 1,-3
1240 PRINT AT 12,4;"HIT ENTER TO RESTART!"
1300 IF INKEY$=CHR$ (13) THEN GO TO 200
1310 GO TO 1300
3000 LET daa=0
3002 FOR n=0 TO 167
3005 READ DAA
3010 DATA 12,18,37,193,254,66,60,0,12,18,37,193,254,126,0,0,0,60,66,64,64,66,60,0,0,120,68,66,66,68,120,0,0,126,64,124,64,64,126,0,0,126,64,124,64,64,64,0,0,60,66,64,78,66,60,0,0,66,66,126,66,66,66,0,0,62,8,8,8,8,62,0,0,2,2,2,66,66,60,0,0,68,72,112,72,68,66,0,0,64,64,64,64,64,126,0,0,66,102,90,66,66,66,0,0,66,98,82,74,70,66,0,0,60,66,66,66,66,60,0,0,124,66,66,124,64,64,0,0,60,66,66,82,74,60,0,0,124,66,66,124,68,66,0,0,60,64,60,2,66,60,0,0,254,16,16,16,16,16,0,0,66,66,66,66,66,60,0,0
3030 POKE USR ("a")+n,daa
3040 NEXT n
3050 RETURN
3060 REM CLOSE #




Comp:
Speccy-48k, Speccy-128k, Amigas, PCs

TI-994A

Quote from: Moru on 2014-Apr-23...Might have been called COMAL though, not sure it was BASIC....

Looks a lot like BASIC though.  :)
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too!

TI-994A

1st May, 2014

Happy 50th Birthday, BASIC!  :booze:

It came and went unnoticed, but here's a worthy write-up from TIME magazine:

Fifty Years of BASIC, the Programming Language That Made Computers Personal
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too!

mentalthink

I started with Amstrad CPC, I rebember 3 months thinking how make a colour character with Symbo After,  :D :D :D , After CPC I get an Amiga but really when I look the Basic comes whit it, (I thik was done for M$), I don't  undesrtand how a Basic was so poor (I don't know about Amos and Blitz).

After 30 years and for this "economical Crisis" I begun again to "program", I find Something called GLbasic but really I bought without know nothing about the lenguaje, today I can say the 60E has been the most best inverted in all my life, Ok I learn for another ways other things but the start point it's GLBasic. THanks.

Longer Live to Basic, and GOTO command  =D =D =D

TI-994A

Quote from: mentalthink on 2014-May-03After 30 years and for this "economical Crisis" I begun again to "program", I find Something called GLbasic but really I bought without know nothing about the lenguaje, today I can say the 60E has been the most best inverted in all my life...

Hi mentalthink. You're right; GLBasic's great, but it's geared more towards game development - a very tough industry for indie developers like us. Sure, you'll get a Flappy Birds once in a while, but otherwise, I see premium quality games being given away for free. Anything above $0.99 is avoided like the plague, and even at that price, we'd need thousands of continual downloads to make a decent living. Can we even afford Apple's yearly $99.00 developer fees?

On the other hand, with applications, we still stand a fighting chance.  8)
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too!

jSmith

@TI: One word - Ads!

I'm using AGK and it makes adding in-app advertising super simple. The AdMob SDK is built-in and ready to use, and trust me when I say - it PAYS.
When your software fails blame it on the hardware.

erico

Quote from: TI-994A on 2014-May-03
...
On the other hand, with applications, we still stand a fighting chance.  8)

It is tough, but I disagree. A good game will make bucks even if it is done in qbasic.

@jSmith I trust you when you say it pays, mind sharing what are your apps that are paying and an approximation on how much?

TI-994A

Quote from: erico on 2014-May-04...I disagree. A good game will make bucks even if it is done in qbasic.

@jSmith I trust you...
Hi erico. Qbasic? Really?

Yes, I'm aware of in-app ads, and the Flappy Birds $50K-a-day-from-ads story, but your game has to be found and downloaded and played, and the ads must be visible or viewed for a certain number of seconds to receive a so-called ad impression in order to receive any sort of minuscule credit.

Of course, it could be viable, and we'd never know unless we tried it ourselves.  :|
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too!

erico

Quote from: TI-994A on 2014-May-05
Hi erico. Qbasic? Really?

Yep, like this: http://www.blackannex.net/
And If I´m not wrong, this game is what started the latest ´syndicate´ trend all around indies.
I just wish Man fight dragon would speed up as this is a WIP for what 3 years at least?
But I´d buy that game.

Also, as I recall, java was never a worth platform for making games till Minecraft arrived to prove it wrongly.

I agree we never know unless we try ourselves, and I guess my opinion don´t count much as I have nothing published so far, with or without ads.

What I thing I see is that the dependency on journalism is getting bigger as a way to show your game to the world.

finnk

I was 12, and the internet was just starting up. My brother gave me his hand-me-down computer and also said I should try Q-Basic.

He never got into it himself, but before I knew it, I was recreating the phone call game from Leisure Suit Larry and learning how to make a game with ASCII characters as graphics.

Later discovered an add-on library called Future.Library. It allowed for VGA+higher graphics. I saw a tutorial online about making basic RPGs with drawn tiles. Characters were improvised with filled circle+lines etc... Later found a program that allowed you to draw images in real time, save them and load them, but it had slow performance.