home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / SIMTEL / CPMUG / CPMUG029.ARK / WHENS.LIB < prev    next >
Text File  |  1984-04-29  |  709b  |  35 lines

  1. ;    MACRO LIBRARY FOR "WHEN" CONSTRUCT
  2. ;
  3. ;    "WHEN" COUNTERS
  4. ;    LABEL GENERATORS
  5. GENWTST    MACRO    TST,X,Y,NUM
  6. ;;    GENERATE A "WHEN" TEST (NEGATED FORM),
  7. ;;    INVOKE MACRO "TST" WITH PARAMETERS
  8. ;;    X,Y WITH JUMP TO ENDW & NUM
  9.     TST    X,Y,,ENDW&NUM
  10.     ENDM
  11. ;
  12. GENLAB    MACRO    LAB,NUM
  13. ;;    PRODUCE THE LABEL "LAB" & "NUM"
  14. LAB&NUM:
  15.     ENDM
  16. ;
  17. ;    "WHEN" MACROS FOR START AND END
  18. ;
  19. WHEN    MACRO    XV,REL,YV
  20. ;;    INITIALIZE COUNTERS FIRST TIME
  21. WCNT    SET    0    ;;NUMBER OF WHENS
  22. WHEN    MACRO    X,R,Y
  23.     GENWTST    R,X,Y,%WCNT
  24.     SYMPSH    %WCNT    ;;NEXT ENDW TO GENERATE (STACKED)
  25. WCNT    SET    WCNT+1    ;;NUMBER OF "WHEN"S
  26.     ENDM
  27.     WHEN    XV,REL,YV
  28.     ENDM
  29. ;
  30. ENDW    MACRO
  31. ;;    GENERATE THE ENDING CODE FOR A "WHEN"
  32.     SYMPOP    WLEV
  33.     GENLAB    ENDW,%WLEV
  34.     ENDM
  35.