ASMB,L
* 
*     NAME:   SPLIT 
*     SOURCE: 92070-18294 
*     RELOC:  92070-16294 
*     PGMR:   DAVE NEFF 
* 
****************************************************************
* (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 SPLIT 92070-1X294 REV.2001  790914
      EXT .ENTR,NAMR,.MVW 
      ENT SPLIT 
FLEN  DEC 3         LENGTH OF FILE NAME IN WORDS
IPBAD DEF *+1       ADDRESS OF IPBUF, THE SPLITD VALUES 
IPBUF BSS 10        BLOCK FOR SPLITD VALUES 
PARMB BSS 7         BLOCK FOR PASSED PARAMETER ADDRESSES
SPLIT NOP 
      JSB .ENTR     GET ADDRESSES OF PASSED PARAMETERS
      DEF PARMB 
      JSB NAMR      CALL PARSING ROUTINE
      DEF RTN 
      DEF IPBUF     ADDRESS OF SPLITD INFORMATION BUFFER
      DEF PARMB,I   ADDRESS OF THE NAMR BUFFER FROM PASCAL PROGRAM
      DEF PARMB+1,I ADDRESS OF THE NAMR STRING LENGTH (FROM PASCAL) 
      DEF PARMB+5,I ADDRESS OF THE STARTING CHARACTER NUMBER
RTN   LDA IPBUF+3   GET TYPE RETURNED BY NAMR 
      STA PARMB+6,I RETURN THE TYPE TO CALLING PROGRAM
      AND =B3       GET FIRST GROUP OF TYPE INFO
      CPA =B3       INTEGER PARAM IN WORD 1 OF IPBUFF?
      JMP ASCII     NO,ASSUME ASCII TYPE
* 
      CLA           START ZEROING THE RETURNED NAME 
      LDB PARMB+2   GET ADDRESS OF NAME BUFFER (PASCAL) 
      STA 1,I       ZERO FIRST TWO CHARACTERS 
      INB           POINT TO NEXT TWO CHARACTERS
      STA 1,I       ZERO THE NEXT TWO 
      INB 
      STA 1,I       ZERO THE LAST TWO CHARACTERS
      LDA IPBUF     GET THE INTEGER SPLITD (WORD 1 OF IPBUF)
      JMP STINT     JUMP TO STORE THE INTEGER 
* 
ASCII LDA IPBAD     GET ADDRESS OF THE FILE NAME IN THE SPLITD PARAM BLOCK
      LDB PARMB+2   GET ADDRESS OF FILE NAME BUFFER IN PASCAL PROGRAM 
      JSB .MVW      MOVE THE FILE NAME FROM IPBUF TO THE PASCAL BUFFER
      DEF FLEN      ADDRESS OF LENGTH OF PASCAL FILE NAME BUFFER
      NOP           FOR MICROCODE TEMPORARY STORAGE 
      LDA IPBUF+4   GET SECURITY CODE 
STINT STA PARMB+3,I STORE SECURITY CODE (OR A SPLITD INTEGER) 
      LDA IPBUF+5   GET CARTRIDGE NUMBER
      STA PARMB+4,I RETURN THE CARTRIDGE NUMBER 
      JMP SPLIT,I   RETURN
      END 
                                                                            