0% found this document useful (0 votes)
7 views7 pages

Graphics Software and Hardware For RT-11 Systems

The document describes a general-purpose graphics software package designed for RT-ll systems, enabling users to generate figures using a library of graphics subroutines written in FORTRAN. The system utilizes a modified Motorola 'Micro Chroma 68 Kit' graphics controller to output to various display devices, including color televisions and digital plotters, and can be adapted for use with other host computers. The graphics software and hardware facilitate the creation of detailed graphical representations, particularly for applications in psychology.

Uploaded by

Tommaso Parodo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views7 pages

Graphics Software and Hardware For RT-11 Systems

The document describes a general-purpose graphics software package designed for RT-ll systems, enabling users to generate figures using a library of graphics subroutines written in FORTRAN. The system utilizes a modified Motorola 'Micro Chroma 68 Kit' graphics controller to output to various display devices, including color televisions and digital plotters, and can be adapted for use with other host computers. The graphics software and hardware facilitate the creation of detailed graphical representations, particularly for applications in psychology.

Uploaded by

Tommaso Parodo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Behavior Research Methods & Instrumentation

1981, Vol. 13 (2), 255-261

Graphics software and hardware


for RT-ll systems
WILLIAM L. PALYA and BLAKE BROWN
jacksonville State University, Jacksonville, Alabama 36265

A general-purpose graphics package is described that allows the user to generate figures with
a supraset of the basic CalComp plotting subroutines. The software runs under RT·ll on an
LSJ.11 with 28K words of memory. The graphics subroutine library is approximately 200 blocks
long. The plotting tasks are passed over an RS 232 line to a simple extension of an inexpensive
and commercially available graphics controller. The controller implements these tasks as plot-
ting instructions to a color television, a vector display, and a digital plotter. The graphics
subroutines are written in FORTRAN and are invoked by the user as subroutine calls from a
FORTRAN program. The graphics controller is a modified Motorola "Micro Chroma 68 Kit."
The board is based on the 6808 microprocessor and 6847 video controller. It provides eight
graphic modes from 64 by 32 eight-color graphics to 128 by 192 four-color graphics to 256 by 192
two-color graphics. The present software and hardware implements the graphics subroutines as
256 by 192 two-color graphics, as 512 by 512 vector graphics, and as stepping instructions for
a digital plotter.

A laboratory graphics capability was developed by SYSTEM


modifying an inexpensive, commercially available, COMPUTER
video graphics controller and writing the software
required to enable a user to easily generate and output
desired figures. The software and hardware were
developed for use on Digital Equipment Corporation
(DEC) PDP·II family computers with the real-time
(RT-II) operating system. However, the software was
written in a relatively standard FORTRAN, and the
graphics controller was designed to receive input over
an RS 232 channel. As a result, the graphics software
can be modified to run in other environments and the
controller can be used with other host computers. The
graphics package presently provides for output to
black-and-white or color televisions, a vector controller,
and a digital plotter. A somewhat straightforward Figure 1. A block diagram of the basic graphics hardware.
modification would provide the capability to directly
drive an X-Y plotter or a vector display.
about 28K words of memory to run, and the library
COMMERCIALHARDWARE requires about 200 blocks of disk storage.
The graphics controller is a modified Motorola
Figure I provides a block diagram of the graphics "Micro Chroma 68 Kit." The board is based on the
hardware. The main computer system is based on an 6847 video controller and provides eight graphic modes
LSI-II (Doyle & Palya, 1980; Palya & Doyle, 1980). from 64 by 32 eight-color graphics, to 128 by 192
We are currently using an unmodified color television four-color graphics, to 256 by 192 two-eolor graphics.
as a display device, a Megatek BP 734 vector controller Figure 2 provides a block diagram of the Micro
with a Fairchild 737A display, and a Houston Instru- Chroma 68 board. This commercial board is a stand-
ments DP 7 digital plotter. The graphics software requires alone system and contains a 6808 microprocessor, a
2K monitor, 8K user RAM, a keyboard port, a "Kansas
City standard" tape port, 6K video display RAM, and
The authors gratefully acknowledge the contributions of circuitry to connect to an unmodified color television.
Elizabeth Palya in all phases of producing this system and
manuscript. Requests for reprints, software, and schematics
Motorola provides the printed circuit board and major
should be sent to William 1. Palya, Department of Psychology, chip set to universities for $89. The additional parts
Jacksonville State University, Jacksonville, Alabama 36265. needed to complete the kit cost approximately $150.

