march 1971 - unt digital library

54
PDP-91GOULD 4800 DEVICE HANDLER AND GRAPHICS LIBRARY MARCH 1971 BATTELLE-NORTHWEST PACIFIC NORTHWEST LABORATORIES DIVISION BATTELLE MEMORIAL INSTITUTE P. Q. WX 999, REHLANO, WASHINGTON 99352

Upload: others

Post on 30-Oct-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MARCH 1971 - UNT Digital Library

PDP-91GOULD 4800 DEVICE HANDLER

AND GRAPHICS LIBRARY

MARCH 1971

BATTELLE-NORTHWEST

PACIFIC NORTHWEST LABORATORIES DIVISION

BATTELLE MEMORIAL INSTITUTE

P. Q. WX 999, REHLANO, WASHINGTON 99352

Page 2: MARCH 1971 - UNT Digital Library

DISCLAIMER

This report was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency Thereof, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

Page 3: MARCH 1971 - UNT Digital Library

DISCLAIMER

Portions of this document may be illegible in electronic image products. Images are produced from the best available original document.

Page 4: MARCH 1971 - UNT Digital Library

b J

yq6p pouno Alyo~yd 06u!rju! +ou pylon wn 91 +ow r(umudU JO ~pnulas!p no-d JO +~npard 'm+~oddo 'U~+OUMO~! LUO )O SBOU

-ppsn JO ~o+o~d~os 'Asmnsm my+ roj &t!qpuodsu JO A+!wo!I 1060) AUD SOUIMIO JO 'p,IC(w! JO

nudm '&won Auo syocu *smoAojdcuo r!mq JO 'uo+ao~juoqns 'ucylpr+uoa r!oq) jo kuo JOU 'sodold J~W AUO JOU -qycuu~og Abouj a!wo+y so+o+s py!un 094 rou S.W+S po+!un .I(+ J.~+!.N

.+~.WU~OAOCJ ryc(S pqun OY) Aq pomuod~ ~JOM jo +unoaso WO! ID p~dud SOM wodw s!ql

831LON 7V3.77

'o(0p lDUO!+~PPO jO UOHDnIDAO PYO UOH+OJpS OY) uodn UO!+OS!j~paW ro uo!+s(luroa o+ +¶o!qnr st w!pUUOp! SIU 'og01-(1-~))1~ pDr+uo3 uO!ss!urcuo3 Ab~ouj, S!UtO+V ropun yon jo wnoa q+ ul puodud un+ou A~ou!cu!lud o jo uqpuuoju! su!o)uos podor s!y

.LWOdYW XVVNlyY17.iT2ld

110d31 SIHJ. d0 3EII 3NINZ133N03 NOI.LYW2lOrrlNI * A

Page 5: MARCH 1971 - UNT Digital Library

PDP-9/GOULD 4800 DENICE HANDLER

AND GRAPHICS LIBRARY

This report was prepared as an account of work sponsored by the United Statcs Government. Neither the United States nor the United States Atomic Energy Commission, nor any of their employees, nor any o f their contractors, subcontractors, or their employees,

- - ? - - - - I

CaMPUTEBS AND CONIROL

March 1971

B I S T R I B m O R OF THIS DOCUMEN? IS

Page 6: MARCH 1971 - UNT Digital Library

PDP-9/GOULD.4800 Device WUer and Graph ic sL ib rq

. . . , . . .

lbe WADCO PDP-9/-4 hybrid computer .&.s recently been equipped with

a GOULD 4800 graphics l ine printer.. . :This .system,, .operated by Measurement . . and Control lkchnology Departmnt - Control and Data Systems Section, is

used for hybrid and digi ta l sirmilation of nuclear and other processes.

.. . . . ,

The standard PDP-9 software contains a device independent 1/0 mni tor

system for ammmication w i t h m s t . T / O devices. Ih order that the GOULD

4800 ' a u l d be used with the :PDP-9 system, an I/O: devioe handler and .a

graphics library were written. 'This s o f b a r e enables the' PDP-9 p r o g r m r

to use the GOULD 4800 ei ther in a standard high-speed l ine printer mde o r . .

in graphics mode. . .

. . . . . . INPUT/omUT DEVICE HANmEm - CIA

. . . . . . .

. . The &vi& handler written for ' the GOULD 4800 printer is'. f o m t t e d -

(1,2) . There- acmrdhg t o the PDP-9 Advanced SoftWaxe system reqdmwnts

fore, th i s printer can be used by any standard system program (MACRO, PIP,

FORTRAN) o r user program for making l is t ings , etc. Alphanumeric mde

(l is t ings) is establishkd by assigning ei ther Unit .l (CLAl) 2 (ma). % . -. . .

unit 1 correspands t o smll font (5x7 dots) while 2 mrresponds to ' large

font (7x10 dots) . Graphcs mde is established when unit 0 (a) is

assigned. Appendix A gives detailed description of the CLA. device handler

characteristics.

GRAPHICS LIBRARY

The graphics library is a set of subrbutines b generate graphical

data on the GOULD 4800 printer. . A summairy of the library cmponents is

Page 7: MARCH 1971 - UNT Digital Library

given in Appendix B, and detailed program ' *.acteristics: are given in

Appendix C.

?he subroutines in the graphics library allm the user to ,. . ,

Draw solid (or pseudo-solid) straight lines ' . .

Draw individual dots'

Draw characters fm an ASCII character generahon table

Draw characters f m a user dt t fh~d rharaotor ganeratifm table.

Perform real-tire or non-real-tk graphics output.

Use any pmgran in the ASCII output 1-ibrary to generate a l p h a - n m i c graphics. (3)

Limping Technique

A page of 'graphics is'generated by a user program by a "looping"

technique. ?he core resident buffer that the graphics' routines uSe is

10 scan lines. in length (1/8 inch). , By looping the user graphics gener-

