add example basic program
This commit is contained in:
parent
e027b02177
commit
c469d68454
@ -8,4 +8,70 @@ I have a love-hate relationship with BASIC. It's easy to get started, it's diffi
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
* [Display The ATASCII Character Set](charset.md)
|
**Display the ATASCII character set**
|
||||||
|
|
||||||
|
<pre class="atari">
|
||||||
|
10 GRAPHICS 0
|
||||||
|
15 DIM CHAR$(10)
|
||||||
|
20 FOR I=0 TO 252
|
||||||
|
21 IF I=125 THEN CHAR$="[CLEAR]":GOTO 45
|
||||||
|
22 IF I=155 THEN CHAR$="[RETURN]":GOTO 45
|
||||||
|
23 IF I=29 THEN CHAR$="[UNPRINTABLE]":GOTO 45
|
||||||
|
35 CHAR$=CHR$(I)
|
||||||
|
45 PRINT I;" ";CHR$(27);" ";CHAR$
|
||||||
|
50 NEXT I
|
||||||
|
60 REM USE CONTROL-1 TO PAUSE
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
**Variable Name Introspection**
|
||||||
|
|
||||||
|
<pre class="atari">
|
||||||
|
100 REM PROGRAM TO PRINT THE VARIABLE NAME LIST
|
||||||
|
105 PRINT "Before line 110"
|
||||||
|
110 DIM ARRAYNAME(1),STRINGNAME$(1)
|
||||||
|
120 REM GET THE BEGINNING OF THE LIST
|
||||||
|
125 PRINT "Before line 130"
|
||||||
|
130 ADDRESS=PEEK(130)+PEEK(131)*256
|
||||||
|
135 PRINT "Before line 140: ";ADDRESS
|
||||||
|
140 ? CHR$(125);"VARIABLE NAME LIST"
|
||||||
|
150 REM GET CHARACTER AND TEST FOR END
|
||||||
|
155 PRINT "Before line 160"
|
||||||
|
160 A=PEEK(ADDRESS):IF A=0 THEN END
|
||||||
|
165 PRINT "Before line 180: ";A
|
||||||
|
170 REM PRINT CHARACTER
|
||||||
|
180 IF A<128 THEN ? CHR$(A);:REM 210
|
||||||
|
190 ? CHR$(A-128)
|
||||||
|
200 REM GET NEXT ADDRESS AND REPEAT
|
||||||
|
210 ADDRESS=ADDRESS+1:REM 160
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
**The MYMORT1 Program from DTSS**
|
||||||
|
|
||||||
|
<pre class="atari">
|
||||||
|
1 REM MORTGAGE COMOPUTER
|
||||||
|
2 REM YEARLY INTEREST RATE
|
||||||
|
10 DATA 0.05
|
||||||
|
15 REM INITIAL PRINCIPAL
|
||||||
|
20 DATA 28500
|
||||||
|
25 REM MONTHLY PAYMENT
|
||||||
|
30 DATA 170
|
||||||
|
35 REM STARTING MONTH AND YEAR
|
||||||
|
40 DATA 1, 1964
|
||||||
|
50 READ I, P, P1, M, Y
|
||||||
|
60 LET R = 1 + I/12
|
||||||
|
70 PRINT "YEAR", "PRINCIPAL"
|
||||||
|
80 PRINT Y, P
|
||||||
|
90 LET P = P*R - P1
|
||||||
|
100 IF P >= 0 THEN 120
|
||||||
|
110 LET P = 0
|
||||||
|
120 LET M = M + 1
|
||||||
|
130 IF M > 12 THEN 160
|
||||||
|
140 PRINT " ",
|
||||||
|
150 GO TO 190
|
||||||
|
160 LET M = 1
|
||||||
|
170 LET Y = Y + 1
|
||||||
|
180 PRINT Y,
|
||||||
|
190 PRINT INT(P)
|
||||||
|
200 IF P > 0 THEN 90
|
||||||
|
210 END
|
||||||
|
</pre>
|
||||||
|
Loading…
Reference in New Issue
Block a user