$Id: README,v 1.15 2004/02/09 07:20:18 phil Exp $ | |
XY Display Simulation | |
Simulates XY plotting displays used on DEC PDP systems. | |
Copyright (c) 2003-2004, Philip L. Budne and Douglas A. Gwyn | |
Permission is hereby granted, free of charge, to any person obtaining a | |
copy of this software and associated documentation files (the "Software"), | |
to deal in the Software without restriction, including without limitation | |
the rights to use, copy, modify, merge, publish, distribute, sublicense, | |
and/or sell copies of the Software, and to permit persons to whom the | |
Software is furnished to do so, subject to the following conditions: | |
The above copyright notice and this permission notice shall be included in | |
all copies or substantial portions of the Software. | |
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |
THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | |
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | |
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |
Except as contained in this notice, the names of the authors shall | |
not be used in advertising or otherwise to promote the sale, use or | |
other dealings in this Software without prior written authorization | |
from the authors. | |
Phil Budne <phil@ultimate.com> | |
Douglas A Gwyn <gwyn@arl.army.mil> | |
February 5, 2004 | |
Designed for use with Bob Supnik's SIMH, but the code should be easily | |
portable, and usable standalone (see vttest.c for an example). | |
Display code is provided for X11 (Unix/VMS) and Win32. | |
We're not GUI programmers, so the code is PRIMITIVE!! | |
Started from VC8E simulator by Douglas W. Jones | |
(distribution 5, of Feb 4, 1997); | |
This PDP8 Emulator was written by Douglas W. Jones at the | |
University of Iowa. It is distributed as freeware, of | |
uncertain function and uncertain utility. | |
Original phosphor decay constants for Type 30 display from XMame 0.72.1 | |
VT11 support GREATLY enhanced (and VT48 support added) and | |
other general improvements from Douglas A Gwyn. | |
In the interest of fair play we have supplied two makefiles (neither | |
of which is named Makefile nor makefile), one which works under all | |
flavors of "make" (after necessary editing, in the traditional manner), | |
and one which functions only under the GNU version of make (sometimes | |
installed as "gmake", but the default "make" on many systems). We have | |
not added a third flavor which uses BSD make enhancements, because our | |
deeply held roots (over 40 combined years of Unix experience by the | |
authors) demand that things should work on all platforms. Both the | |
Linux and Windows worlds violate this simple credo (everything works so | |
long as you use OUR preferred software), and many current users may not | |
even realize that editing Makefiles used to be de rigeur. Since the | |
GNU environment is widely available and "gmake" has features that | |
support automatic configuration for multiple platforms, we have | |
supplied thr GNU-specific variant with the expectation that many users | |
will find it more convenient. You can copy or link whichever flavor of | |
makefile suits your taste to whichever spelling of "makefile" suits | |
your fancy, or invoke "make" with the -f flag specifying the desired | |
makefile. | |
To compile test programs: | |
======================== | |
On Unix: | |
# edit smakefile to match your environment | |
make -f smakefile | |
or | |
gmake -f gmakefile | |
On Win32 (using Cygwin); | |
make -f gmakefile WIN32=1 | |
On Win32 (using MINGW): | |
# edit smakefile to match your environment | |
make -f smakefile | |
or | |
mingw32-make -f gmakefile WIN32=1 | |
or | |
execute build-mingw.bat in a DOS command window | |
creates: | |
munch: standalone simulation of PDP-1 munching squares; | |
examines console "test switches" (see next section) | |
vt11: sequences through VT11/VS60 simulator test displays; | |
shows how the diplay-processor simulator can be used | |
from applications other than PDP-11 simulators | |
Console switches: | |
================ | |
Upto 18 simulated console switches, toggled by hitting keys: | |
123 456 789 qwe rty uio | |
space bar clears all switches. | |
Spacewar Switches: | |
================= | |
Key presses for simulated Spacewar control box switches; | |
action player | |
1 2 | |
rotate clockwise a k | |
rotate counter clockwise s l | |
fire engines d ; | |
launch torpedo f ' | |
hyperspace (both at once) as kl | |
Light pen: | |
========= | |
The light pen is active when any mouse button is held down. | |
Mouse button 1 acts as a "tip switch" for models so equipped (VS60). | |
The light pen may be dragged while active. | |
Too many compile time parameters: | |
================================ | |
Read the comments in display.c for more explanations!! | |
DISPLAY_TYPE default display type, one of: | |
DIS_VR14, DIS_VR17, DIS_VR20, DIS_VR48, DIS_TYPE30, DIS_TYPE340 | |
selects screen characteristics (phosphor, dimensions). | |
Only affects programs which do not make an expicit | |
display_init() call. | |
PIX_SCALE one of RES_FULL, RES_HALF, RES_QUARTER, RES_EIGHTH | |
selects default display scaling factor. | |
PEN_RADIUS default radius of light pen in (scaled) pixels | |
MAXELAPSED Upper limit in real microseconds between polls/delays | |
MINELAPSED Lower limit in real microseconds between polls/delays | |
MINDELAY Lower limit in real microseconds for attempted delay | |
MAXDELAY Upper limit in real microseconds for attempted delay | |
GAINSHIFT delay_check increment/decrement gain factor | |
In display system support (x11.c, win32.c); | |
PIX_SIZE selects displayed pixel size (default 1) | |
makes screen larger, useful when display scaled to small size | |
Programming interface: | |
===================== | |
see display.h | |
Source repository: | |
================= | |
Up-to-date Sources are available by anonymous CVS. | |
See http://www.ultimate.com/phil/xy/ |