[comp.sys.ibm.pc.digest] Info-IBMPC Digest V89 #124

Info-IBMPC@WSMR-SIMTEL20.ARMY.MIL (12/28/89)

Info-IBMPC Digest           Wed, 27 Dec 89       Volume 89 : Issue 124

Today's Editor:
         Gregory Hicks - Chinhae Korea <COMFLEACT@Taegu-EMH1.army.mil>

Today's Topics:
                            720K disk to 1.44Mb
                          COMMAND.COM and quotes
                               Data Analysis
                             Drive A disabled
                        Numerical Methods in Pascal
                           Standing PS/2s on End
                        Using MS C for ROMable code
               Overlays in C or Using Extended Memory and C
                       QC 1.01 bug ? (fixed in 2.0?)
                        Rich Text Format (RTF) doc
            BIOS Timer Services and Interrupt Driver Async I/O
               Word 5.0, postscript, Vax, and PrintServer40
                      Disabling Drive A: for security

Today's Queries:
                               3270 EMULATOR
                              80386 Problems?
                         Reported new 80386 clone
                        DOS 4 and large hard disks
                WordPerfect and the Toshiba T3200 Problems
                             MS Mouse Emulator
                      ASCII => PostScript Conversion

The Lending Library is available from: WSMR-SIMTEL20.ARMY.MIL (see
file PD1:<MSDOS.FILEDOCS>AAAREAD.ME details on file directories
and descriptions.)

Archives of past issues of the Info-IBMPC Digest are available from
WSMR-SIMTEL20.ARMY.MIL in directory PD2:<ARCHIVES.IBMPC>.

WSMR-SIMTEL20.ARMY.MIL can be accessed using LISTSERV commands from BITNET
via LISTSERV@NDSUVM1, LISTSERV@RPIECS, LISTSERV@FINTUVM and in Europe from 
EARN TRICKLE servers.  Send commands to TRICKLE@<host-name> (example: 
TRICKLE@TREARN).  The following TRICKLE servers are presently available: 
AWIWUW11 (Austria), BANUFS11 (Belgium), DKTC11 (Denmark), DB0FUB11 
(Germany), IMIPOLI (Italy), EB0UB011 (Spain) TAUNIVM (Israel) and TREARN
(Turkey).

Send Replies or notes for publication to: <INFO-IBMPC@WSMR-SIMTEL20.ARMY.MIL>

Send requests of an administrative nature (addition to, deletion from the
distribution list, et al) to: <INFO-IBMPC-REQUEST@WSMR-SIMTEL20.ARMY.MIL>

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

Date: 18 December 1989 13:00:06 CST
From: "Bob Johnson (312) 245-3532" <U27745@UICVM.uic.edu>
Subject: 720K disk to 1.44Mb

Although it is possible in many cases to format a 720K disk at 1.44Mb
sometimes this disk will have a bad track 0 and the format will end.  On
the PS/2s I use this happens about 10% of the time.

I consider these disks (with the bad track 0) doomed to be 720K.

  BJ

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

Date: Mon, 18 Dec 89 11:06:04 CST
From: "Daniel W. DeNise, Sci. Pgmr/Analyst II" <C0016@UMRVMB.UMR.EDU>
Subject: COMMAND.COM and quotes

Responding to Jochen Roderburg

>Second, <,> and : (vertical bar) characters are interpreted as redirection
>and piping characters. This is not done if these characters are inside a
>double quoted string, and to my knowledge this is the only special
>treatment of double quotes by COMMAND.COM.

I've found one other thing COMMAND.COM does with double quotes.  The
strings being compared by a BATch file IF command can be enclosed in
double quotes.  This lets you do something like: IF "%USERNAME%" == ""
THEN GOTO NONAME without worrying about whether the environment variable
has a space in it.  IF X%USERNAME% == X THEN GOTO NONAME won't work,
because it turns into a syntax error any time %USERNAME% has a space in
it.

Disclaimer:  I've only tried this with DOS 4.01.  I haven't even looked at
it with other DOS versions.  I speak only for myself, not UMR.

Daniel DeNise
Computing Services
University of Missouri - Rolla
c0016@umrvmb.umr.edu
(314)341-4841

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

Date: Mon, 18 Dec 89 08:05:00 EST
From: neuman@kean.ucs.mun.ca
Subject: Data Analysis

