ASMB,R,L,C
* 
*      NAME:     NMCHK  
*      SOURCE:   92067-18424  
*      RELOC:    92067-16104  
*      PGMR:     R.D.     
* 
*  ***************************************************************
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979.  ALL RIGHTS     *
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,      *
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT*
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.       *
*  ***************************************************************
* 
      NAM NMCHK,6 92067-16104 REV.1903 790203   
      ENT NMCHK 
      EXT $LIBR,$LIBX,.ENTP 
NAME  NOP           ADDRESS OF THE NAME 
NMCHK NOP           ENTRY POINT 
      JSB $LIBR     PRIVILEDGE
      NOP 
      JSB .ENTP     GET THE PRAMS 
      DEF NAME
      LDB N6        SET TO CHECK
      STB COUNT      6 CHARACTERS 
      LDB NAME
      RBL 
      LDA NAME,I    DO SPECIAL EXTRA CHECK
      ALF,CLE,ALF    ON 
      AND B377        FIRST CHARACTER 
      ADA N60B     IF NUMERIC OR BLANK
      SEZ,CME        THEN 
      ADA N10         TAKE
      SEZ              THE
      CPA N20B          ERR 
      JMP ER15           EXIT 
CREA1 CLE,ERB       GET THE NAME ADDRESS
      LDA B,I       GET A NAME WORD 
      ELB           RESTORE ADDRESS FOR NEXT TIME 
      SLB,INB,RSS   INCREMENT SKIP IF ODD ELSE
      ALF,ALF        ROTATE 
      AND B377        MASK IT 
      CPA COLON     IF COLON
      CLA           FORCE ERROR 
      ADA N40B      BETWEEN " " 
      SZA,RSS       IF BLANK THEN 
      JMP BLNK      TAKE NOTE 
      SEZ,CME        AND
      ADA N13B        "*" 
      SEZ,CLE,RSS      INCLUSIVE? 
      JMP CREA2          YES - OK 
      ADA N3        NO   BETWEEN
      SEZ,CME        "." AND
      ADA N62B        "-" 
CREA2 ISZ NAME      CHARACTER AFTER BLANK?? 
      SEZ           NO LEGAL OTHERWISE? 
      JMP ER15      NO GO TAKE ERROR EXIT 
CREA3 ISZ COUNT      DONE?
      JMP CREA1       NO  DO NEXT CHARACTER 
      CLA,RSS       GOOD NAME EXIT
ER15  LDA N15       ERROR EXIT
      JSB $LIBX 
      DEF NMCHK 
BLNK  CCA           SET BLANK FLAG
      STA NAME      SO WE CAN DETECT
      JMP CREA3     INBEDDED BLANKS 
COUNT NOP 
COLON OCT 72
N62B  OCT -62 
N3    DEC -3
N13B  OCT -13 
N40B  OCT -40 
B377  OCT 377 
N20B  OCT -20 
N60B  OCT -60 
N6    DEC -6
N10   DEC -10 
N15   DEC -15 
A     EQU 0 
B     EQU 1 
      END 
                                                                            