Sunday, July 24, 2022

πŸ†• Discussion forums to support a sought community

I have created three Google Groups, all embedded in the BASIC Anywhere Machine website's related pages, to support BASIC Anywhere Machine users who are interested in joining: 

  • How To
    • A place to have conversations about BASIC Anywhere Machine focused on anything "how to..."
  • Feature Requests
    • A place to request new features (or changes to existing features, and discuss these
  • Bug Reports
    • A place to report and discuss bugs (and bug resolution), of any kind (including documentation.)

Wednesday, July 20, 2022

πŸ†• _CONFIRM and _ALERT

 These two functions, together with the previous _PROMPT function, are the three amigos of web browser "Popup Box" functions.  Click on the following links for documentation: _ALERT, _CONFIRM, _PROMPT

Check out the test program:



Tuesday, July 19, 2022

πŸ†• Added _PROMPT function

The _PROMPT function is used in a program to receive 1 string of characters via the web browser's standard prompt dialog for user input of some text. The running program will wait until the user either submits the text or cancels the dialog (returning no text.)

Syntax

_PROMPT (message, defaultValue)

  • message is a simple literal string or a string expression of any complexity
  • defaultValue is a simple literal string or a string expression of any complexity

Sunday, July 17, 2022

πŸ†• "END OF PROGRAM HAS BEEN REACHED" message.

 To let a user know when a program is done, instead of leaving the user wondering otherwise, BAM! now displays a dialog to let the user know normal end of the program has been reached.




Saturday, July 9, 2022

πŸ†• OCT$ Function

(Using the GW-BASIC User's Guide documentation for OCT$ as a template.)

Purpose:

To convert a decimal value to an octal value.

Syntax:

OCT$(x)

Comments:

  • Although GW-BASIC will round x to an integer before OCT$(x) is evaluated, BAM does not round the number, instead also coverting the numeric part after the point from decimal to octal too.
  • Octal numbers are numbers to the base 8 rather than base 10 (decimal numbers).


Examples:

PRINT OCT$(18)

Result: 22

(Decimal 18 equals octal 22.)

Thursday, July 7, 2022

➕ STEP keyword for LINE statement

 BAM now supports the "STEP" keyword in the LINE statement.


Syntax now supported by BAM:

  • To draw a line from one coordinate to another:
    LINE (x1,y1) - (x2,y2), Color
  • To draw a line from the last pen position to another coordinate:
    LINE - (x2,y2), Color
  • To draw a line from one coordinate to a position relative to the first coordinate:
    LINE (x1,y1) - STEP (x2,y2), Color
For each of the syntax forms above, they can also have the optional "box-fill" parameter.

"box-fill" can be "B" for a hollow box, or "BF" for a filled-in box.

  • To draw a line from one coordinate to another:
    LINE (x1,y1) - (x2,y2), Color, box-fill
  • To draw a line from the last pen position to another coordinate:
    LINE - (x2,y2), Color, box-fill
  • To draw a line from one coordinate to a position relative to the first coordinate:
    LINE (x1,y1) - STEP (x2,y2), Color, box-fill

πŸ’‘New Samples to Highlight BASIC Anywhere Machine for Algorithmic Digital Art

Art-Creating Trigonometry by Hamid Naderi Yeganeh

(Click on the link above to view all images and access related source code and to run the programs.)










Monday, July 4, 2022

πŸ†• STOP statement, and update to END statement

 The STOP statement will terminate a program immediately, displaying "BREAK" in the console window.


The END statement, to indicate the end point of the program, used to end the program without any indication that a running program reached the end (is the program done or is the program busy?  No way to know.)


Now, the END statement prints to the console "Program End."  To indicate that a program has reached the end of the source code, it is a really good idea to include an END statement, letting a user know a program is actually done running.

πŸ“š FUNCTION (and SUB): variable arguments, by default, are "passed by reference"

Preamble A primer on "call-by-reference" vs "call-by-value" BAM HOWTO (BTW:  "call-by-reference" aka "pas...