ASMB
      HED S/P EBCAS,ASEBC      (15/10/75)    P. SENANT
      NAM EBCD,7 . 92903-16001 REV.1805  751015 
* 
*     SOURCE 92903-18012
* 
      SPC 2 
**************************************************************
* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978.  ALL RIGHTS    *
* RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- *
* PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH-  *
* OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.  *
**************************************************************
      SPC 2 
      ENT EBCAS,ASEBC 
      EXT .ENTR 
* 
* 
*      CALL EBCAS (IA,LEN)
* 
*        WILL CONVERT BUFFER IA FROM IBM 8-LEVEL CODE TO ASCII, WHERE 
*        LEN IS THE NUMBER OF WORDS TO BE CONVERTED.
* 
* 
*      CALL ASEBC (IA,LEN)
* 
*        WILL CONVERT BUFFER IA FROM ASCII TO IBM 8-LEVEL, WHERE
*        LEN IS THE NUMBER OF WORDS TO BE CONVERTED 
* 
* 
      HED ASCII TO IBM 8-LEVEL CONVERSION 
IA    NOP 
LEN   NOP 
ASTOI NOP 
      JSB .ENTR 
      DEF IA
* 
      LDA BASE1    ADDRESS OF CONVERSION TABLE
      STA BASE     WORKING POINTER
      DLD IA       PARAMETER PICK-UP FOR GOGO 
* 
GOGO STA PTR       WORKING BUFFER ADDRESS 
      LDB 1,I      ACTUAL PARAMETER 
      CMB,INB      NEGATIVE WORD COUNT
      STB CTR      WORKING COUNTER
* 
CLOOP LDA PTR,I    PICK UP WORD 
      JSB CCHAR    CONVERT UPPER CHARACTER
      JSB CCHAR    CONVERT LOWER CHARACTER
      STA PTR,I    RETURN WORD TO BUFFER
      ISZ PTR      NEXT WORD
      ISZ CTR      DONE?
      JMP CLOOP    NO, CONTINUE CONVERSION
      JMP ASTOI,I  YES, RETURN
* 
*     CHARACTER CONVERSION
* 
CCHAR NOP 
      ALF,ALF      POSITION NEXT CHARACTER
      STA TEMP     SAVE OTHER HALF
      AND M77      LOOK AT SIX BITS ONLY
      ADA BASE     BASE ADDRESS OF CONVERSION TABLE 
      LDB 0,I      CONVERTED CHARACTER
      LDA MLEFT    MASK FOR OTHER CHARACTER 
      AND TEMP     SALVAGE OTHER CHARACTER INTACT 
      IOR 1        INSERT NEW CHARACTER 
      JMP CCHAR,I  RETURN 
* 
MLEFT OCT 177400
M77   OCT 77
TEMP  BSS 1 
* 
BASE  DEF TAB1
BASE1 DEF TAB1
BASE2 DEF TAB2
CTR   BSS 1 
PTR   BSS 1 
      HED IBM 8-LEVEL TO ASCII CONVERSION 
.IA   NOP 
.LEN  NOP 
ITOAS NOP 
      JSB .ENTR 
      DEF .IA 
* 
      LDA BASE2    POINTER TO WORKING TABLE 
      STA BASE     WORKING POINTER
      LDA ITOAS    RETURN ADDRESS 
      STA ASTOI    EXIT POINT 
* 
      DLD .IA      PARAMETER TRANSFER 
      JMP GOGO
   SPC 3
      SUP 
TAB1  OCT 174,301,302,303,304,305,306,307 
      OCT 310,311,321,322,323,324,325,326 
      OCT 327,330,331,342,343,344,345,346 
      OCT 347,350,351,132,101,112,156,114 
      OCT 100,117,177,173,133,154,320,175 
      OCT 115,135,134,116,153,140,113,141 
      OCT 360,361,362,363,364,365,366,367 
      OCT 370,371,172,136,114,176,156,157 
   SPC 2
TAB2  OCT 040,101,102,103,104,105,106,107 
      OCT 110,111,135,056,074,050,053,041 
      OCT 046,112,113,114,115,116,117,120 
      OCT 121,122,133,044,052,051,073,101 
      OCT 055,057,123,124,125,126,127,130 
      OCT 131,132,101,054,045,101,076,077 
      OCT 060,061,062,063,064,065,066,067 
      OCT 070,071,072,043,100,047,075,042 
EBCAS EQU ITOAS 
ASEBC EQU ASTOI 
      END 
          