10 KEY OFF:CLS 20 PRINT"???????????????????????????????????????" 30 PRINT"??????????????????????????????????????" 40 PRINT"?? ??" 50 PRINT"?? 7019-A.BAS ??" 60 PRINT"?? SCROLL DEMONSTRATION ??" 70 PRINT"?? ??" 80 PRINT"?? ??" 90 PRINT"?? BROUGHT TO YOU BY THE MEMBERS OF ??" 100 PRINT"?? ????? ????? ????? ????? ??" 110 PRINT"?? ? ? ? ? ? ? ??" 120 PRINT"?? ? ????? ? ? ? ??" 130 PRINT"?? ? ? ? ? ? ??" 140 PRINT"?? ????? ? ????? ????? ??" 150 PRINT"?? ??" 160 PRINT"?? International PC Owners ??" 170 PRINT"?? ??" 180 PRINT"??P.O. Box 10426, Pittsburgh PA 15234??" 190 PRINT"?? ??" 200 PRINT"??????????????????????????????????????" 210 PRINT"???????????????????????????????????????" 220 PRINT 230 PRINT " PRESS ANY KEY TO CONTINUE 240 A$=INKEY$: IF A$="" THEN 240 250 CLS 1000 '*************************************************** 1010 '*** SPC CORPORATION *** Compliments of 1020 '*** PO BOX 9038 *** UTAH BLUE CHIPS 1030 '*** OGDEN, UT 84409 *** IBM PC Users Group 1040 '*** *** 1050 '*** THIS SOFTWARE IS AVAILABLE FOR COPY AND *** December 1982 1060 '*** USE IN THE PUBLIC DOMAIN. *** 1070 '*************************************************** 1080 '****************************************************** 1090 '*** READ AND DECODE THE SYSTEM OPTION SWITCHES *** 1100 '****************************************************** 1110 '********************************** 1120 '*** ESTABLISH OPTION MASKS *** 1130 '********************************** 1140 MASK.DISK = &HC0 1150 MASK.DISK.IPL = &H1 1160 MASK.DISPLAY = &H30 1170 MASK.MEMORY.2 = &HF 1180 MASK.MEMORY.1 = &HC 1190 '********************************* 1200 '*** SET UP PORT ADDRESSES *** 1210 '********************************* 1220 PORT.A = &H60 1230 PORT.B = &H61 1240 PORT.C = &H62 1250 '***************************** 1260 '*** READ THE SWITCHES *** 1270 '***************************** 1280 OUT PORT.B,&H84 : 'SET CONTROL REGISTER TO READ SWITCHES 1290 SWITCH.1 = INP(PORT.A) 1300 SWITCH.2 = INP(PORT.C) 1310 OUT PORT.B,&H40 : 'SET CONTROL REGISTER TO READ KEYBOARD 1320 '************************************************************************* 1330 '** DECODE SWITCH 1 FOR MEMORY SIZE, NUMBER OF DISKS, AND DISPLAY TYPE ** 1340 '** IF MEMORY SIZE =>65536 THEN CHECK SWITCH 2 FOR MEMORY SIZE. ** 1350 '************************************************************************* 1360 MEMORY.SIZE# = SWITCH.1 AND MASK.MEMORY.1 1370 MEMORY.SIZE# = (1# + MEMORY.SIZE#/ 2^2) * 16384# 1380 IF MEMORY.SIZE# < 65535# THEN 1400 1390 MEMORY.SIZE# = MEMORY.SIZE# + ( SWITCH.2 AND MASK.MEMORY.2 ) * 32768# 1400 IF MASK.DISK.IPL AND SWITCH.1 THEN NUMBER.OF.DISKS = 1 + (SWITCH.1 AND MASK.DISK) / 2^6 1410 DISPLAY.TYPE = ( SWITCH.1 AND MASK.DISPLAY ) /2^4 1420 '********************************************** 1430 '*** DISPLAY THE RESULTS IN HUMAN TERMS *** 1440 '********************************************** 1450 DATA "RESERVED DISPLAY TYPE" 1460 DATA "A COLOR DISPLAY INTERFACE. 40 CHARACTERS BY 25 LINES." 1470 DATA "A COLOR DISPLAY INTERFACE. 80 CHARACTERS BY 25 LINES." 1480 DATA "AN IBM MONOCHROME DISPLAY. 80 CHARACTERS BY 25 LINES." 1490 FOR I=0 TO 3 : READ DISPLAY.OPTION$(I) : NEXT I 1500 CLS 1510 PRINT "Switch settings for this IBM Personal Computer indicate:" 1520 PRINT " ";DISPLAY.OPTION$(DISPLAY.TYPE) 1530 PRINT NUMBER.OF.DISKS;"- 5 1/4 INCH DISK DRIVES." 1540 PRINT MEMORY.SIZE#;"(";MEMORY.SIZE#/1024#;"K ) BYTES RANDOM ACCESS MEMORY." NUMBER.OF.DISKS;"- 5 1/4 INCH DISK DRIVES." 1540 PRINT MEMORY