diff --git a/doc/Vintage_BASIC_Users_Guide.html b/doc/Vintage_BASIC_Users_Guide.html index 4b52b84..97d76ad 100644 --- a/doc/Vintage_BASIC_Users_Guide.html +++ b/doc/Vintage_BASIC_Users_Guide.html @@ -5,11 +5,11 @@
© 2009–2017, Lyle
+ © 2009–2017, Lyle
Kopnicky Congratulations on installing Vintage BASIC! You are now the
proud owner of a copy of a versatile tool for BASIC development. Vintage BASIC is a language derived from the Microsoft's
+ Vintage BASIC is a language derived from Microsoft's
original Altair
BASIC.
It would feel right at home on a Commodore 64. The design tensions of
@@ -21,7 +21,7 @@ Control flow will end when your program reaches the end of the
lines, when an Vintage BASIC User's Guide 1.0.3
BASIC
END or STOP
statement is encountered, or when an error occurs. Errors may occur
-during parsing or execution, and always being with an exclamation point
+during parsing or execution, and always begin with an exclamation point
(!).BASIC
Syntax
@@ -159,7 +159,7 @@ BASIC
Precision depends upon your platform, but is generally IEEE bin32
(single precision). There are no special IEEE values, like +Inf or NaN.
String literals are enclosed in quotes, e.g.
"HELLO".
-There are no escape sequences. To generate a quote character, append a CHR$(34).
+There are no escape sequences. To generate a quote character, use a CHR$(34).
BASIC
are considered the same.
$, and integer
variables with a %, while floating-point
@@ -186,7 +186,7 @@ BASIC
value in
A% without a conflict.A(3) is the value from
@@ -214,7 +214,7 @@ BASIC
keywords, so they cannot be used in variable names. See the list of
builtin functions below.
(expr)-
exprBASIC
value of the second expression. Division by zero is an error.
+ expr2
+
- expr2BASIC
from the value of the first expression.
= expr20
-if the two strings or numbers are equal, -1
+-1
+if the two strings or numbers are equal, 0
if they differ.<> expr2-1
-if the two strings or numbers are equal, 0 if
+0
+if the two strings or numbers are equal, -1 if
they differ.< expr2BASIC
> expr2-1 if
-the first string or number is less than the second, 0
+the first string or number is greater than the second, 0
otherwise. (Strings are compared alphabetically.)>=
expr2-1
-if the first string or number is less than or equal to the second, 0
+if the first string or number is greater than or equal to the second, 0
otherwise. (Strings are compared alphabetically.)NOT exprBuiltin
float
)
Builtin
error, while numbers too large will result in the whole string being
returned.
RND(float)Builtin
SQR(float)STR(float)STR$(float)PRINT, but
without the trailing space.BASIC
variable names that may be used in the expression.
While the standard allows only for numeric functions of a single
floating-point variable, Vintage BASIC permits string, integer or
-floating-point functions ofany number and type of arguments. Example:
DEF
+floating-point functions of any number and type of arguments. Example: DEF
FN F(X) = X^2 + 3*X - 4. The argument variables shadow
the original variables; that is, the value of the original variable
with the same name will be restored after the function is evaluated.
@@ -467,7 +467,7 @@ BASIC
literal values; they can be any expression. Attempting to re-dimension
an array will produce an error. Arrays can be referenced without
dimensioning; in that case they are automatically created as
-one-dimenional arrays with an upper bound of 10. Example:
DIM
+one-dimensional arrays with an upper bound of 10. Example: DIM
RX$(20, 5) creates a two-dimensional, 20x5 array of
strings.ENDBASIC
value of the control variable has not exceeded the value
of the end
expression, control will continue with the statement following the
FOR.
-But if the value of the control value exceeds end (greater than
+But if the value of the control variable exceeds end (greater than
end if increment
is positive, less than end if increment
is negative), control will pass to the statement following the NEXT.
@@ -539,7 +539,7 @@ BASIC
will be re-prompted. The user will also be re-prompted (with a double
question mark) if the user enters insufficient values to fill the
variables. The variables may be scalar or (indexed) array variables.
-Examples:
INPUT "NAME AND AGE";NA$(I), AG(I).INPUT "NAME AND AGE";NA$(I), AG(I).
LET var = exprLET keyword is optional.BASIC
FOR
statement to determine whether the loop should be repeated. If the
termination condition has not been met, control will proceed with the
-line following the FOR statement. If the
+statement following the FOR statement. If the
termination condition has been met, control will proceed with the
statement following the NEXT. How does the
interpreter determine which FOR goes with the
@@ -599,6 +599,8 @@ BASIC
with a leading space, so that they take up the same amount of space as
negative numbers. Example:
PRINT "TURN";TU, "YOU
HAVE";LI;"LIVES LEFT".?PRINT.
RANDOMIZERND
function, based on the number of seconds that have elapsed since
@@ -638,9 +640,9 @@ BASIC
statement was designed to send control to that solitary
END
statement. Vintage BASIC imitates this behavior by treating the STOP
statement as an END. This is unlike Microsoft
-version of BASIC, in which STOP is used to
+BASIC, in which STOP is used to
terminate the program without clearing variables, so that they can be
-inspected for debugging purpose, and the CONT
+inspected for debugging purposes, and the CONT
statement can resume control where it left off. That wouldn't be very
useful in Vintage BASIC, since it does not have a read-eval-print loop.Error
!REDIM'D ARRAY IN LINE labelDIM statement was encountered,
but the array has already been dimensioned, either explicitly (through
-anorther DIM statement), or automatically
+another DIM statement), or automatically
(through reference to the array).!RETURN WITHOUT GOSUB ERROR IN LINE labelRETURN statement was