1 THIS IS A GOOD PRINT 5 PRI 8 PRI 10 PRI " THIS IS A PROGRAM TO TEACH INPUT/OUTPUT FUNCTIONS ON THE PDP8" 15 PRINT 20 INPUT "DO YOU WISH TO CONTINUE ??? (YES OR NO)";A$ 30 IF A$="YES" THEN 46 40 GO TO 1420 46 PRINT 50 PRI " THROUGHOUT THIS PROGRAM YOU WILL BE GIVEN THE OPPROTUNITY" 55 PRI "TO STOP THE PRINTING TO READ,TO DO THIS PRESS ANY KEY EXCEPT" 56 PRI "X, THIS KEY IS USED TO EXIT COMPLETELY. WHENEVER THERE" 57 PRI "IS ACTION TO TAKE PLACE ON THE TAPE TRANSPORT AND THERE" 58 PRI "IS A QUESTION 'READY??', FIRST ENTER ANY LETTER THEN LOOK" 59 PRI "AT THE TAPE DECK AS YOU PRESS THE CR KEY." 65 PRINT 66 PRINT 70 PRI " WE SHALL BEGIN BY CREATING A DATA FILE. TO PREPARE" 80 PRI "FOR THIS, MAKE SURE THAT THERE IS A MAGNETIC TAPE " 90 PRI "ON EACH OF THE TAPE TRANSPORTS AND THAT BOTH ARE ACTIVATED." 95 PRINT 96 INPUT "READY ?";S 97 IF S="X" THEN 1420 98 PRI 100 PRI " WE ARE GOING TO STORE SOME DATA ON ONE OF THE TAPES." 110 PRI "THIS DATA MAY BE A CHARACTER STRING OF LETTERS OR NUMBERS." 120 PRI "WE SHALL CALL THIS FILE DATA. LET'S USE YOUR NAME FOR" 130 PRI "THE DATA. TO DO THIS WE WILL ASSIGN X$ TO YOUR FIRST" 140 PRI "NAME, Y$ TO YOUR MIDDLE NAME AND Z$ TO YOUR LAST NAME." 150 PRI "WE USE THE $ TO MEAN THAT THE VARIABLE IS A LETTER." 160 PRI "NOW TYPE YOUR NAME AS ASSIGNED ABOVE, SIX CHARACTERS MAX.." 180 PRINT 190 INPUT TAB(15) "X$=";X$ 200 INPUT TAB(15) "Y$=";Y$ 210 INPUT TAB(15) "Z$=";Z$ 215 PRINT 220 INPUT "READY ?";Q 230 IF Q$="X" THEN 1420 240 PRI 250 PRI " WE HAVE A NAME FOR THE FILE (DATA) AND SOME DATA TO PUT" 260 PRI "IN IT (YOUR NAME), ALL WE NEED NOW IS SOME WHERE TO PUT IT." 265 PRI 270 PRI " TO CREATE THE FILE ON THE TAPE, WE MUST WRITE IT'S NAME" 280 PRI "ON THE DIRECTORY. THIS IS LIKE A TABLE OF CONTENTS" 290 PRI "OF A BOOK. IT IS A LIST AT THE BEGINNING OF THE TAPE " 300 PRI "THAT CONTAINS A LIST OF EVERY THING ON THE TAPE. " 305 PRI 310 PRI " WE WANT TO ADD THE NAME OF OUR FILE TO THAT LIST." 320 PRI "TO DO SO WE USE AN INSTRUCTION THAT 'OPENS' A FILE." 330 PRI "THE INSTRUCTIONS LOOKS LIKE THIS......" 335 PRINT 340 PRI TAB(15) "10 P$='DATA'" 345 PRI TAB(15) "20 OPEN P$ FOR OUTPUT,12" 350 PRINT 360 PRI " LINE 10 ASSIGNS P$ THE NAME OF THE FILE AND LINE 20" 370 PRI "OPENS OR CREATES THE FILE AND CAUSES THE COMPUTER TO " 380 PRI "WRITE THE NAME OF THE FILE ON THE DIRECTORY. NOTE THAT" 390 PRI "THE WORD OUTPUT IN LINE 20 REFERS TO OUTPUT FROM THE " 400 PRI "C.P.U. TO THE TAPE, I.E. IT IS WITH REFERENCE TO THE CPU." 405 PRINT 410 INPUT "READY ?";Q 420 IF Q="X" THEN 1420 430 PRINT 440 PRI " THE 12 IS THE NUMBER OF BLOCKS ALLOWED FOR THE FILE." 450 PRI "WHILE WE EXECUTE THESE TWO INSTRUCTIONS, WATCH THE TAPE" 460 PRI "TRANSPORT NO. 1. ARE YOU READY (LOOK AT TAPE) ?"\INPUT D 470 P$="DATA" 480 OPEN P$ FOR OUTPUT,3 485 PRINT 490 PRI " YOU SHOULD HAVE SEEN THE TAPE REWIND THEN MOVE FORWARD" 500 PRI "WHILE IT LOOKED THRU THE DIRECTORY FOR ENOUGH ROOM ON" 510 PRI "THE TAPE FOR OUR FILE. IF IT FOUND SPACE, IT WROTE" 520 PRI "IN THE NAME OF OUR FILE ON THE DIRECTORY AND STOPPED." 540 PRINT 550 INPUT "READY ?";Q 560 IF Q$="X" THEN 1420 580 PRINT 590 PRI " WE NOW HAVE THE NAME OF THE FILE WRITTEN IN THE " 600 PRI "DIRECTORY, SIMILAR TO WRITTING A CHAPTER NAME IN THE " 610 PRI "TABLE OF CONTENTS OF A BOOK. NOW WE MUST WRITE THE " 620 PRI "INFORMATIONS THAT WE WANT INTO THIS 'CHAPTER'." 621 PRI 630 PRI " WE USE A PRINT STATEMENT MODIFIED BY THE '#' SIGN" 640 PRI "WHICH TELLS THE COMPUTER THAT WE WANT TO WRITE ON THE " 650 PRI "TAPE. THE INSTRUCTION LOOKS LIKE THIS......" 655 PRINT 660 PRI TAB(15) "30 PRINT #,X$,Y$,Z$" 665 PRI TAB(15) "40 CLOSE" 670 PRINT 680 PRI "THIS INSTRUCTION WILL WRITE WHAT YOU ENTERED FOR THESE"