Second version (July 18):
First version (July 17):
Second version (July 18):
First version (July 17):
Example:
25 PRINT "howdy";SLEEP 0.5IF TRUE THEN 25
Example:
25 PRINT "howdy";SLEEP 0.5IF TRUE GOTO 25
Example:
IF TRUE THEN PRINT "Howdy"
Example:
IF TRUE THEN PRINT "Howdy"; : PRINT " There"
Example:
IF TRUE THEN PRINT "Yup" ELSE PRINT "Nope"
Example:
1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) ) + 12 ON v% GOTO 10,11,123 GOTO 110 COLOR 15 : PRINT "0 "; : GOTO 2011 COLOR 14 : PRINT "1 "; : GOTO 2012 COLOR 13 : PRINT "2 "; : GOTO 2020 SLEEP 0.001 : GOTO 1
Example:
FUNCTION WhereToGo%(v%)SELECT CASE v%CASE 2 : WhereToGo% = 140CASE 5 : WhereToGo% = 190CASE 9 : WhereToGo% = 250CASE ELSE : WhereToGo% = 300END SELECTEND FUNCTION1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) )GOTO EVAL( WhereToGo%(v%) )140 COLOR 15 : PRINT "2 "; : GOTO 300190 COLOR 14 : PRINT "5 "; : GOTO 300250 COLOR 13 : PRINT "9 "; : GOTO 300300 SLEEP 0.001 : GOTO 1
Example:
1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) )IF v% = 0 THEN : COLOR 15 : PRINT "0 ";ELSEIF v% = 1 THEN : COLOR 14 : PRINT "1 ";ELSEIF v% = 2 THEN : COLOR 13 : PRINT "2 ";ELSE : COLOR 12 : PRINT "? ";END IFSLEEP 0.21GOTO 1
Example:
1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) )SELECT CASE v%CASE 0 : COLOR 15 : PRINT "0 ";CASE 1 : COLOR 14 : PRINT "1 ";CASE 2 : COLOR 13 : PRINT "2 ";CASE ELSE : COLOR 12 : PRINT "? ";END SELECTSLEEP 0.21GOTO 1
Example:
WHILE i% < 25
i% = i% + 1
PRINT i%
SLEEP 0.1
WEND
END
Alternative Keyword Delimiters:
Example:
DO
i% = i% + 1
PRINT i%
SLEEP 0.1
IF i% = 25 THEN END
LOOP
Example:
DO
i% = i% + 1
PRINT i%
SLEEP 0.1
LOOP WHILE i% < 25
END
Example:
DO
i% = i% + 1
PRINT i%
SLEEP 0.1
LOOP UNTIL i% = 25
END
Example:
PRINT IFF( TRUE, "Yup", "Nope")
Example:
1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) ) + 1PRINT CHOOSE( v%, "Zero ", "One ", "Two " );SLEEP 0.21 : GOTO 1
Example:
1 v% = VAL( RIGHT$( STR$( INT( TIMER * 10 ) ), 1) ) + 1PRINT NVL$( CHOOSE( v%,"Zero ","One ","Two " ), "??? " );SLEEP 0.21 : GOTO 1
Example:
a% = 5 : b% = 10PRINT MAX( a%, b% )
Example:
a% = 5 : b% = 10PRINT MIN( a%, b% )
This program was reversed-engineered from input (DATA statements) and program output shared by Arnold Kramer in the "BASIC Programming Language" Facebook group.
Well, I then enhanced the program just to demonstrate looping, animation, and colour randomness.
The 2024-07-01 Release of BAM added the two following features to the editor:
Today's new version of BAM provides options to turn off one or both of the features.
Via the "Tools" menu, click on the "IDE Config" menu item. This will open the "IDE Config" window.
Expand the "Coding Editor Configuration" details, and you'll find "Bracket-Matching Options" at the bottom of the group, where you can turn on/off the features via check boxes.