64
NAVSWC MP 91-40 AD-A242 916 FORTH GRAPHICS TOOLBOX (A USER'S GUIDE FOR USE WITH RFF FORTH) BY HANSEOK KO UNDERWATER SYSTEMS DEPARTMENT 14 U NE I" " D T I C f -LECTE SN0V 2 7,199t~ Approved for pubic reles; distribution is unlimited. -J NAVAL SURFACE WARFARE CENTER DAddWMn *ghl 2NW4-sin SI4v Sp, ing mwomd 203-Sm 91 1125 100 91-16493

D T I C · navswc mp 91-40 ad-a242 916 forth graphics toolbox (a user's guide for use with rff forth) by hanseok ko underwater systems department 14 u ne i" " d t i c

Embed Size (px)

Citation preview

NAVSWC MP 91-40 AD-A242 916

FORTH GRAPHICS TOOLBOX (A USER'SGUIDE FOR USE WITH RFF FORTH)

BY HANSEOK KO

UNDERWATER SYSTEMS DEPARTMENT

14 U NE I" " D T I Cf -LECTE

SN0V 2 7,199t~

Approved for pubic reles; distribution is unlimited.-J

NAVAL SURFACE WARFARE CENTERDAddWMn *ghl 2NW4-sin SI4v Sp, ing mwomd 203-Sm

91 1125 100 91-16493

NAVSWC MP 91-404

FORTH GRAPHICS TOOLBOX(A USER'S GUIDE FOR USE WITH RFF FORTH)

BY HANSEOK KO

UNDERWATER SYSTEMS DEPARTMENT

14JUNE 1991

Approved for public release; distribution is unlimited.

NAVAL SURFACE WARFARE CENTERDahlgren, Virginia 22448-5000 * Silver Spring. Maryland 20903-S000

NAVSWC MP 91-404

FOREWORD

The FORTH GRAPHICS TOOLBOX is to be used to develop FORTH based applicationsoftware. This document is intended to provide a manual detailing the procedures andusage.

This document has been reviewed by the users in the Simulation and Training Sectionfor its technical integrity and the Underwater Signal Processing Branch's line managementfor elements of format and style.

The GRAPHICS TOOLBOX has evolved over a period of two years with input frommany users. The author would like to extend his thanks to several people for their input.Kit Yan is credited with the development of many graphics routines at the beginning of thisproject; the entire project was made much easier because of the strong foundation laid outinitially by Yan. Bob Davis, Phil Craun, and Paul Craun provided much useful technicalinsight in the development of this document. Finally, Ira Rosenbaum, MarkWilliams, BobOtte, and John Sherman provided the encouragement to the author in pursuing this project.

If you have questions or comments about the TOOLBOX, please contact U25 (HanseokKo), (301)394-2372. Comments are welcome and will be considered when the TOOLBOX isrevised.

Approved by:

C. Kalivretenos, Deputy Department HeadUnderwater Systems Department

i/ii

NAVSWC MAP 9 1-404

CONTENTS

Chapter Page

1 INTRODUCTION....................................... 1-1

2 INSTALLATION....................................... 2-1

3 HOW TO READ TOOLBOX .............................. 3-1

4 FORTH GRAPHICS TOOLBOX........................... 4-1

5 REFERENCES ........................................ 5-1

Appendixes

A FUNCTIONAL DESCRIPTION........................... A-1

B SOURCE CODE ....................................... B-1

ii i/iv

NAVSWC MP 91-404

ILLUSTRATIONS

Figure Page

3-1 FORTH STACK DIAGRAM ................................. 3-2

TABLES

Table Page

4-1 VIDEO ENVIRONMENT SETUP ROUTINES ................ 4-1

4-2 DIRECT VIDEO DRAWING COMMANDS ................... 4-2

4-3 BIOS CALLED VIDEO DRAWING COMMANDS ............. 4-2

4-4 DIRECT VIDEO DRAWING APPLICATION COMMANDS .... 4-2

4-5 BIOS CALLED VIDEO DRAWING APPLICATIONCOM MANDS ........................................... 4-3

4-6 DIRECT VIDEO DEMO ROUTINES ......................... 4-3

4-7 BIOS CALLED VIDEO DEMO ROUTINES ................... 4-3

4-8 BIOS FUNCTION CALLS .................................. 4-4

v/vi

NAVSWC MP 91-404

CHAPTER 1

INTRODUCTION

FORTH GRAPHICS TOOLBOX is a rich collection of graphics routines immediately

useful for all FORTH-based application software running on IBM-PC clone microcomputers.

The routines are built based on graphics related primitives of both video BIOS call functions

and Direct-video functions. The user can develop more exotic application software based on

the routines listed in this package.

The central features of the FORTH GRAPHICS TOOLBOX are functions for:

* Video screen environment setup.

" Direct and BIOS called video drawing of a point, a line, and a circle.

• Direct and BIOS called drawing application.

* Demonstration of the package's graphics capabilities.

These functions are implemented in the FORTH environment under the file name

GRAPHICS.SEQ. Accessing this file will allow the user to make changes, add features, or.

learn how a given algorithm works. New application routines can be developed easily by

first loading GRAPHICS.SEQ and experimenting with the application SEQ-files.

The GRAPHICS TOOLBOX has evolved over a period of 2 years with input from many

users, including those mentioned in the Foreword.

1-1/1-2

NAVSWC M? 91-404

CHAPTER 2

INSTALLATION

FORTH GRAPHICS TOOLBOX can be installed by first getting into RFF FORTH

working space. RFF 1 is a 16-bit FORTH system built upon the work of several people: the

original F83 system by Laxen and Perry, the "FF" system by Tom Zimmer et. al., and

numerous contributions of Robert Davis. FORTH2 is a language that begins with a

powerful set of standard commands, then provides the mechanism by which a user can

define his/her own commands. The structured process of building definitions upon previous

definitions is the FORTH equivalent of high-level coding. Alternatively, words may be

defined directly in assembler mnemonics, using FORTH's assembler. All commands are

interpreted by the same interpreter and compiled by the same compiler. The user can get

into the RFF FORTH environment by typing tRFF' from a directory containing the

'RFF.EXE' file.

Once in the RFF FORTH environment, type:

FLOAD GRAPHICS

to load GRAPHICS.SEQ. After GRAPHICS.SEQ is loaded, test it by invoking a

demonstration graphics routine such as "TELLIPSE." Upon invoking 'TELLIPSE", the

user should see random sets of different colored concentric rings displayed on the screen.

2-1/2-2

NAVSWC MP 91-404

CHAPTER 3

HOW TO READ THE TOOLBOX

Each routine or function, presented in Reference A, is tagged as either CODE or

WORD. CODE implies that it is an assembly routine that exists because it is either a BIOS

called function or an attempt to save processing time. WORD implies that it is colon (:)

defined and structured in order to get the full advantage of the FORTH environment.

"Category" is listed to provide a quick reference to the routine's background such as

whether it is a direct video or BIOS called function.

A stack diagram is provided adjacent to the name of each routine in the parenthesis.

For example, the first line for routine LINE looks like this:

LINE ( xl yl x2 y2 color #--)

The order of inputs typed onto the screen is important since it determines the inputs'

respective positions on the stack. In the above case, the computer performs the operation in

accordance to the task defined by LINE by either pushing or popping the numbers on the

stack. The FORTH's stack is described as "last-in, first-out" (LIFO). This means that the

only accessible value at any given time is the top value. The system reads input from left to

right and executes each word in turn. For input, the rightmost value on the screen will end

up on top of the stack. For output, the rightmost value on the screen came from the lowest

position on the non-empty column of the stack. The order of inputs with respect to the top of

the stack, for the LINE routine, is as follows:

3-1

NAVSWC MP 91-404

xl

yl

x2

y2

color # top of stack

FIGURE 3-1. FORTH STACK DIAGRAM

If a numerical output is desired, the corresponding output variables are listed to the

right of the dash (--) in the stack diagram. But if no output variable is listed, as in the case

of LINE routine, then an action on the hardware such as "drawing" is expected as the

output.

The ranges of the legitimate numerical values are indicated in the Description block.

Most values must be given as integers; however, some routines require real numbers as

input. When real numbers are required, the input variables in the stack diagram will be

denoted by a decimal point as shown below.

AUTOSCALE (xl. x2. x y color npt hv -- )

In general, there are two categories of graphic routines: the direct-video and the BIOS

call. The BIOS call routines are denoted by a " _BIOS "postfix attached to the syntax of

3-2

NAVSWC MP 91-404

the direct-video counterparts. For example, direct-video's AST routine has BIOS call

counterpart AST-BIOS which is invoked with software interrupt 10H.

The direct-video routines are at least 10 times faster than the BIOS call routines in

getting the corresponding image on the screen. However, the BIOS call routines may

become handy if there is a mismatch between the direct-video routines and the display mode

type. For example, a program using only BIOS function calls for video output will run in

almost any MS-DOS environment, regardless of the video hardware, including (but not

limited to) the entire IBM PC and PS/2 family.

The available colors are simple combinations of the primary colors red, green, and blue

mapped into 16 colors as follows:

0 = = BlackI = Blue2 = = Green3 = = Cyan4 = = Red5 = = Violet6 = = Yellow (brown)7 = = White8 = = Black (gray)9 = = Intense blue

10 = = Intense green11 = = Intense cyan12 = = Intense red13 =- Intense violet14 = = Intense yellow15 = = Intense white

3-3/3-4

NAVSWC MP 91-404

CHAPTER 4

FORTH GRAPHICS TOOLBOX

REFERENCE

This chapter contains a listing of all FORTH Graphics Toolbox routines grouped by

subject, listed in alphabetical order, and followed by a brief description of the routine.

TABLE 4-1. VIDEO SCREEN ENVIRONMENT SETUP ROUTINES

VIDEO SCREEN ENVIRONMENT SETUP ROUTINES

ANDVIDEO Latched pixels ADedCGA HI 640x200 2-color CGAC080 Switch to text modeEGA HI 640x350 16-color EGAEGA LO 640x200 16-color EGA8x8FONT Set 8-pixel font8xl4FONT Set 14-pixel font8x16FONT Set 16-pixel fontNORMALVIDEO Latched pixels replacedOR VIDEO Latched pixels ORedSET__GRAPHMODE Set the screen to VGA/EGA/CGA etc.XOR VIDEO Latched pixels XORedVGA__HI 640x480 16-color VGA

4-1

NAVSWC MP 91-404

TABLE 4-2. DIRECT VIDEO DRAWING COMMANDS

DIRECT VIDEO DRAWING COMMANDS

ANDVIDEO Latched pixels ADedELLIPSE Draws an ellipse/circleHORIZ _LINE Draws an horizontal staight lineLINE Draws a stght line of any orientationVERT LINE Draws a vertical straight lineCHIYPLOT Plot a character

TABLE 4-3. BIOS CALLED VIDEO DRAWING COMMANDS

BIOS CALLED VIDEO DRAWING COMMANDS

ELLIPSE BIOS Draws an ellipse/circleHORIZ _LINE BIOS Draws an horizontal staight lineLINE__BIOS Draws a stght line of any orientationPUT_ PIXEL Plot a pointVERT LINE BIOS Draws a vertical straight lineCHRPLOTBIOS Plot a character

TABLE 4-4. DIRECT VIDEO DRAWING APPLICATION COMMANDS

DIRECT VIDEO DRAWING APPLICATION COMMANDS

AUTOSCALE Draws a scale with tick marksOUTTEXTXY Plot a string of charactersSIGPLOTB Plot a string of characters

4-2

NAVSWC MP 91-404

TABLE 4-5. BIOS CALLED VIDEO DRAWING APPLICATION COMMANDS

BIOS CALLED VIDEO DRAWING APPLICATION COMMANDS

AUTOSCALEBIOS Draws a scale with tick marksOUTTEXTXYBIOS Plot a string of characters

TABLE 4-6. DIRECT VIDEO DEMO ROUTINES

DIRECT VIDEO DEMO ROUTINES

AMERICA Writes texts in graphics modeAST Draws a set of scales with tick marksFIREWORKI Draws random flashes of fireballsFIREWORK3 Draws random flashes of fireballsTELLIPSE Draws random sets of ringsTLINE Draws random sets of linesTXT Writes texts in four orientations

TABLE 4-7. BIOS CALLED VIDEO DEMO ROUTINES

BIOS CALLED VIDEO DEMO ROUTINES

AMERICA BIOS Writes texts in graphics modeAST__BIOS Draws a set of scales with tick marksFIRE WORK2 Draws random flashes of fireballsTLINE BIOS Draws random sets of linesTXT__BIOS Writes texts in four orientations

4-3

NAVSWC MP 91-404

TABLE 4-8. BIOS FUNCTION CALLS

BIOS FUNCTION CALLS

FONTAD Get FONT address within EGAIVGAGET__GRAPHMODE Get info about current graphic modeGET__PIXEL Read color info at (x,y) pixel locationGETXY Read current cursor positionGOTOXY Move cursor to (x,y) positionPUTPIXEL Plot a point at (x,y) pixel locationREADCHAR Read character at current cursor positionSCROLLPAGEDOWN Scroll texts top to bottom on screenSCROLLPAGEUP Scroll texts bottom to top on screenSETACTIVEPAGE Select a page as active page for graphicsSETBORDER Draw a border lineSETGRAPHMODE Set the screen to various graphics modesSET__PALETI Change palette's color entry to new colorWRITECHAR Put character at current cursor positionWRITE__TCHAR Put character at current cursor position and

move cursor to next position

4-4

NAVSWC MIP 9 1-404

REFERENCES

1. Davis, Robert H., "RFI - A 16-Bit Memory Model for Large Address SpaceComputers," Proceedings of SIGFORTH Applications Symposium, Austin, TX, Feb1989.

2. Brodie, Leo, Starting FORTH, Prentice-Hall, Inc., Englewood Cliffs, NJ, 1981.

5-1/5-2

NAVSWC MP 91-404

APPENDIX A

FORTH GRAPHICS TOOLBOX

FUNCTIONAL DESCRIPTION

A-1/A-2

NAVSWC MP 91-404

LU to'u L

I0

LO

.- i

2. .4

-g B

-l v

CL X

.WI

P.-

NAVSWC 14P 91-404

a.

I.g II- E-U2

U.-.'EJ Uaau

.0

I -Ia-

LI ~ I-a -aUUI

2U 2L U.5 6~

5o

- 0

- - U C ~..2L U q

M. * 5 U0

* r4.' 0 .- U- 0

- - Ua - ~ a

CU L U ~a Na -. *. ~0o

- 8I *.5 2.. *.~ ~ 0*...

061 0. ~ a ~ a U~~ 00 ~ - -

- ~ 8. U0 I

U ~ a aLI 0. 0 W

a.

aC

C-a-

U

a-.- 0I -a

0

-. 8.!~

- -. ~. ~S ~ -L 0~Z

0.54..

S a a.- a- ~.0I.. 0

-- a .- 0 0C 01. £ -3 32

-~ 0p NaO UJ

0 0I Ml.~i P4V~..l 0

~.0w - S0' ~.Ca

C- a u- I X

C - -.. 'a.0 0

* *..Z ~ -

0

0. *- 4I~~.2 - .~ 51. U

A- 4

NAVSWC MP 91-404

0.0

26 .4 CDL 00

0-

0

F a a -I

46.1 VC - I

1I

I - ~~A - z

NAVSWC MP 91-404

2 8

0

-E L I I C

V AtisI*

jL -'

aa R.

r. Lp -of

0 N

0 'AW

I .09- - go

-10 .- U- U

mt I. I 0 -4, to 0.

CD L. 8i 8.0

* A-6

NAVSWC MP 91-404

US

44

. 0

UU

U C73 6-

Iwo ~~ ell ' 'I S

- It

-. 8 if #1 '1

1- -8 0.

al

6-6-IM inQQ~I

40 8858 log6- ~**~U U *

U =Z at-U

w 6 I. w UCL .8 GI.DX01 Is~ -L42F -

8 C2 0 0 ..0 -..-~~ 2 6 *- *- 1111 111 I-w 6'o

1.41 M6-.'P.1A-7*

NAVSWC MP 91-404

avi

S*- -

01 6.

Cul & 0

-j U, - -

'A o Go U F..

01 Ij 40 4N

as a

Q40

0.M

-A-8

NAVSWC MP 91-404

mI

LV T-GO

zL 01 a*O E z - -t-I FICO~V &£ Z0 C C --

CL0 £- 0

-1C 5 C ; t- g..D I1 a- 1 0

aS. -- 0 a v ME - -

541~ . 1- 6- C 410 .-C l-0 -0 0. :a

-aa.010' 1-

1. 6% -

-01 4.2

301 8i ;;;go CL4'& -- C! S v -- a

p-, A -Z 0 u 0 1 ; G;I -

um LI 0n , O 1.c0 P. w . 01

a.~~~ a - 1 ~X

5 L-.C 4 U- - U a

0 ~ -C -m- C W ry

0 01a~---. 01-- X .0

W~ - &-I1 >a

~ 011. L'I1-010~.I aC-. £. .V C S@~ .0.0

~a .. - 2a1I ~a.A-9.

NAVSWC MP 91-404

*0

-b FS

3 Z -z

I ~ co

WN 6 6

SL C.C

A-10

NAVSWC MP 91-404

o o

iit

..t0

4.c

be 0

oo

in v

"' a

6 -

A-11

NAVSWC MP 91-404

ix Q

00

0 -x

0- u a.

T 0.

i 0L'

- 0

4c. 4ft Pw

CDC

ox of1a ~aO~91

22 lx

CC. 0.- -. A& 12

NAVSWC M4P 91-404

fm

4i

OU

a1 ~L so uD-O4u O

C

G# *-o -0 I-

-

41£ K1 EL .

41 to

0 F' C. .2.0

9 41- 41 0- K

OC41 4 0 - '0 - 9449; :e 1;44I

.0 w61 -u Cj O£9~

31 ;; = &.- -; s4-s

A13

NAVSWC MP 91-404

- " U' -4=T I...

o ,,d ,,... - - -a

0 41

m V& 12 .3..... t -

4.0 9L

A-14

U .t-6

41- 41 41 441 1

-Z u

maaa

-v fn W -abH G

a.a

I ~I=

A21

NAVSWC M4P 91-404

'al

LUU

X-

CC

4 0 tL

& -,A

x --WcIt x

-. , 0. a-

N IItMA fA4

~. ~ A.15

NAVSWC MP 91-404

B.0

" 0

rnon

LJ

- at

2-LOS

.C C - 1G

4u . 2 II eDO 4'- * 02 -

W '0; c L

A-164

NAVSWC MP 91-404

A.&

0~ -i

-~ ~ to -- C

I~ - R.-., U

*8 = -- r

03. 1 .8-i

go x - ....

OK 0

w FA

3.. 0

- 00CC;I;;;-! = i

-- -. !! - -4

to- pa 44-s.

4%' 4 44C,

- - 44 4 II II 4 =

C .0 *. A 17

NAVSWC MP 91-404

a5.

= -46-

L W ~OC

F N.

o.C Z; 4

L.. -L

6- .0LL

-N .. C-4-

.80 IIV

c

.*a.0A-18

NAVSWC MP 91-404

C

40 0

2-1

a&LU R

-V S

- E0U *U

c 0 wv4x , o

m4

F - -

-0 0

0 c

v~y~ki't" 4A-~~ to to to &~~.~1 ~i6 n0. -

IL '. s. d

x14A-19

NAVSWC MP 91-404

.E.

4U 1. 0 & w .- c g

-f- X-

a1 r.. A . tz tz -'2IIv0 4' 0

a- ZH .8!

2 J4

.! - j

5 U 4' lAO bagoa a- O~U ''VP1 2z'a2'.Q-UU

Sg 4'L z10412L 9 1010 %

% a -- . i22C3wO 4A0 ~.~

0' 4' U -5 II I H SI SISA II20

NAVSWC MP 91-404

Cv

S .S -1

-0-0

-~ R:ILI

to, '-

oJ U 0. 0'

-a mv i" . '-n to

MO-. 2! C P 0

u U,. 2 ,

I L..- COREil= a

suu

_=Qe 9, - --

C*y -ai-If to0

S.C I ~ NO-- It0

- . -. LIlkC. L E Z b

5 241 *04141A-21

NAVSWC MP 91-404

a3

4A

.2 1a O

a 0 9

L .44

V- V1 41

*~L CD~ z 5a V

K~~3 SI II

.2 5 '4IIA-22

NAVSWC MP 91-404

Nu

.-

Ju

- -!T . ..

IN-

*L W

a L. 0

Iwo,

mA-23

NAVSWC MP 91-404

0.0

.12

0 - 0 0.-C-C 0't0

10 >.U- - Z .- -:

-.4c C" *

4,0

ot

u .2~

R -01

L. 0In~~l.M-.-. c -z £0

A-2

NAVSWC MP 91-404

o 46

as C,

-u wj

%Z 0=1 , LCOco0 41ft

x x go** x 0 K S

60

o U u* a4D

-

* u 0 7- 00g0gO-

1- ~ ~ ~ ~ a S .E% o, E N I* £ g o&.o oalu

- a -cz~o ,~u~0e to

u CIA a~XEI

C A -25CO

NAVSWC MP 91-404

4i

£C

> i

CD

ta

- -* owl~

Am .0 , ! - k - ..-

M- IM v

4I0. * C ~ Q IAI

-J L JC4

IA--

NAVSWC MP 91-404

C

a.I

i .

aa

- aI

-C

A-27.

NAVSWC MP 91-404

0

BL L w

V ts

-

a..4 M 0~

-- 0 0 ; I

A-8

NAVSWC MP 91-404

a'.Mbi~

8- a

* -E

Ow

0. w'

cpU

*A-2

NAVSWC MP 91-404

loc.

F-X 0

- ~--,~u

I *It

dl,' H

=4 Em 4

lu-..

F - Wa- xv - '

F..l- as

3~ 4' 0

0c 0 z I

- 9 .C0.~.&f

- 6,,Ae30

NAVSWC MP 91-404

*1 II"I

- us h

aa

Lp F. 44.)t. S k LA

- 0 6 . 4Lp

* -ID U ~ 0A4.31

NAVSWC MP 91-404

a..El

r 4'

V C.

4' *Ga 4x v 0 '

&.-

wo U

-a.

,.,'Powl.S.- S.

A-32

NAVSWC M4P 91-404

APPENDIX B

FORTH GRAPHICS TOOLBOX

SOURCE CODE

B-1/B-2

NAVSWC MP 91-404

-- ~ a.- 'A

-0 A0 4

WA-

a ii8 -. 8

w . - se a0 __Ea a CM.

Am -9 FAL .UzL

%s 00 .3 -

6'-.-~Ul a- -- -

Dim* - 00 40on S.&- % - [.3., =PU7zx U. x

4c~a AL I-0. wo c - a - =A L. -.

S.051. I-B Li ZE I E I

U0 U. LL.

~j * E I~ ~. 0 0 C-

j 9 U U a -

aan5 z13a0

-J .0 C§0--.c ~

a* ..

=~S US U.0

w ca

b.C x 0-x 3

~t *w 0 a- ~US 105 .6 X-mCU ~ M~ ~ R

2

MEW mcs=W.-,-

40 qti5iB-3

NAVSWC MP 91-404

a.w a. Mm

, c " 8

w m3m. -. -9 -. LW U

Vn - wrwL aw 9 mn9-

4.. beIa9 in4 0 439

n 9-C "do 6z w

U) 4A4 0- - u

w Kw

3.c

0 ~~~ IS197mF U a

55 u*L 09- K, c 0 x PX

us s 9 0 - w . . . .

uf. . W A

f. Ie -i I-A UA :11

LU

aat

I-

am4

th wU

If MC 4.6 u

mu -J 490xxwmt- 4

it0 0 m .

an .ICDI -,a z26 ZM 4.o vi 60f-

H9 a at

0.~~ 0 . 0

* 5 . ~ -B-4

NAVSWC MIP 91-404

ZuU 0-ccj s

&- Kwp-UK SM

I xt :at

a. -

on of SMU .5 ww z;SM IA cc-

-. V Matt

C SM - a a

6 sM "C- KM C a 3' MM IAO

if~~~ AA N MCm -M

5- 4 SM f U.-SM.~ ~ISJI-~l fy ALK 0 fS . A U b - i~ -

SM M x w t m IM ZL) CM% M..a .U .U .SS cam% s-94 9a- WS0 a Ztww &% &&55 x A 0 ii -5. -'XX Lib Lif f -

-m . a .~AS SM . .... .fNU SM .~ .C C. .b-m umm=,K' X4iXXK :. .. w M x jz~ zx o

M MCc~ SMu w U OW W

SR SM I a O III Ia Sl II HI

CL SRP EU 1

-~~~w SMS.-if x~

VS CE W C C §V C

4~~ SM SR

ZM - -z.. N

C. ~ & ZQ1 j b-u w~ 9LA 3 f-

03.

SM M.M- f SM'aM I Ex %0d - k- 9 N 4

WIN M 3,-S CM SM

-OK! wa w c -

-j &jjJS-X Cazza111s 1-M b- if SSMMMMM 2 a A w W11 UZ go..2.JJ 4 C A

MmM-S SMM m aa~o.' * SM S

in-M f4 OK IIK -b

B -5 *i 4 I i

NAVSWC MP 91-404

40

VI

fu fy aaI

bU 1; -t fy w

OUUn2 V U 3C U U Or Ax

SI W. A5 -V XW aWI I U

KW Me t Ug -C I

a ow a ~-aay~ U C a --

X li lif IV N NU VCL& Un

in &4 a x x a V Zm -

0 3a MO - N !r -- ~M ~ ~ 3 40 co =WM- A -- I,

7v aR ;I a j M . - ~a Eu w ~ - 9- WW nmIw

li~ N * C li. 9. a IC

-1 - -j -- -

z U

FA9rn cc UL CcV WO lK

N-. J9 W N WC.4 W.' 9. P- - A

*WAO W U )ON *X -&, a C a a .

a~~Z Wa WW W- W -.- e

(n.L5u LL, IL W O IAt-at ow0 -o -a 0 mt -

t4 to =U 4

a ~ - "WO ax Caapau-aax. a a- 'OLI- 1001 0W VI. 4W CWUzt 44I

- t--a WJ SS

Ct -W VW 3"I IW W C

19-

W U go1 9-

W a a. U0 toEW .

at to W wWIV4 W e

- up W W 4 IMeC W ,x s-r x W e. .- U I

W M A W W4 V i V 5

-~ ~~ .- .V . .- . ... . . ..

W 3tn U VIU I0 U, U U I L 4 -V V U 49

o~~g z Bi IV ae- jJ V 4 5 IIIV IIAU W C VI L - VIW i- 0 LIPVia U-A

U4 ~a LIIL5 4 VIV ~ UBM-6

NAVSWC MP 91-404

CW

0 ar r-.

It M to f

loM -Ua - LL

80 MC BI It IL* It

Inf a -In

43 we 0~ SL ZaL -1 W in -C to g

UA W

4" U- , : AA -I EU U-S

cc In xn f3K si -..- bt-wxw -.- : :,Z- ;W =-W -&

a 0. -W 3cwo M

Z; -, -I -,-j

*~ ft M SK~~~L 1- . tX. -

- ~ ~ ~ ~ ~ ~ -.- 'Ow .'- a . N

Wl 0X In 0 -u 0 IM.J -Am 'ONw x - .

3~ 30 K S SZI

*~~. .J- . .

C :W O SM 3K K-

*~ ~ In I0I

-j WI 0

4j~~~~S ID I-ca g

ft- - n l

W- MA Wx - - --In In 15 Cz 2 oC 9 Ca 41 LLLL

WD U LI SM MInV00 9a C0

Inft ~~ ~ I ZU-K* ' C Sut SM U M I .KU U S f

20.. N. In ft J t - UftX-7U

NAVSWC MP 91-404

su

0

46 -. 0

0a a

MU -t-I

S. S4 vS- -

11001

- -~t 4 1 -

so-. a.- a--4

ID SmL~ w .w UA v II.a - 'a6.# - ~ 4 . - 41 "-

83 - ft " o &

4- WW.. 0. 14 4 "Wo .~ .) .- WW o w0O = m o 1 c

H-4 U in 6--

H o 6-6 41 '0 MJ ;1 -,

-. I.4- .JL 00 -

o i l L. 0 1- 41 41x

-0 a- .2 -0 c

.C S- 1 I

6..- 6 n

E.

m- 0.w

Vi; - W :; go

-a .

w l 2L I I --

GI 04 .6 06 LU aC -- 4

.C w 0 o. 0 wo UWU

L L1L 4141

- 4-4-~-E5~at ' 061. .

XXX a 4 a 4~C 4 -I-

-- - -- - 4B-8

NAVSWC MP 91-404

V t

N oy I

me 4a

. . . . . t -- 15 ,0 4 - ,oa x zx WXN7 wm-7 Um 40 V T-~o 04 4 4 N

0§. - 3

InI at uw Oq U US x 0 -~05 I. 4 * N 4* .. .. . .. U UI = ~ U w~c x ELD .. ~ ~In

IL LIJa '

0 0 -- -- - - - - - -- - -IS

U. at0.0 00.0 .0. 0.0 .0C0 LA0.0..4 4 0..00.0I.t

*- - am m.-- . - rrn~ - - inmn minr 0

-- ~ ~ ~ ~ ~ ~ ~ ~ C C;~..-0 D0 - - ~ - . - - - -Inm -- .

:0 It it- ,i t I** *0 - - Mx M StC O . .. 0 -

N ~ ~ ~ ~ ~ ~ r -CXX XX.- wX U X X4 DX - X XXN XXN X

3c Mel 6 ge

a 4C. .0 T. to w,.T-K i0u~t

a' 15 HIMm

4 4 4 B-9

NAVSWC H4P 91-404

'Ci

0.0

31C1

MIMI SO w n .

*~a t -. a i

- 4,T

oE z j m4c x x t W!LO tw-

, U Uto2,1 W

IV". IMA 02 4 . .

'A -o.u z I

-- ~~ W W 1 O l 0'~40410.W 000.0 W0 0 0 h - 5.

I~~a~~m~~ em NV Q w a A a ~

- ~ ~ ~ ~ ~ ~ ~ r 40 0. r0'y 1 4 0 ~ O iUW - .IL

16I 1 0 -c f4 0M -y a 'a

2X Li PI ey 1 S

w x w x 441 xX X 0 4 I

'0 a I s .4

I;IL0.

411

Nuow0- a 0- um a 1u ac

N NDa1 4A 'A K) inN9

N N

- t;J~uB-10IC

NAVSWC MP 91-404

0

W Wi W 21

3K CL .1C IV -a O-

NC 464 _j al

~~3 Rr ft1 le-*

aa 2 gA*-2 cocaW~O

IA3 A A0 Ec. kIA~~~~ M- x~J..R WE4.- 4*- I

0 4tIm5-~~~~~~~r at ~2-- 0 ~ Q Z-. C .a. bl L.

K 4K

o ~a~. z Li~LiCL

a 0 0 K w5- 15- - WE i 3-~~I IA~E Z- IIASIA

S U E-U~ K L .- O .i..d... of

U% K -c a K-~~-W.- - ~ Li U LcMAMW. -- ~i~~

N~~~ A . Le . .- ma

z 0 at0 D C

K CA C,

Li W ,

- a-tamA.

CL 4L

'Sj

01IUr141PS .,&-

IV -EA_ a

ZIdau

fmSu

100

u woo wu

NAVSWC MP 91-404

C

A( R

Mi

If 42- -

IAA o- go

C> 0. A %0!!

CC)-&JJL -JW U.mg 0- VO - aM

0 Lii 0 -4-0, w- - a AC z A.-

4L 00 -K c ccL §0= .

.c &0 0 1 0 cc C. 04-' -. I-

- ~~ ~ a Lu CK'K A- i- L0j 0i .. W 40. a . -..

~~KZ W8W Lii *.-0 0L L

Atm zz . LL A~ 000 *0 ~ NK * 0,-s ~ L

- K- I- 0. 1p:~ mmo oz '0 0 .. 0 -

KKXX(A~~~~~~~~ vfW80 .8. . I- - - - - 8 Z 0 A A0.J win0.0.0.- ~ ~ ~ ~ ~ ~~u w~.JIK 0S 0 . 0.0 ~ -LW~ O - bL-0

-y 0 L4- -u a Go 0LAa A 2A 4 . 0 .0SiL

A V

I R 1

A 00

0 -

L! IIr K

A m 41.1L

0 - . ~- '~aE

OK g~i go 8 .

g.. 3. x 1 M

Ky - 0.SUJMD -o

LA UKK ;: ; A. IA- -~ 0 e

0 -D 9 rx0 8 0

8.j g

3 -~ N NNNN B-120

NAVSWC MP 91-404

to

IIo 0E

IN LI L

a --L

-w P , -C J aN .-

-Mt~ I WI C - o

13. 5-. -.J x -- X X Or 6.

to 4n vi

C.Cq ma -im

LI~ LI; I O ~~L

-. 6i ail . #AI

4- AL 'AJ

ILI LI. m.if

B. NO - CWWI

U- C.. LI.J-. LIbt

rg.. a. a.9-..- 1 .i.J . 0

0~~~z B.-i- f.e in i -f-IiB.e i n 9i..59LIC~ fn . c.io I.- Nab.--i~i iL~~~in...O~~~U IA I-0n..J-. 0P 5-C n-0 .

amfNL - S ns-LK I N iN-K.50 W .IN I S COe - W.in L f CN- -

5-9-~~~ I-if Zf. W. atiS . n i5-0ifLO0 I-- LI- ~ NNeN f I- LI %- N) N if 888:

sC 0. 0 wnL - n00

"m - 1z -K- , zM.O Sin m 0m w0 u w w 19

.5 -5a. 1A

B-13

NAVSWC MP 91-404

10 Gn CD

init 0 U, 0 1-

10 0 - :- 0-41-: " 1 . : IC I- 4 - * n

44 U) 4 W 0

N 9L N 19 IC "1 12 ..L N, a a: I: : LaC 01- J :

at CL 1 - x b.1 0 ALN -

10I 0. 9L it 04 1 0 w4 10 14 - af~f :: 0 4 0 0. - X - a44 I 4 1-a~~~~' a. - Q4 1 J a -I 1 j

'a a L) I .:- - C

a4 n-e a AO 0 a-am 4-a6% 4 6% j ow w) (A -C - of 0 a t PA -

ILa U) 4nl 04 CL. um f 4 4. 4- 4 4 *. *o~~~l U5 4AA~ 4d am & -04 4 4 4 N04 : 1

.J~ - a. -- ut 4-94I4

IL NN2 4-42L4 42,0 N a a

j q1

I. : ow IV- MAW 2 I S. 4 . - 4 I - K 6 1- 4

w-4 -.4n 0YN 1 4 0 MNOK 0.J1 19 I-. 0 W - 1- 104..42 10 X- 14.N 1 .

y0.U a. MAc a0 ILi * ma. ' *Loa.

101.1 Qd -- 0& (a as --X a 0 001:10-1 W- 0 a ILN 0 1-0-1 a -I S.a .

400 N .- 1 040 -- N 04 10 01- N I400O1~

0- N.4 0 4

104 10I. - 04 -J 1 4-

4~~~ N 4 10a 4 14 N Nn N 0 1 . 010 4 4 4a..4 .. 0 1010 44 444 .-a .10 0 I 444 4 a.a4 10 00 W 44 44IA.

*E~~I IL 14 N. S- I -0104 1 -0 0 14- 1 S w

10 0I .- 4 40 0I4am 10I0.a4--N 4140.4a.11- ~ 24N 4 .41- -424 . ~ a4.- ~4N4 N ~ IL.- 1--g 4A

- a. 10-4 -.. 4.' 4 N 10. 10-4 II .4 U- 4N 1.4 11-4W..94 IS- 4 N~4 04 GM-a

fm4 4 A"d4 4 4 q - 4 4 4 4

4- CL- r

W-

-a aa A

4A -)B S a.r w 4l U 4 a. &0

-a a 1-2 q

-a .~ -K Ad-aw &

IL21C

It 0 2 I x.

4-44

B-14 N W .14N* W 11

NAVSWC MP 91-404

Pxxx 33£

ro ro 6- CE

3=x Ibcx v

=36-6- c X_aw W_ -u 0- A I

age: 3323 PL A.bbD

0, 008 aC"a

aClg14.9.2 aIaza a. 0 o a*~~ Ix 2N a..

ey- S -co ~ co "'~1

1-1.1 ZV66. F'~' W. -- ms w- 000 000oll ~ 0

-W WWW~ WWw £10 AW WMa. w'

PC* -001. - --gg tags -0000M.0 gab -as Z- w

ft =00 Wa a' w

2 -aJ I& z Z5I

to 20 OA fA0' .160z 0 1 m1am "I

0 "

100

C- x-0 LF

A- a.ox = Ia

= 10Za 9-KL105 S-- 3110 a

C~~~~c a... 3 .- a... .

&I 4c r, -. - i

- i. goo -

W &I I$ -.- a. - -K

a~~-ra. rn~ 0 1

~~o4= % 0 13K~ Wb.a. 0 11111. x-

DC 10f.J. WUO A cema-..J aw.a.a Zia0 a .5A.3 N x~x

U, U, w *0 0 WI ~ .- UWW ~ UW 19f~ n 0 W a

9 MR-ORZ ' 10 10 49. 1 0 ".'N -oo 0 0- 030.- m z Ic)tJi

