[comp.sys.ibm.pc.digest] Info-IBMPC Digest V6 #50

Info-IBMPC@C.ISI.EDU (Info-IBMPC Digest) (07/07/87)

Info-IBMPC Digest       Monday, 6 July 1987      Volume 6 : Issue 50

This Week's Editor: Billy Brackenridge

Today's Topics:

		     Good news not entirely true
		      More on good news bad news
		     Turbo C Floating Point Patch
			    INTEL-310 ABR
		   IBM Graphics on an Epson clone.
			       freemacs
	 Undocumented Switches in 'cl.exe' for MS-C Ver 4.00
			 IBMCACHE Benchmarks
       Adaptec ACB 2070A rll Disk Controller Suffers Heatstroke
		 Tutorial Software like Show Partner
		 Direct Manipulation of Serial Ports
				KBEDIT
Today's Queries:
		     External Tape Drive Back-up
			     PC/XT Clones
			     Applewriter
			       IBM H14
			 High-Res AT Graphics
		  Need help with MicroSoft Languages
		      Microsoft Pascal Compiler
		  Widely Used Tools on Various Hosts
		ps2/50 & external 5.25 drive (2 Msgs.)
		      Turbo Pascal and Hercules
			 Turbo C and CodeView
			Appointment Calendars
			   Turbo Pascal 4.0
		     Book Wanted on File Formats
			     Interrupt 17

      INFO-IBMPC BBS Phone Numbers: (213)827-2635 (213)827-2515

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


Date: Mon 29 Jun 87 09:36:29-EDT
From: Frank da Cruz <SY.FDC@CU20B.COLUMBIA.EDU>
Subject: Good news not entirely true
To: brackenridge@C.ISI.EDU

I think the announcement in the digest should have been phrased that we agree
to take it over IF we get the funding, at least for the first year.  With the
staff shortages here, we can't possibly take on that kind of responsibility
without being able to add a position, which can't be done without funding up
front.  The wording of the announcement won't have a good effect at Columbia,
and outside Columbia it'll make people think the problem has taken care of
itself.  Maybe a clarification in the next digest?  Thanks!  - Frank

[I will continue the digest till September. Dick Gillmann and, hopefully,
Koji Okazaki will help out while I am gone at the end of July. This gives us
a little more time to look for money for Columbia. -wab]

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


Date: Mon 29 Jun 87 10:04:06-EDT
From: Frank da Cruz <SY.FDC@CU20B.COLUMBIA.EDU>
Subject: More on good news bad news
To: brackenridge@C.ISI.EDU


My boss told me that you should also say that although funding is the
primary consideration, we also can't formally accept until the University
agrees to create the position.  Also, people probably shouldn't start sending
checks quite yet.  Instead, they should contact me -- I'll talk to them, and
then get back to them later after things have gelled a bit more.  So it's more
like a pledge drive.  Sort of a chicken-&-egg situation: can't create the job
till we have enough pledges, but can't take money till we know we can create
the job.  - Frank


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

Date: Fri, 26 Jun 87 17:09:40 edt
From: John P. Nelson <panda!teddy!jpn@talcott.harvard.edu>
Subject: Turbo C Floating Point Patch
Organization: GenRad, Inc., Concord, Mass.


Here are all of the patches to turboC currently available on CompuServe:
(Four in all, three official patches, and one replacement function source).

 - john nelson



PRODUCT : TURBO C 						NUMBER : 356
VERSION : 1.0						
     OS : PC-DOS
   DATE : May 28, 1987					  	PAGE : 1/1

 TITLE  : -G PATCH



     The following patch solves a problem in Turbo C where the
     compiler can run out of memory compiling a large switch
     statement if the -G option is used.

     To apply this patch, you will need to use the DOS utility DEBUG.COM.
     You may obtain a copy of DEBUG.COM from one of your original PC-DOS
     or  MS-DOS diskettes.

     NOTE:   1. Do not patch your original Turbo C disk, use a working or
                backup copy of TCC.EXE and TC.EXE for this patch.

             2. DEBUG is not sensitive to upper and lower case.  All ad-
                dresses are listed in upper case for ease of readability.

             3. XXXX,YYYY,ZZZZ are hexadecimal digits returned by DEBUG.
                You must  replace these  digits accordingly when  typing
                in your commands.

             4. While in DEBUG, the prompt will appear as a dash (-).

             5. If you do not receive the appropriate response,press "q"
                followed by  <Enter>,  to exit  from DEBUG.   Check your
                version number and, if correct, try again.

             6. TCC.EXE and TC.EXE will not fit together onto a 360K disk.
                To patch both  programs on a floppy disk,  you may need to
                copy  TCC.EXE and DEBUG.COM  onto one disk and perform the
                patch.  Save the patched version of TCC.EXE to another
                disk.  Repeat the same steps using TC.EXE.

     At the  DOS prompt,  type the  following  information exactly as it
     appears (Conclude each line by pressing <Enter>).


                             Patch for TCC.EXE

     Type the following:          You will see:

     ren tcc.exe tcc.xex<Enter>   A>

     debug tcc.xex<Enter>         -

     r<Enter>                     ... CS=XXXX ...
                                  -

     h XXXX 1635<Enter>           YYYY  ZZZZ
                                  -

     e YYYY:7E0<Enter>            YYYY:07E0   7C.

     72<Enter>                    YYYY:07E0   7C.72
                                  -

     w<Enter>                     Writing 2948A bytes
                                  -

     q<Enter>                     A>

     ren tcc.xex tcc.exe<Enter>   A>


                             Patch for TC.EXE

     Type the following:          You will see:

     ren tc.exe tc.xex<Enter>     A>

     debug tc.xex<Enter>          -

     r<Enter>                     ... CS=XXXX ...
                                  -

     h XXXX 1F84<Enter>           YYYY  ZZZZ
                                  -

     e YYYY:7E1<Enter>            YYYY:07E1   7C.

     72<Enter>                    YYYY:07E1   7C.72
                                  -

     w<Enter>                     Writing 38759 bytes
                                  -

     q<Enter>                     A>

     ren tc.xex tc.exe<Enter>     A>



