Add files via upload
This commit is contained in:
parent
64c6352265
commit
35131ba393
90 changed files with 1738 additions and 0 deletions
7
Examples/Core/DataTypes/boolean.bas
Normal file
7
Examples/Core/DataTypes/boolean.bas
Normal file
|
@ -0,0 +1,7 @@
|
|||
SUB MAIN
|
||||
DIM X AS BOOLEAN
|
||||
X=FALSE
|
||||
PRINT "X=" + STRING(X)
|
||||
X=TRUE
|
||||
PRINT "X=" + STRING(X)
|
||||
END SUB
|
7
Examples/Core/DataTypes/byte.bas
Normal file
7
Examples/Core/DataTypes/byte.bas
Normal file
|
@ -0,0 +1,7 @@
|
|||
SUB MAIN
|
||||
DIM X AS BYTE
|
||||
X=BYTE(0x80)
|
||||
PRINT "X=" + STRING(X)
|
||||
X=BYTE(127)
|
||||
PRINT "X=" + STRING(X)
|
||||
END SUB
|
5
Examples/Core/DataTypes/complex.bas
Normal file
5
Examples/Core/DataTypes/complex.bas
Normal file
|
@ -0,0 +1,5 @@
|
|||
SUB MAIN
|
||||
DIM C AS COMPLEX
|
||||
C = COMPLEX(2.2, 1.1)
|
||||
PRINT C + C
|
||||
END SUB
|
12
Examples/Core/DataTypes/double.bas
Normal file
12
Examples/Core/DataTypes/double.bas
Normal file
|
@ -0,0 +1,12 @@
|
|||
SUB MAIN
|
||||
DIM X AS DOUBLE
|
||||
X=1.234E+2
|
||||
PRINT "X=" + STRING(X)
|
||||
X=-1234.56E-2
|
||||
PRINT "X=" + STRING(X)
|
||||
X=321.1234567890123
|
||||
PRINT "X=" + STRING(X)
|
||||
X=PI
|
||||
PRINT "X=" + STRING(X)
|
||||
END SUB
|
||||
|
9
Examples/Core/DataTypes/float.bas
Normal file
9
Examples/Core/DataTypes/float.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM X AS FLOAT
|
||||
X=321.1234f // Note the trailing f
|
||||
PRINT "X=" + STRING(X)
|
||||
X=1.234E+2f
|
||||
PRINT "X=" + STRING(X)
|
||||
X=-1234.56E-2f
|
||||
PRINT "X=" + STRING(X)
|
||||
END SUB
|
9
Examples/Core/DataTypes/integer.bas
Normal file
9
Examples/Core/DataTypes/integer.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM X AS INTEGER
|
||||
X=1234
|
||||
PRINT X
|
||||
X=0x80000000
|
||||
PRINT X
|
||||
X=0x7fffffff
|
||||
PRINT X
|
||||
END SUB
|
9
Examples/Core/DataTypes/long.bas
Normal file
9
Examples/Core/DataTypes/long.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM X AS LONG
|
||||
X=123L // Note the trailing L
|
||||
PRINT X
|
||||
X=0x8000000000000000L
|
||||
PRINT X
|
||||
X=0x7fffffffffffffffL
|
||||
PRINT X
|
||||
END SUB
|
9
Examples/Core/DataTypes/short.bas
Normal file
9
Examples/Core/DataTypes/short.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM X AS SHORT
|
||||
X=SHORT(123)
|
||||
PRINT X
|
||||
X=SHORT(0x8000)
|
||||
PRINT X
|
||||
X=SHORT(0x7fff)
|
||||
PRINT X
|
||||
END SUB
|
11
Examples/Core/DataTypes/string.bas
Normal file
11
Examples/Core/DataTypes/string.bas
Normal file
|
@ -0,0 +1,11 @@
|
|||
SUB MAIN
|
||||
DIM X AS STRING
|
||||
X="Backslash character=\\"
|
||||
PRINT "X: " + X
|
||||
X="Quote Character=\""
|
||||
PRINT "X: " + X
|
||||
X="First line\nSecond line"
|
||||
PRINT "X: " + X
|
||||
X=STRING(123)
|
||||
PRINT "X=" + X
|
||||
END SUB
|
15
Examples/Core/DataTypes/variant.bas
Normal file
15
Examples/Core/DataTypes/variant.bas
Normal file
|
@ -0,0 +1,15 @@
|
|||
FUNCTION DBL(X AS VARIANT) AS VARIANT
|
||||
DBL = X + X
|
||||
END FUNCTION
|
||||
|
||||
SUB MAIN
|
||||
DIM V AS VARIANT
|
||||
V=VARIANT(5)
|
||||
PRINT DBL(V)
|
||||
V=VARIANT(5.5)
|
||||
PRINT DBL(V)
|
||||
V=VARIANT(COMPLEX(2.2,1.1))
|
||||
PRINT DBL(V)
|
||||
V=VARIANT("Test")
|
||||
PRINT DBL(V)
|
||||
END SUB
|
13
Examples/Core/Operators/arithmetic.bas
Normal file
13
Examples/Core/Operators/arithmetic.bas
Normal file
|
@ -0,0 +1,13 @@
|
|||
SUB MAIN
|
||||
PRINT "14 + 2 = " + STRING(14 + 2)
|
||||
PRINT "14 - 2 = " + STRING(14 - 2)
|
||||
PRINT "14 * 2 = " + STRING(14 * 2)
|
||||
PRINT "14 / 2 = " + STRING(14 / 2)
|
||||
PRINT "157 % 100 = " + STRING(157 % 100)
|
||||
PRINT "10.0 ** 2.0 = " + STRING(10.0 ** 2.0)
|
||||
PRINT "5 * -3 = " + STRING(5 * -3)
|
||||
|
||||
PRINT "3 * 4 + 2 = " + STRING(3*4+2)
|
||||
PRINT "(3 * 4) + 2 = " + STRING((3*4)+2)
|
||||
PRINT "3 * (4 + 2) = " + STRING(3*(4+2))
|
||||
END SUB
|
24
Examples/Core/Operators/bitshift.bas
Normal file
24
Examples/Core/Operators/bitshift.bas
Normal file
|
@ -0,0 +1,24 @@
|
|||
FUNCTION toHexString(N AS INTEGER) AS STRING
|
||||
DIM S AS STRING
|
||||
DIM I, J AS INTEGER
|
||||
|
||||
S = ""
|
||||
|
||||
FOR I=1 TO 8
|
||||
J = N & 0x0000000f
|
||||
IF (J < 10) THEN
|
||||
S = CHR$(ASC("0") + J) + S
|
||||
ELSE
|
||||
S = CHR$(ASC("A") + (J-10)) + S
|
||||
END IF
|
||||
N = N >> 4
|
||||
END FOR
|
||||
|
||||
toHexString = "0x" + S
|
||||
END FUNCTION
|
||||
|
||||
SUB MAIN
|
||||
PRINT "0x000000f0 << 4 = " + toHexString(0x000000f0 << 4)
|
||||
PRINT "0xf0000000 >> 4 = " + toHexString(0xf0000000 >> 4)
|
||||
PRINT "0xf0000000 >>> 4 = " + toHexString(0xf0000000 >>> 4)
|
||||
END SUB
|
9
Examples/Core/Operators/bitwise.bas
Normal file
9
Examples/Core/Operators/bitwise.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
PRINT "0x0ffff & 0x00ff = " + STRING(0x0ffff & 0x00ff)
|
||||
PRINT "0xff00 | 0x00ff = " + STRING(0xff00 | 0x00ff)
|
||||
PRINT "0xff00 ^ 0x00ff = " + STRING(0xff00 ^ 0x00ff)
|
||||
PRINT "~0xffffffff = " + STRING(~0xffffffff)
|
||||
PRINT "~0xfffffffe = " + STRING(~0xfffffffe)
|
||||
PRINT "~0xffffffffffffffffL = " + STRING(~0xffffffffffffffffL)
|
||||
PRINT "~0xfffffffffffffffeL = " + STRING(~0xfffffffffffffffeL)
|
||||
END SUB
|
26
Examples/Core/Operators/logical.bas
Normal file
26
Examples/Core/Operators/logical.bas
Normal file
|
@ -0,0 +1,26 @@
|
|||
SUB MAIN
|
||||
DIM I, J AS INTEGER
|
||||
|
||||
PRINT "NOT false = " + STRING(NOT false)
|
||||
PRINT "NOT true = " + STRING(NOT true)
|
||||
|
||||
PRINT "false AND false = " + STRING(false AND false)
|
||||
PRINT "false AND true = " + STRING(false AND true)
|
||||
PRINT "true AND false = " + STRING(true AND false)
|
||||
PRINT "true AND true = " + STRING(true AND true)
|
||||
|
||||
PRINT "false OR false = " + STRING(false OR false)
|
||||
PRINT "false OR true = " + STRING(false OR true)
|
||||
PRINT "true OR false = " + STRING(true OR false)
|
||||
PRINT "true OR true = " + STRING(true OR true)
|
||||
|
||||
FOR I=1 TO 10
|
||||
FOR J=1 TO 10
|
||||
IF (I=5 AND J=5) THEN
|
||||
PRINT "I AND J ARE BOTH 5, I=" + STRING(I) + ", J=" + STRING(J)
|
||||
ELSEIF (I=5 OR J=5) THEN
|
||||
PRINT "EITHER I OR J IS 5, I=" + STRING(I) + ", J=" + STRING(J)
|
||||
END IF
|
||||
END FOR
|
||||
END FOR
|
||||
END SUB
|
8
Examples/Core/Operators/relational.bas
Normal file
8
Examples/Core/Operators/relational.bas
Normal file
|
@ -0,0 +1,8 @@
|
|||
SUB MAIN
|
||||
PRINT "(10 = 12) = " + STRING(10 = 12)
|
||||
PRINT "(10 <> 12) = " + STRING(10 <> 12)
|
||||
PRINT "(10 < 12) = " + STRING(10 < 12)
|
||||
PRINT "(10 <= 12) = " + STRING(10 <= 12)
|
||||
PRINT "(10 > 12) = " + STRING(10 > 12)
|
||||
PRINT "(10 >= 12) = " + STRING(10 >= 12)
|
||||
END SUB
|
31
Examples/Core/array.bas
Normal file
31
Examples/Core/array.bas
Normal file
|
@ -0,0 +1,31 @@
|
|||
SUB PASS_ARRAY_1D(ARRAY(3) AS INTEGER)
|
||||
DIM I AS INTEGER
|
||||
FOR I=1 TO 3
|
||||
PRINT "PASS_ARRAY_1D> ARRAY(" + STRING(I) + ")=" + STRING(ARRAY(I))
|
||||
END FOR
|
||||
END SUB
|
||||
|
||||
SUB PASS_ARRAY_2D(ARRAY(3,3) AS INTEGER)
|
||||
DIM I,J AS INTEGER
|
||||
FOR I=1 TO 3
|
||||
FOR J=1 TO 3
|
||||
PRINT "PASS_ARRAY_2D> ARRAY(" + STRING(I) + "," + STRING(J) + ")=" + STRING(ARRAY(I,J))
|
||||
END FOR
|
||||
END FOR
|
||||
END SUB
|
||||
|
||||
SUB MAIN
|
||||
DIM ARRAY1(3) AS INTEGER
|
||||
DIM ARRAY2(3,3) AS INTEGER
|
||||
DIM I,J AS INTEGER
|
||||
|
||||
FOR I=1 TO 3
|
||||
ARRAY1(I) = I
|
||||
FOR J=1 TO 3
|
||||
ARRAY2(I,J) = (I-1) * 3 + J
|
||||
END FOR
|
||||
END FOR
|
||||
|
||||
CALL PASS_ARRAY_1D(ARRAY1)
|
||||
CALL PASS_ARRAY_2D(ARRAY2)
|
||||
END SUB
|
56
Examples/Core/data.bas
Normal file
56
Examples/Core/data.bas
Normal file
|
@ -0,0 +1,56 @@
|
|||
SUB MAIN
|
||||
DIM S AS STRING
|
||||
DIM X AS DOUBLE
|
||||
DIM I, N AS INTEGER
|
||||
|
||||
PRINT "Starting"
|
||||
|
||||
RESTORE dataList1
|
||||
READ S
|
||||
PRINT S
|
||||
READ N
|
||||
FOR I=1 TO N
|
||||
READ X
|
||||
PRINT X
|
||||
END FOR
|
||||
|
||||
RESTORE dataList2
|
||||
READ S
|
||||
PRINT S
|
||||
READ N
|
||||
FOR I=1 TO N
|
||||
READ S
|
||||
PRINT S
|
||||
END FOR
|
||||
|
||||
RESTORE dataList3
|
||||
READ S
|
||||
PRINT S
|
||||
READ N
|
||||
FOR I=1 TO N
|
||||
READ S
|
||||
PRINT S
|
||||
END FOR
|
||||
|
||||
PRINT "Finished"
|
||||
|
||||
datalist1:
|
||||
DATA Data List 1
|
||||
DATA 9
|
||||
DATA 1,2,3
|
||||
DATA 4,5,6
|
||||
DATA 7,8,9
|
||||
|
||||
dataList2:
|
||||
DATA Data List 2
|
||||
DATA 3
|
||||
DATA ABC,DEF,GHI
|
||||
|
||||
dataList3:
|
||||
DATA Data List 3
|
||||
DATA 5
|
||||
DATA "Hello World","Hello, World!"
|
||||
DATA Hello\ World,Hello\\World
|
||||
DATA \"Hello World\"
|
||||
|
||||
END SUB
|
21
Examples/Core/dim.bas
Normal file
21
Examples/Core/dim.bas
Normal file
|
@ -0,0 +1,21 @@
|
|||
SUB MAIN
|
||||
DIM MONTH_ARRAY(12) AS STRING
|
||||
DIM I AS INTEGER
|
||||
|
||||
MONTH_ARRAY(1)="January"
|
||||
MONTH_ARRAY(2)="February"
|
||||
MONTH_ARRAY(3)="March"
|
||||
MONTH_ARRAY(4)="April"
|
||||
MONTH_ARRAY(5)="May"
|
||||
MONTH_ARRAY(6)="June"
|
||||
MONTH_ARRAY(7)="July"
|
||||
MONTH_ARRAY(8)="August"
|
||||
MONTH_ARRAY(9)="September"
|
||||
MONTH_ARRAY(10)="October"
|
||||
MONTH_ARRAY(11)="November"
|
||||
MONTH_ARRAY(12)="December"
|
||||
|
||||
FOR I=1 TO 12
|
||||
PRINT "Month " + STRING(I) + " = " + MONTH_ARRAY(I)
|
||||
END FOR
|
||||
END SUB
|
25
Examples/Core/for.bas
Normal file
25
Examples/Core/for.bas
Normal file
|
@ -0,0 +1,25 @@
|
|||
SUB MAIN
|
||||
DIM I, J AS INTEGER
|
||||
|
||||
PRINT "FOR Loop counting from 1 up to 10"
|
||||
FOR I=1 TO 10
|
||||
PRINT "I=" + STRING(I)
|
||||
END FOR
|
||||
|
||||
PRINT "FOR Loop counting from 1 to 50 in steps of 10"
|
||||
FOR I=1 TO 50 STEP 10
|
||||
PRINT "I=" + STRING(I)
|
||||
END FOR
|
||||
|
||||
PRINT "FOR Loop counting from 99 down to 11 in steps of -11"
|
||||
FOR I=99 TO 11 STEP -11
|
||||
PRINT "I=" + STRING(I)
|
||||
END FOR
|
||||
|
||||
PRINT "Nested FOR Loops, Both Loops are counting from 0 TO 9"
|
||||
FOR I=0 TO 9
|
||||
FOR J=0 TO 9
|
||||
PRINT "I=" + STRING(I) + ", J=" + STRING(J)
|
||||
END FOR
|
||||
END FOR
|
||||
END SUB
|
7
Examples/Core/function.bas
Normal file
7
Examples/Core/function.bas
Normal file
|
@ -0,0 +1,7 @@
|
|||
FUNCTION SUM(X AS INTEGER, Y AS INTEGER) AS INTEGER
|
||||
SUM = X + Y
|
||||
END FUNCTION
|
||||
|
||||
SUB MAIN
|
||||
PRINT SUM(5, 7)
|
||||
END SUB
|
26
Examples/Core/if.bas
Normal file
26
Examples/Core/if.bas
Normal file
|
@ -0,0 +1,26 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
FOR I=1 TO 10
|
||||
IF (I = 1) THEN
|
||||
PRINT "ONE"
|
||||
ELSEIF (I = 2) THEN
|
||||
PRINT "TWO"
|
||||
ELSEIF (I = 3) THEN
|
||||
PRINT "THREE"
|
||||
ELSEIF (I = 4) THEN
|
||||
PRINT "FOUR"
|
||||
ELSEIF (I = 5) THEN
|
||||
PRINT "FIVE"
|
||||
ELSEIF (I = 6) THEN
|
||||
PRINT "SIX"
|
||||
ELSEIF (I = 7) THEN
|
||||
PRINT "SEVEN"
|
||||
ELSEIF (I = 8) THEN
|
||||
PRINT "EIGHT"
|
||||
ELSEIF (I = 9) THEN
|
||||
PRINT "NINE"
|
||||
ELSE
|
||||
PRINT "TEN"
|
||||
END IF
|
||||
END FOR
|
||||
END SUB
|
5
Examples/Core/input.bas
Normal file
5
Examples/Core/input.bas
Normal file
|
@ -0,0 +1,5 @@
|
|||
SUB MAIN
|
||||
DIM S AS STRING
|
||||
INPUT "What is your name?",S
|
||||
PRINT "Hello " + S
|
||||
END SUB
|
9
Examples/Core/repeat.bas
Normal file
9
Examples/Core/repeat.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
I=1
|
||||
REPEAT
|
||||
PRINT I
|
||||
I=I+1
|
||||
UNTIL I=10
|
||||
PRINT "Finished"
|
||||
END SUB
|
8
Examples/Core/sleep.bas
Normal file
8
Examples/Core/sleep.bas
Normal file
|
@ -0,0 +1,8 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
FOR I=1 TO 10
|
||||
PRINT I
|
||||
SLEEP 1000
|
||||
END FOR
|
||||
PRINT "Finished"
|
||||
END SUB
|
26
Examples/Core/throw.bas
Normal file
26
Examples/Core/throw.bas
Normal file
|
@ -0,0 +1,26 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
DIM ERR AS STRING
|
||||
|
||||
TRY
|
||||
FOR I=1 TO 10
|
||||
PRINT I
|
||||
IF (I=5) THEN
|
||||
THROW "I=5"
|
||||
END IF
|
||||
END FOR
|
||||
CATCH ERR
|
||||
PRINT "ERROR> " + ERR
|
||||
|
||||
/*
|
||||
* THROW A Second Error from within the Error Handler
|
||||
* This time there isn't a current error handler so it
|
||||
* will cause the program to abort - you will notice
|
||||
* that the program doesn't print "Program Finished".
|
||||
*/
|
||||
|
||||
THROW ERR + " THROWN by ERROR1"
|
||||
END TRY
|
||||
|
||||
PRINT "Program Finished"
|
||||
END SUB
|
23
Examples/Core/try.bas
Normal file
23
Examples/Core/try.bas
Normal file
|
@ -0,0 +1,23 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
DIM ERR1 AS STRING
|
||||
DIM ERR2 AS STRING
|
||||
|
||||
TRY
|
||||
TRY
|
||||
FOR I=1 TO 10
|
||||
PRINT I
|
||||
IF (I=5) THEN
|
||||
THROW "I=5"
|
||||
END IF
|
||||
END FOR
|
||||
CATCH ERR1
|
||||
PRINT "ERROR1> " + ERR1
|
||||
THROW ERR1 + " THROWN by ERROR1"
|
||||
ENDTRY
|
||||
CATCH ERR2
|
||||
PRINT "ERROR2> " + ERR2
|
||||
END TRY
|
||||
|
||||
PRINT "Program Finished"
|
||||
END SUB
|
9
Examples/Core/while.bas
Normal file
9
Examples/Core/while.bas
Normal file
|
@ -0,0 +1,9 @@
|
|||
SUB MAIN
|
||||
DIM I AS INTEGER
|
||||
I=1
|
||||
WHILE I<10
|
||||
PRINT I
|
||||
I=I+1
|
||||
END WHILE
|
||||
PRINT "Finished"
|
||||
END SUB
|
Loading…
Add table
Add a link
Reference in a new issue