B- 15

NAVSWC MP 91-404

W W

flow~ &W

M

JoWUW& U

UM 0

3- -- 1.4 4n p

C, w 0j 4- N4 ... v

p.-- a 'c c 4

U - 2f 4 W-

u S ? M . u

w~W T---IL (4* U4 ~ n

-ur w -.

mumow

-- N 44 -au w

b- -K U 0A mn 4§

cu & 00 &~

C, In 0 WW -

v.1 1j ...KW- m a a&

inu U 4

W-

- aa- at I- W LIa .amU W. ... 9L-L 9 a 0 01

Ta 'Ag 4. ago

00 0. .0.

1w IPa0 .1IV 41P L L 0 - -- 4..4VaC-umZM. I at §= -cc a P

p..- 0.-u..4

- 0 040

a u1tn . 4

o in p.

Win -IL; ~ K u~N

do~p Iw o3--- . ta -0 Z;

a- -o

B-16 4 a U U-% .... D p

NAVSWC MP 91-404

DISTRIBUTION

Copies Copies

Chief of Naval Operations CommanderDepartment of the Navy Fleet Training GroupATTN: OP-392C 1 Western PacificWashington, DC 20350 FPO Seattle WA 98782 2

COMDESRON-15 Internal DistributionAttn: LCD Steve Anthony 1 E231 2FPO San Francisco CA 96601-4717 E232 3

U 1COMDESRON-20 U02 1Attn: CAPT Kaiser 1 U20 1FPO Miami FL 34099-4719 U25 3

U25 (Craun, P.) 1Defense Technical Information Center U25 (Craun, P.J.) 1Cameron Station U25 (Davis) 1Alexandria, VA 22304-61451 12 U25 (French) 1

U25 (Ko) 7U25 (Rosenbaum) 2U25 (Yan) 1

(1)

' Form ApprovedREPORT DOCUMENTATION PAGE OM o.0vPublic repobng burden for thit collection of information a estimated to average I horP er respone, including the tme for reviewing insructom, searhing nstg databouat. gathwng end maintaining the date needed, and completing and reviewing the collection of information. Send comments regarding the burden etimate or any Otheraspect of thi collection of intonnation. including sggetiorn for reducing this burlen. to Washington Headquarters Services,. Directote for Information Operation endleport, 1215 Jefferson Davis Highway, Suite 1204, Arlington, VA 222-4302, and to the Office of Management and Budget, Paperwork Reduction Project (070"410),Wash gton. DC 20503

1. AGENCY USE ONLY(Lve blank) 2. REPORT DATE 3. REPORT TYPE AND DATES COVERED14 June 1991 FINAL

4. TITLE AND SUBTITLE S. FUNDING NUMBERSFORTH GRAPHICS TOOLBOX (A USER'S GUIDE FOR USEWITH RFF FORTH)

6. AUTHOR(S)

Hanseok Ko

7. PERFORMING ORGAN/ZATION NAME(S) AND ADDRESS(ES) L PERFORMING ORGANIZATIONREPORT NUMBER

Naval Surface Warfare Center10901 New Hampshire Avenue NAVSWC MP 91-404Silver Spring, MD 20903-5000

9. SPONSORINGIMONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSORING/MONITORINGAGENCY REPORT NUMBER

11. SUPPLEMENTARY NOTES

12a. DISTRIBUTION/AVAILABILITY STATEMENT 12b. DISTRIBUTION CODE

Approved for public release; distribution is unlimited.

13. ABSTRACT (Maximum 200 words)

FORTH GRAPHICS TOOLBOX has a rich collection of graphics routines immediately useful for allFORTH based application software running on IBM-PC clone microcomputers. The routines are builtupon graphics related primitives of both video BIOS call functions and direct-video functions. The usercan develop more exotic application software based on the routines listed in this package.

14. SUBJECTTERMS 15. NUMBER OF PAGESGraphics Applications 65Routines FORTH 16. mR. CODESoftware Underwater acoustics signal processing

17. SECURITY CLASSIFICATION 18. SECURITY CLASSIFICATION 19. SECURITY CLASSIFICATION 20. UMrTATON OFOF REPORT OF THIS PAGE OF ABSTRACT ABSTRACTUNCLASSIFIED UNCLASSIFIED UNCLASSIFIED SAR

Standard Form ZY5 (KeV. i-1Presrbed by ANd Std Z- ItNleaIo

GENERAL INSTRUCTIONS FOR COMPLETING SF 298

The Report Documentation Page (RDP) is used in announcing and cataloging reports. It is important thatthis inTormation be consistent with the rest of the report, particularry the cover and its title page.Instructions for filling in each block of the form follow. It is important to stay within the lines to meetoptical scanning requirements.

Block 1. Agency Use Only (Leave blank). Block 12a. Distribution/Availability Statement.Denotes public availability or limitations. Cite any

Block 2. Report Date. Full publication date including availability to the public. Enter additionalday, month, and year, if available (e.g. 1 Jan 88). limitations or special markings in all capitals (e.g.Must cite at least the year. NOFORN, REL, ITAR).

Block 3. Type of Report and Dates Covered. Statewhether report is interim, final, etc. If applicable, DOD - See DoDD 5230.24, "Distributionenter inclusive report dates (e.g. 10 Jun 87 - Statements on Technical Documents."30 Jun 88). DOE - See authorities.

Block 4. Title and Subtitle. A title is taken from the NASA - See Handbook NHB 2200.2part of the report that provides the most meaningful NTIS Leave blank.and complete information. When a report is pre-pared in more than one volume, repeat the primarytitle, add volume number, and ificlude subtitle for Block 12b. Distribution Code.the specific volume. On classified documents enterthe title classification in parentheses. DOD - Leave blank.

DOE - Enter DOE distribution categoriesBlock 5. Fundina Numbers. To include contract and from the Standard Distribution forgrant numbers; may include program element Unclassified Scientific and Technicalnumber(s), project number(s), task number(s), and Reports.work unit number(s). Use the following labels: NASA - Leave blank.

NTIS - Leave blank.C - Contract PR - ProjectG - Grant TA - Task Block 13. Abstract. Include a brief (Maximum 200PE - Program WU - Work Unit words) factual summary of the most significant

Element Accession No. information contained in the report.

BLOCK 6. Author(s). Name(s) of person(s)responsible for writing the report, performing the Block 14. Subiect Terms. Keywords or phrasesresearch, or credited with the content of the report. identifying major subjects in the report.If editor or compiler, this should follow the name(s).

Block 15. Number of Pages. Enter the totalBlock 7. Performing Organization Name(s) and number of pages.Address(es). Self-explanatory.

Block 16. Price Code. Enter appropriate price codeBlockS8. Performing Orqanization Report Number. (NTIS only)

Enter the unique alphanumeric report number(s)

assigned by the organization performing the report. Blocks 17.-19. Security Classifications. Self-

Block 9. Sponsorinq/Monitorinq Agency Name(s) explanatory. Enter U.S. Security Classification in

and Address(es). Self-explanatory. accordance with U.S. Security Regulations (i.e.,UNCLASFIFIED). If form contains classified

Block 10. Sponsoring/Monitoring Agency Report information, stamp classification on the top andNumber. (If Known) bottom of the page.

Block 11. Suplementary Notes. Enter information Block 20. Limitation of Abstract. This block mustnot included elsewhere such as: Prepared in coop- be completed to assign a limitation to the abstract.eration with...; Trans. of...; To be published in.... Enter either UL (unlimited) or SAR (same as report).When a report is revised, include a statement An entry in this block is necessary if the abstract iswhether the new report supersedes or supplements to be limited. If blank, the abstract is assumed tothe older report. be unlimited.

Standard Form 298 Back (Rev. 2-89)