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