Copyright 1981 Psychonomic Society, Inc. 255 0005 -7878/81 /020255 -07/00.95/0
256 PALYA AND BROWN

tion from the main system, processes it, and controls


6808 MICROPROCESSOR the appropriate display device; and the library of
graphics subroutines. Figure 5 illustrates these custom
software elements in the graphics package.
The initialization and utility software is invoked by
a subroutine call to PLOTS, which must be called before
any other graphic subroutine. It is a FORTRAN routine
that determines the display device requested by the
user, obtains and downline loads the appropriate software
for the graphics controller, obtains and installs the
appropriate data passing software for the LSI-II, and
initializes the graphics software.
The graphics controller monitor contains an input
Figure 2. A block diagram of the commercially available
routine in PROM that loads in the task-specific software
Micro Chroma 68 board. to control the requested display device from the RS 232
channel. The graphic controller then inputs graphics
commands into a 6K input buffer. This typically releases
CUSTOM HARDWARE the main processor from a graphics tasks almost immedi-
ately. The task-specific software in the controller imple-
The present system did not implement the monitor,
the tape port, or the keyboard port that were available
on the Micro Chroma 68 board. Rather, the present
implementation uses the board as a dedicated peripheral 6808 MICROPROCESSOR
controller that is downline loaded through an RS 232
port. Figure 3 provides a block diagram of the graphics
controller. A IK communications monitor in PROM,
interfaces for the vector display (RS 232), and the
digital plotter (parallel I/O adapter and one shots) were
implemented on the "kluge" area provided on the
Micro Chroma board. With the addition of parallel
adapters, digital-to-analog converters, and task software,
a vector display or an X-V plotter can be directly inter-
faced.

COMMERCIAL SOFTWARE

The graphics subroutines are invoked by the user as


subroutine calls from a FORTRAN program running
under DEC's RT-Il operating system. Figure 4 illustrates
the overall architecture of the commercial software used
in displaying graphics. The user writes the program in
FORTRAN, including the calls to the graphics sub- Figure 3. A block diagram of the Micro Chroma 68 board
routines. This program is compiled and then linked with as modified for use as a graphics controUer.
the COMLIB library, which produces the machine-
runnable program. The graphics library, COMLIB,
emulates the CalComp "Host Computer BasicSoftware," RT-ll
or HCBS (Calcomp Computer Products, 1976, 1977).
In addition, it also includes other graphic subroutines
that provide for the more convenient generation of the
type of figures that are typically used in psychology.

CUSTOM SOFTWARE

The custom software consists of three main groups:


the initialization and utility software, which sets up and
carries out the interprocessor communication; the Figure 4. Architecture of the commercial software used in
graphics processor software, which receives the informa- displaying graphics.
GRAPHICS SOFTWARE AND HARDWARE 257

POP-l1 I GRAPH rcs CONTROL L ER I

~
Ut.r FORTRAN PERIPHERAL
progr •• 10 dr ••
d"lr,d figure PROCESSOR
PROG.SAV MONITOR
PLOTS IN PROM
,j, ,j,
Gr.phlc,
Ee n t r e lle r RS 232
Ln rt r e l r r e t t en
Routln,
1
J. DISPLAY
DISPLAY DEVICE
AXSLIN
DEVICE SPECIFIC
l~:~~_~~.J SPECIFIC CONTROL
DATA PASSER SOFTWARE
TICS
...... --_ .....,

l..:.~_~.~. j ~
r TV
J
AXSLBL ~ VECTOR J
...·····_·····1
j PLOT i
.. _--_ .......:
t-f CONTROllER