PRODUCT : TURBO C
VERSION : 1.0
     OS : PC-DOS
   DATE : MAY 20, 1987                                       PAGE : 1/2

  TITLE : FLOATING POINT EVALUATION - PATCH



     The following patch solves a problem with dividing floating point
     evaluation.

     To apply this patch, you will need to use the DOS utility DEBUG.COM.
     You may obtain a copy of DEBUG.COM from one of your original PC-DOS
     or  MS-DOS diskettes.

     NOTE: See note from previous patch

PRODUCT : TURBO C
VERSION : 1.0
     OS : PC-DOS
   DATE : MAY 20, 1987                                       PAGE : 2/2
  TITLE : DIVISION OF CONSTANTS - PATCH

                         Patch for TCC.EXE

     Type the following:                      You will see:

     ren tcc.exe tcc.xex<Enter>               A>

     debug tcc.xex<Enter>                     -

     r<Enter>                                 ... CS=XXXX ...
                                              -

     h XXXX 2420<Enter>                       YYYY  ZZZZ
                                              -

     e YYYY:369<Enter>                        YYYY:0369   0A.

     6<Enter>                                 -

     e YYYY:36F<Enter>                        YYYY:036F   06.

     A<Enter>                                 -

     w<Enter>                                 Writing 2948A bytes

     q<Enter>                                 A>

     ren tcc.xex tcc.exe<Enter>

                             Patch for TC.EXE

     Type the following:                      You will see:

     ren tc.exe tc.xex<Enter>                 A>

     debug tc.xex<Enter>                      -

     r<Enter>                                 ... CS=XXXX ...
                                              -

     h XXXX 2D01<Enter>                       YYYY  ZZZZ
                                              -

     e YYYY:35E<Enter>                        YYYY:035E   0A.

     6<Enter>                                 -

     e YYYY:364<Enter>                        YYYY:0364   06.

     A<Enter>                                 -

     w<Enter>                                 Writing 38759 bytes

     q<Enter>                                 A>

     ren tc.xex tc.exe<Enter>


PRODUCT : TURBO C 						NUMBER : 355
VERSION : 1.0						
     OS : PC-DOS
   DATE : May 28, 1987					  	PAGE : 1/1

 TITLE  : STRUCTURE PUSH FLOATING POINT PATCH



     The following patch solves a problem with pushing structures
     with floating point elements onto the stack in Turbo C.

     To apply this patch, you will need to use the DOS utility DEBUG.COM.
     You may obtain a copy of DEBUG.COM from one of your original PC-DOS
     or  MS-DOS diskettes.

     NOTE: See note from previous patch

     At the  DOS prompt,  type the  following  information exactly as it
     appears (Conclude each line by pressing <Enter>).


                             Patch for TCC.EXE

     Type the following:          You will see:

     ren tcc.exe tcc.xex<Enter>   A>

     debug tcc.xex<Enter>         -

     r<Enter>                     ... CS=XXXX ...
                                  -

     h XXXX 1C0C<Enter>           YYYY  ZZZZ
                                  -

     e YYYY:2FAD<Enter>           YYYY:2FAD   25.

     A9<Space>                    YYYY:2FAD   25.A9   01.
     <Space>                      YYYY:2FAD   25.A9   01.     00.
     <Space>                      YYYY:2FB0   81.
     74<Space>                    YYYY:2FB0   81.74   E2.
     0B<Space>                    YYYY:2FB0   81.74   E2.0B   00.
     40<Space>                    YYYY:2FB0   81.74   E2.0B   00.40   00.
     26<Space>                    YYYY:2FB0   81.74   E2.0B   00.40   00.26
                                              0B.
     83<Space>                    YYYY:2FB0   81.74   E2.0B   00.40   00.26
                                              0B.83   D0.
     47<Space>                    YYYY:2FB0   81.74   E2.0B   00.40   00.26
                                              0B.83   D0.47   74.
     6<Space>                     YYYY:2FB0   81.74   E2.0B   00.40   00.26
                                              0B.83   D0.47   74.6    0A.
     1<Space>                     YYYY:2FB8   26.
     <Space>                      YYYY:2FB8   26.     83.
     <Space>                      YYYY:2FB8   26.     83.     47.
     57<Space>                    YYYY:2FB8   26.     83.     47.57   06.
     8<Space>                     YYYY:2FB8   26.     83.     47.57   06.8
                                              01.
     0<Space>                     YYYY:2FB8   26.     83.     47.57   06.8
                                              01.00   26.
     29<Space>                    YYYY:2FB8   26.     83.     47.57   06.8
                                              01.00   26.29   83.
     6<Space>                     YYYY:2FB8   26.     83.     47.57   06.8
                                              01.00   26.29   83.6    57.
     54<Space>                    YYYY:2FC0   08.
     74<Space>                    YYYY:2FC0   08.74   00.
     90<Enter>                    YYYY:2FC0   08.74   00.90
                                  -

     w<Enter>                     Writing 2948A bytes
                                  -

     q<Enter>                     A>

     ren tcc.xex tcc.exe<Enter>   A>


                             Patch for TC.EXE

     Type the following:          You will see:

     ren tc.exe tc.xex<Enter>     A>

     debug tc.xex<Enter>          -

     r<Enter>                     ... CS=XXXX ...
                                  -

     h XXXX 2557<Enter>           YYYY  ZZZZ
                                  -

     e YYYY:2FA4<Enter>           YYYY:2FA4   25.

     A9<Space>                    YYYY:2FA4   25.A9   01.
     <Space>                      YYYY:2FA4   25.A9   01.     00.
     <Space>                      YYYY:2FA4   25.A9   01.     00.     81.
     74<Space>                    YYYY:2FA8   E2.
     0B<Space>                    YYYY:2FA8   E2.0B   00.
     40<Space>                    YYYY:2FA8   E2.0B   00.40   00.
     26<Space>                    YYYY:2FA8   E2.0B   00.40   00.26   0B.
     83<Space>                    YYYY:2FA8   E2.0B   00.40   00.26   0B.83
                                              D0.
     47<Space>                    YYYY:2FA8   E2.0B   00.40   00.26   0B.83
                                              D0.47   74.
     6<Space>                     YYYY:2FA8   E2.0B   00.40   00.26   0B.83
                                              D0.47   74.6    0A.
     1<Space>                     YYYY:2FA8   E2.0B   00.40   00.26   0B.83
                                              D0.47   74.6    0A.1    26.
     <Space>                      YYYY:2FB0   83.
     <Space>                      YYYY:2FB0   83.     47.
     57<Space>                    YYYY:2FB0   83.     47.57   06.8    26.
     8<Space>                     YYYY:2FB0   83.     47.57   06.8    01.
     0<Space>                     YYYY:2FB0   83.     47.57   06.8    01.00
                                              26.
     29<Space>                    YYYY:2FB0   83.     47.57   06.8    01.00
                                              26.29   83.
     6<Space>                     YYYY:2FB0   83.     47.57   06.8    01.00
                                              26.29   83.6    57.6    08.
     C<Space>                     YYYY:2FB0   83.     47.57   06.8    01.00
                                              26.29   83.6    57.C    08.
     A3<Space>                    YYYY:2FB8   00.
     90<Enter>                    YYYY:2FB8   00.90
                                  -

     w<Enter>                     Writing 38759 bytes
                                  -

     q<Enter>                     A>

     ren tc.xex tc.exe<Enter>     A>