In response to a recent request for software to fit polynomials I know
that Asyst (Asyst Software Technologies) will do the analysis required.
This package is not cheap however (approximately $1800.00 $US for the
modules required) and it may be overkill for the task required.

I use Asyst daily in the lab to acquire and analyze data from
neurophysiological experiments.  I evaluated a number of acquistion/
analysis packages before deciding on Asyst.  I should warn potential users
that Asyst is not easy to learn (6 full size binders of documentation for
the full 4 module package).  However, in the most recent version that have
included a program called Easy Coder which will write the code for the
user based on menu options.  From this coding the novice can learn to
program in Asyst.

    This is a bit convuluted.  If you want something more on Asyst I could
send a better description.

R.S. Neuman - Note I have no connection with Asyst other than using the
package.

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

Date: Mon, 18 Dec 89 13:00:02 EST
From: "Jimmy Law" <PHYJLAW%UOGUELPH.bitnet@ugw.utcs.utoronto.ca>
Subject: Drive A disabled

Our Library uses XT clones with the drive A: disabled for hard disk access
& CD ROM access to the LIB Catalogue.  This is done by plugging in a 2764
EPROM on the motherboard.

They buy the machines/proms from:
Computer Hardware Services
291 Woodlawn Rd W
Unit B4
Guelph Ont Canada N1H 7L6
tel(519)836-7754

There is no PROMS yet for AT style machines.

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

Date: Mon, 18 Dec 1989 08:25 EST
From: Norman Walsh <NORM%IONAACAD.BITNET@CUNYVM.CUNY.EDU>
Subject: Numerical Methods in Pascal

On Pascal and Matrices:

You might want to look into the Turbo Pascal Numerical Methods toolbox.  I
think it had some stuff for matrices.

                                                         ndw

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

Date: Mon, 18 Dec 1989 08:25 EST
From: Norman Walsh <NORM%IONAACAD.BITNET@CUNYVM.CUNY.EDU>
Subject: Standing PS/2s on End

Regarding PS/2 Model 70's on end:

Mike, We've had our 70's on their sides almost since we got them, never a
problem...yet :).

                                                        ndw

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

Date: Mon Dec 18 12:12:58 1989
From: microsoft!toddw@beaver.cs.washington.edu
Subject: Using MS C for ROMable code

|>From: Guy Sirton <MLSIRTON%WEIZMANN.BITNET@CUNYVM.CUNY.EDU>
|
|I need to use the Microsoft C compiler to create ROM code for an embedded
|controller based on the 80186.
|
|I have a copy of a startup routine for ROM (which is from the Microsoft
|Systems Journal, I think) but I need some help with actually making it
|work.
|
|The code I have is probably taken from a complete article on the subject
|and if anyone could direct me to this article I'd be very grateful.  Also,
|I'd like to hear from anyone who has experience with doing this stuff and
|can help me a little.

The article is in the Nov. 1988, vol 3 #6 of microsoft systems journal.
You can order the back issue by mailing $5.00 check/visa/mc/amex to:

MICROSOFT SYSTEMS JOURNAL
666 Third Avenue, 16th Floor
New York, NY  10017

specify ups or us mail shipping

also, if you want expanded information, Paul Chien of systems and software
has put together a great book (70pp) entitled "Writing ROMable Code in
Microsoft C" that is available from systems and software:

Systems and Software INC
18012 Cowan, Suit 100
Irvine, CA 92714-6809

phone   714 833 1700
fax     714 833 1900
bbs     714 833 8152

The book has been recently revised and is a superset of the systems
journal article.  We at Microsoft work closely with systems and software
to help keep their product and information accurate and up to date.

Thanks,
Todd Warren
Program Manager-Microsoft C
(uw-beaver!microsoft!toddw)

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

Date: Mon Dec 18 12:13:39 GMT 1989
From: Mike O'Carroll <lena!mike@relay.EU.net>
Subject: Overlays in C or Using Extended Memory and C

I mentioned a way of doing this a few digests back.  We use plink86, from
Phoenix Technologies.  This works with most "well-behaved" C programs - it
supports Microsoft and Lattice and some others.  You can overlay without
prior arrangement in the C code - i.e. you can take an unoverlayed program
and overlay it without recompiling.