~
~ J
61<
INPUT t-
PLOT
IBUFFER XY
OISPLAY J
TICLBL
:--;~'~-~~~"1

: [F.~:~!J_--_ i ~
Y PLOTTER J
~_._--_ .. ...:

Figure 5. Overall architecture of the software used in displaying graphics.

ments the graphics input as 256 by 192 two-color raster and generally unacceptable format. The present library
graphics, as 512 by 512 vector graphics to a Megatek superceded AXIS with AXSLIN (draw axis line), TICS
graphics controller, or as stepping instructions for a (draw tic marks), TICLBL (label the tic marks), and
Houston Instruments DP 7 plotter. AXSLBL (label the axis). These routines provide
The library of graphics subroutines is detailed in the complete and convenient control of each element and
Appendix. They are for the most part hierarchical, with allow the user to create figures with a satisfactory
PLOT as the kernel or basic HCBS subroutine. PLOT appearance.
either simply moves the "pen" to some x,y coordinate SYMBOL and NUMBER are the CalComp subroutines
or draws a line while moving the pen. Virtually all other for drawing symbols and numbers. SYMBOL draws
subroutines call PLOT to implement their specific designated characters, and NUMBER draws the char-
functions. We have supplemented PLOT with MOVE, acters that specify the value of a number. SYMBOL
which also allows control of the line type while moving has been modified to contain a character set with a
the pen. better appearance, as well as a character set for the
AXIS is the CalComp HCBS subroutine that draws vector display. TEXT has been added to the library.
axes, adds tic marks, numbers the tics, and labels the It centers a string of characters between specified points
axes. Unfortunately, it provides only a very restricted and provides any desired character rotation.
258 PALYA AND BROWN

The HCBS library also contains several utility sub- REFERENCES


routines. LINE is the CalComp subroutine that draws a
line. It has been expanded with JLINE (draw an inter- CALCOMP COMPUTER PRODUCTS. CalComp software reference
manual. Anaheim, Calif: Author, 1976.
rupted line), DRAWLN (draw a line with data from the CALCOMP COMPUTER PRODUCTS. Programming CalComp electro-
disk), NEWLIN (change line type), PENUP, PENDN, mechanical plotters. Anaheim, Calif: Author, 1977.
and HOME (return to current origin). Several other DOYLE, A. F., & PALYA, W. L. A hierarchical LSI-ll system for
HCBS support subroutines are included in the library, real-time control, interevent time storage, and data analysis.
such as NEWPEN (change pens), SCALE (scale data to Behavior Research Methods cl Instrumentation, 1980, 11,
221-231.
fit axis), WHERE (returns x,y coordinate of current pen PALYA, W. L., & DOYLE, A. F. A simple LSI-ll system for real-
location), and FACTOR (draws figure to specified scale). time control, interevent time storage, and data analysis. Behovior
Calling FACTOR (.5) reduces the entire figure by 50%. Research MethodsclInstrumentation, 1980, 11, 210-220.

APPENDIX

INITIRLIZES GRRPHICS SYSTEM CHANGES PEN


DEVICE PEN 1. 2. OR 3
CHARACTER SET

I PLOT I
I MO VE I
/MOVES PEN - MANIPULATES ORIGIN
X.Y COORDINATE OF DESTINATION
L
L
\\
\
\
\
"'"
L
L
PEN UP I PEN DO~N
REESTABLISH ORIGIN
RETURN CURRENT LOCATION
CLEAR SCREEN
MOVES PEN - MANIPULATES ORIGIN
X.Y COORDINATE OF DESTINATION
PEN UP I PEN DO~N
REESTABL ISH ORIGIN
RETURN CURRENT LOCATION
DESIRED PEN
LINE TYPE (SOLID. DOTTED. DASHED.
BROKEN. DOT-DASH)

CHRNGES LINE TYPE IWHEREI


SOLID
DOTTED
DASHED
BROKEN
DOT/DASH RETURNS CURRENT X,Y LOCRTION
GRAPHICS SOFTWARE AND HARDWARE 259

I HOME I I TICS I

MOVES PEN TO CURRENT ORIGIN

iii iii' i i

DRAWS TIC MARKS


/
AXIS ANGLE
AXIS LENGTH
DISTANCE TO FIRST TIC
SPACE BETWEEN TICS (MANUAL)
HOW MANY TICS IAUTO)
LENGTH OF TICS
W10TH OF TICS

