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 / SLIB2.LBR / SISPRINT.Z80 < prev    next >
Text File  |  2000-06-30  |  640b  |  34 lines

  1. ;
  2. ;  SYSLIB Module Name:  SISPRINT
  3. ;  Author:  Richard Conn
  4. ;  SYSLIB Version Number:  3.6
  5. ;  Module Version Number:  1.1
  6.  
  7.     public    isprint
  8. ;
  9. ;    ISPRINT returns Zero Flag Set if char in A is printable
  10. ; ( >= space, < DEL).  ISPRINT returns NZ if not.
  11. ;
  12. ;    Char in A is unaffected.
  13. ;
  14. ISPRINT:
  15.     PUSH    BC    ; SAVE BC
  16.     LD    C,A    ; SAVE CHAR IN C
  17.     AND    7FH    ; MASK OUT MSB
  18.     CP    ' '    ; LESS THAN SPACE?
  19.     JP    C,NO
  20.     CP    7FH    ; LESS THAN DELETE?
  21.     JP    Z,NO
  22.     XOR    A    ; SET FLAG
  23.     LD    A,C    ; GET CHAR
  24.     POP    BC    ; RESTORE BC
  25.     RET
  26. NO:
  27.     LD    A,0FFH    ; SET FLAG
  28.     OR    A
  29.     LD    A,C    ; GET CHAR
  30.     POP    BC    ; RESTORE BC
  31.     RET
  32.  
  33.     END
  34.