#: 83131 S11/Turbo C
    07-Jun-87  04:44:44
Sb: #83081-TURBO C BUG
Fm: Brad Paulsen (PROGSIG) 76703,1005
To: WALT HOWARD 73240,142

Walt,

I'm not the sysop (here at least - <grin>), but I think I can step in here and
tell you that this problem has already been reported and (I believe)
acknowledged by Borland.

While there is no _official_ fix available yet (at least there was nothing in
DL11 as of about 1 hour ago), you're welcome to use the following until one is
available:


char *strstr (keystr, targetstr)
char *keystr, *targetstr;

/*
 Features of Operation:

 -  If keystr or targetstr is NULL, a NULL pointer (failure) is returned
    (i.e., NULL pointer input is handled gracefully).

 -  If keystr or targetstr contains only a NULL character, a NULL pointer
    (failure) is returned (i.e., NULL's are not considered characters for
    the purpose of this function -- they are considered string terminators).

 -  The search terminates successfully when '\0' of keystr is encountered
    before (or at the same time) as '\0' of targetstr.  The search terminates
    unsuccessfully when '\0' of targetstr is reached before '\0' of keystr.
*/

{
 register unsigned short i;

 if (keystr == (char *) 0 || targetstr == (char *) 0)
   return ((char *) 0);

 if (*keystr == '\0' || *targetstr == '\0')
   return ((char *) 0);

 do {
   for (i = 0; *(keystr+i) && (*(keystr+i) == *(targetstr+i)); i++);
   if ( !(*(keystr+i)) )
     return (targetstr);
 } while (*(targetstr++));

 return ((char *) 0);

}

As you can see, this replacement handles NULL pointer input gracefully, is
completely iterative and uses no calls to other library routines (for speed).
It's also 4 bytes _shorter_ than the original Borland version.  And, as far as
I've been able to determine, it works!

Brad

Read action: 

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


From: ism780c!mikep@sdcsvax.ucsd.edu (Michael A. Petonic)
Subject: INTEL-310 ABR
Date: 27 Jun 87 01:50:59 GMT
Organization: Interactive Systems Corp., Santa Monica CA

>Date: 23 Jun 87 07:59:39 EDT
>From: dicke @ belvoir-mail1.arpa
>Subject: INTEL-310 ABR
>
>
>Has anyone out there been able to get their Intel-310 to autobaud detect?
>Our 310's are the only systems on our network that don't have this cap-
>ability, and my Intel systems administrator says ABR isn't available. Is
>this really true?

There is a way to get autobaud detection, but only between 300-600-1200
baud.  I think the setting is 3 in the /etc/ttys file.  I'm not so
sure, so consult the getty entry in the Ref. Guide (or login, but
I forget which).  I think this should have been posted to
comp.sys.intel instead of the ibmpc group.

MikeP   {seismo|sdcrdcf}!ism780c!mikep "Some of my best friends are Bigots..."

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


Date:         Sat, 27 Jun 87 10:40:25 PLT
From:         "Glenn L. Austin" <AUSTIN%WSUVM1.BITNET@wiscvm.wisc.edu>
Subject: IBM Graphics on an Epson clone.

>I have a Star Micronics Gemmini 10X printer running from a PC clone.
>When I use graphics programs requiring Epson compatibility (the Gemini is), I
>get the graphics characters okay, except a blank space is printed between
>each line of output.  I have tried setting the line spacing to 8 lpi to
>no avail.  The graphs are correct but elongated with empty spaces.  Is there
>a fix for this--short of buying a new printer?

