Data]{[data]}) – Matrix Orbital GLK24064-25 Legacy User Manual
Page 16

GLK24064-25 rev. 06
16
The bar graphs may be located anywhere on the display, but if they overlap, they will not display properly.
Note: it is important that [x
1
] is less than [x
2
], and [y
1
] is less than [y
2
].
This command doesn't actually draw the graph, it must be "filled in" using the Write to bar graph command,
described below. The unit saves time by only drawing that part of the bar graph which has changed from the
last write, so the representation on the screen may not survive a screen clear or other corrupting action. A
write of value zero, followed by new values will restore the proper look of the bar graph.
4.2.8 Write to bar graph (254 105 [reference number][value])
Once the bar graph has been initialized it can be "filled in" using this command. This command sets the bar
graph [reference number] to value [value]. [value] is given in pixels and should not exceed the available
height/width of the graph. (If it does, the graph will simply be written to its maximum size.)
4.2.9 Display saved bitmap (254 98 [reference number][x][y])
This command causes a previously stored bitmap referenced by [reference number] to be displayed to the
screen at pixel location (x, y) where this location defines the top left corner of the bitmap. Note: The
reference number is established when the bitmap is saved, normally using mogd.exe. Bitmaps and fonts
may use the same reference numbers, i.e. you can have both a bitmap 1 and a font 1.
4.2.10 Direct screen write bitmap (254 100 [x
1
][y
1
][x
2
][y
2
][data]{[data]})
This command is used to draw a bitmap to the screen directly without first storing it in the file space. This is
a far quicker method of drawing a bitmap to the screen than using individual pixels. There are some
irregularities and limitations to this command.
Unlike the format of bitmap download, this command expects data to be sent horizontally instead of
vertically. The first byte of data is located in the top left of the area defined by (x
1
,y
1
) and the MSB of that
byte is the leftmost pixel. The second byte is the next 8 pixels to the right of the first byte. While each
individual byte is oriented as you would expect with LSB toward the right and the bytes moving from left to
right across the screen, it is not a "bit-stream" as might be expected. After the first pixel row of data is sent,
data continues on the next pixel row.
The definitions of [x
1
] and [x
2
] must lie on "byte boundaries". That is, [x1] and [x2] must be defined as
0x00, 0x08, 0x10, etc. It is not possible to write a 10 x 10 bitmap to the screen at pixel location (13,13). It
is possible to write a 16 x 10 bitmap to the screen at pixel location (24,13) however.
You may wish to use flow control (see section 4.3) during direct screen bitmap writes to avoid possible
buffer overflow.
4.2.11 Initialize strip chart (254 106 [ref][x
1
][y
1
][x
2
][y
2
])
A "strip chart" is an area of the screen reserved for horizontal scrolling. This is normally used as follows:
1. Initialize the strip chart, which reserves the appropriate area of the screen.
2. Draw a line segment at the right or left side of the strip chart.
3. Shift the strip chart to the right or left.
4. Draw the next line segment.
Used this way the strip chart can produce a graph which scrolls smoothly horizontally in either direction.
With text the strip chart can produce a "marquis" effect.
Note: If the strip chart is used with text we recommend the use of an 6 or 7 pixel wide fixed width character
set, with each character placed 8 pixels from the start of the previous one (use the " Set text insertion point
using pixel values" command, section 3.3.5).