2 GOSUB 9900 5 PRINT "BEGINNING DISK FILE TESTING" 6 PRINT "BEGIN DISK FILE OUTPUT TEST" 10 OPEN "R",1,"A:RFILE" 15 FIELD #1,128 AS N$ 20 FIELD #1, 10 AS I$ 30 FOR I=1 TO 20 40 LSET N$=STRING$(0,128) 50 LSET I$=STR$(I) 60 PUT #1,I 70 NEXT I 72 CLOSE 1 75 PRINT "BEGIN DISK FILE INPUT TEST" 76 CLOSE 1 77 OPEN "R",1,"A:RFILE" 78 FIELD #1, 128 AS N$ 80 FOR I=1 TO 20 90 GET #1,I 100 IF (VAL(N$)<>I) THEN GOTO 150 120 NEXT I 125 PRINT "DISK FILE TESTING COMPLETED SUCCESSFULLY" 130 GOTO 200 150 PRINT "**DISK FILE TEST FAILURE" 200 REM ARITHMETIC TEST 201 PRINT 202 PRINT "BEGIN ARITHMETIC TESTING" 203 PRINT "BEGIN INTEGER TESTS" 208 LET J%=5050 209 LET K%=0 210 FOR I%=1 TO 100 220 LET K%=K%+I% 230 NEXT I% 240 IF (K%=J%) THEN GOTO 300 250 PRINT "**INTEGER TEST FAILURE" 255 GOTO 700 300 PRINT "BEGIN SINGLE PRECISION TEST" 310 LET TOTAL!=540.7720 320 FOR FRAC=0.0100 TO 5.401 STEP 0.02 330 LET TOTEST!=TOTEST!+FRAC!/34.5600*(FRAC!^2.4000)-0.0300 340 NEXT FRAC 360 IF (ABS(TOTEST!-TOTAL!)>0.001) THEN GOTO 380 370 GOTO 400 380 PRINT "**SINGLE PRECISION TEST FAILURE" 400 PRINT "BEGIN DOUBLE PRECISION TEST" 415 LET DP3#=0 420 FOR CNT=1 TO 300 STEP 1 430 LET DP3#=DP3#+CNT/ 1.000000000077548E-13 440 NEXT CNT 460 IF (ABS(DP3#- 4.515000000681574E+17)>100000000016384) THEN GOTO 490 470 GOTO 500 490 PRINT "**DOUBLE PRECISION TEST FAILURE" 491 GOTO 700 500 PRINT "BEGIN STRING VARIABLE TEST" 515 LET S$="" 520 FOR I=1 TO 255 530 LET S$=S$+CHR$(I) 540 NEXT I 550 FOR I=255 TO 2 STEP -1 560 LET K$=MID$(S$,I-1,I) 580 IF (ASC(K$)<>I-1 ) THEN GOTO 598 590 NEXT I 591 GOTO 600 598 PRINT "**STRING VARIABLE TEST FAILURE" 599 GOTO 700 600 PRINT "ARITHMETIC TESTING COMPLETED SUCESSFULLY" 700 PRINT 701 PRINT "BEGIN TERMINAL POSITIONING TEST" 705 FOR IMAGE=64 TO 73 STEP 1 710 FOR LI=10 TO 22 STEP 1 720 FOR CHAR=75 TO 60 STEP -1 740 PRINT CHR$(27);"[";RIGHT$(STR$(LI),2);";";RIGHT$(STR$(CHAR),2);"f";CHR$(IMAGE); 750 NEXT CHAR 760 NEXT LI 770 NEXT IMAGE 790 PRINT 791 PRINT CHR$(27);"[7A" 792 PRINT "POSITION TESTING COMPLETE" 800 PRINT 801 PRINT "*********** M B A S I C Test Complete ************" 9800 SYSTEM 9900 PRINT CHR$(27);"[H";CHR$(27);"[2J" 9910 PRINT "**************** M B A S I C *********************" 9911 PRINT 9999 RETURN