Check the command for variable line feeds. Either this command is not
implemented (doubtful, since changing to 8 lpi didn't work), or it doesn't
set spacing to n/72".

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


Date: Wednesday, 24 June 1987  13:29-MDT
From: Russell Nelson <bh01%CLUTX.BITNET@WISCVM.WISC.EDU>
To: kpetersen@SIMTEL20.ARPA
Subject:   freemacs


There is a new release of Freemacs, the programmable editor.  It can
be found in pd:<msdos.text-editors> on simtel20:

Filename			Type	 Bytes	 CRC

Directory PD:<MSDOS.TEXT-EDITOR>
EMACS14A.ARC.1			BINARY	176128  31B6H

-russ
bh01%CLUTX.BITNET@WISCVM.ARPA

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

From: srp@ethz.UUCP (Scott Presnell)
Subject: Undocumented Switches in 'cl.exe' for MS-C Ver 4.00
Date: 26 Jun 87 10:36:35 GMT
Organization: Chem. Dept., Swiss Federal Inst. of Tech. (ETH-Zurich)


For your amusement, here is a listing of options available in cl.exe for MSC
4.00, the documented options were added for completeness. The undocumented
options were 'discovered' using the Norton Utilities, and their functions
determined "on a rainy day". Hope someone will find them useful. Please
feel free to correct me or fill in the blanks.

Go wild son ...

--------

Listing of options in 'cl' of MS-C Ver. 4.00,  documented and undocumented.

	Switch		Documented		Function
	-c		yes
	-d		no			Display passes as they happen.
	-dos		Xenix
	-i		no
	-imp		no
	-n		no
	-s		no
	-k		no			Keep temp files (quiet).
	-link		yes
	-l*		no			False friend, see below.
	-m#		no			Make .map file.
	-nl#		no	
	-nologo		no			Don't print logo on startup.
	-pack		yes
	-pathgen	no
	-o#		no			Name the output (exe) file.
	-p		no			Gives warning about no -Gp.
	-pa#		no
	-pl#		no			Supply alternate linker.
	-p0#		no			Supply alternate pass 0 cmd.
	-p1#		no			Supply alternate pass 1 cmd.
	-p2#		no			Supply alternate pass 2 cmd.
	-p3#		no			Supply alternate pass 3 cmd.
	-pL#		no
	-u		yes
	-v#		no
	-w		yes
	-z		no			Print passes (do not compile).

	-A*		yes
	-Ba#		no
	-Bd		no			Print passes as they happen.
	-Bk		no			Keep temp files (verbose).
	-Bl#		no			Supply alternate linker.
	-Bz		no			Print passes (do not compile).
	-B0#		no			Supply alternate pass 0 cmd.
	-B1#		no			Supply alternate pass 1 cmd.
	-B2#		no			Supply alternate pass 2 cmd.
	-B3#		no			Supply alternate pass 3 cmd.
	-BL#		no
	-C		yes
	-CSOFF		no
	-D#		yes
	-E		yes
	-EP		yes
	-FP*		yes
	-Fa(*)		yes
	-Fe*		yes
	-Fc(*)		yes
	-Fl(*)		yes
	-Fs(*)		yes
	-Fo*		yes
	-Fm(*)		yes
	-Gt(*)		yes
	-G*		yes
	-HELP		yes
	-H#		yes
	-I#		yes
	-K		no			Keep temp files (see -k).
	-J		yes
	-L		no			Make .cod file only.
	-M#		Xenix			See pg 298 MS-C Users Guide.
	-ND#		yes
	-NM#		yes
	-NT#		yes
	-O(*)		yes
	-P		yes
	-PLM		no			_main & exit unresolved.
	-PLMF		no			no default lib search.
	-PLMN		no			-PLMF + something else?
	-S		no			Make .asm file only.
	-U#		yes
	-V#		yes
	-W#		yes
	-X		yes
	-Z*		yes

*, # -- symbols used in the cl.exe string formats. Usually indicates
something further needs to be specified.

Favorite Undocumented Option: -nologo (makes my error.log files much
smaller).

N.B.: -l does not act like -l in 'ld' on UNIX systems. 'Cl' just seems
to chop off the -l and treat the rest like an object file to be linked.

Note undocumented 'cc/ld' compatible options, -o, -S, -B?, -O.

I would suspect that -Ba#, -pa# would allow an alternate assembler,
but 'cl' doesn't seem to be able to call 'masm'.

Any one got any good ideas about what -pathgen might do?

Regards,

-------
Scott Presnell 						Organic Chemistry
Swiss Federal Institute of Technology  (ETH-Zentrum)
CH-8092 Zurich, Switzerland.
uucp:seismo!mcvax!cernvax!ethz!srp (srp@ethz.uucp); bitnet:Benner@CZHETH5A
"... I dunno, maybe it was Ewe-tah ..."

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


Date: Tue 30 Jun 87 14:19:44-PDT
From: <Found under a Rock>
Subject: IBMCACHE Benchmarks



I recently acquired a copy of the disk caching program that comes
with the new IBM PCs. I tested it with image processing in mind by
using it with the DOS COPY program and an automatic contrast
enhancement program on a 800 line by 800 byte image. The
stretch program sequentially reads every tenth line the input image
to acquire a histogram. It then reads a line of the input, does a
table look up for each pixel in the line, and writes an output line.
It cycles through this for each line. I initially assumed that a
disk caching program wouldn't help performance much for sequential
processing, but my tests indicate this is not true. Performance can
be doubled.  The PC used was a PC-AT clone running at 8Mhz 0 wait
states. The disk was a Maxtor XT-1140, a 120 megabyte disk
partitioned into 4 roughly equal partitions of 30 Megabytes each
using SPEEDSTOR. The input file was in the first partition and the
output was in the third, requiring the heads to travel roughly half
way across the platters on each head seek. MS-DOS 3.2 was the
operating system. I varied the size of the disk cache, the block size
of the cache, and the number of DOS buffers. The cache program
required about 10k of memory and about 1k more memory for each 100k
of cache.

In the table below I have listed my results. The column marked COPY
is the result of using the DOS COPY command to copy the image. The
STRETCH column is the result of the automatic contrast program. The
FREE MEMORY column lists the number of bytes available for normal DOS
programs after all the device drivers and memory resident programs I
use are loaded. I used the public domain MAP program to obtain this.
The /P column is the value of n I used as explained above. Times are
in m:ss.f format for COPY and m:ss for STRETCH where m is minutes, s
is seconds and f is tenths of a second. The times for COPY are for
the second time the COPY test was run. The second time was always
about a second shorter than the first for unknown reasons.

Results:
buffers=   cache size(k)    /P      COPY    STRETCH    FREE MEMORY
20              0                   0:09.1     3:27        567504
 5              0                   0:08.2     3:27        575424
default      1000         default   0:08.1     1:56        550400
default (1)  1000           1       0:08.4     4:19        576480
default      1000           2       0:08.2     2:43        535424
default      1000           4       0:08.2     1:57        550400
default      1000           8       0:08.1     1:31        556352
20           1000           8       0:07.9     1:25        547376
10           1000           8       0:07.9     1:25        552656
 5           1000           8       0:07.9     1:25        555296
 3           1000           8       0:08.0     1:29        556352
 2           1000           8       0:08.4     1:36        556880
 1           1000           8       0:08.6     1:36        557408

 3           2000           8       0:08.1     1:21        548352
 3           1500           8       0:08.1     1:22        552352
 0 (2)       1000           8       0:08.1     1:28        556352
 3            700           8       0:08.1     1:35        558752
 3            500           8       0:08.1     1:39        560352
 3            200           8       0:08.1     1:41        562752
 3            100           8       0:08.1     1:41        563552

default (3)     0           0                   :56
default (4)     0           0                   :48

Notes:
(1)  I got an error message when I booted saying 1 is not an allowed
value for /P. Everything still ran but like there was no cache
installed.

(2) when I specified buffers=0 in the CONFIG.SYS I got an error
message and the system appeared to allocate the default (3) buffers.

(3) STRETCH from harddisk to ramdisk

(4) STRETCH from ramdisk to ramdisk

Conclusions:

Greatly improved throughput can be obtained with as few as 3 DOS
buffers and a few hundred kilobytes of cache. DOS buffers don't
matter much if a cache is available. Changing from BUFFERS=20 to
BUFFERS=3 and adding a 100k byte cache costs about 4k bytes of memory
in the precious 640k region DOS and your programs live in but can
improve disk speed by a factor of 2. I can actually hear the
difference in the noise my disk makes when the cache is installed. It
runs more quietly with the cache.

Using a ramdisk is much better than using the disk cacheing program, but
does require some intelligence and extra typing on the user's part.


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


Date: Thu, 2 Jul 87 00:28:50 PDT
From: Ya'akov_Miles%UBC.MAILNET@MIT-Multics.ARPA
Subject: Adaptec ACB 2070A rll Disk Controller Suffers Heatstroke

According to the Adaptec ACB-2070A manual (401404-00A/AB/BOFORS)
page 2-1, this RLL disk controller BOARD will only operate within
spec at temperatures below 133 F (55 C).  I have encountered problems
with my IBM-PC/xt clone, when the ambient temperature exceeds that
of a moderately well air-conditioned office, which is not surprising
considering that the temperature inside the computer is typically
about 30-40 F warmer than the outside environment.  I hope that
Adaptec(?)/580 Cottonwood Drive/Milpitas/Ca 95036/USA/(408)946-8600
fix up their products so that we can use them to defend our numerous
Middle Eastern (and other) friends...

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

From: yale!hsi!tankus@seismo.CSS.GOV (Ed Tankus)
Subject: Tutorial Software like Show Partner
Date: 30 Jun 87 11:35:30 GMT
Organization: Health Systems Intl., New Haven, CT

Daniel,

You might want to try to contact Nostradamus, Inc. in Salt Lake City, UT.
They make a software package called Instant Replay II that is a combination
of Dan Bricklin's Demo and Show Partner.

Instant Replay also allows interactive sessions with the subject or student.


Cheers!

  Ed.
    
Net  :  {noao!ihnp4!yale!}!hsi!tankus
Snail:  Health Systems Int'l, 100 Broadway, New Haven, CT 06511
Bell :  (203) 562-2101

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


Date: Fri, 03 Jul 87 13:57:37 PDT
From: Roland McGrath <roland@lbl-rtsg.arpa>
Message-ID: <870703135737.3889@bl-rtsg>
Subject: Direct Manipulation of Serial Ports

Can someone send me a good description of how to directly
manipulate the PC's serial ports?
I gather that this sort of information is supposed
to be in the DOS Technical Reference manual, but
the IBM book I have calling itself by that name
doesn't even list the BIOS calls, much less the
hardware ports.
Is there some other book I should have???

Thanks,
Roland McGrath	(roland@lbl-rtsg.arpa)

P.S.
  I'm not a technical dunce, but I need something that
describes the ports 3F8-3FF (2F8-2FF,3E8-3EF,2E8-2EF), telling
me which are input and which are output and the bits that need
to be set in each byte or word to do various things.

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


Date:  3 Jul 1987 15:34:10 PDT
From:     <KRANENBU%HLERUL5.BITNET@wiscvm.wisc.edu>
Subject:  KBEDIT



KBEDIT provides a larger keyboard buffer and command line editing.
Such programs have been around for some time in various shapes, but I wanted
to have a program that minimally disturbs the system (in terms of stolen
interrupt vectors, undocumented system data, etc.), and where unavoidable, can
be easily reconfigured to adapt to incompatible software.
The program has been in use for over two years now and has gradually evolved
over this period to be believed fairly tested and debugged.
KBEDIT is a DOS device driver performing two independent functions:

        - larger keyboard type-ahead buffer
        - replacing DOS function 0AH (buffered input) with full
          editing facilities

The reason for programming it as a (character) driver is twofold:
 1) it is possible to relocate the keyboard buffer within
    the DOS-data-segment at 40H and
 2) it is easy to control operation of the program using normal DOS-channels.
   i.e., one can write characters to the device using its name (which is KBEDT)
    through DOS write file functions or even from the command line by typing
    COPY CON KBEDT   followed by a two-character control code.

