*** This program will copy the counter chips and display the values  *** when an external switch input is made. I,J,P PBASE 0 NBASE " PDATA PBASE : PFLAG PBASE  : P PDATA :for short6 #PIO PBASE B ( : i 2  : OPTIONAL TERMINATE ON F8 PJ(PFLAG) :clear switch flag Z ,: "SEC-PC DEMONSTRATION PROGRAM." [ ,: "For board with binary counters and special copy function."'d , : "X ENCODER";1n  Nx ,$ : "Y ENCODER";X  u ,: : "Z ENCODER";    , : " HITS ";    ,/ : " ERRORS ";   ,$ : " PI PORT ";  *OLDX : OLDY : OLDZ : OLDSW : PIOLDAHITS : ERRORSk" PDATA, :clear counters to zeroes$ PDATA, :copy counters to holding registers (to display zeros), MAIN LOOP6 XVAL OLDX , : "#########";XVAL;:" " : OLDXXVALN@ YVAL OLDY ," : "#########";YVAL;:" " : OLDYYVALJ ZVAL OLDZ ,8 : "#########";ZVAL;:" " : OLDZZVAL^ PFLAG,  :select x counter. Keep bit 2 set.#hXVAL (((((P)NBASE(P))NBASE(P))NBASE(P))NBASE(P))NBASE(P)]r PFLAG,  :select y counter. Keep bit 2 set.|YVAL (((((P)NBASE(P))NBASE(P))NBASE(P))NBASE(P))NBASE(P) PFLAG,  :select z counter. Keep bit 2 set.AZVAL (((((P)NBASE(P))NBASE(P))NBASE(P))NBASE(P))NBASE(P)nPIVAL(PIO) : PIVAL PIOLD  PFLAG,  :select status read. Keep bit 2 set.JST(P) JST  X :switch hit (JST @)  , :goto if no error&ERRORS ERRORS H ,/ : "######";ERRORSR "X subroutine to do funny things when operator hits switchbHITS HITS l , : "######";HITSvJ(PFLAG) :clear switch detect flip-flop PFLAG,(HITS) x' PIO,(HITS )-7 c Subroutine to print PI port in binaryo ,$ JB   PIVAL JB "H"; : "L"; JBPIOLD PIVAL JSX() : SUBROUTINE: DRAW A BOX+*JSY : NOT REALLY NECESSARY TO PROGRAM OPERATION>4 JSY,JSX \> ();( ,);();oH JSY,JSX R ();( , );();\ JSY,JSX f ();( , );();p JSY,JSX z ();( , );(); JSY,JSX  ();( ,);();&g ()  : () : SUBROUTINE--SET UP TRAP FOR F8 KEY TRAPPING NECESSITATES USE OF ADVANCED 'BASICA' , : "F8"; : (not really necessary to program operation) , : : TRAP GOES HERE; DOES NOT RETURN