ASMB,R,L,C
* 
* 
* 
**************************************************************
* (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.  *
**************************************************************
* 
* 
* 
*      NAME:    DCT01 -- 2648A/ 2647A DEVICE COMMAND TABLE
*      SOURCE:  92840-18084 
*      RELOC:   92840-16003 
*      PGMR:    MODIFIED BY GSB 8-1-79
* 
*               MODIFIED BY DJS 1-4-80
*               - FIXED HOME PEN GIC -
* 
*               MODIFIED BY DJS 1-27-80 
*               - FIXED CLEAR SCREEN GIC -
* 
************************************************************* 
* 
      NAM DCT01,7  92840-16003 REV.2013 800127
      ENT DCT01 
      ENT SMLAB 
* 
*     THIS IS THE DEVICE COMMAND TABLE FOR THE 2648A GRAPHICS 
* TERMINAL. 
* 
**********************************************************
* 
*     COMMAND LINK TABLE (CLTBL)
* 
      SPC 3 
DCT01 NOP 
      DEF EML01 
      DEF RESET   1) RESET DEVICE 
      NOP         2) DO NOTHING  (SET MECH. LIMITS TO DEFAULTS) 
      DEF CLEAR   3) DEVICE CLEAR 
      DEC -12     4) XMIT 
      DEF HOME    5) HOME PEN 
      DEF DEVID   6) GET DEVICE ID
      NOP         7) (ALL DONE) 
      DEF PLTUN   8) GET PLOT UNITS 
      DEF PLTCH   9)  GET CHARACTER SIZE INFORMATION
      DEF PNLOC   10) GET PEN LOCATION
      DEF CURSR   11) GET CURSOR LOCATION 
      DEF DIGIT   12)   DIGITIZE
      DEF LORG    13)  LABEL ORIGIN 
      DEC -5      14)  LABEL DIRECTION
      DEF SLNT1   15)  SLANT ON 
      DEF SLNT0   16)  SLANT OFF
      DEC -6      17) CHARACTER SIZE
      DEF PORG    18)  PLOT ORIGIN
      NOP         19)  SAVE 
      NOP         20)  ADD
      NOP         21)   REPLACE 
      DEF PNORG   22) PEN = ORIGIN
      DEF DRWCR   23)  DRAW TO CURSOR 
      NOP         24) 
      DEF SLPN0   25)   SELECT PEN 0
      DEF SLPN1   26)   PEN= -1(ERASE)
      DEF SLPN3   27)  PEN = -2 (COMPLEMENT)
      DEC -10     28)  PEN 1-N
      DEC -2      29)  GET # PENS 
      DEC -3      30) ??? 
      DEC -10     31)   DEFAULT LINE TYPE 
      DEC -4      32)   LINE TYPE WITH LENGTH 
      DEF PENUP   33) PEN UP
      DEF PENDN   34) PEN DOWN
      DEF PLTAB   35)  PLOT ABSOLUTE
      DEF PLTRL   36)   PLOT RELOCATABLE
      DEF PLTIN   37)  PLOT INCREMENTAL 
SMLAB DEF SHRTL   38)  SHORT LABEL
      DEF LGLAB   39)  START LONG LABEL 
      DEF STPLB   40)  STOP LONG LABEL
      DEC -1      41) CONVERT FLOATING PT. TO ASCII, OUTPUT AS SHORT LABEL
      DEC -9      42) GET MAX DISPLAY SIZE IN MM. 
      DEF CRABS   43)  POSITION CURSOR ABSOLUTE 
      DEF CRREL   44)    "         "   RELATIVE 
      NOP         45) RESET HARD CLIP LIMITS
      DEC -11     46)   GET MU/MM 
      DEC -13     47)   DEVICE CLEARING CHARACTERISTICS 
      DEC -14     48) # OF PHYSICALLY DIFFERENT PENS
      DEC -15     49)  # OF CURSORS 
      DEC -16     50)  LORGABILITY
      DEC -17     51)  MAX-CHAR SLANT 
      DEC -18     52)  HARD CLIPPING CAPABILITY 
      DEC -23     53)  INQUIRE CHARACTER PLACEMENT
      DEC -19     54) MIN/MAX CHARACTER SIZES 
      DEC -20     55)  LABEL DIRECTIONS 
      DEC -22     56)  LORG RANGE 
* 
* 
      SPC 3 
      SKP 
      SPC 3 
* 
*     ASCII COMMAND STRINGS 
* 
*     FORMAT:     WORD1 = NUMBER OF BYTES (N) WHERE 
*                          -N INDICATES A WRITE TO DEVICE 
*                          +N INDICATES A READ AFTER WRITE
*                 WORD2 = NOP  TERMINATOR WITHIN COMMAND STRING 
*                         DEF TERM - TERMINATOR AT ADDRESS TERM 
*                 WORD3 = FIRST WORD OF COMMAND STRING
* 
**************************************************************
      SPC 3 
RESET DEC -2
      NOP 
      OCT 66522     "MR ("CHARACTER =LOWER CASE)
*                   ESC*mr set graphics default 
* 
HOME  DEC -8                                                      DS2013
      NOP 
      OCT 70141      ESC*pa  lift pen 
      OCT 64440     i data absolute, 0 x-cord 
      OCT 20040                                                   DS2013
      OCT 20132     0 y-cord, z nop 
