Trim down excessively long DESCR files in ports i either own, or where

i'm somehow related to (hpscan, that is).

Requested by:	asmi (long ago)
This commit is contained in:
Joerg Wunsch 1996-12-22 11:01:16 +00:00
parent aee48c8801
commit 3138dc639c
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=5057
5 changed files with 4 additions and 336 deletions

View file

@ -5,23 +5,6 @@
As the title suggests, this is a Unix/X windows program which is
designed to emulate a standard 8086 based PC.
In its current form it runs most text based programs. The programs I have
tried and found to work are as follows:
MSDOS 5.0 MSDOS 6.2
WordPerfect 5.1 Borland C++ 2.0
Turbo Debugger 2.51 Turbo Assembler 2.51
BBCBasic 4.61 MSDOS QBasic
MSDOS GWBASIC Virtually all program that came with MSDOS 5
Hitchhiker's Guide to the Galaxy PC Magazine's ANSI.COM
SemWare's QEdit 2.1 Norton Utils 4.50 Advanced Edition
Norton Utils 6.0 Xtree Professional 1.1
PowerMeter Utils Autoroute (ancient version)
Minitab 8.0 Microsoft Diagnostics
This is all the programs I could lay my hands on which were text based
and could run on an 8086
The emulator runs at about 8-10MHz 80286 speed on a Sun SparcStation
10/40 (without the -mviking flag) and at about 6MHz 8088 speed on a
33MHz 80486 box running Linux.
@ -34,205 +17,6 @@ release....
The program rather hogs the cpu but unmapping the window (iconifying
it) will put it to sleep.
The most recent version of this program will always be in ftp.cs.bris.ac.uk
currently in the directory /users/hedley
INSTALLING THE EMULATOR
Edit the Makefile to change the OPTIONS, CFLAGS and XROOT to be
appropriate for your system (I am assuming you are using GNU GCC,
although any ANSI C compiler should work just as well). Ensure you are
using the best (speed) optimisations possible (e.g. -O2 -fomit-frame-poiner)
Edit the file mytypes.h and ensure that the types for INT8, UINT8,
INT16, UINT16 etc are correct. Hopefully nothing need be changed in
this file, but you never can tell... I have assumed that 'char's are 8
bit bytes, 'short's are 16 bit words and 'long's are 32 bit words. If
your compiler treats these differently to the above then you will have
to edit this header file.
Type 'make' and go away and have a cup of tea! Compiling 'cpu.c' takes
a while (and quite a bit of memory!).
Get a floppy disk of the same size/type as you specified in the Makefile
(i.e. if you chose -DBOOT720, then you'll need a 3.5" 720k disk). Install
MSDOS on it. Copy the files 'config.sys', 'emufs.sys' and 'lredir.exe' from
the 'programs' directory onto this floppy disk. Shove it in your Unix box
and type cp /dev/fd0 DriveA This should create a 720k (or whatever) file
which the emulator can boot from. If you do not have access to a Unix box
with a floppy disk on it, then you can use the supplied 'dumpdisk' program
to create a disk image. All you need is access to a PC. Simply put in a
bootable MSDOS disk into the drive and type dumpdisk A (or dumpdisk B if in
drive B). The program will copy the entire disk to a file called
'drivea'. You must then transfer it to your Unix box...
You then need to convert the vga font (vga.bdf) into a font format
your X server can understand (either SNF or PCF) using either
'bdftosnf' or 'bdftopcf' and install the resulting font file somewhere
where your X server can find it. Then type 'mkfontdir' to rebuild the
fonts.dir file and then type 'xset fp rehash' to tell your X server
about the new font. If you type 'xlsfonts' you should see 'vga' as one
of the fonts listed. If not, then something has gone wrong. I may or
may not be able to help - it depends on your local setup. The emulator
will run without the font as it uses the standard 8x16 X11 font -
although most programs which use the extended character set will look
pretty terrible. A warning will be displayed if the correct VGA font
cannot be found. If you are using openwindows, you will have to type
'convertfont' and then 'bldfamily'
You should now be in a position to run the emulator
By default, the emulator requires the disk image called 'DriveA' to be in
the current directory or else it will complain. If you don't like this,
then you can change the file the emulator boots from by altering your
.pcemurc file (see below) or by changing the default at compile time (by
modifying the Makefile)
Once run, the emulator should come up with the usual MSDOS banner and
request the current date and time (which should already be
correct). You can now run PC programs, mount Unix directories as
drives etc. You will already have one drive redirection - drive C: is
the Unix root directory. To mount further directories as drives, you
must use the program 'lredir'. Consult the file 'lredir.readme' for
instructions...
The .pcemurc file
At present this file allows a few things to be changed at run time. If this
file is found (either in the current directory or in your home directory),
then it is read and parsed and the values overwriting the equivalent
compile time options. Currently the only options supported at present are:
bootfile diskfile
where diskfile is the disk image you want to boot from (no quotes or
anything are needed and the filename must not contain white spaces).
boottype type
where type is either 360, 720, 144 or 12. This tells the emulator the type
of disk the disk image file represents (360k, 720k, 1.44MB, 1.2MB
respectively).
updatespeed n
where n is an integer > 0
This is the rate at which the screen memory gets checked for changes (and
hence the update speed at which the screen gets updated for non-BIOS
writes). n is measured in internal interrupt ticks of which there are ~72.8
per second (depends on the resolution of the system timer).
cursorspeed n
where n is an integer
This specifies how fast the cursor should flash. Flashing the cursor can
take a fair amount of bandwidth and so on slow/heavily loaded networks it
may be best to slow down the cursor flashing. Setting n to 0 or less will
disable cursor flashing - the cursor will be permanently on.
An example .pcemurc file can be found in this directory.
If you have problems compiling or running the emulator, then please contact
me giving details of what went wrong (along with your computer type
etc).
Architectures tested:
Computer OS Comments
-----------------------------------------------------------------------------
PC 486/33 Linux 0.99.14w Runs quite well. A bit pointless though :)
Sun 3/60 SunOS 4.1.x Takes an age to compile and not really worth
the effort...
SparcStation 10 SunOS 4.1.3 Runs well. Takes > 20MB RAM to compile though
HP 755/99 HPUX Runs OK (>25MB RAM to compile...)
Sun 4 Solaris 2.3 Runs OK
RS6000 ??? Had a few problems getting it to compile.
Getting there slowly though.
SGI Indigo IRIX 4.?.? Doesn't work if compiled with optimisation
using the standard compiler. Haven't tried
it using gcc yet...
As you can see this list is quite small. The main limiting factor is the range
of machines I have access to. If anyone else can get it running on other
architectures then please contact me!
Warning: This program is not secure! Do not make is suid or sgid anything
unless you wish to compromise the security of your system!
EMULATOR LIMITATIONS etc
Some parts of the PC architecture are emulated better than others. The
BIOS has been partly implemented - enough to get MSDOS to boot and to
allow most programs to run. Anyhow, most decent programs bypass the
BIOS for screen access. BIOS Disk calls for drive A have been mostly
emulated, although formatting doesn't work.
Some of the hardware has been emulated but not much. Timer interrupts
are generated by the system but there is now way (at present) to
reprogram the timer. The Programmable Interrupt Controller has been
emulated in part to respond to the End Of Interrupt command and reads
from and writes to the mask register should work OK.
None of the VGA hardware has been emulated at present (apart from
screen updating) although this will change in the near future. Mode
changes must therefore be done through the BIOS.
The keyboard has been mostly emulated. The program converts X11
keysyms to raw PC scan codes and then generates an interrupt 9 as per
usual. There is a BIOS routine which takes these scan codes and
generates the correct BIOS ASCII/scan code pair. The keysyms used can
be found in the module 'xstuff.c'. In the future these keysyms will be
read in from a file at run time.
THANKS
Thanks go to the following:
Andy Norman at HPLabs, Bristol (ange@hpl.hewlett-packard.co.uk) for the HP
port.
Dieter Becker (becker@med-in.uni-sb.de) for help with the Solaris port
Klaas Esselink (esselin1@ksla.nl) for help with the RS6000 port
Please report bugs/comments etc to me (hedley@cs.bris.ac.uk) and I'll
do my best to sort them out (no guarantees though). After June 25th I
will be leaving University and will not be able to check email very
frequently - please be patient if you want a response - I will reply
eventually.
Have fun...
David
[FreeBSD port comments]
I (joerg_wunsch@uriah.heep.sax.de) have slightly extended the .pcemurc
functionality, in order to improve the handling of international key-
boards. David's code hard-coded the keyboard mapping from XKeyStrings
to PC scancodes.
I've been adding a .pcemurc section that defines the reverse mapping
from XKeyStrings to PC scancodes, so it's at the very least possible
to remap the keyboard to the original US layout even for international
versions. The syntax for this rules is
`keymap' <scancode>`='<XKeyString>
This is my personal .pcemurc file, just to illustrate the usage.
bootfile /home/joerg/pcemu/DriveA
boottype 720
keymap 12=ß
keymap 13='
keymap 21=z
keymap 26=]
keymap 27=+
keymap 39=\
keymap 40=[
keymap 41=^
keymap 43=#
keymap 44=y
keymap 53=-
keymap 86=<
The author is:
David Hedley, hedley@cs.bris.ac.uk

View file

@ -12,39 +12,9 @@ This version of xmine is based on Paul Falstad's version 1.0.3, as
published in comp.sources.x. It has been heavily munged to work
without OSF/Motif.
Almost everything needed was already in the Athena Widget Set, with
the exception of a Canvas Widget (or DrawingAreaWidget in Motif
terms). Hence i have included a copy of the Canvas Widget of the Free
Widget Foundation, only slightly modified to take the #include's from
the current directory. If anybody is unlucky with the GPL conditions
applying to the FWF code, she is free to drop in own versions of a
Canvas Widget (really not much of code).
I originally intented to #ifdef Paul's version for use with the Athena
Widget Set, but realized that this would have resulted in too much of
spagghetti code. That's why i hacked a separate source out of it. I
cleaned it up a bit, so it will compile now without complaints with
the -Wall flag set under gcc.
Since the game itself has some 3D look, linking against the famous
Xaw3d library is highly recommended.
ACKNOWLEDGEMENTS:
=================
For X11:
The X Consortium, MIT, DEC, ...
For the original OSF/Motif version of xmine:
Paul Falstad (pf@z-code.com)
For the three-D lookalike Athena Widget set:
Kaleb S. Keithley (kaleb@jpl-devvax.jpl.nasa.gov)
For the Canvas Widget of the Free Widget Foundation:
Robert H. Forsman Jr.
---
enjoy,
Joerg Wunsch <joerg_wunsch@uriah.sax.de>
Joerg Wunsch <joerg@FreeBSD.org>

View file

@ -1,17 +1,4 @@
The xonix application consists of a playing area and a
status display below.
The status display shows the current values for level,
filled area (in percent), number of players (lifes), and
elapsed time.
The playing area has several regions. The brown region
(initially only the border) is ``filled region'', where
the player can move, starting from the top left corner.
Beware of the bouncing yellow eater(s) that do also move
across filled regions however, if they hit the player, a
life will go away. The flyers can only bounce across the
green (so-called empty) area in the middle.
Xonix is an old action game.
The purpose of the game is to move the player across the
empty region (whereby it leaves his way in a brown color
@ -29,11 +16,8 @@ Every level, there will be one flyer more. Every second
level, an additional player will be granted. Every fifth
level, an additional eater will be fired off.
The original xonix game has been seen somewhere on an old
PC/XT clone. This is a reimplementation from scratch,
done by Torsten Schönitz starting the project on a Macin-
tosh. The X11 support has been written by Jörg Wunsch
with the pleasant help by Alfredo Herrera Hernández.

View file

@ -8,11 +8,6 @@ like the following:
# HP Scanner
device pt0 at scbus?
Re-configure, build, and install the new kernel. On bootup you should
seem something similar to this which shows your scanner is attached:
(ncr0:5:0): "HP C2520A 3503" type 3 fixed SCSI 2
pt0(ncr0:5:0): Processor
Next, you'll want to make a link from /dev/pt0 to /dev/scanner for the
driver software.
@ -22,43 +17,5 @@ driver software.
At this point, you should be able to run the scanner program and see
results.
- Nate
Original README follows:
---------------------------
This software is copyright Richard Tobin 1994. It may be freely
redistributed provided the copyright notices are not removed.
You can ftp this code from macbeth.cogsci.ed.ac.uk.
This is (a very early version of) a SCSI driver for the HP ScanJet range
of scanners and a corresponding graphical user interface.
The HP scanners (or at least some of them) are SCSI devices, but do
not implement the SCSI scanner interface. Instead they act as SCSI
processor devices. They use the SCSI send and receive commands to
transfer (hard as it is to believe) escape sequences.
The file scsi.c implements the SCSI send and receive commands in user
mode, using the *BSD "uk" (unknown device) driver. The uk driver is
somewhat flaky, rarely returning errors even if the device is switched
off. Error detection is therefore likely to be minimal.
The file scanner.c provides a thin layer on top of scsi.c, and might
decode error returns if there were any.
The file scl.c implements many of the HP SCL (Scanner Control
Language) commands. This involves generating and parsing lots of
escape sequences.
The file gui.c provides a simple X interface to the scanner. It
allows you to preview the whole scan area, zoom in on the bit you're
interested in, and scan it to a file. So far it can only scan 24-bit
colour, preview on a colour display, and produce ppm files.
All of this has been hacked up in a hurry, so it's pretty minimal. It
has been tried only under FreeBSD 1.1 with a ScanJet IIcx connected to
an Adaptec 1542CF. I don't have much time to spend on it, so don't
expect rapid improvements. Please send bug-reports and improvements
to R.Tobin@ed.ac.uk.

View file

@ -1,10 +1,3 @@
From: pcg@aber.ac.uk (Piercarlo Grandi)
Newsgroups: comp.sources.unix
Subject: v27i195: team - portable multi-buffered tape streaming utility, Part01/01
Date: 13 Jan 1994 13:24:40 -0800
Approved: vixie@gw.home.vix.com
Message-ID: <1.758496249.28141@gw.home.vix.com>
Submitted-By: pcg@aber.ac.uk (Piercarlo Grandi)
Posting-Number: Volume 27, Issue 195
Archive-Name: team/part01
@ -21,24 +14,4 @@ take turns at reading from the former and writing to the latter; they
synchronize by using a ring of pipes between them, where a "read-enable"
and a "write-enable" token circulate.
team is not just very portable, but also portable and efficient. It also
has some bells & whistles, like command line options to specify the
number of processes in a team, the block size for IO, and the volume
size of the input or output media. It also optionally reports its
progress.
Previous versions of team have been circulating (e.g. via alt.sources)
for several years; I have not found a bug for a long time, even if
surely they will exist.
The team source is GPL'ed, and it comes with no warranty.
Note: this program was developed entirely by the author in his own
time, using his own resources, on his machine, in the context of
his own research activities. In no way has the University of Wales,
Aberystwyth contributed aided or abetted to this work, for which
they bear no responsibility whatsoever. I am grateful to UWA for the
ability to use their systems (as a paying customer) to post this work.
pcg@aber.ac.uk (Piercarlo Grandi)