The file assembly consists of the following parts:

        - README.KB, explaining the functions of KBEDIT
        - KBEDIT.ASM, assembler source of the driver
        - ANSI21.SCR, ANSI32.SCR, scripts for DOS DEBUG program

The latter files may be necessary to fix a bug appearing in ANSI.SYS
which came with various versions of PC-DOS. These versions of
ANSI.SYS performs input- buffer flush by using absolute addresses
(4EH) where it should get its data from the DOS-DATA-SEGMENT (at
40H). Other console drivers (such as NANSI.SYS, which I have seen)
might not contain this bug.  Use ANSI21.SCR for PC-DOS version 2.1
ANSI.SYS driver.  Use ANSI32.SCR for PC-DOS versions 3.0, 3.1, 3.2
ANSI.SYS driver.

[KBEDIT.ASM has been added to the info-ibmpc lending library. -wab]
------------------------------


Subject: External Tape Drive Back-up
Date: Sat, 27 Jun 87 14:51:56 -0400
From: edelheit%community-chest.mitre.org@gateway.mitre.org

I am interested in purchasing an external tape drive for backing up several
XTs and XT clones.  I also expect to be adding an AT clone in the near future.
I don't think that I need more than 20mb of tape storage and would like to
be able to perform selective dumps and restores.

