File: COMMA1.RE of Tape: Sources/Focal/fc3
(.FC,.FO Focal format converted to 'WRITE' listing) 

C-PS/8 FOCAL, 1971

01.05 COMMA1.RE
01.10 L C FOCAL.TM
01.20 G 1.8
01.50 S EC=1;G 1.8
01.60 F X=2.04,.02,2.12;D X
01.62 T !!!!;D 2.16;D 2.18;D 2.2;T !!!!
01.64 D 1.6;D 1.62
01.70 D 2.16;D 2.18;D 2.2;T !!!!
01.80 T !!!!!!"***** COMMANDS:"!!!!

02.02 T "MOST COMMANDS MUST BE FOLLOWED BY A SPACE"!!!
02.04 T "*** DIRECT COMMANDS ARE TYPED WITHOUT LINE NUMBERS AND FOCAL"!
02.06 T "EXECUTES THEM AS SOON AS THE RETURN BUTTON IS HIT --- FOR EXAMPLE:"!!!
02.08 T "*TYPE 3+4",:20,"(CAUSES FOCAL TO TYPE A 7)"!!!
02.10 T :20,"(OR SEVERAL COMMANDS MAY BE GIVEN IN SEQUENCE:)"!
02.12 T "*SET X=3"!"*SET Y=2"!"*TYPE 3+X+Y,!"!,%6.04,8,!"*"!!!
02.16 T "*** INDIRECT COMMANDS ARE USED FOR LONGER PROGRAMS.  THEY ARE"!
02.18 T "TYPED FOLLOWING LINE NUMBERS AND MAY BE EXECUTED BY A DIRECT 'GO':"!!!
02.20 T "*2.1 SET X=3"!"*2.2 SET Y=2"!"*2.3 TYPE 3+X+Y,!"!"*GO"!,%6.04,8,!"*"
02.22 T !!!!!"*** THE COMMANDS:"!!!
02.24 T "EXAMPLES OF EACH ARE GIVEN FOLLOWED BY THE GENERAL FORM IN WHICH:"!!
02.29 T "  <REQUIRED TERMS> ARE ENCLOSED IN ANGLE BRACKETS."!
02.30 T "  [OPTIONAL TERMS] ARE ENCLOSED IN SQUARE BRACKETS."!
02.31 T "  (COMMENTS) ARE ENCLOSED IN PARENTHESES."!
02.32 T "  A, B, C, X, Y,  AND Z ARE VARIABLES."!
02.33 T "  L1, L2 AND L3 ARE LINE NUMBERS."!
02.34 T "  G1 STANDS FOR A GROUP OR LINE NUMBER"!
02.36 T "  IN MOST CASES, GROUP AND LINE NUMBERS MAY BE REPLACED BY VARIABLES."!!!!!!!!
02.89 G 2.93
02.90 S DU=FOUT(162)
02.92 S DU=FOUT(223)
02.93 T "*** ELEMENTARY COMMANDS:"!!!!!

03.10 T "ASK Y",:20,"(EXPECTS A VALUE TO BE INPUT FOR Y)"!
03.15 T "A Z":20,"(A IS THE ABBREVIATION FOR 'ASK' --- ALL COMMANDS"!
03.16 T "A B2,X,NUMBER":22,"HAVE SINGLE LETTER ABBREVIATIONS)"!
03.20 T "A ";D 2.9;T "HOW MANY? ";D 2.9;T "M"
03.22 T :20,"(TYPES 'HOW MANY' THEN SETS M = TO THE RESPONSE)"!
03.30 T "ASK A,B,C",:20,"(ALLOWS THREE VARIABLES TO BE GIVEN VALUES)"!
03.40 T :20,"(SPACE, COMMA OR CARRIAGE RETURN WILL TERMINATE EACH"!
03.42 T :22,"NUMBER INPUT; TYPE A '";D 2.92;T "' (BACK ARROW) TO ERASE A"!
03.44 T :22,"PARTIALLY TYPED NUMBER --- IT MAY THEN BE RETYPED."!
03.46 T :22,"ALT MODE LEAVE THE VARIABLE WITH ITS FORMER VALUE.)"!
03.49 T "(AN INITIAL DIALOGUE OPTION PROVIDES AUTOMATIC PRINTING OF A ':'"!"BY THE 'ASK' COMMAND)"!!
03.50 T "*ASK [";D 2.9;T "PRINT OUT IN QUOTES";D 2.9;T "] X [,Y,Z]"!
03.60 T !!!!

04.10 T "COMMENT SQRT":20,"(COMMENTS ARE USED TO TELL ABOUT PROGRAM)"!
04.20 T "CONTINUE":20,"(DUMMY LINE)"!
04.30 T "C PRINT ROUTINE"!!
04.40 T "*C":20,"(LINES BEGINNING WITH A 'C' WILL BE IGNORED)"!
04.50 T !!!!

05.10 T "DO 7.24",:20,"(TELLS FOCAL TO EXECUTE LINE 7.24 THEN RETURN"!
05.20 T "D 4.48",:22,"TO THE COMMAND FOLLOWING THE 'DO')"!
05.30 T "DO 7",:20,"(EXECUTES GROUP 7)"!
05.40 T "D G1;D 7.6":20,"(EXECUTES LINE (OR GROUP) G1 THEN LINE 7.6)"!!
05.50 T "*DO [LINE OR GROUP NUMBER]"!
05.60 T !!!!

06.10 L R COMMA2.RE 1.2