L L
CHANGES SIZE OF FIGURE
PROPORTION OF ORIGINAL

1.28

1.\8

1.88

iii iii iii

.:
I. 3. 5. 7. 8. \ 2 3 • 5 8 7

LABELS TIC MARKS


AXIS ANGLE
AXIS LENGTH
DISTANCE TO FIRST NUMBER
SPACE BETWEEN NUMBERS (MANUAL)
DRAWS AXIS LINE HOW MANY NUMBERS IAUTO)
VALUE OF FIRST TIC
AXIS ANGLE VALUE INCREMENT PER TIC
AXIS LENGTH NUMBER OF DECIMAL PLACES
NUMBER OF OFFSET RETRACES HEIGHT OF NUMBERS
CENTERED lONE SIDE ROTATION OF NUMBERS
OISTANCE BETWEEN RETRACES DISTANCE FROM AXIS
260 PALYA AND BROWN

I LINE I
W

a:
0:::
1.20

t- I. 10

1.00
rM ~ :-.: . •

, iii i i

1. 3. 5. 123~567

X-AXI5 SESSIONS
DRRWS R LINE
ARRAY OF X COORDINATES
LRBELS THE RXIS ARRAY OF Y COORDINATES
NUMBER OF DATA POINTS
AXIS ANGLE ARRAY INDEX
AXIS LENGTH LINE TYPE
NUMBER OF CHARACTERS CONNECTED I NOT CONNECTED POINTS
DESIRED TEXT SYMBOLS I NO SYMBOLS
CHARACTER SIZE FREOUENCY OF SYMBOLS
CHARACTER ROTATION OESIREO SYMBOL
DISTANCE FROM AXIS
OFFSET FROM CE~TEREO

·1 SCALE I
PREPROCESSES DRTR
FIRST ELEMENT IN ARRAY
I RX I S I NUMBER OF ELEMENTS IN ARRAY
ARRAY INDEX
LENGTH OF AXIS ON TO WHICH ARRAY MUST FIT

I.

DRRWS R NUMBER
DRAWS AXIS. TIC MARKS. AND LABEL X.Y COORDINATE OF START OF NUMBER
HEIGHT OF NUMBER
X.Y COOROINATE OF AXIS ORIGIN VALUE OF NUMBER
AXIS ANGLE ANGLE OF NUMBER STRING
AXIS LENGTH FORPlfH
VALUE OF FIRST TIC
VALUE INCREMENT PER TIC
NUPIBER OF DECIMAL PLACES
DESIRED TEX INTEGER I REAL
NUMBER OF CHARAC TERS TRUNCATION
GRAPHICS SOFTWARE AND HARDWARE 261

TEXT Is YMBOLI

RBCDEFGHIJKLMN
RBCDEFGHIJKLMNOPORSTUV~XYZ

obcdofgh'J'lmnopqr.tuYwxyz
TEXT
• • ,,0,!7'·I$];&lt-·-
• 0123456789~o(-fJn

><=+-.I/\()[){)

O.O.O.6&~*
DRAWS CENTERED TEXT A~(~(F~HIJKLMN¢~QRSTUVUXYZ

PAIR OF X.Y COORDINATES


NUMBER OF CHARACTERS
DESIRED TEXT DRRWS SYMBOL
HEIGHT OF CHARACTERS
ROTATION OF CHARACTERS X.Y COORDINATE OF START OF TEXT
OFFSET FROM CENTERED RNGLE OF TEXT STRING
NUMBER OF CHRRRCTERS
DESIRED TEXT
HEIGHT OF CHRRRCTERS
PLOTTER / CRT SYMBOL SET

You might also like