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 / ZSYS / SIMTEL20 / SYSLIB / SLIB3.LBR / SSKPUN.Z80 < prev    next >
Text File  |  2000-06-30  |  1KB  |  46 lines

  1. ;
  2. ;  SYSLIB Module Name:  SSKPUN
  3. ;  Author:  Richard Conn
  4. ;  SYSLIB Version Number:  3.6
  5. ;  Module Version Number:  1.1
  6.  
  7.     public    skpun,sknpun
  8.  
  9. ;
  10. ;    SKPUN skips punctuation in the string pointed to by HL until
  11. ; a non-punctuation char is encountered.  HL pts to the non-punctuation char
  12. ; when done.
  13. ;    SKNPUN skips non-punctuation chars in the string pointed to by HL until
  14. ; either a punctuation char or a null are encountered.  HL pts to the
  15. ; punctuation char or null when done.
  16. ;
  17.  
  18.     EXT    ISPUN
  19.  
  20. SKPUN:
  21.     PUSH    AF    ; SAVE PSW
  22. SKP1:
  23.     LD    A,(HL)    ; GET NEXT CHAR
  24.     INC    HL    ; PT TO NEXT
  25.     OR    A    ; DONE?
  26.     JP    Z,SKP2
  27.     CALL    ISPUN    ; IS A PUNCTUATION CHAR?
  28.     JP    Z,SKP1    ; CONTINUE SKIP IF SO
  29. SKP2:
  30.     DEC    HL    ; PT TO OFFENDING CHAR
  31.     POP    AF    ; GET PSW
  32.     RET
  33.  
  34. SKNPUN:
  35.     PUSH    AF    ; SAVE PSW
  36. SKNP1:
  37.     LD    A,(HL)    ; GET NEXT CHAR
  38.     INC    HL    ; PT TO NEXT
  39.     OR    A    ; DONE?
  40.     JP    Z,SKP2
  41.     CALL    ISPUN    ; IS A PUNCTUATION CHAR?
  42.     JP    NZ,SKNP1
  43.     JP    SKP2
  44.  
  45.     END
  46.