UNIVERSAL RPGSWI RPGII SWITCH REGISTER MACRO SUBTTL SWITCH REGISTER MACRO DEFINITION ; SWITCH ; ; HEREIN ARE DEFINED THE SWITCH REGISTER MACRO CALLS AND ; THE VARIOUS SWITCHES THEMSELVES. THE SEGMENT IS DESIGNED ; TO BE COMPILED ALONG WITH OTHER PROGRAMS TO ALLOW ALL TO ; MAKE USE OF THESE WONDERFUL MACROS. ; ; BOB CURRIER NOVEMBER 2, 1975 20:49:06 ; ; ;DEFINE VARIOUS FLAGS ; ; ; ;FLAGS USED BY "EDIT" ; ZFILL==1B1 ; ZERO FILL MFLAG==1B2 ; UNARY MINUS SEEN FLOATD==1B3 ; FLOATING DOLLAR SIGN NUMFLG==1B4 ; NON-ZERO DIGIT SEEN FEDWAR==1B6 ; HANDLE WHOLE ARRAY ;FLAGS USED BY RPGMAN, MAIN RUNTIME ROUTINES FDOV==1B5 ; DETAIL OVERFLOW HAS OCCURRED DMINUS==1B1 ; Data field being moved is negative DZERO==1B2 ; Data field being moved is not zero ;FLAGS USED BY MOVSGN, IN LH FRESET==1B6 ;FLAGS USED BY RPGIO, IN LH OVFLG==1B7 ; WE HAVE SEEN OVERFLOW INDICATOR OVONLY==1B8 ; WE ONLY WANT OVERFLOW INDICATORS LONLY==1B9 ; WE ONLY WANT CONTROL LEVEL INDICATORS LFLG==1B10 ; CONTROL LEVEL INDICATOR SEEN FOVTIM==1B11 ; we are processing forced overflow WRITF==1B12 ; we have output at least one field FREAD==1B13 ; we are doing chained input/output FALT==1B14 ; we are processing alteranting arrays FUALT==1B15 ; use the alternate array FRSPEC==1B16 ; we are doing special output ;FLAGS USED BY EDIT CODE ROUTINES, MUST BE IN RH DOLLR==1B18 ; FLOATING DOLLAR TO BE USED ASTER==1B19 ; ASTERISK FILL TO BE USED COMMA==1B20 ; COMMA'S REQUIRED IF SIZE > 3 FZERO==1B21 ; ZERO SUPPRESS TO BE USED CREDIT==1B22 ; CREDIT (CR) SYMBOL TO BE USED FOR NEGATIVE FMINUS==1B23 ; MINUS (-) SYMBOL TO BE USED FOR NEGATIVE FDEC==1B24 ; NUMBER HAS DECIMAL POINT FSPAC==1B25 ; FIRST EDIT FLAG IS SPACE ;Flags used by DSPLY., in LH FNEGTV==1B6 ; We have seen a minus sign ;Flags used by DEBUG., in LH FDNUM==1B6 ; field is numeric FDNEG==1B7 ; field is negative ;GENERAL "SW" TESTER SW==0 ; ALWAYS AC0 DEFINE SWTEST (A,B),< IFLE A-777777, IFG A-777777,< IFE A&777777, IFN A&777777, > > DEFINE SWON (A), ; TURN ON FLAGS DEFINE SWOFF (A), ; TURN OFF FLAGS DEFINE TSWC (A), ; COMPLEMENT FLAGS DEFINE TSWF (A), ; TEST FLAG AND SKIP IF OFF DEFINE TSWT (A), ; TEST FLAG AND SKIP IF ON DEFINE TSWFZ (A), ; CLEAR FLAG, SKIP IF IT WAS ON DEFINE TSWTZ (A), ; CLEAR FLAG, SKIP IF IT WAS OFF DEFINE TSWFS (A), ; SET FLAG, SKIP IF IT WAS OFF DEFINE TSWTS (A), ; SET FLAG, SKIP IF IT WAS ON DEFINE TSWFC (A), ; COMPLEMENT FLAG, SKIP IF IT WAS OFF DEFINE TSWTS (A), ; COMPLEMENT FLGA, SKIP IF IT WAS ON DEFINE SWONS (A), ; SET FLAG AND ALWAYS SKIP DEFINE SWOFFS (A), ; CLEAR FLAG AND ALWAYS SKIP END