Any comments, experiences, etc. would be greatly appreciated.

Jeff Edelheit           (edelheit@mitre-gateway.arpa)
The MITRE Corporation,  7525 Colshire Drive
McLean, VA  22102       (703) 883-7586

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


From: sr16#@andrew.cmu.edu (Seth Benjamin Rothenberg)
Date: Sat, 27 Jun 87 16:02:17 edt
Subject: PC/XT Clones


I am looking into buying an XT clone.  Two are under serious
consideration: Leading Edge, and Visual.  The Visual is available
from DAK, with a cheap Daisy-wheel included.  I would appreciate
any advice/comments people have on compatibility of these models,
or of any others that claim to be compatible but aren't.  (I know
that some don't claim to be completely compatible)  Thanks in 
advance.

Seth Rothenberg
sr16@andrew
sr16@andrew.cmu.edu
seismo!andrew.cmu.edu!sr16

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

Subject: Applewriter
From: oxy!bagpiper@csvax.caltech.edu (Michael Paul Hunter)
Date: 28 Jun 87 14:47:57 PST



              I have been having a lot of problems getting an AT clone
         to talk to an applewriter.  We can hook an applewriter up to
         a true blue PC and everything flys, but with an AT nothing
         happens.  I can't fathom this problem...the serial card on
         the AT should act like the one on the PC.  BTW the clone we
         tried it on was a compaq 286.


Michael Hunter         UUCP  : ...{seismo, rutgers, ames}!cit-vax!oxy!bagpiper
Box 241                ARPA  : oxy!bagpiper@csvax.caltech.edu
Occidental College     BITNET: oxy!bagpiper@hamlet.bitnet
Los Angeles, CA 90041  CSNET : oxy!bagpiper%csvax.caltech.edu@relay.cs.net

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


From: sdsu!pnet01.CTS.COM!tiger@sdcsvax.ucsd.edu (Andre Johnson)
Subject: IBM H14
Date: 29 Jun 87 02:36:32 GMT
Organization: People-Net [pnet01], El Cajon, CA



Help!!!!!!  I need to use the H14 call in the IBM bios but for unknown reason
the port\device Keeps timing out.  I have been told all kinds of things
something wrong with the cables that I'm using, that god is not on my side all
kind things.  What i'm trying to do is have one computer send charters using
the H14 call and receive charters on the other end with h14.

If you have any information on how to make this work it would be appreciated.

Tiger

[Use interrupt driven I/O as in any of our many communications packages. -wab]

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


Date:     Mon, 29 Jun 87 23:02 EDT
From:     <V111QQK8%UBVMS.BITNET@wiscvm.wisc.edu>
Subject:  High-Res AT Graphics


     We are looking for a high resolution (at least 700*700) graphics
card and monitor for use on an IBM PC/XT/AT compatible.  They can be
either monochrome or color, BUT must satisfy certain critical
constraints.  First, the phosphor on the monitor must NOT be of long
persistence type.  Second, the brightness of the display should NOT
vary with image complexity (i.e. there should be even luminance across
the screen regardless of the number of characters present).  We will
also require technical specifications and programming notes as they
will be controlled via machine language.  The intended application will
involve rapid presentation of images, the average duration being 100
milliseconds.
     One possible candidate might be a product called LASERVIEW from
SIGMA DESIGNS, but we don't have much information on it.  If you know
more on this product or on any such products, please send a note to me
at the address given below.

John Hilton

UUCP   : {cmc12,hao,harpo}!seismo!rochester!rocksvax!sunybcs!hilton
         ...{allegra,decvax,watmath}!sunybcs!hilton
CSNET  :  hilton@buffalo
ARPA   :  hilton%buffalo@csnet-relay
BITNET :  hilton@sunybcs   (or)   v111qqk8@ubvmsc


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