ation routine, a graphics page of iuly length (up to '1638 inrhes) can generated.

Example l i s t ing #1 shms the looping t e c h n i p . The macros GRXL,

G W J , and GRMsG are defined by .

.PEFM GRXCJIX~,Y% ,>

.GKlBL GR. I ,GR.XL . DEC LAC (X% MC* GR. I LAC (y% JllS* GR.XL

Page 8: MARCH 1971 - UNT Digital Library

L A C . cyfl JMS* GR. YL L EMDM

- .DEFIN GRMSGtRtXOtYOtMS . DEC . W B L r ' ~ t G ~ r G R . P 5 7

LAW JMS* GR.P57 +

M . yfl 1

JMS* WlSG. . DSA m S 4 .m

Macro GRXL defines a l ine i n the x direction start ing a t Xfl,Yfl, L dots i n

length extending t o right. he' GRYL macro defines a l ine i n the Y

direction start ing a t X$ ,Yfl;' L dots i n length extending down (increasing

y ) . The CJiElSG m q o defines a message text graphics, s tart ing at WtYg . .

with rotation R. The message is standard 5 x 7 asc i i (.ASCII pseudo-op.

Referring ta -le l i s t ing 1 and figure 1:

L i n e 1: Init ial izes CIA. device handler and sets up API interrupt

Line 2: In i t ia l izes page pointers a t top of page

Line 3-16: Graphics loop tn draw a box w i t h a message inside the box

Line 3: Clears the ten scan line b u f f ~ x

Lines 4-7: Draws the kcx sides

Line 8: , Generate the message a t &.PY = 1llOt no rotation

~ i n e 9-10: , Causes the graphics l ine buffers lm be written t o DAT s lo t No. 1

line^ 11-13: T e s t s to daLanhe i f 300 scan l ines have been sent . . . . . . ,

Line 14: Jups out of graphics loop when drawing is finished

Line 1 6 : Continues the loop i f page vert ical posn. < 300

h e 1.7: Defines the mssagc, PIIEEC, sent by aRMSG al: 1Lie 8. . . . . 4 '

Page 9: MARCH 1971 - UNT Digital Library

Example Listing 1 . . . , . . .

2 JMS* GR. IN /INIT PAGE COUNTERS

3 LcOP JMS* GR.CLR , /CLEAR TEN S.L. mF!FER

5 GFEL . 1 1 1 2 9 /BOX LEET SIDE

6 G W L Z6$ff191,29 /EOX RIGHT SIDE

SAD

/.WRITE: AND .WAIT , .

/vEm. PAGE POSN - .

. . /300 SCAN LINES?

.

/END OF PAGE . . . - . .

16 JMP ' UP /PFWES~ E ~ ( T m~ &m7 m m BUFFER

1 FIGURE - 1 : G~aphics output and coordination of Example L i s t i n g I .

Page 10: MARCH 1971 - UNT Digital Library

The "looping technique, described above, w i l l m r k anly because the

drawing of graphics axtpnents by GEIXL, etc., is conditional, i.e.:

Library subroutine GR.XL w i l l perform a drawing proedure only i f the Y$l

coordinate of the l ine is within the current scan l ine buffer.

- .

A similar rule applies to other graphics routines .(GR.YL,GR.MSG, e tc . ) .

Graphics Device Independence

Graphics output from the graphics routines is bevice independent i n

nature in that the binary'output fram GR.WR, etc:, can be sent b any

device capable of handling binary data (paper punch, DEC tape, etc., but

not teletype, etc.). To obtain I/O device f lexibi l i ty fm a graphics

routine, it is therefore desirable to use automatic device assignrent

(as opposed t o manual assignment w i t h the keyboard mitor). The auto-

matic mthod is shown i n example l i s t ing #2. The three entry points

w i l l select Gould printer , paper punch., and '&&ape 'uni t 1 respectively.

The selected device handler is assigned to DAT s l o t 1.

&ample Listing 2

.nAT = L35

. GLOBL Q;A.,PPA.,MID.

GQULD LAC Q;A.

PUNCH LAC PPA.

m. W E + 2

W E LAC Dl'Ll. * . .

XOR (w%%%% DAC* (.I1AT+1

. INIT l t l t %

.ENTER 1 ,FILE

Page 11: MARCH 1971 - UNT Digital Library

F D . SIXBT / f i l e name & extension / Graphics Line Buffer q r e s s i o n

Wen graphics data is to be sent to a device other than the G O W 4800

it is desirable to use the anpressed data fonn. The ten scan l ine buffers

are w r e s s e d by submut i r~e OR. CKS . The c3carrpmssed data f i 1.e on dectape

o r disc w i l l be 1/3 o r less the size of an unampressed f i l e pro-

viding a substantial saving in m s storage. FP1en l ine hilffer ccrmpression

is desired, subroutine GR. CKS should be called imwdiately before GR.WR

is called:

. - 2, .A .GLOBL GR.CKS, GR.WR

. JMS* GR. CKS /cXlMPRESS LINE BUlTEW . , .. . LAW 1 /Dm SmT NO. - *

JMS* GR.WR /.WIUTE AND . W T

Double Buffered Graphics Output

An increase in graphics output speed w i l l be realized when using

double buffering techniques, as shawn i n example listing 3. Ttm buffers

are used, the internal graphics buffer and GIILB2. The address of the

graphics routine internal buffer is reported by GR.IN. Subroutine WRITE

f i r s t w a i t s for any outputting of the previous l ine buffer to be completed

and then writes the current buffer using KIWHT. Subroutine IZ?WRIT f i r s t

reformats the current buffer t o be written .into a single l ine buffer md

executes a write instruction. The CLA. & v i e handler w i l l W f i t G ~ me data

at the interrupt level so tha t im fm-ther user prugrarmning is @red to

send the PO scan lines. After the w ~ i h is initiaked, Ulu L L a f e r p i n t e r

GR.LB is switched to the other buffer.

Page 12: MARCH 1971 - UNT Digital Library

Exarrple Listing 3

JMS* GR. IN /l?KCTIALIZE PACX POSN. DAC G=1# /JMZENAL BUFFER ADDR DkC* GR. LB JMS* GR.CLR /CLEXRBUFFER JMS R?WRfT /WRITE ZmOS TO ,'3AKrACI'ION JMS* GR. IN /INITIALIZE PAGE POSN.

W P Calculate Graphics Line Buffers

JMS WRITE

(Test for end-of-page 1 JMJ? W P

- B m* DAC mc DAC* LAW DAC LAC

m 1 TAD .

DAC D M * ISZ LAW TAD ISZ JMJ? JMS* LAC* SAD JMP LAC JMP LAC DAC* JMS* JMPQ

GI?. LB IDx# (676%%B IDX -11 m#. IDX

(46 IDX IDX IDX . - 1 IDX' CSPT WRIT1 GR . RtW GR . LB GRLBl . +3 GRLBl . +2 (GRLBZ GR . LB GR. CLR K'r WRIT

/CURRWT EUFF'ER ADDR

/WPC = 276, IGNORE CHECK-SUM /LINE BUFFER HEADER

/9 ADDITIONAL LIN!?. I3JFFERS

/ADVANCE T0.m LINE J3uEFER /m HEADER WED /CLEAR CHECK-SUM WORD

/L?SC L.B. /No /START .limrE /CURRENT L.B. /SWlXH L.B1'S

/USER r n E R /NEM L.B. FOlNER /CLEAR NEXJ mER

/GRAPHICS BUFFER

Page 13: MARCH 1971 - UNT Digital Library

An example graphics routine (GKJXST) is sham 'in exanp?le l i s t ing 4. ,. . . .

The output fm t h i s program' is sh- in . ~ig&e 2. The characteristics

of this example program and its techniques are: . . . . GlEEST outputs el& inches of graphics (880 scan l ines) .

> . . . The four macros , GRXL, GRYL, GHMSC and GRLll j perfom the , . .

gemration of graphics can st ant;^'. ,(Axis lines, header

One of three output device handlers , CLA. ; ' PPA; , or DTD . can be selected by start ing a t BEGIN, PCH, o r DT.

Double buffered output. is used. Th- standard s ize for ten

scan line buffers is 38OT0 = 5748.

The graphics loop address is LOOP. This loop is executed

88 times generate an 11 inch page. . lilhe pPtlu11 "1 WEST that drilwa tho gets its input

from TARLE, a table of scaled fixed.point numbers. The

curve is drawn by secgenting straight l ine segments with

GR.LIN.

Subroutine WRITE writes the current Line buffer and then

switches line' buffers. The new buffer is cleared.

Location SWI'ICH is a switch which, wheh set b NOP, causes

l ine buffer coanpression to occzlr. ( G J 3 . E ) . When 880 scan Pines have smt, eontml 01 Llie B U is

retuned t o HYDDT9. (DDTSA. )

Page 14: MARCH 1971 - UNT Digital Library

FORCE (LB I

FIGURE 2: Output from ~iam, 'p~e ist tin* # 4 .

The figure shows the COULD output from example l i s t i ng # 4 .

Printing s tar t s . a t ' t h e , top and proceeds 'dot&, ten scan l ines a t

a time.

-9-.

Page 15: MARCH 1971 - UNT Digital Library

ExmIeI;E LISTING 4

.TITLE GRAPHICS TEST

/MACXI DEFINITIONS FOR GRAPHICS

. DEFIN . G m . DM= IAc w" LAC n4s* L .ENCk/l

GRXL,XPI~YP,L GR. I ,GR.XL

(xfl GR. I (YP GR.XL

, "

/'

/Y LINE . DEFIN GR&X%rY%tL .CXOBL GR. I ,G#.YL . DEC LAC (XP K* Grt. I LAL: (Y% JMS* GR.m

/TEXT M E S W . DEF IN G~tRtXPlrY%t~.ISG . DW .mm WlSG., C;K.P57 LAM K JbE' GR. P57 xfl y!J JMS* mEG. .Dm MSGS4 .ENIN

Page 16: MARCH 1971 - UNT Digital Library

/ L m .DEFIN GFU,IN~X~ I ' ~ 1 t ~ 2 ,y2 . DM: .cX.lXL GR. LIN JMS* GR. LIN XI. Y1 x2 Y2 .m

mIN LAC SKP

PCH LAC JMP

m LAC XOR DAC* LAC DAC*

JMS* DAC* DAC JMS* JMS JMS*

CLA. /COULD-4800 D.H. ADDR

PPA . /PAPER PUNCH D .H. ADDR m+2 Ma. /DECTAPE D.H. ADDR (~%%P%PI / D ~ A P E UNIT 1 1. DAT+1 /ASSIGN TO DAWl

GR.CT(d /CHAR!TABtE ADDRESS GR.CHI' /CHAR GEN CHAR T ! ADDR

lt1,PI /INLTIALIZE D.H. 1 ,FILE /Ewrm FILE

=.IN /INIT PAGE POINIERS GR . LB /SET L.R. rX3CN GRLBI. # /POINTER TO L.B. #l GR n . R /CLEAR l?Ul?E'E rn /WRITE ZERO BUFFERS GR. IN / I N I T PAGE PO-

/DRAW AXES 6r HEADER MESSAGES GRYL 16Pt 19,0,461 GRXL 155#258,5 G W 15p, 3%JJ, 1% GriXL 155,35P,5 GRXL 158, 4PB'tlB GRXL 155,45fl,5

GRXL 15p ; 6@ ; la GRxL 15JJ 1 2pJJ t 351

Page 17: MARCH 1971 - UNT Digital Library

GEM; GRYL GmL GmL GRYL

/DBIAW OOOBID X'S G1QQ;r QZXt GRXL mad m& mxri a. GKXL GWQ(

Qua QZXL,

' . QZYL QaL

. - GmL G l m GEWlL Gm!L G E L ' GRm G m l '

. , GKYL GRYL

/RRAW- L A P n?c 'AD n?c LAC* .TAD

Page 18: MARCH 1971 - UNT Digital Library

SPA Jm? DAC TAD SMA JMP LAC JMS DAC LAC TAD JMS DAC JMS*

X1 B Y1 B X2 B Y 2 B

Em JMS LAC* SAD JMP JMP

END . m. .'I .

X1 SLm . (12 a- . . . ,

CAW( - .

x2 . - '

GR.+IN- :. , .

/WRTlT. L.B. ' S /cuRREm PAm m. SCAN LINES 188% (1%) /END .QF ' D I S P L W /GENEBATE NEXT TEN L r n BUFFER

DObE JMS* ,GR.CK . : : : / m ' p m ~ ~ , SKP . .

JMP -2' . .mSE 1 . , . .m 1 JMS* GR. R57 /RESIDE P57. JMP* DDTSA. /Rmvrw To D m

TAD (TABLE DAC IDX#, LAC* IDX MUL .DM: 64BB

TAD (1 6B* 2+1 .m , . . . ':.p JMP* CALX

Page 19: MARCH 1971 - UNT Digital Library

/WRITE TEN L.B. BUFFER .. . , . WRITE B . .c

JMS* GR.CK /CHECK IF m" WITH PREVIOUS BUFFER SXP m' JMP . -2 /NO - t m m : RLWRIT /INxrm .Imrm JMP* WRITE

R'rwFuT /a SWITCH SKP

m w* mc

DAC* LAW Mc LAC

wlU'I!El Trn mc DZM* IS2 Dm* . .

L A W . . TAD ISZ JMP SIP

MUTE3 JMS* -2 LAW

JMS* . .

x* SAD JMP LAC JMP HAC DAC* , .

m y * JMP*

\ m 3 C;R.LR D X t 676BPB IDX -11 am# IDX (4 6 IDX

. IDX IDX

- IDX - 1 IDX an \RITE1

/OR NOP TO CQMPIESS

/CURREWT L.R. ADDR

v /NEXT L.G. /CLEAR L.B.H. 'AND CKS

/.BAT rn NO. 1 /m&-TIME WkmE /CURRENT L.B. ADDR /swrIcH LINE $UFFERS

/FILE NAME SPECIFICATION FnR . s m /FORCE/ .

,TJx3r. /GW/ , . .

/MES-' MSG1 .ASCII FORCE - ,(m) /<

q . . . .

Page 20: MARCH 1971 - UNT Digital Library
Page 21: MARCH 1971 - UNT Digital Library

Appendix D gives a par t i a l lis tin4 'bf:'. thG gra'phics , libray. These

programs show the basic pmcedwes .to . : be ... used w h g the programer wishes . : . I ' .

to define graphics procedures for the GOULD ' 48 00.

U s e r Defined Character Fonts

The l i s t ing of the graphics library character set :is sham on pages

D-1 and D-2. Each entry in the character table . . requires .. . four words where

each word consists of ism eight b i t character lines. "Left to right" on . .

the COULD printer corresponds to "Left to right" i n an 8 - b i t character

l ine for unrotated characters. Top and bttm on the G O W printer

corresponds to C1 and C8 i n the character table for mkted characters.

The eight b i t character l ines are l e f t adjusted so t h a t ' a solid 8 b i t char-

acter line is given as 7768.

To establish the use of the ASCII character table (GR.CTfl) the user

must in i t i a l i ze the character generator (GR.CHR) table pointer ( G R . W ) :

.GlalX.~ GR.CflrGRaCWT

LAC GR . Ct'fl

DAC* C R . m

The user can establish his own character fonts by sett ing up a table

similar to that in Appendix D. The character table pointer (QZ.W) can

be switched a t any tine.:

(Ti== /w!ZXTAatE a

MC* GR. CXC /".rm BO-. , ,

The standard ASCII character s e t is sham i n figure 3. This GOW

output was generated by the program l is ted on page D6 (GKlW2) .

U s e r Defined Graphics

The Draw X-line subroutine (GR.XL) on page D3 shows the necessary

steps for generation of a graphxs element.

Subroutine GR.CKJ (page D4) checks the PJ cmrdinate (Y) to deter-

mine i f it is w i t h i n the current scan l ine buffer:

Page 22: MARCH 1971 - UNT Digital Library

FIGURE 3: Software generated a s c i i . charaotor co t - GR.CT@

Page 23: MARCH 1971 - UNT Digital Library

(GR.PJ) 5 PJ - < (GR.PJ) + 9

Subroutine GR.W reports abave, below, or with-in the current scan l ine

buffer. If the requested X-line is above or beluw, exit f m GR.XL occurs

( J M P OUT). If the PJ coordinate is within the current buff~ir, drawing of

the line is initiated. Drawing of the individual dots is p e r f o d by

If the user wishes to p r q a m the setting of dots within the scan

line buffers, the GR.m listing (page D5) should be used as a guide.

This "set dot" subroutine f i r s t checks i f the I (X) coordinate is wish-in

its legal limits

0 f_ I 599

The relative word position of the dot within the scan line buffer is:

R e l . Posn. = (N1*J) + [I/18] + NH + 1

where :

N1 = "1 no. wrds in one line

buffer - 38

I-& = No. words in line buffer h ~ d ~ - 2

I = Horizontal p s n . of dot

J = Vertical posn. of dot

t i t h i n czar ra t buffer ,

The dot b i t position within the addressed w r d is:

Page 24: MARCH 1971 - UNT Digital Library

(1) "PDP-9 User and book" - Digital ~ ~ u i ~ r n e n t Corp . , Maynard, * . Mass.

( 2 ) "Advanced Sof mare System Monitors" - DEC-$A-MADO-D Digital

Equipment Corp. , Ma ynurd, Mass.

(3) "Hybrid Software System Library and Macros", October 21,

1970, L. H . ~erhards te in , BNWL-B-26. , .

Page 25: MARCH 1971 - UNT Digital Library
Page 26: MARCH 1971 - UNT Digital Library

Device I3ardle.r. N a m : . . . . UA

Legal Data Modes : IOPS Binary

IOPS Ascii

Interrupt : API Channel 64

No. Wrds: 7448 = 48410

IOPS Functions : .

. INIT Performs .SETUP

' . Ini t ia l izes d e & font characteristics

. FSTAT

.& Ignored

. D m

. . I l legal

.ENlm Sends Auto Form Feed

.CLEAR Ignored

. C U S E Sends Auto Form Feed

Releases control of printer

Ignored

Illegal

.WRITE Transfers one l ine buffer of data to

the printer i n the rmde selected by

. INIT .WIT I/O w a i t un t i l printing finished

Real-Th 1/0 wait on printing done

I l legal

Page 27: MARCH 1971 - UNT Digital Library

Character Generawr Font Control: - ,

. . . . . . .- The Mcde and character font are determi&"l& ::the u n i t n u & ~

assigned when .INIT was executed. Unit fl (w) is fo r . b i t mde data

while Units 1, 2, and 3 are for a sc i i character data. U n i t . . 1, (W)

generates upright small f&, and unit 2 (W) generates upright large . . ..

font. U n i t 3 can be used i f the user wishes to specify .his own font

configuration.

Thc prinkor mntrol word& for t h a vari~us unit a.wi r~rmr?nt..r,.nt.s are :

Unit El? Pre Pre Char Line Char Lines Per No. Font Wrd -- - M1 Wd.2 S p , Sp PerEine 9"Page

0 B i t . 00 0 . 1448 0 0 100 72 0

b L ~ l l l J g 2 1448 1 2 100 102

2 Large 61g 2 1138, 1 2' 75 . 60

CLA. Internal G l o b a l Addresses:

There are seven addresses i n CIA. accessable by the user program:

G l o b a l Normal N a w Cnnt~niS l;lescrliptiow

CL.F1 L A W l 1 ' , Unit 3 "EF" mrd

a . F 2 2 ' Unit 3 Preamble Wrd No. 1.

CL . F3 1448 Unit 3 Preamble Wrd No. 2,;

CL.F4 l a g , Uppr Page Margin (scm L.i.nesj

CL.F5 13288 %. ,Scan h e s per Page

CL.F6 12g8 - bmer Page Margin (scan lines)

CL.F7 -128 ' Negative Tab s ize (characters)

Page 28: MARCH 1971 - UNT Digital Library
Page 29: MARCH 1971 - UNT Digital Library

4

APPENDIX B .. . . .

GRAPHICS ROUTINES SUMMARY

The following table gives a basic description of the programs and

global addresses of the package. . . . .

p-". ' IWT. NAME ~ B A L S ' P U I ~ E E

GR.CIg GR . CTP ASCII character able

GR.Q;R GR.CLR Subroutine to se t ten scan line . .

buffers to zeros. . .

.. . ., . GR. IN. s u b ~ u t i n e to se t Page Position

pointers to top of paqe (y = 0) , . , .

GR.LB . .

Line Buffers pointer . - . i

GR. PJ Vertical page position (scan lines)

GR . PJN Negative Vertical page position

. I . . (scan . . .lines)

: " GR.PY . ~ e r t l c a l page position (text lines or

no. of ten scan line buffers)

GR.CXS GR.CKS Subroutine to ccanpress the ten scan

line IOPS line buffers, and calculate

the headers and check-cum.

GR.WR Subroutine to w r i t e the ten scan line '

buffers to an arbitrary output device. . . . - . .

' (Non-real-tim)

GR.RbW Subroutine to write the iw1 scan line

buffers b an arbitrary output device.

fF!eal-time) . .

GR. CK Subroutine to check done status of the

real-tire write subroutine GR.RLW.

Page 30: MARCH 1971 - UNT Digital Library

GR. SFT

GR. CXJ

GR. SETT Subrout- to set one pint witkin a , . . 9 . .

' ̂ ten scari line bu'ffer to a 1. . . . . .% ... .

GR. I Wrizontal position . _ . of. . . dDt . (0'. to 599) . . . a .

, ,: ... / . . : . , . ....

GR.J Vertical Position of dot within the . . !

ten scan line buffer ; (0 .to 9)

GR.CW Subroutine .tD check i.f a given vertical

wsi.ti.cn is within tho uumgnt b n scan . .

line buffer . GR.2CL

, .. GR. XL subroutine to draw a horizontal straight

.< \ . .. . .. . '

&lid line w i t h a specified starting

position d length. . .

GR. YL GR.YL' Subroutine to draw a 'vertical straight . _ . .

. . . . "solid line w i t h a specified starting

position and length.

GR.CHR GB.CHR . Eubroutine to store a character repre-

. . . . . . sentation in the ten scan line buffer . . .

w i ~ a specified ps.i.t,.j.nn and rotatim.

Character Ratation

J2 Ught-side-up

1 Cloolr-wioo

6R.TI Character horizontal position (dots)

GR:TY ' Character vertical p s i t i o n (text lines)

'GR. CHT 'Character table pointer.

GR . LXN a. S4-m Subroutine M draw a pseudo-straight . . . . solid line between t m points (xl yl) :

(x2t y2)

Page 31: MARCH 1971 - UNT Digital Library

GR. P57 GR.P57 Subroutine to setup the IOPS ascii

output library to graphics roode.

GR. R57 Submutine to restore the IOPS ascii

output library to n o m l d e .

Page 32: MARCH 1971 - UNT Digital Library
Page 33: MARCH 1971 - UNT Digital Library

APPENDIX C

GRAPHICS LIBRARY PWX;RAM D ~ m I o N S

The following pages give detailed descriptions of the graphics

routines and their basic calling procedures. Execution tifiles are for a

PDP-9 digi ta l camputer (1 p s e c cycle t h ) .

These pages can be resnoved and added .t;o "Hybrid Software System

Library and 1.lacros" - BNC9rB-26.

GR . mj3

Library .form:

ASCII CHARACTER SET GEhTERATION TAELE

/To in i t ia l ize:

.mm GR.CTj3, GR.m

LAC GR . @I%

/To calculate a character address

IAC ASCII /character

AND (77 /6 B i t

ALSS+2 /4* Qzar

TAD* . ,

GR. cm DAC ADDR /Character

Address

Execution t ime

Description:

N.A.

The GR.C!Tfl character table contains

8 x 8 representations for the 64

printing asci i characters ($348 to

137, seven b i t codes). The address

of a character in the table is:

GR.m + (4*C)

where C = the six bit ~ L - ~ J I I d e .

The contents of a 'character table . . entry is defined by the macro defini-

tion :

Page 34: MARCH 1971 - UNT Digital Library

GR. CLR

Variables :

Library form:

.DEFIN CHAR, C1, C2, ~ 3 , C4, C5,

C6, C7, C8

C1*400+C2*2 " '

C3*400+C4*2 ,

C5*400+C6*2

C7*400+C8*2

. ENaM '.

C 1 through C8 area b i t representation

for tho eight scan, l.ines nf the d , w & ~ ! ter starting at the top. A character

line of 8 dots is represented by 7768.

e.g.: The aoding for the letter "A" is:

- ooo 000.3 cu Bit values . . . O O O W ' c u d .u' t q 4

GR.LB = Line buffer printor

. W B L GR.LB, GR.CLR

Set GR.LJ3 (optional)

JMS* GR.cLR

Execution Time: 3031 psec (PDP-9)

Page 35: MARCH 1971 - UNT Digital Library

Description:

GR. IN

Variables :

Library form:

Ekecution Time:

Description:

Subroutine GR.CLR should be used to

clear the graphics buffer at the

beginning of each graphics program

loop. The contents of GR.LB points

to the current buffer address.

38010 = 5748 words are required for

a graphics buffer. (3810 = 468 mrds

per scan line). The contents of each

scan line buffer after execution of

GR.CLR is:

4 23%%% /Line buffer header

% /Check-sum '

4%%%4 2 /Zero/data count

777777 /end of-line flag . . INITIALIZE GRAPHICS PAGE POSITION

GR.PJ = Page Vertical posn. (scan lines)

GR.PY = Page Vertical Posn. (text lines)

GR.PJN = Negative Page Vertical

posn. (scan lines)

.GLoRL GR. IN

JMS* GR.IN

/AC = Address of graphics

'buffer in graphics

/subroutines (ignore if

/not doublc-buf fa- f i~q)

Submtine GR.IN initializers the

graphics package page position to:

Page 36: MARCH 1971 - UNT Digital Library

GR. CKS

Variables :

L i b r q . form:

Execution time:

Description:

GR.LB = line buffers pointer

approx. 2.2 milli-sec (PDP-9)

Submutine GR.CKS r e f o m t s the ten scan

line buffers into a reduced form that

eliminates all zero data mr& a 1 Ll~us

conpresses the size of graphics data f i l e s

by as much as 1/5 or less. Q?.CKS need

not be used i f the graphics data is sent

directly to the printer rather than t o a mass storage device. After GR.CKS has

hen executed, tho format of P graphics

line buffer is: '

m % b % /header CXS /checksum

4 OIL) g W) /zero,/dab oo~~~~t-block 1

M1. data I WOrdsI

4 (N2) (M2 ) /zero/data count-block 2

rn ddia 1 words 1

777777 /H-of-line Switch

fl /optional .to make /total no. words even.

Page 37: MARCH 1971 - UNT Digital Library

GR. SET SET A POINT IN G W H I C S BUFFER

Variables :

Library form:

mecution time:

Description:

GR. WR

Variables :

Library fonn:

m e e t i o n time:

Description:

GR.J = V e r t i c a l posn. i n current ten

scan l ine buffer

= lbrizontal posn of dot.

IAC V e r t . h s n . i n t h i s buffer

DAC* GR.J

LAC Wriz. msn.

Appmx. 54 p s e c . (PDP-9)

Submutine GR.SET is used by a l l

graphics routines to set points within

the ten scan l ine graphics buffer.

The contents of GR. J must have been

set to a nLlmber from jf to 9 by the

calling program.

WRITE GRAPHICS L m BUFFERS

AC (9-17) in = .WRITE Dot s lo t no.

GR . LB = Line buffer pointer

.GIX>EL GR.LB, G R . m

/Set GR. LB (optional )

LAW Dat Slot NO.

JMS* GR.WR

150 psec + lo* (.WRITE + . W T of

specified device handler) (PDP-9)

GR.WR is a non-real time subroutine to

w r i t e the ten scan l ine buffers t o an

arbitrary output device.

Page 38: MARCH 1971 - UNT Digital Library

Listing :

GR . RLW Variables :

Execution Time:

Description :

GR.WR fl JMS GR. RLW

WAIT' JMS GR. CK

JMP* GR.WR

JMr? m

GRAPHICS BUFFERS REAGTIMF: WRlTE

AC (9-17)i, = .WRITE Dat Slot No.

G R . U = bhr! buffer pointer GR.PJ'= Page PoSn. (s.L.)

GR.PJN = Neg. Page Posn. (S .L.)

GR.PY = Page posn. (T.L.)

. W B L GR.LB, GR.Rl;n '

/Set GR.LB (optional)

LAW Dat Slot No.

JMS* GR. RLW

Ekecution of GR.RLW sets up Subroutine

GR.CK to perform reaL-time output of

the ten scan line graphics bufters: Mter

GR.RLW has been called, GR.CK should be

called frequently until data transfer

ic aonrpleted, T)ncs GR.RLW has be=

called, GR.I;B can be mdified and a

new set of buffers cirri be generated

(double-b~f f ~ r i . n g ) . The action of W.FU,W iS as folluws:

=in 3 .WRITE dat for GR.CK

ACin -+ .JiAITR dat for GR.CK

GR. LB 3 GRLB for GR.,Q<

Page 39: MARCH 1971 - UNT Digital Library

GR. CK

Variables :

Library form:

Execution time:

Description:

EWL-B-58

GRAPHICS REAL-TIME W T

N.A.

9 psec + .WAITR i f done return

7 p s e c + .WAITR ) i f Busy

or 19 p s e c + . m m + .WRITE I return

Subroutine GR.CK performs a r e a l - t h e

wait and write on the dat s l o t speci-

f ied by GR.RLW. The action taken

by GR.CK is:

[ Y e s

Page 40: MARCH 1971 - UNT Digital Library

G R . W

V a r i a b l e s :

L i b r a r y f o r m :

Execution time:

D e s c r i p t i o n :

L i s t i n g :

ACin.= V e r t . Page Posn. of dot

GR.PJN = Neg. V e r t . P a g e Posn. of . . , current scan line buffers. G R i J = V e r t . Posn. w i t h i n current

scan line buffers.

Xout = GR. J

.GLOBL GR.CXJ . ?lpW.. r.mt Pusll*

JMs* GR.CKJ

... /In : AC = Posn. i n this buffer.

. , ,

9 p s e c (PDP-9) above

15 isec (PDP-9) b e l o w

21' MS& (PDP-9) w i t h - i n .

Subroutine GR.CKJ is used by such

p r q a m r , as GR.LIN, GR.CHR, and GR.YL

to ' d i t i o n a l i z e thtt s e L L i n g of dotc

w i t h - i n the ten scan line buffer.

.QX>RL GR.PJN, GR.J

.&oBZ, GR.CKJ

G R . m % TALI* GR . PJN

SPA 1 STL JMP* GR.CILI / h v e

TAD (-12

m1 sm JElF . +'I /Relow TAD (12

DAC* GR. J Rosn

IS2 GR.CIGS

SSZ GR. CKJ

JMP* GR. CW

C-8-

Page 41: MARCH 1971 - UNT Digital Library

DRAW IKIRIZOIWAL SOLID LINE

Variables :

Library form:

Ekecutioli time :'

Description:

GR. YL

Variables :

Library form:

ACin = V e r t . Posn. on Page a t s t a r t ing

p i n t .

GR.1 = Mrizontal Posn. on Page a t

s tar t ing point.

(JMSspl) = No. D o t s i n l ine

.GLQBT, GR.1, GR.XL

/Set GR.1

LAC V e r t . page posn.

JMS* GR.XL

No. Dots i n l ine

... /Return

20 p s e c (PDP-9) i f outside current

buffer . or 37 p s e c + 68*N psec (PDP-9),

where N = No. dots, i f within

current buffer.

Subroutine GR.XL draws a sol id hori-

zontal l ine with specified s t a r t ing

point and length. The s t a r t ing p i n t

is defined as the l e f t line end

point (minimum X) . DRAW VERTICAL SOLID LINE

ACin = V e r t . posn. of s t a r t ing p i n t

GR.1 = Ibrizontal posn. of s t a r t ing

point.

(Jlk pt+l ) = No. dots in l ine

.GI&& GR.1, GR.YL

/Set GR. I

LAC V e r t . Posn.

JMS* GR.. XL

F b . dots in l ine

... /Return

Page 42: MARCH 1971 - UNT Digital Library

Execution t h e :

Description:

Variables :

L i b r a r y form:

18 + 17NA + 85.UI + 22.NB p s e c (PDP-9)

where: N = rJo. Pts ahve current buffer A

= NO. ~ t s in current &fer

NB = 1 i f l ine extmds below

current buffer

NB = 0 i f l ine doesn't extend

below current buffer

Subroutine GR.YL d r a w s a solid vertical

line with speciLid s ~ ~ h l y p i n t

and Length. The start ing point is

defined as the upper l ine and point

(Inininnun y) . . .- . - , .

DRAW ALPHA-NUMERIC CJWWTES

ACh = 6 B i t ASCII t r i m code

GR.TI = Character I coordinate

GR.T!Z = Character text l ine no.

GR.RLYT - Charaotcr Rotation

JI Normal

I C.W.

2 upside down

3 C.G.W.

GR.CHT = Character generation table

pointer

. W13L GR.TI, GR.TY, G R . M

. GLQBL GR.CHT, GR.CC~

.GLQEL GR, Cm

LAC GR . LTpI

DAC* GR.CIPT /Set pointer

/Set GR.TIl GR.TY, G R . W

L A C . 6 Bit char JMS* GR.CHR

Page 43: MARCH 1971 - UNT Digital Library

Description:

V a r i a b l e s :

40 p s e c (PDP-9) i f character is not

in the current buffer

1480 + ( 70 + 17R) Nl p s e c (PDP-9) i f

character is i n the current buffer

where R = Rotation (0-3)

N1 = No. ones i n char. font.

e.g.: The execution the for drawing

the letter "A" is 3.0 to 4 . 1 milli-sec

depending on rotation.

GR.CHR draws a character a t specified

position and rotation. A square 8 x 8

character font is used. (See GR. CTfl

for format). The text character

position is updated a f t e r each execu-

t ion of GR.CHR as f o l l m s :

GR. RL3T Action

0 GR.TI + 10 + GR.TI

1 GR.TY + 1 -t G R . W

2 GR.TI - 1 0 -t GR.TI .

3 GR.TY - 1 + GR.TY

Updating of the character position in

the l a t t e r manner causes sequential

cal l ing nf GR.CHR to draw a character

s t r ing i n the direction specified by

G R . r n .

DRAW PSEUlX-SIl?AIGHT SOLID LIp\IE BmWEEN TW3 POINTS

- (rn pt + 2) = Y1 t Vherc the

points are (X, Y,

Page 44: MARCH 1971 - UNT Digital Library

Library form:

GR. P57

Variables :

. GLQBL GR. LIN

JMS* GR. LIN

X1

Y 1

X2

where :

NA = No. points above current buffer

NoUT = No. points outside current

buffer

NIN = No. p i n t s inside current

buffer.

Subroutine GR.LIN draws a pseudo-

straight l ine b e W M -1 speci l ld

points (A serres s f data, v c ~ Lied

Lines, and horizontal lines that simu-

l a t e the l ine) .

,5EIuP IOPS ASCII 0mUT L I M Y TiJ SE3fD GRAPHICS

AC (1.6-i7) 1, = Character Rotation

(JMSpt + 1) = w-xt start irq 1 w2 position.

(JMSpt + 2) = Text start ing text l ine position.

Page 45: MARCH 1971 - UNT Digital Library

Library form:

Ekecution the:

.GLQBL GR. P57

LAW Rotn. No.

JMS* GR.P57

Starting X posn.

Starting text line

... k t =

LAC ASCII char

JMS* P57. /Sends Character

/to graphics.

48 psec (PDP-9)

Add 26 usec to GR.CHR when using

P57.

Description: Ekecution of GR.PS7 causes all the

IOPS ASCIT output routines (WXT.,

WE]CI., W., etc.) to send their

output to GR.CHR, the graphics

character routine. The normal con-

dition of P57. is: \

P57. a. SKP

a

I Program to Pack 5 x 7 ASCII

JMP* P57.

After GR.P57 is executed, the condi-

tion of P57. is:

P57. a JMP* P57.+2

c A m

Where CATCH is a routine in GR.P57 that transfers control to GR.CHR.

C-13

Page 46: MARCH 1971 - UNT Digital Library

GR. R57

Variables :

Library fonn:

mecut ion time:

Description:

Lis t ing :

None

Submutine GR.R57 restores P57.

for norm1 packing of S x 7 ASCII.

. GWBT;

.mEL

GR. R . 7 % LAC

D;crrJ

IS2

LAL=

DAC*

JMP*

P57.

GR. R57

P57.

Wl3I.f

POINT /P57.+1

(SKP

POINT

GR. R57

Page 47: MARCH 1971 - UNT Digital Library
Page 48: MARCH 1971 - UNT Digital Library

APPENDIX D - PAt7I'IAL GRAPHICS LIBRARY LISTINGS

. TITLE GRAPHICS C H A R A C T E R TABLE, . .

/ 9-28-70 / L H GERHARDSTEIN

. DEFI N C H A R , C 1 ,C2,C3 ,C4 ,C5 ,C6 ,C7,C8 C 1 *40D+C2*2 C3*400+C4*2 C5*408+C6*2 C 7*400+C8*2 . EN DM

. GL ORL GR. CT0 GR.CT0 C H A R 1.70,2fl4,462,512,514,470,2(42,174 / 00 @

C H A R 068,110,204,4fl2,776,402,4fl2,402 / @ l A C H A R 770,404;4fl4,770,404,4m2,402,402,774 / 02 B . C H A R 174,202,400,4@~,40fl,4QIPI,2PI2,174' / fl3 C C H A R 770,484,402,4Gl2,402,4PI2,404,770 / 04 D C H A R 776,4~0,4~l0,770,400,4~m,4a1;1,776 - / 0 5 E C H A R 7 7 6 , 4 0 0 , 4 0 0 , 7 7 0 , 4 8 f l , 4 0 0 , 4 @ 0 , 4 0 0 1 06 F C H A R 174,202,400,'4Pl0,436,402,202,174' / El7 G C H A R ,402,482,402,776,402,402,402,402 / 1 fl H C H A R 174,020,020,020,020,020,020,174 / 1 1 I C H A R 076,01P1,010,010,410,410,220,1.40 / 12 J C H A R 4 0 4 , 4 1 8 , 4 2 0 , 7 4 0 , 4 2 0 , 4 1 0 , 4 0 2 / 1'3 K C H A R 400,4flfl,400,400,400,4flC?,4B0,776 / 14 L C H A R 402,606,512,462,4B2,402,402,402 / 15 M C H A R 402,6fl2,502,442,422,412,406,402 / 16 N C H A R I70 ,204 ,402 ,402 ,402 ,4 f l2 ,204 ,170 / 17 0 C H A R 774,402,402,402,774,400,408,400 / 20 P C H A R 170,204,402,402,422,412,204,172 / 21 Q C H A R 774,402,402,482,774,418,484,402 / 22 R C H A R 374,402,400,374,002,002,402,374 / 23 S C H A R 376,020,020,020,020,02fl9PI20,00 / 24 T C H A R 402,402,402,402,402,4C;12,284,170 / 2 5 U C H A R 402,402,4fl2,28'4,110,1 10,060,,060 / 26 V CHAR 482,402,402,402,462,462,264,110 / 2 7 W C H A R 402,204,110,06P,fl68,118,204,402 / 30 X CHAR 2fl2,282,184,858,828,BZfl,Q2~9,B2B / 31 Y C H A R 776 ,404 ,010 ,174 , f l40 , l0PI92f l2 ,776 / 32 Z C H A R l70,100,100,100,100,lfl@,lPJ0,170 / 33 ' [ C H A R 400,200,108,040,820,01flP004,002 / 34 \ C H A R 170,010,010,010,010,01fl ,010,170 / 3 5 I C H A R 020,070,124,020 ,02fl,028,82PI,Q20 / 36 t CHAR 000, 100,2L70,776,2fl0, lfl0,000,00fl / 3 7 c C H A R 800,008,000,flfl0,080,91PIC1,0B0,0Cl0 / 40.SPACE C H A R 860,06fl,068,fl60,060,0Bfl,060,060' / 41 ! C H A R 154,154,154,fl88,0PI0,fl0fl,088,800 / 42 " C H A R 11~,118 ,776 ,11f l ,118 ,776 ,118 ,110 / 43 # C H A R 374,512,510,374,112,112,512,374 / 44 $ C H A R 776,504,710,020,040,116,212,416 / 45 Z C H A R 860,'110,110,162,224,41fl,424,342 / 46 & C H A R 030,830,010,020,0G0,fl0B,fl00,000 1 47 ' CHAR 010,@20,040,040,84fl,lil40,020,010 / 50 ( C H A R .100,04fd,020,020,828,820,040,100 ' / 51 ) CHAR 204,110.,060,776,060,110,204,000 ' . I 52

Page 49: MARCH 1971 - UNT Digital Library

C H A R C H A R C'H A R

' C H A R C H A R C H A R C H A R C H A R C H A R C H A R . C H A R C H A R C H A R C H A R C H A R C H A R

. CHAR C H A R C H A R C H A R C H A R

Page 50: MARCH 1971 - UNT Digital Library

, T I T L E GRAPHICS DRAW .X--LINE . . . . .

/ 9-28-70 / L H GERHARDSTEIN

/ CALLING SEQUENCE: / S E T GRo I / LAC P J / JMS* GR XL / LENGTH OF L I N E ( N O , DOTS)

. GLOBL GReXL 0

JMS* JMP JMP LAC* CMA D AC

. JMP LOOP LAW

TAD* S M A JMP LAC* ISZ*

., JNS* CHECK I S Z

JMP OUT I S Z

JM P a

GR,CKJ / CHECK I F J . ' .WITHIN T H I S S O L . BUFFER OUT / AROVE OUT / BELOW GR ,XL / WITH-IN . L I N E LENGTH

CNT CHECK - 1130 / - 6 0 0 ( 1 0 ) GR, I

OUT / LIME OFF PAGE GRo I GRo 1 / S E T TO NEXT P O I N T GR,SET CNT LOOP GRoXL GR. XL

. GLOBL

CNT

. END

Page 51: MARCH 1971 - UNT Digital Library

; TITLE GRAPHICS CHECK I F J IN S ,L , BUFFER

/ CALLING SEQUENCE: I L AC P J / J POSN T O CHECK / JPIS* GR,CKJ / * * * e * / ABOVE S*L. BUFFER AC = -DIST ABOVE / * w e . * / BELOW SOL'. PUFFER AC = +DIST RELOW . / * . . o * / .WITH-IN S*L. BUFFER AC = POSN I V BUFFER

• GLOBL GReCKJ GR.CKJ 0

TAD* SPA !STL JMP* TAD SMA!STL JMP T A D DAC* I92 ISZ JMP*

/ -PAGE POSN

/ ABOVE

/ SET GR,J POSN

Page 52: MARCH 1971 - UNT Digital Library

, T I T L E GRAPHICS S E T DOT

/ 9 - 2 8 - 7 0 / L H GERHARDSTEIN

/ EXECUTION TIME = 62. TO 69 MICRO-SEC. / AVERAGE TIME = 65 MICRO-SEC. / CALLING SEQUENCE: / . GLOBL GR. S E T / S E T G R . J / 0~ j < = g / LAC I / JMS* GR. S E T

. GLORL GR.SET GR .SET 0

SPA . / T E S T I F I COORD LEGAL .IMP* GR.SET / NEGATIVE I ILLEGAL -. .-

T A D ( - i i 3 0 / - 6 ~ ? ( 1 0 ) SMA

GR. S E T / I > 599 ILLEGAL JMP* TAD ( 1 1 3 0 / RESTORE I IN AC ID1 V 1 2 0 0 0 0 / C L L ! I D I V 22 / 1 8 ( 1 0 >

/ POSN IN WORD TAD ( L R S D AC S H I F T LACQ 1 QUOTIENT DAC SAVE / NO. WORDS INTO LOB. LAC G R o J . / L.B. NUMBER (0-3) MUL- 1 6 / 4 B I T M U 1 ( S H I F T L E F T 1 4 BITS) 46*20 / (2**4)*38( 1 0 ) / A.M = (2**- 18)*GR. J*(2**14)*(2**4)*38(,191) / A.M = 3 8 ( 1 0 ) * G R . J TAD SAVE TAD (3. / ' R E L A T I V E P O S I T I O N I N L I N E BUFFERS TAD* GR. LB / .ADDRESS IN L.B. BLOCK DAC I NDEX

( 4 0 8 0 0 0 L'A C --

S H I F T XX / S H I F T B I T INTO POSN LMA / SAVE IN M Q LAC* INDEX / WORD FROM LB - ~

OMQ / S E T DOT DAC* INDEX ' ' ' / R E - S E T ' WORD FROM . L R JMP* . .GR.SET . . :

. GL OBL GR. LB . GLOBL ,GR.J,GR. I G8.J B GR . I 0 INDEX . 0 SAVE=I NDEX

7)

.END

Page 53: MARCH 1971 - UNT Digital Library

. T I T L E T E S T G R A P H I C S C H A R A C T E R G E N E R A T O R

/ L H G E R H A R D S T E I N / F E B 1 , 1 9 7 1

B E G I N

L O O P 1

. G L O B L . G L O R L . G L O R L . G L O R L . G L O B L

L A C DAC* LAC DAC* . I N I T J M S * . DZ M DZ w DZM* JNS* L A C D AC LAW DA C DZM* L A C J M S * IS2 757 J M P . LAW JMS* PSZ* I S Z L A C S A D JMP JMP

C L A , GR.IN,GR,CLR,GR,WR,GR.PJ GR. T I , GR. T Y , GR..ROT,GR.CHR G R . C T B , GR.CHT D D T S A.

C L A , ( . D A T + l . GH . r-! 'I' fh 1

GR, C H T 1 , 1 , 0 . '

G R , I N C O U N T # G R , T Y G R , T I GR, C L R C O U N T C N T # -74 C N T R d GR, R O T C N T GR. C U R C N T C N T R . . -4 i GR . WR GR , T Y C OU FIT C O U N T (100 . .

B E G I N . L O O P 1

. E N D , B E G I N , , ,

Page 54: MARCH 1971 - UNT Digital Library

L. E. Addison

R. A. Burnett

D. B. C e a r l o c k

C. R. Cole

M. R. C o m p t a n

v. L. Craw

D. W. D a m s c h e n

D. G. Daniels

P. J. D i o n n e

G. E. D r i v e r

M. D. Erickson

H. P. Foote

BNW

m BNW

BNW

BNW

BNW

BNW

m BNW

m BNW

m

DISTRIBUTION

Math R. J. ~use rA

Math B. E. Dozer

P S B R. A. Harvey ( 1 5 )

Math J. A. Hubbard

Math S . A. H u n t

Math W. F. knzke

P S B J. D. Lodge

PSB W. R. Markil l ie

Math W. H. Payzant

Math J. G. Sipe

Math C. D. Swanson

Math L. D. Van H e e s

J. C. Fox BNW RDB G. L. W a l d k o e t t e r

D. R. Friedrichs BNW PSB N. P. Wilburn

L. H. G e r h a r d s t e i n (5) BNW Math G. W. Wrth

_ R. T . Jaske BNW PSB

J. R. Kosorak BNW 3 2 9

G. W. Main BNW Math

R. D. 14udd BNW PSB

D. E. O l e s e n l3NW P S B

A. E. Reisenaur BNW P S B

G. R. T a y l o r BNW Math

C. J. Touhil l BNW PSB

AEC-DTIE (2)=s+G

C h i c a g o AEC Patent G r o u p ( 1 )

R. K. Sharp ( R i c h l a n d - C h i c a g o P a t e n t ) (1)

C. L. Fbbirsorl ( 1 )