Problem areas are things like setjmp(), longjmp(), especially if you do a
long jump on receipt of ctrl-break for example.  The point is that you
could vector into a function which is non-resident.  There are ways around
even this problem, but some thought is required :-)

The linker understands extended memory;  you can arrange for some overlays
to reside here, thus speeding up reloading considerably.  As with all
these things, the hardest bit is deciding what to overlay with what to
minimise inefficiencies.

This mail comes to you via "mush", a mail user's shell.  I have made a Dos
port which uses overlays and it's been in daily use now for many months.
I've also been involved in a large real-time project which incorporates
Windows for C and a multi-tasking executive (AMX), and the overlaying
works fine here too, so it must be decent code :-)

I have no financial interests in any of the above products :-(

Mike O'Carroll, Microsystems Unit, University of Leeds, LS2 9JT, UK
E-mail: @ukc.ac.uk:mike@ee.leeds.ac.uk
UUCP:   ...!mcvax!ukc!lena!mike or mike@lena.uucp

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

Date: Mon Dec 18 10:38:41 1989
From: microsoft!lisawi@beaver.cs.washington.edu
Subject: QC 1.01 bug ? (fixed in 2.0?)

Thanks for the problem report!  The problem with the -Ol switch was fixed
in QC 2.0.

Lisa Wissner
Microsoft
QuickC Program Manager

[See? They do listen!]

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

Date: Mon, 18 Dec 89 13:02:54 CST
From: "Lee Schneider" <MATHPG2@UMCVMB.MISSOURI.EDU>
Subject: Rich Text Format (RTF) doc

In Info-IBMPC V89N119 Jeff Sicherman (JAJZ801@CALSTATE.BITNET) writes:

>  Can any one direct me to a definition of Rich Text Format (RTF), the
>interchange format for microsoft word processing documents. I have tried a
>number of their support lines/departments with no success. I have noticed
>some reference in the second volume of the 'file Formats' series of books
>but it doesnt appear comprehensive or up to date (with word version 5.0).

A file recently uploaded to the Info-Mac archives at
SUMEX-AIM.STANFORD.EDU is supposed to contain this information.  The full
path and name for this is:

     info-mac/misc/microsoft-rich-text-format.hqx

and is available by anonymous ftp.

Since this file is in the Macintosh HQX format, it may be undecipherable
in its current form to those people without access to a Macintosh. I can
convert it to some other form and send it out to another archive
(SIMTEL20?) if the original poster or anyone else would find this helpful.

Regards,

Lee Schneider
Department of Mathematics
University of Missouri-Columbia
MATHPG2@UMCVMB.BITNET or MATHPG2@UMCVMB.MISSOURI.EDU

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

Date: Thu, 28 Dec 89 15:56:10 BST
From: Gregory Hicks <ghicks@wsmr-simtel20.army.mil>
Subject: BIOS Timer Services and Interrupt Driver Async I/O

What with the rash of requests for ways to make the DOS timer more
accurate as well as a few queries about COM ports, I thought it time to
resurrect this message from a few years ago.  The entire text of the
original message can be found in file PD1:<MSDOS.SYSUTL>TIMER.ASM.

Date: Wednesday, 21 Aug 1985 16:37:04-PDT
From: mitton%beorn.DEC@decwrl.ARPA

Everything You wanted to know about PC Async Comm, but were afraid to ask....

A few months back I sent in a note asking for help about how to do
reliable interrupt driven communications using the IBM PC async comm port.
Now I know more than you may want to hear.  But I would like to share my
knowledge with the net to help out the adventurous, and expose some of the
problems that make it so difficult, so that these situations might not get
designed into to future products.  Scattered though out this message are
some of my own editorial comments in [square brackets].

- The UART used in the IBM PC family is the Western Digital 8250 and
friends (recently the National Semi 8250B, and the 14650 in the AT).  This
UART is single buffered.  There is only one receive character buffer to
store a byte in while the next byte is being assembled in the shift
register.  This means that you have only ONE CHARACTER TIME (on average)
to process that byte before the next one wipes it out (an overrun).

I bet you thought your AT adapter card or AST Advantage has an 8250B on
it?  The IBM PC-AT Tech Reference manual doesn't say what the chip is
(unlike the XT) or that it is different until you look at the schematic.
Surprise!  Look again, its a NS 14650.  National describes the chip on the
same sheet as the 8250B.  It seems to be functionally identical, but with
a faster access time.  Unfortunately, it is still not fast enough for the
'286.  Read IBM's ISV notes on avoiding doing back-to-back I/O references
to the same chip so as to not violate chip access speeds.

[ Modern UARTs should have at least a 4 character FIFO.  This
[ makes for less interrupt latency problems and more reliability.  Also
[ better baud rate generators and dividers are available these days.  19.2k
[ should be easily and accurately supported.]

- Next I did the following rough instruction budget.  An IBM PC-XT is an
8088 running at 4.77Mhz,

                        1 clock cycle =  210ns
   1 memory reference = 4 clock cycles =  840ns
1 average instruction = 4 memory refs  = 3360ns 

1 second / ( 3360ns / avg ins)  ~= 297,619 avg ins/sec

 9600 bps = 960 cps

(297,619 avg ins/sec) / 960 cps  =  310 avg ins / char

Now that's only for half duplex!  Halve that for full duplex load.  And
don't forgot to subtract for the time PC memory refresh uses.  It becomes
rather clear that the interrupt service code path must be as short as
possible.  At least less than 150 instructions average.

Now you may want to quibble with my assumption of 4 clocks/average
instruction.  Truth be known, I made it up.  Everything I see indicates
that on an 8088 the average is more than that, and knowing that makes this
estimate seem optimistic.

On the AT, things get much better because the 16 bit bus causes more to
happen in fewer cycles.

[ Now do you understand why a FIFO is needed?  My code on a Rainbow (with
[ a 3 char FIFO UART) code was written in C (including interrupt service)
[ and worked fine after I first debugged it]

- Now if this isn't bad enough, lets toss in a interrupt handling problem:
The IBM PC 8259 Interrupt Controller is programmed in the BIOS to be edge-
sensitive.  The 8250 seems to supply edges properly, except when there may
be multiple interrupts to service (ie: a full duplex receive complete and
transmit complete at the same time).  Now this behavior is not documented
on any spec sheet I've seen, (usually because they don't tell you what
happens in this case)  but rumor has it that National changed the 8250B
(and the 14650) so that it does not toggle the interrupt line when
presenting such stacked interrupts.  It is unknown whether the WD 8250
does the same.  But the existence of said crock, has been experimentally
verified many times.  It is discussed thoroughly but sadly inconclusively
in the file EDGES.INT.

[ could someone get the UART people to fess up in writing?]
[ also, tell them not to do it again!]

- Okay, so what do you do?  Well, you have to write your interrupt service
routines as a loop, servicing the UART until all pending interrupts have
been handled and you won't lose an interrupt edge.  The COMPKG2 and the
MIT PC/IP service routines do a good job, but they have some flaws.

  1) They recheck the UART status by reading the LSR at the bottom of the
loop.  Since reading the LSR register will reset any pending receive error
conditions, you could easily lose notification of an overrun, framing, or
parity error.  It is much better to re-read the ISR instead, because it
serializes the the highest priority current status.

  2) You should EOI the 8259 interrupt controller at the beginning or in
the middle of the service loop.  Notice that the 8250 clears the interrupt
condition upon servicing (reading or writing) the appropriate register.
If you EOI afterwards, then there is a window in which an interrupt may
arise from the UART, but get dismissed when you clear the interrupt
controller.

  Another bug to avoid, which I made once myself, is: do not break the
loop in the character processing.  The routine will hang with a unserviced
interrupt pending on the UART and no more edges to trigger the 8259.
(unless you implement the timer described below)

The proper loop as I coded it is as follows:

        send EOI to 8259
loop:
        read IIR
        switch(IIR)
        {
                case NO_INTERRUPT:
                        iret;
                case XMIT_READY:
                        send next char;
                        break;
                case RECV_READY:
                        receive and buffer char;
                        break;
                case LINE_STATUS;
                        record error condition;
                        break;
                case MODEM_STATUS:
                        record state change;
                        break;
        }
        goto loop
                        
Note: - EOI done outside the loop may generate extra nop interrupts, if no
stacked interrupt, but one arrives during a long service path.  An inside
the loop EOI eliminates this but adds more code to the loop.

- Great! so-far-so-good.  What could screw us up?  Well, I forgot to
mention that what I was writing was a device driver and it runs in the
background on the async ports.  Because we are not dealing with a big
system with device allocation concepts, there are all sorts of DOS
programs and utilities that can stomp on your comm port.  The MODE command
will do you in, especially if you forget to take the command out of your
AUTOEXEC [took me a month to figure that one out].  BASICA grabs the comm
port.  Even Symphony thinks that it can grab the comm port for its
terminal emulator, unless you do their not-well documented
re-configuration procedure.

[software writers: please don't assume that the UART is available!]

- Another program that caused us to lose, was PROKEY.  It had hooked on to
Interrupt 1C, the user clock tick handler, which we were using too, and
spent soooo much time on it, that our timing just totally screwed up.
This was finally solved when we fixed another problem below.

[Be careful of doing to much on the clock tick.  It could screw up someone
else.]
        
- One thing that I did to add some robustness to all this (and find some
bugs) was to add a timer scheme.  Essentially, whenever I started a
transmission or reception of a message, I initialized a word to a nonzero
timeout value.  A clock tick routine decremented the cell, if nonzero, and
if it went to zero, reset it and faked an interrupt to the service
routine.  This feature allowed the code to recover (as opposed to hanging
forever) from lost interrupts and errant MODE commands.  Hopefully, this
should never happen.  But it did at first, and a trace of the current
state helped.

[ real disasters give you first hand experience on how to defensively
[ program.]

- Now the device service looks good, but I still am getting overruns at
7200 and 9600.  So I thought some more about where the time goes in the
CPU.  Another way that you lose CPU instructions is to other interrupt
service routines and code sections that disable interrupts.
Unfortunately, unlike a VAX, we don't have the multiple IPL levels to
synchronize CPU threads without shutting out device service.

   In my driver there are 3 levels of synchronization that use interrupt
locking around cross-level queue operations.  Unfortunately, the interrupt
locking queue function was the default even for queue operations in the
same level.  A better analysis of interrupt locking and necessary
synchronization lead to fewer and shorter interrupt disabled code sections
and a much better performance level.  I have now even figured out a better
semaphore interlock with the interrupt service routine that will eliminate
even more interrupt disabled code.

[ Interrupt latency on the 8086 architecture is precious!  You must
[ try to minimize all interrupt disabled code paths.  Another reason to
[ have a FIFO in the UART!]

- Finally, I had done almost all I could think of; I had tweaked the
interrupt service loop, bummed the code paths to a minimum, and was still
getting overruns on the XT.  I still had this feeling that they might be
systematic, so I put a little code in the overrun routine that recorded
the segment and offset of the code interrupted just before the overrun was
serviced.  A higher level monitor printed it out.  I was perplexed because
it was always the same: FE00:FEEA   I had sort of expected to find some
code that had just done a STI, but instead I was staring at the stack
cleanup code for the clock tick service in the ROM BIOS. (below)

FEA5    TIMER_INT PROC FAR
FEA5    FB      STI             ;Interrupts back on
.... push regs, increment DOS time in RAM, turn off floppies...
FEE3    CD1C    INT 1CH         ;Transfer control to a user routine
FEE5    B020    MOV AL,EOI
FEE7    E620    OUT 020H,AL     ;End of interrupt to 8259
FEE9    5A      POP DX
FEEA    58      POP AX
FEEB    1F      POP DS          ;Restore machine state
FEEC    CF      IRET

   Walking back up the code, I don't see anything unusual.  Wait a minute!
Why are we finally EOI'ing the 8259 after the INT 1C, when we STI'ed back
at entry?  Oh, that's to make sure that we don't reenter huh?  Well what
about the 8259 all the time that the INT 1C handlers were running?

   Yes folks, The Single Serializing Priority Interrupt Controller has
been blocked the entire time.  This was preventing any other device
interrupt service during the clock tick handling.  Initially, the 1C
handler is an IRET, and it's okay.  But in practice, my driver and other
things were on there with a substantial total code path, almost
guaranteeing lossage.

   My fix to this BIOS crock, had to replace the entire interrupt 08
routine, since it dispatches the interrupt 1C and has that EOI in the end.
I wrote the following code in MWC assembler that handled problem of
reentrancy as well:

/ Interrupt 08 Handler
/ This routine *REPLACES* the IBM PC BIOS interrupt handler for the
/ clock frequency interrupt.  It *MUST* be loaded into the system before
/ any other Int 08h user.
/ We must replace the BIOS routine because it has a nasty bug in that
/ it does not reset the 8259 Interrupt Controller until the Int 1Ch Handler(s)
/ are done.  This effectively locks interrupts for the entire period.
/ Chaining to the original handler would not work.

[REMAINDER OF TIMER INTERRUPT ROUTINE DELETED.  HOWEVER, IT CAN BE FOUND
AS DESCRIBED EARLIER.  GPH]

This routine also solved the PROKEY problem mentioned above, since I
hooked my driver directly in the clock tick chain before anyone else.  The
4 instructions after T7 can be removed, and this can be used as a general
purpose Int 08 handler replacement.   After installing this, I noticed
that my polygon terminal emulator no longer gets overruns either.

There may be some 1C clock tick users that would be upset by the change,
but I haven't found one yet.  (Even the PC Network tolerates it) Another
way to work around this problem, if you don't need priority over the 1C
handlers, is to hook Int 08, call it and wait for it to return.  There are
probably yet another way around this problem, but this seems the cleanest
to me.

        [DOS needs better clock tick services!]
        [and don't hog them!]

Dave Mitton, DECnet-DOS Development.
Enet: OLORIN::MITTON    
Arpa: mitton%olorin.DEC@decwrl.ARPA
Usenet: decwrl!dec-rhea!dec-olorin!mitton
/opinions expressed here are mine, although DEC might feel likewise/

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

Date: Mon, 18 Dec 89 11:00:44 -0500
From: ajk@mace.cc.purdue.edu (Jeff Boerio)
Subject: Word 5.0, postscript, Vax, and PrintServer40

In comp.sys.ibm.pc.digest you write:

>        Has anyone used Word 5.0 on the IBM PC to produce a postscript
>file and then uploaded it to a VAX for printing on a PrintServer40?  I
>have tried but Word seems to produce some variant of postscript that the
>PrintServer40 does not understand.  In the Mac world, I am able to upload
>postscript files and then print them with a "prep" file to the
>PrintServer40.  Maybe I need a "prep" file for Word produced postscript
>files.  Any ideas?

The Word version of postscript is setup to be included with a POSTSCRP.INI
file, which initializes the laser printer.  you will need thi in order to
print on your laser printer.  However, it will need to be modified
slightly.  I will be more than happy to send you the modified printer
driver if you need it.  Just let me know.  BTW, my print driver is for an
Apple Laserwriter II.

>P.P.S.  Isn't it amazing how postscript is not postscript depending on
>who's postscript we are talking about?  Wouldn't it be nice if computer
>manufacturer's could do things in a STANDARD way!@#$#@$#@$.

I agree :-)

     - Jeff

--
Jeff Boerio                     : Purdue University Dept. of Computer Science
ajk@mace.cc.purdue.edu          : Purdue University Computing Center Volunteer
boerio@orchestra.ecn.purdue.edu : Purdue University ECN Student Programmer

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

Date: Mon,  18 Dec 89 09:25:03 EST
From: davidsen@crdos1.crd.ge.com
Subject: Disabling Drive A: for security

In article <8912172025.AA20910@ucbvax.Berkeley.EDU> you write:
| From: TF402_ET@buenga.BU.EDU
| 
| Has anyone experimented with disabling drive A: (via DIP switches or the 
| setup program) to prevent booting from it, but using driver.sys to re-
| enable it???  

  If you can live with one disk drive you can make the only drive B:. On
some setup programs you can mistype the A: drive, such as call it 1.44
when it's 1.2, and the system will boot off the hard drive. On other
systemes, though, the system will just not boot if there is a disk in the
drive. I guess that's good enough.

  You should be able to reset the drive params via driver.sys, but I would
rather call my drive B: and not even have an A: drive.

bill davidsen   (davidsen@crdos1.crd.GE.COM -or- uunet!crdgw1!crdos1!davidsen)
"The world is filled with fools. They blindly follow their so-called
'reason' in the face of the church and common sense. Any fool can see
that the world is flat!" - anon

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

Date: Mon, 18 Dec 89 09:18 N
From: VERMEIRE%CDR.RUG.AC.BE@CUNYVM.CUNY.EDU
Subject: 3270 EMULATOR

Is there a source available for a 3270-EMULATION, without any protocol,
running on the PC, not on a server.

How can I know if such a file exists and how can I get it.  I only can
receive by mail.

Many thanks in advance.

earn-adres: VERMEIRE@CDR.RUG.AC.BE

            v.vermeire
            State university of Ghent
            BELGIUM

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

Date: Sun, 17 Dec 89 12:05:48 EST
From: RENNEY THOMAS <V4062%TEMPLEVM.BITNET@CORNELLC.cit.cornell.edu>
Subject: 80386 Problems?

I was recently going to buy an 80386 machine, but then I found out that it
had problems locking up when performing a certain instruction in the 386
instruction set.  I also heard that it has problems with when operating in
a networking environment.  Does anyone know any thing about this 'bug'?
Is this generic to the 80386?

I would apreciate if anyone can give me more info on this.

thanks in advance,Renney

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

Date: Sun, 17 Dec 89 12:20:52 EST
From: Renney Thomas  <V4062%TEMPLEVM.BITNET@CORNELLC.cit.cornell.edu>
Subject: Reported new 80386 clone

The Japanese are coming out with a 386 clone. It is supposed to be faster
and cheaper. It uses P.L.A technology to emulate the 386 and the 68000
chip. It was designed by the same Japanese guy that designed the 4004 and
the 8008 and then the Z-80 chip. Now he went to Japan and started the
company to manufacture these 386 clones. This should keep intel from
abusing its monopoly advantages, just like ibm clones put IBM in its
place. Does ani body know any developments on this 386 clone known as the
vm8600?

thanks Renney Thomas

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

Date: Mon, 18 Dec 89 14:32:26 EST
From: Jeff_Raynor@um.cc.umich.edu
Subject: DOS 4 and large hard disks

I know DOS 4 has eliminated the 32 MB partition limit, but is there still
a limit of 1024 cylinders per physical drive?

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

Date: Sun, 17 Dec 89 23:24 +0200
From: Urban_Janlert_Socialmedicin%norrkom.umu.se@UBVM.cc.buffalo.edu
Subject: WordPerfect and the Toshiba T3200 Problems

I have a problem with Word Perfect on my Toshiba T3200. I can only get
boldface text on the screen (a type which I dislike and which makes the
text hard to read). Only thru manipulation with some resident programs
during the WP- session (e.g. running Graph-In-The-Box) I can get my
"normal", lean-faced text. Is there anybode who has met this problem, and
who has a simple solution? My WP agent has not.

Urban_Janlert_Socialmedicin@NORRKOM.UMU.SE

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

Date: Mon, 18 Dec 89 14:29 -0300
From: UESP%BRFAPESP.BITNET@UICVM.uic.edu
Subject: MS Mouse Emulator

    I'm going to write a MicroSoft Mouse emulator program. The program
should be able to emulate the MicroSoft Mouse with the keyboard.

    However I lack important information regarding the MOUSE.COM program,
and what it does .I'm aware that it installs some kind of int service that
will read the mouse commands from the COM port, but I want to know exactly
what INTs it catches and what services it provides for the callers, so
that I can "emulate" these services with a different device (the
keyboard).

    And, of course, if anyone has done a similar program or knows of a PD
version, it would save me a lot of time...

    Thank to you all people, in advance,

      Marcos Kawazoe Aguilera
      Bitnet: UESP@BRFAPESP.BITNET
      ANSP:   UESP@FPSP.FAPESP.ANSP.BR
      HepNet: FPSP::UESP

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

Date: 18 Dec 89 10:02 GMT+0100
From: wolfgang wuerz <wuerz-w%vax.hmi.dbp.de@RELAY.CS.NET>
Subject: ASCII => PostScript Conversion

Has anyone an ASCII -> PostScript converter? I want to print ASCII-files
on our PostScript-printer and the sample program in the Adobe-manual is a
little bit to simple.

Many thanks in advance, Wolfgang Wuerz <wuerz-w@vax.hmi.dbp.de>

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

End of Info-IBMPC Digest
************************
-------