Subject: Need help with MicroSoft Languages
Date: Mon, 29 Jun 87 21:58:14 -0700
From: Alastair Milne <milne%icse.UCI.EDU@ICSE.UCI.EDU>



    To any experts in MicroSoft Pascal, C, and LINK:

    I am a project manager for a U.C. project that creates educational
    programs on micro's.  For the last 5 years or more, we have been using the
    UCSD p-System.  But for our most recent project, we have been obliged to
    use MS-DOS 3.1 (Japanese) on the Fujitsu FM-16Beta (Intel 80286).  With 
    this, we are using MicroSoft Pascal (for all top- and mid-level routines) 
    and MicroSoft C (for device-level support).  MicroSoft Pascal 3.31 
    was chosen primarily because it supplies a UNIT compilation module 
    syntactically similar to that of UCSD Pascal, supplying the same sort 
    of global, but private, referencing environment.  For this reason, 
    dialects like Turbo Pascal, which has no such ability, didn't seem
    feasible.

    We are having a severe problem that didn't apply under the p-System, 
      so we have never had to solve it before:

    - The code generated by MSPascal and MSC is huge.  
      - Our largest single UNIT, approximately 4000 lines of Pascal, is used 
	by every one of our programs. It compiles to about 16K of p-code under
	UCSD.  With MSPascal, the .OBJ file is almost 64K.  I was well aware 
	that the native code would be larger than the p-code, but 4 times 
	is much more than I expected.  Does 64K of code for 4000 lines 
	of Pascal sound reasonable to experienced MSPascal users?
      - Each program uses 6 or 7 units.  The one mentioned above is easily the
        largest.  Of the others, 2 are fewer than 500 lines, and none is over
	1500.  They are mostly Pascal, but a couple of them have perhaps 200
	lines of C each.  Each program itself is from 1500 to 2500 lines 
	of Pascal.  The linked EXE files are between 160K and 200K.  This 
	seems to me an incredible size, larger than PAS1 and PAS2 of the 
	MSPascal compiler put together.
      I have tried EXE2BIN, to see if the code files could be converted
	to smaller .COM files.  EXE2BIN rejected the files as too big.
	[.COM files must fit in one segment i.e. < 64K -wab]
      Does anybody know if the MicroSoft linker (LINK, ver 3.51) is simply
      copying entire pieces of library in, rather than resolving references to
	individual units and routines?
      Are we causing massive redundancy of support routines by mixing MSPascal
	and MSC? If so, I'll be happy enough to turn most of the C source into
	Pascal, and the remainder into assembly.  However, we declare as
	EXTERNs a few C routines to generate random numbers, and to chain to
	other programs.
      Do EXE files contain global data frames, or stack or heap space 
	within them?  (We need at least an 8K stack to run.)
      How efficiently does MSPascal store case tables, floating-point
        constants, strings, and other structured constants?

    - to try to reduce some of the redundancy of code on the disc (since every
      program must contain its own complete copy of the code it uses from the
       library), we have considered the possibility of making an entire chain 
       of programs into a single program, with the formerly separate programs 
	as UNITs within it, linked as overlays.  But this presents another 
	problem.  We must be able to abort cleanly any of the programs, at 
	any point within them.  However, while we can easily enough abort 
	a whole program with ENDXQQ, aborting a specific scoping level 
	doesn't appear to be possible.

    - Alternately, if we could keep the programs separate, but have only one 
	of them containing the library routines, we could both reduce
	redundancy and exit easily from the individual programs.  The problem
	then is: how to produce EXE or COM files from OBJ files without 
	linking in all the libraries, and how to get them loaded and running, 
	using segments that have already been loaded when another program 
	was executed?  Does anybody know if such a thing is possible?

    If further detail is needed on any of these points, I'll do my best to
      oblige.

    I am also open to suggestions of other languages whose syntax includes 
      modules: Modula-2 and Ada are two that spring immediately to mind, 
      though I doubt very much whether there's a respectable, reliable Ada 
      for the FM-16.


    Thanks in advance for any assistance.

    Alastair Milne,
    Project Manager, 
    Educational Technology Center,
    U. of Calif., Irvine


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


Date:  1 Jul 1987 15:18:46 PDT
Subject: Microsoft Pascal Compiler
From: Richard Gillmann <GILLMANN@C.ISI.EDU>
To: milne@icse.UCI.EDE@ICSE.UCI.EDU


I have been using the Microsoft Pascal compiler for several years now.
I'm currently using version 3.30.  I also have 3.31 and 3.32 but I've found
that they don't work reliably for me when compiling large programs.  When
the .OBJ files start to reach 20K or more, I find myself running into
the size limitations of the compiler.  Sometimes it gives an out
of memory error, sometimes it just compiles bad code.  I've found that
the number of symbols in use is more of a problem than code size.  There
are some hints in the manual on how to deal with large programs and these
should be taken seriously: using shorter identifiers, etc.

I also mix in a little Microsoft C code and Microsoft assembler code,
so far without any problems.  One thing you must be careful to do is
to test your program on an AT without an 80287.  For this case, it
needs the environment variable NO87 set to any non-empty string, or else
the program will not do arithmetic correctly.

One way to reduce code size somewhat is to use the /E option on the
linker, or else use EXEPACK which is equivalent.  But the total sizes
you mention sounds typical.  As far I know, it only takes what it needs
from the library.

I have only used Turbo Pascal a little because last time I checked it
did not allow you to have a program >64K not did it allow you to
use all the memory, as MS Pascal does.

A 160K program should be no problem in any case, since almost all users
have 640K these days.

Richard Gillmann
Inner Loop Software


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


Subject: Widely Used Tools on Various Hosts
Date: Wed, 01 Jul 87 11:38:49 -0400
From: howell%community-chest.mitre.org@gateway.mitre.org

I am interested in information on widely used tools that are
available on a variety of hosts.  For example, EMACS-based editors
are available for a wide range of UNIX hosts, for micros running
MS/DOS, and I believe for VAX VMS.  Scribe is also available for
several different operating systems.  What other machines/OSes does
Scribe or EMACS run on?  What are other examples of tools that run on
various operating systems?  I imagine there are a number of examples
from the microcomputer world (e.g. Lotus on a variety of OSes).
I'm interested in a wide definition of "tools"; for example, I
would consider the availability of TCP/IP on UNIX and VMS, or the
availability of NFS on UNIX and PCs, to be good examples.

Please send to me; I'm not on all of the lists I've mailed to.
I'll summarize all responses received by 10 July and redistribute 
to all mailing lists.

Thanks,

