blob: bbf363924d33865c88156bc9cfa260df0e777fa9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
|
# IDS definitions.
define MAX_CHARSIZES 10 # max discreet device char sizes
define SZ_SBUF 1024 # initial string buffer size
define SZ_IDEVICE 31 # maxsize forced device name
# The IDS state/device descriptor.
define LEN_IDS 81
define IDS_SBUF Memi[$1] # string buffer
define IDS_SZSBUF Memi[$1+1] # size of string buffer
define IDS_NEXTCH Memi[$1+2] # next char pos in string buf
define IDS_NCHARSIZES Memi[$1+3] # number of character sizes
define IDS_POLYLINE Memi[$1+4] # device supports polyline
define IDS_POLYMARKER Memi[$1+5] # device supports polymarker
define IDS_FILLAREA Memi[$1+6] # device supports fillarea
define IDS_CELLARRAY Memi[$1+7] # device supports cell array
define IDS_ZRES Memi[$1+8] # device resolution in Z
define IDS_FILLSTYLE Memi[$1+9] # number of fill styles
define IDS_ROAM Memi[$1+10] # device supports roam
define IDS_CANZM Memi[$1+11] # device supports zoom
define IDS_SELERASE Memi[$1+12] # device has selective erase
define IDS_FRAME Memi[$1+13] # pointer to frames area
define IDS_BITPL Memi[$1+14] # pointer to bitplane area
# extra space
define IDS_FRCOLOR Memi[$1+18] # frame color
define IDS_GRCOLOR Memi[$1+19] # graphics color
define IDS_LCURSOR Memi[$1+20] # last cursor accessed
define IDS_COLOR Memi[$1+21] # last color set
define IDS_TXSIZE Memi[$1+22] # last text size set
define IDS_TXFONT Memi[$1+23] # last text font set
define IDS_TYPE Memi[$1+24] # last line type set
define IDS_WIDTH Memi[$1+25] # last line width set
define IDS_DEVNAME Memi[$1+26] # name of open device
define IDS_CHARHEIGHT Memi[$1+30+$2-1] # character height
define IDS_CHARWIDTH Memi[$1+40+$2-1] # character width
define IDS_CHARSIZE Memr[P2R($1+50+$2-1)] # text sizes permitted
define IDS_PLAP ($1+60) # polyline attributes
define IDS_PMAP ($1+64) # polymarker attributes
define IDS_FAAP ($1+68) # fill area attributes
define IDS_TXAP ($1+71) # default text attributes
# Substructure definitions.
define LEN_PL 4
define PL_STATE Memi[$1] # polyline attributes
define PL_LTYPE Memi[$1+1]
define PL_WIDTH Memi[$1+2]
define PL_COLOR Memi[$1+3]
define LEN_PM 4
define PM_STATE Memi[$1] # polymarker attributes
define PM_LTYPE Memi[$1+1]
define PM_WIDTH Memi[$1+2]
define PM_COLOR Memi[$1+3]
define LEN_FA 3 # fill area attributes
define FA_STATE Memi[$1]
define FA_STYLE Memi[$1+1]
define FA_COLOR Memi[$1+2]
define LEN_TX 10 # text attributes
define TX_STATE Memi[$1]
define TX_UP Memi[$1+1]
define TX_SIZE Memi[$1+2]
define TX_PATH Memi[$1+3]
define TX_SPACING Memr[P2R($1+4)]
define TX_HJUSTIFY Memi[$1+5]
define TX_VJUSTIFY Memi[$1+6]
define TX_FONT Memi[$1+7]
define TX_QUALITY Memi[$1+8]
define TX_COLOR Memi[$1+9]
define IDS_EOD (-2) # flag for end of data
define IDS_RESET 10 # escape 10
define IDS_R_HARD 0 # hard reset
define IDS_R_MEDIUM 1 # medium
define IDS_R_SOFT 2
define IDS_R_SNAPDONE 3 # end snap
define IDS_SET_IP 11 # escape 11
define IDS_SET_GP 12 # escape 12
define IDS_DISPLAY_I 13 # escape 13
define IDS_DISPLAY_G 14 # escape 14
define IDS_SAVE 15 # escape 15
define IDS_RESTORE 16 # escape 16
# max sizes
define IDS_MAXIMPL 16 # maximum number of image planes
define IDS_MAXGRPL 16 # maximum number of graphics planes
define IDS_MAXBITPL 16 # maximum bit planes per frame
define IDS_MAXGCOLOR 8 # maximum number of colors (graphics)
define IDS_MAXDATA 8192 # maximum data structure in display
define IDS_RED 1
define IDS_GREEN 2
define IDS_BLUE 3
define IDS_YELLOW 4
define IDS_RDBL 5
define IDS_GRBL 6
define IDS_WHITE 7
define IDS_BLACK 8
define IDS_QUAD_UR 1 # upper right quad.: split screen mode
define IDS_QUAD_UL 2
define IDS_QUAD_LL 3
define IDS_QUAD_LR 4
define IDS_CONTROL 17 # escape 17
define IDS_CTRL_LEN 6
define IDS_CTRL_REG 1 # what to control
define IDS_CTRL_RW 2 # read/write field in control instr.
define IDS_CTRL_N 3 # count of DATA items
define IDS_CTRL_FRAME 4 # pertinent frame(s)
define IDS_CTRL_COLOR 5 # and color
define IDS_CTRL_OFFSET 6 # generalized "register"
define IDS_CTRL_DATA 7 # data array
define IDS_WRITE 0 # write command
define IDS_READ 1 # read command
define IDS_READ_WT 2 # wait for action, then read
define IDS_OFF 1 # turn whatever off
define IDS_ON 2
define IDS_CBLINK 3 # cursor blink
define IDS_CSHAPE 4 # cursor shape
define IDS_CSTEADY 1 # cursor blink - steady (no blink)
define IDS_CFAST 2 # cursor blink - fast
define IDS_CMEDIUM 3 # cursor blink - medium
define IDS_CSLOW 4 # cursor blink - slow
define IDS_FRAME_LUT 1 # look-up table for image frame
define IDS_GR_MAP 2 # graphics color map...lookup table per
# se makes little sense for bit plane
define IDS_INPUT_LUT 3 # global input lut
define IDS_OUTPUT_LUT 4 # final lut
define IDS_SPLIT 5 # split screen coordinates
define IDS_SCROLL 6 # scroll coordinates
define IDS_ZOOM 7 # zoom magnification
define IDS_OUT_OFFSET 8 # output bias
define IDS_MIN 9 # data minimum
define IDS_MAX 10 # data maximum
define IDS_RANGE 11 # output range select
define IDS_HISTOGRAM 12 # output data histogram
define IDS_ALU_FCN 13 # arithmetic feedback function
define IDS_FEEDBACK 14 # feedback control
define IDS_SLAVE 15 # auxillary host or slave processor
define IDS_CURSOR 20 # cursor control - on/off/blink/shape
define IDS_TBALL 21 # trackball control - on/off
define IDS_DIGITIZER 22 # digitizer control - on/off
define IDS_BLINK 23 # for blink request
define IDS_SNAP 24 # snap function
define IDS_MATCH 25 # match lookup tables
# snap codes ... just reuse color codes from above.
define IDS_SNAP_RED IDS_RED # snap the blue image
define IDS_SNAP_GREEN IDS_GREEN # green
define IDS_SNAP_BLUE IDS_BLUE # blue
define IDS_SNAP_RGB IDS_BLACK # rgb image --- do all three
define IDS_SNAP_MONO IDS_WHITE # do just one
# cursor parameters
define IDS_CSET 128 # number of cursors per "group"
define IDS_CSPECIAL 4097 # special "cursors"
# must be > (IDS_CSET * number of cursor groups)
define IDS_CRAW IDS_CSPECIAL # raw cursor read
define IDS_BUT_RD 4098 # "cursor number" for read buttons cmd
define IDS_BUT_WT 4099 # wait for button press, then read
define IDS_CRAW2 4100 # A second "raw" cursor
|