-
Notifications
You must be signed in to change notification settings - Fork 0
/
CIRCLE.BAS
60 lines (60 loc) · 2.17 KB
/
CIRCLE.BAS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
940 REM The IBM Personal Computer Circle
950 REM Version 1.10 (C)Copyright IBM Corp 1981, 1982
960 REM Licensed Material - Program Property of IBM
975 DEF SEG
980 CLEAR,,8000:SAMPLES$="NO"
990 GOTO 1010
1000 CLEAR,,8000:SAMPLES$="YES"
1010 KEY OFF:SCREEN 0,1:COLOR 15,0,0:WIDTH 40:CLS:LOCATE 5,19:PRINT "IBM"
1020 LOCATE 7,12,0:PRINT "Personal Computer"
1030 COLOR 10,0:LOCATE 10,9,0:PRINT CHR$(213)+STRING$(21,205)+CHR$(184)
1040 LOCATE 11,9,0:PRINT CHR$(179)+" CIRCLE "+CHR$(179)
1050 LOCATE 12,9,0:PRINT CHR$(179)+STRING$(21,32)+CHR$(179)
1060 LOCATE 13,9,0:PRINT CHR$(179)+" Version 1.10 "+CHR$(179)
1070 LOCATE 14,9,0:PRINT CHR$(212)+STRING$(21,205)+CHR$(190)
1080 COLOR 15,0:LOCATE 17,4,0:PRINT "(C) Copyright IBM Corp 1981, 1982"
1090 COLOR 14,0:LOCATE 23,7,0:PRINT "Press space bar to continue"
1100 IF INKEY$<>"" THEN GOTO 1100
1110 CMD$ = INKEY$
1120 IF CMD$ = "" THEN GOTO 1110
1130 IF CMD$ = CHR$(27) THEN GOTO 1312
1140 IF CMD$ = " " THEN GOTO 1160
1150 GOTO 1110
1160 DEF SEG=0
1170 IF (PEEK(&H410) AND &H30)<>&H30 THEN DEF SEG:GOTO 1300
1180 WIDTH 80:CLS:LOCATE 3,1
1190 PRINT "HOLD IT!"
1200 PRINT "YOU'RE NOT USING THE COLOR/GRAPHICS MONITOR ADAPTER!"
1210 PRINT "THIS PROGRAM USES GRAPHICS AND REQUIRES THAT ADAPTER."
1220 PRINT "PRESS THE SPACE BAR TO CONTINUE."
1230 DEF SEG
1240 IF INKEY$<>"" THEN GOTO 1240
1250 CMD$ = INKEY$
1260 IF CMD$ = "" THEN GOTO 1250
1270 IF CMD$ = CHR$(27) THEN GOTO 1312
1280 IF CMD$ = " " THEN GOTO 1312
1290 GOTO 1250
1300 KEY OFF
1301 ON ERROR GOTO 1310
1302 PLAY "p16"
1303 GOTO 1320
1310 COLOR 31,0,0
1311 PRINT "THIS PROGRAM REQUIRES ADVANCED BASIC -- USE COMMAND 'BASICA'":COLOR 15,0,0:FOR I=1 TO 9000:NEXT: RESUME 1312
1312 ON ERROR GOTO 0
1313 SCREEN 0,1:IF SAMPLES$="YES" THEN CHAIN"samples",1000
1314 COLOR 7,0,0:CLS:END
1320 REM
1340 SCREEN 1,0:COLOR 8,0
1350 S1=.5+RND*5:S2=RND*2
1360 CLS
1365 LOCATE 25,1:PRINT"Press ESC to exit"
1370 FOR R=5 TO 100 STEP 2
1380 A2=A+S1:IF A2>6.28 THEN A2=A2-6.28
1390 CIRCLE(160,100),R,2,A,A2
1400 A=A+S2:IF A>6.28 THEN A=A-6.28
1410 NEXT
1420 PAINT(160,100),3,2
1430 FOR I=0 TO 1000:NEXT
1431 A$=INKEY$:IF A$=CHR$(27) THEN 1313
1440 GOTO 1350