Chuck Howell
ARPA: howell@mwultrix.arpa or
    howell%community-chest.mitre.org@gateway.mitre.org


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


Date: Mon, 29 Jun 87 21:57:08 CDT
From: Esmail Bonakdarian <bonak%cs.uiowa.edu@RELAY.CS.NET>
Subject: ps2/50 & External 5.25 drive


A good friend of mine just purchased a IBM ps2/50 with a hard drive
and micro floppy drive. In order to be able to read and write from 
regular floppies (5.25inch) She is considering buying an external
5.25 drive.  anybody out there have any suggestions about
this idea and recommendation about hardware to purchase?

thanks in advance.

  E. Bonakdarian for R. Brimmer


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


Date: 30 Jun 1987 12:41:57 PDT
Subject: ps2/50 & external 5.25 drive
From: Billy <BRACKENRIDGE@C.ISI.EDU>
To: Esmail Bonakdarian <bonak%cs.uiowa.edu@RELAY.CS.NET>


Our first PS2 just arrived. We bought IBM's 5.25 disk option so we could
use this machine to transfer files to the new 3.25 1.44 MB mini-disks.

IBM did a great job of engineering with their plug together PS2.
Installation of anything is very easy. The only problem with the
5.25" disk is that it takes up a slot. There are only three expansion
slots in the model 50 PS2. It seems a shame to waste one for a floppy
drive.

The automatic reconfiguration program is very easy. After plugging in
the floppy drive you run the reconfiguration program. It senses that
a new device has been added to the system and knows exactly what the
device was. This is much simpler than the old DEVICE= parameter in
config.sys that older versions of DOS seemed to need in profusion.

The PS/2 doesn't seem much different from a 16 Mhz AT clone as far as
perceived performance is concerned. The keyboard sucks. I am 6' 5"
and have large hands. The keys are tiny yet a reach for the ALT or
esc key would strain a concert pianist.

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


Date:         Wed, 1 Jul 1987 13:25 CET
From:    ACESTAB%HUTRUU0.BITNET@wiscvm.wisc.edu
Subject: Turbo Pascal and Hercules

I am using a PC with a Hercules (clone) graphics board and
I am very interested in a series of (as low-level as possible)
routines that i can use instead of the graphics that come with
Turbo Pascal. The Turbo graphics don't work with my card. Is there
anyone who can help me with this (perhaps outdated) question?

                  Bert Stals (ACESTAB@HUTRUU0.BITNET)

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


Date:         Sat, 27 Jun 87 17:00:14 +0300
From:         Moshe Raccah <VSMOSH%WEIZMANN.BITNET@wiscvm.wisc.edu>
Subject:      Turbo C and CodeView


Is it possible to use MicroSoft's symbolic debugger "CodeView"
on compiled Turbo-C code?

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


Date:     Tue, 30 Jun 87 16:18 EDT
From:     GERBER%temple.edu@RELAY.CS.NET
Subject:  Appointment Calendars


Please reply if you get this.  I too have been looking for a good
appointment calendar.  Let me tell you what I don't (and do) like
about the available calendars:

Word Perfect Library:
Good: Resident alarm to remind you of appointments, to-do list, unlimited 
      text size for description, marks conflicting (overlapping) appts.,
      easy to enter and print data

Bad:  Hard to move data, no repeating meetings (every Friday at 10 for ex.)
      doesn't print in "Calendar" format, not resident for entering data
      can't handle more than 1 person (can't schedule group meetings)

Sidekick:
Good: Resident, easy to enter data
Bad:  No alarms, hard to move data, no group functions, poor printing w/o
      Travelling S/K, easy to make mistake entering data erasing a just
       entered meeting (arrow key instead of RETURN)

Metro:
Good:  Resident, easy to enter data, weekly meetings, resident alarm
Bad:   Metro crashes several common programs, no group functions,
       alarm is sound only, easy to ignore, takes up too much memory

Have you found anything worthwhile?  I'm using Word Perfect libr.
   until something better comes along.

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


Date: Thu, 2 Jul 87 23:54:52 EDT
From: <rbw@williams.edu>
Subject: Turbo Pascal 4.0

Has anyone heard about TP 4.0 yet?  In the Turbo Prolog manual they
said that they were going to release TP 4.0 by second quarter '87, and
it would be capable of producing relocatable code.

-Richard

rbw@cs.williams.edu
89RBW@williams.bitnet



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


Date:     Wed, 1 Jul 87 14:01:54 EDT
From:     Clif Sothoron <cbsoth@BRL>
Subject:  Book Wanted on File Formats

  Someone mentioned a while ago that a book on file formats was
available. This book was to have included the internal structure of
Lotus worksheet(.wk1 or .wks), dBASE III+(.dbf) ,.dif files and others.
I am writing C programs that would read these type of files. Does anyone
know where I can obtain this book?


      Thanks in advance,


Clifton B. Sothoron Jr.
Ballistic Research Laboratory
Aberdeen Proving Grounds, Md.
cbsoth@brl.mil or cbsoth@brl.arpa
------------------------------


Date:     Fri, 3 Jul 87 12:31 EST
From:     Joshua D. Males <josh%ILJCT.BITNET@wiscvm.wisc.edu>
Subject:  Interrupt 17


When using interrupt 17H with 0 as a parameter, if the printer is out of paper
or off-line, etc... the computer pauses for about 30 seconds before returning
from the interrupt. Is there any way to shorten this delay? I am calling this
interrupt from Turbo Pascal. I tried checking the status (parameter=2) before
I send the character, but it doesn't always work, 'cause the status may change
between the check and the actual sending.
  Are there any interrupt 17H experts out there that can help me?

Thanks,
Joshua D. Males
Jerusalem College of Technology
21 Rechov HaVaad HaLeumi
Givat Mordechai, Jerusalem
ISRAEL 91160

josh@iljct (bitnet)

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

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

-------