Dec 162017
Nice wave generator for use w/ a 8087 processor.
File SURF87.ZIP from The Programmer’s Corner in
Category Science and Education
Nice wave generator for use w/ a 8087 processor.
File Name File Size Zip Size Zip Type
SURF87.DOC 4352 2049 deflated
SURF87.EXE 8576 4043 deflated

Download File SURF87.ZIP Here

Contents of the SURF87.DOC file

** SURFACE87 **

This program developed from an article in 80-Micro, May 1983, page
236. The article is written by Delmer D. Hinrichs. I got tired of
running benchmarks on the 8087 in my IBM-PC and remembered this
program, which draws elaborate, drop of water type waveforms on dot
matrix printers, such as the EPSON MX series. Elaborate yes, but even
in compiled BASIC a moderately complex picture can take an hour or two
while the program computes hundreds of thousands of sine functions.

SURFACE87 is written entirely in 8088/87 assembler, taking advan-
tage of the number crunching power of the 8087. If you don't have an
8087 installed in your PC or compatible computer, this program will
not produce anything worthwhile. If you do, some very intriguing
waveforms can be cranked out on your printer in an average of
fifteen minutes.

You are invited to experiment with values outside those suggested
by the program. A negative height multiplier, for instance, will make
a negative peak. Different size waves make the peaks fatter or skinnier.
A good set of values to start out with are 1 peak, circular wave forms,
left margin 300, X position 250, Y position 250, wave lengths 71,
height multiplier 530.This creates the classic three dimensional
drop of water in the pond image you have probably seen a hundred times
in magazines--in less than ten minutes.

Output is intended for printer, but can optionally be sent to the
screen or disk. The screen image is compressed by a factor of four in
order to represent the 720,000 possible dots. A disk file can be speci-
fied but make sure you have 91,200 bytes free on the disk. SURFACE87
can also print the files it writes. A good way to experiment, once
you have a feel for the screen verses printer images, is to send the
picture to the screen and electric disk. This saves a lot of paper
and if you create a really wonderful design you can save it to real
disk and print it out anytime at maximum speed.

This file is one of three or four. SURF87.EXE is the main
program. SURF87.HEX must be run through a hex-converter program to
produce SURF87.EXE. SURFPR.BAS is a PC-BASIC program to install
alternate printers on SURF87. The program comes ready to go for all
EPSON GRAFTRAX printers, including the IBM Graphics Printer. If your
printer has a bit-plot mode, it can most likely be installed.

Technical details:

For IBM compatibles--if your computer understands the IBM video
BIOS routines in Interrupt 10H, the printer call Interrupt 17H and
standard MS-DOS function calls (version 1.10 and later) you should
have no problems with this program.

For IBM-PC--in order to allow as many people as possible to use
the program the disk files only use the DOS 1.10 function calls, so
sorry about no PATH names.

SURFACE87 disk files are standard random files with a block size
of 960. In BASIC, a program to print these files can be written by
going to BASIC with the /S:960 option, and then doing an
OPEN "filename" AS #1 LEN=960.
Printers other than the EPSON sometimes have more and less than 960
dot widths, and this is one way to get at the actual data produced.
Alternatively, SURFPR has sixteen bytes of space for each printer
set-up sequence, and can be used to move the image around the page.

There is error detection built in to cope with out of disk space
or printer problems. If you have specified output to disk and printer,
for instance, and run out of space on the disk file, the program will
close the disk file and continue sending to the printer. If the
printer then runs out of paper, the program will find that it doesn't
have anything to do and will return to 'Program possibilities'. So if
you are printing a picture and it looks crummy, just turn off the
printer for a second and you will be back at the main menu.

Program translation and modifications by:

Marty Smith SOURCE ST2259 / COMPUSERVE 72155,1214
310 Cinnamon Oak Lane (713) 464-6737 [Home]
Houston, TX 77079 (713) 661-1241 [Office]
PUSERVE 72155,1214
310 Cinnamon Oak Lane (713

 December 16, 2017  Add comments

Leave a Reply