* 
PLTUN DEC 3         READ PLOT UNITS 
      NOP 
      OCT 71465     esc*s5 read display size
      ASC 1,Z       z nop 
* 
PLTCH DEC 3 
      NOP 
      OCT 71467       esc*s7 read graphics text status
      ASC 1,Z         z nop 
* 
PNLOC DEC 3 
      NOP 
      OCT 71462     esc*s2 read pen position
      ASC 1,Z 
* 
CURSR DEC 3 
      NOP 
      OCT 71463    esc*s3 read graphics cursor position 
      ASC 1,Z 
* 
DIGIT DEC 3 
      NOP 
      OCT 71464   esc*s4 read cursor position and wait for key
      ASC 1,Z 
* 
SLPN0 DEC -3
      NOP 
      OCT 66460    esc*m0a select pen 0 
      ASC 1,A 
SLPN1 DEC -3
      NOP 
      OCT 66461    esc*m1a select pen 1 (erase?)
      ASC 1,A 
*                                                                     DS2013
*                                                                     DS2013
* SLPN2 IS NOT USED IN THE DCT                                        DS2013
*                                                                     DS2013
*SLPN2 DEC -3                                                         DS2013
*      NOP                                                            DS2013
*      OCT 66462     esc*m2a select pen 2                             DS2013
*      ASC 1,A                                                        DS2013
* 
SLPN3 DEC -3
      NOP 
      OCT 66463     esc*m3a select pen 3 (compliment) 
      ASC 1,A 
*                                                                     DS2013
*                                                                     DS2013
* SLPN4 IS NOT USED IN THE DCT                                        DS2013
*                                                                     DS2013
*SLPN4 DEC -3                                                         DS2013
*      DEF B                                                          DS2013
*      OCT 66462     esc*m2a?b   select pen 2, line style replaces ?  DS2013
*      OCT 60400                                                      DS2013
*                                                                     DS2013
*                                                                     DS2013
* DEFLN IS NOT USED IN THE DCT                                        DS2013
*                                                                     DS2013
*DEFLN DEC 1                                                          DS2013
*      DEF C                                                          DS2013
*      OCT 66400     esc*m?c select line pattern, a number replaces ? DS2013
*                                                                     DS2013
PENDN DEC -2
      NOP 
      OCT 70102     esc*pb lower the pen
* 
PENUP DEC -2
      NOP 
      OCT 70101     esc*pa lift pen 
* 
PLTAB DEC -2
      DEF Z 
      OCT 70151     esc*pi data is absolute 
* 
PLTRL DEC -2
      DEF Z 
      OCT 70154     esc*pl?z  data is relocatable, data replaces ?
* 
PLTIN DEC -2
      DEF Z 
      OCT 70152    esc*pj?z set relocatable origin, info goes in place of ? 
* 
CLEAR DEC -13      Turn off zoom, clear graphics, and move to 0,0.
      NOP 
      OCT 62150    d h                             DS2013 
      OCT 60433    a esc                           DS2013 
      OCT 25160    * p                             DS2013 
      OCT 60551    a i                             DS2013 
      OCT 20040    space space (X=0)               DS2013 
      OCT 20040    space space (Y=0)               DS2013 
      ASC 1,Z      terminate                       DS2013 
*                                                  DS2013 
SHRTL DEC -1
      DEF BLANK 
      OCT 66000    esc*l?blank graphics label, string replaces ?
* 
LGLAB DEC -2
      NOP 
      OCT 62123    esc*ds graphics mode on
* 
STPLB DEC -2
      NOP 
      OCT 62124    esc*dt graphics mode off 
* 
DRWCR DEC -2
      NOP 
      OCT 70103     esc*pc use graphics cursor as new point 
* 
LORG  DEC -1
      DEF Q 
      OCT 66400    esc*m?q set graphics text origin, info replaces ?
* 
SLNT1 DEC -2
      NOP 
      OCT 66517    esc*mo turn on text slant
* 
SLNT0 DEC -2
      NOP 
      OCT 66520    esc*mp turn off text slant 
* 
PORG  DEC -1
      DEF J 
      OCT 66400      esc*m?j set relocatable origin, info replaces ?
* 
*CRORG DEC -2 
*     NOP 
*     OCT 66514     esc*ml set relocatable origin to graphics cursor position 
* 
PNORG DEC -2
      NOP 
      OCT 66513     esc*mk set relocatable origin to current pen position 
* 
CRABS DEC -1
      DEF O 
      OCT 62000     esc*d?o move graphics cursor absolute, info replaces ?
* 
CRREL DEC -1
      DEF P 
      OCT 62000   move graphics cursor incremental
* 
DEVID DEC 3    modified by GSB 8-8-79 
      NOP 
      OCT 71461    get device id
      ASC 1,Z 
      SPC 3 
* 
*     ERROR CHECKING
* 
EML01 NOP 
      LDA .2648 
      JMP EML01,I 
.2648 DEC 2648
* 
*     TERMINATORS 
* 
*A     OCT 101                                                        DS2013
BLANK OCT 40
*B     OCT 102                                                        DS2013
*C     OCT 103                                                        DS2013
J     OCT 112 
O     OCT 117 
P     OCT 120 
*S     OCT 123                                                        DS2013
*T     OCT 124                                                        DS2013
Q     OCT 121 
Z     OCT 132 
* 
      END 
                                                                                    