Dec 122017
 
GRAPHICS routines in assembler for Hercules Graphics Card.
File GRAPHX11.ZIP from The Programmer’s Corner in
Category Assembly Language
GRAPHICS routines in assembler for Hercules Graphics Card.
File Name File Size Zip Size Zip Type
GRAPHX11.DOC 5655 1729 deflated
GRAPHX11.LIB 3072 1107 deflated
TPCREAD.ME 199 165 deflated

Download File GRAPHX11.ZIP Here

Contents of the GRAPHX11.DOC file


GRAPHX.LIBVersion 1.10
A product of Bigsoft Industries
Released 25 November 1986

A library of object modules for linking to assembly programs
using Hercules monochrome graphics.

INTRODUCTION
This library contains object modules ready for linking to main
assembly programs. GRAPHX.LIB includes routines for setting
graphics and text modes, clearing the screen, plotting points,
and drawing lines. Specifically, these subroutines are inten-
ded for use with the Hercules Graphics Card, with 720 X 348
resolution.

How to use GRAPHX.LIB:
GRAPHX.LIB is a simple object library and is used like any
other. The LINK program (provided with DOS and with the
Microsoft Macro Assembler) is called:

A>link
Object Modules [.OBJ]: filename.ext+fil2.ext+...
Run File [filename.EXE]:
List File [NUL.MAP]:
Libraries [.LIB]: graphx

Words of wisdom:
Before using this graphics software you should use the HGC.COM
program to set the Card to full configuration thusly:

A>hgc full

HGC.COM was provided on the diskette that came with the Hercules
Graphics Card, and should be in your system directory or some
other convenient place.
Also, GRAPHX.LIB Version 1.10 is for use only with page 0 (video
RAM locations B000:0000 to B000:7FFF) of the PC's video buffer.

Note:
This software is intended for the public domain and is to be
used at your own risk. Bigsoft Industries is not in any way
affiliated with Hercules Computer Technology, Inc. Any cor-
respondence on this product should be sent to

Bigsoft Industries
264 Putting Green Rd.
Trumbull, CT 06611

Donations would be extremely welcome and would help insure that
Bigsoft continues to produce quality products.

Trademarks: Hercules -Hercules Computer Technology, Inc.
Microsoft Macro Assembler -Microsoft Corporation.

Notes on release of Version 1.10:
This is a minor revision but the error corrected was
a severe one: the ds register was not restored at the end of
the lin??? routines. This is a disastrous boo-boo and with
reddened ears we humbly corrected it. Now we can TRULY claim
"all registers are restored".

Coming in early 1987 from Bigsoft Industries:

A graphics library for TURBO Pascal programs using Hercules
graphics mode. Yes, you (and we) will be able to CHEAPLY
write all sorts of great graphics programs in the cuddly
TURBO enviornment. See you then!

TURBO Pascal is a trademark of Borland International.

REFERENCE

------------------------------------------------------------------------------

CLSGR
Clear the graphics screen

USAGE:call clsgr

IN:Nothing.

OUT:Nothing.

All registers are preserved.

EXAMPLE:callclsgr

-----------------------------------------------------------------------------

HCMODE
Sets the Graphics Card for graphics or text mode

USAGE:callhcmode

IN:The al register should be set to a nonzero
value for graphics mode and to zero for text
mode.

OUT:Nothing.

All registers are preserved.

EXAMPLE:moval,01
callhcmode
.
.
(code for graphics mode)
.
.
moval,00
callhcmode
.
.
(code for text mode)

---------------------------------------------------------------------------

LINOFF
Erases a line

USAGE:calllinoff

IN:Parameters x1,y1,x2,y2 should be pushed onto
the stack immediately before calling LINOFF,
in the order above.

OUT:Nothing.

All registers are preserved.

EXAMPLE:pushx1
pushy1
pushx2
pushy2
calllinoff

-------------------------------------------------------------------------------

LINSET
Draws a line

USAGE:calllinset

IN:Parameters x1,y1,x2,y2 should be pushed onto
the stack immediately before calling LINSET,
in the order above.

OUT:Nothing.

All registers are preserved.

EXAMPLE:pushx1
pushy1
pushx2
pushy2
calllinset

-------------------------------------------------------------------------------

LINSTX
Draws a line using XOR

USAGE:calllinstx

IN:Parameters x1,y1,x2,y2 should be pushed onto
the stack immediately before calling LINOFF,
in the order above.

OUT:Nothing.

All registers are preserved.

EXAMPLE:pushx1
pushy1
pushx2
pushy2
call linstx

------------------------------------------------------------------------------

PTSET
Plots a point

USAGE:call ptset

IN:The x coordinate should be in si and the
y coordinate should be in di.

OUT:Nothing.

All registers are preserved.

EXAMPLE:mov si,xval
movdi,yval
callptset

-----------------------------------------------------------------------------

PTSETX
Plots a point using XOR

USAGE:callptsetx

IN:The x coordinate should be in si and the
y coordinate should be in di.

OUT:Nothing.

All registers are preserved.

EXAMPLE:movsi,xval
movdi,yval
callptsetx

-----------------------------------------------------------------------------

PTOFF
Erases a point

IN:The x coordinate should be in si and the
y coordinate should be in di.

OUT:Nothing.

All registers are preserved.

EXAMPLE:movsi,xval
movdi,yval
callptoff

-----------------------------------------------------------------------------


 December 12, 2017  Add comments

Leave a Reply