I The following documents are about DOS 3.00, 3.10, & 3.20.

Each of the following documents had the disclaimer
"This modification or recommendation has not been subjected to exhaustive 
testing and may not, in all circumstances, provide a complete solution."

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

     DB10075 Problems with Enhanced Keyboards and DOS 3.10 & 3.20

10/30/86
Disk operating system (DOS)
Personal computer XT system unit/keyboard
Personal computer AT system unit/keyboard


When using an IBM PC XT or AT with an enhanced keyboard and DOS 3.2 or 
3.1, DOS will not recognize certain keys, or will mis-interpret keys.

There is a patch diskette, called the DOS 3.2 keyboard utility, which 
corrects this problem for both DOS 3.2 and 3.1.  This is a separate and 
distinctly different diskette from the DOS 3.20 patch diskette.  This 
patch is for use ONLY with the enhanced keyboard, since it will cause 
problems when installed on systems with the original keyboards.

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

    DB10064 DOS 3.2 - Fatal Stack Error

07/10/86
Disk Operating System (DOS)

Some users have encountered the following message while running under
DOS 3.20: "Fatal Stack Error / System Halted".  This message is caused by 
the fact that DOS has not provided enough stack space to handle the number 
of interrupts encountered.

This error can be produced by initiation a long disk operation, such as 
CHKDSK or DIR, and striking keys on the keyboard rapidly.  The first 
sixteen (16) keystrokes are buffered normally.  The next 8 keystrokes, 
after the keyboard buffer is full, produce a beep indication that the 
buffer is full; this also is normal.  The 25th keystroke will result in 
the error message because the previous 8 keystrokes have produced 
interrupts which were pushed onto the stack, filling it up.

This error can be circumvented by using the STACKS command in the 
CONFIG.SYS file to increase the number of stack frames available.  This 
command, which is new to DOS 3.20, is documented in Appendix B of the
DOS 3.2 manual.  Refer to this appendix for the syntax of the STACKS 
command.

There is also a new COMMAND.COM for DOS 3.2 which corrects this problem.  
The IBM National Support Center has a patch diskette for DOS 3.20 which 
contains, among other things, the COMMAND.COM update.


--------------------------------------------------------------------------
    DB10077 DOS Version 3.2 known bugs

10/31/86
Disk Operating System (DOS)

The following items have been identified and verified as bugs in DOS 3.2. 
There is a patch diskette available to correct there problems.

1. DISKCOPY gives a "Drive types or diskette types not compatible" message 
when copying from a 48 Track Per Inch (TPI) diskette to a 48 TPI diskette 
in a 96 TPI drive.

2. DISKCOPY incorrectly allows a diskcopy from a 5.25" diskette to a 3.5" 
diskette.  This produces a 40 track 3.5" diskette which cannot be read on 
the IBM PC Convertible.

3. BASIC and BASICA do not provide proper cursor control with the Enhanced 
keyboards.

4. COMMAND.COM -  Some users have encountered the following message while 
running under DOS 3.20: "Fatal Stack Error / System Halted".  This message 
is caused by the fact that DOS has not provided enough stack space to 
handle the number of interrupts encountered.  This error can be 
circumvented by using the STACKS command in the CONFIG.SYS file to 
increase the number of stack frames available.  This command, which is new 
to DOS 3.2, is documented in Appendix B of the DOS 3.20 Manual.  Refer to 
this appendix for the syntax of the STACKS command.  This problem is 
corrected by the patch.

5.  When using an IBM PC XT or an IBM PC AT with an enhanced keyboard and 
DOS 3.2, DOS will not recognize certain keys, or will mis-interpret keys.  
There is a patch diskette, called the DOS 3.20 Keyboard Utility, which 
corrects this problem.  This is a separate and distinctly different 
diskette from the DOS 3.20 patch diskette.  This patch is for use ONLY 
with the enhanced keyboard, since it will cause problems when installed on 
systems with the original keyboards.

Please note that this patch will only resolve problems with the enhanced 
keyboard for those programs which follow IBM's recommended programming 
conventions.  Only those programs which use DOS function calls to access 
the keyboard buffer will work properly after application of this patch.  
Those programs which access the keyboard buffer directly, bypassing DOS 
function calls, will NOT work properly with the enhanced keyboard.

6.  A very slow serial printer with a small print buffer may cause DOS to 
return a false "Out of paper" error message.  A new program, I17.com is 
distributed on this patch diskette to resolve this problem.  Place the 
command <I17> in you AUTOEXEC.BAT file, then reboot your system.

7.  SHARE may return on of the following errors in a network environment:
                   Share:  internal error
                   RMS: sft lck fields not 0

This module must be copied to all subdirectories on the server machine 
which contain the SHARE.COM module.  You can use the DOS REPLACE command 
to do this automatically after you have completed the installation of this 
patch diskette.


8.  FORMAT with the /4 or /8 options, when used with a 360Kb diskette on a 
High Capacity diskette drive would not work properly.  The only systems 
affected are the PC-AT 339, and the PC-XT 286a.  The driver FMTDRVR.SYS 
included on this patch diskette corrects this problem.

The installation program places the following command in your CONFIG.SYS 
file.  It will create the CONFIG.SYS file if one is not already present.

                       DEVICE = \FMTDRVR.SYS

The device driver will be placed in the root directory of your disk.  The 
next time you boot your system the driver will display a message informing 
you whether it has actually loaded or not.  It will determine which system 
it is on and only install itself if it is on one of the affected systems.

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



The following items have been identified as valid problems, but for which 
there is currently no fix.  Where there is a circumvention, it has been 
included.

1.  DOS Date does not increment properly.  The date will increment 
correctly during the first 24 hour period as the time passed 2400 hours. 
If there is no activity on the system during the next 24 hour period, as 
in a situation where the system is running unattended over a weekend, the 
date will not increment.  The circumvention is to press at least one key 
during and 24 your period; this generates and interrupt and causes the 
date to increment at midnight.  Alternatively, reset the date on Monday 
morning with the DOS DATE command.

2.  When attempting to format 360Kb diskettes on an IBM PC AT Model 339, 
if you do not use the /4 option (format 360Kb) the system will attempt to 
format the diskette as a High Capacity (HC) diskette.  DOS should issue a 
message "Invalid media type", but it does not.  The diskette has many bad 
sectors.  The circumvention is to always use the /4 parameter when 
formatting 360Kb (Double Density) diskettes.

3.  Under certain unique and infrequent sets of circumstances, if the 
diskette in a drive is replaced with another diskette and you do a 
directory, the directory of the first diskette is displayed.  There is no 
circumvention.  This can also be caused by a defect in the High Capacity 
Diskette Drive.  Refer to the Service Support Guide, Service Information 
section "Diskette Drives/Fixed Disk Drives" for additional information.

4.  Interrupt 21H, Function call 36H returns an incorrect value after an 
ASSIGN command.  Prior to ASSIGN, the DX register contains 0943H on 
return, which is the free space in clusters on the HC diskette.  After 
ASSIGN, even with no parameters, 0901H is returned in the DX register; 
this is an incorrect value.  Similar results occur with DD diskettes on a 
PC-XT or a PC-AT.  This occurs only when the disk is not the default 
drive.  Results are as expected when the drive is the default drive.  
Therefore, the circumvention is to make the desired drive the default 
drive prior to issuing this function call.


5.  String formula too complex (error 16) when using a string variable as 
the name of a file to open it.  The OPEN function works properly for 9 
iterations and an error 16 occurs on the 10th iteration of opening the 
file.  The circumvention for this problem is to use the long form of the 
OPEN statement i.e. OPEN filespec FOR mode AS #1.

An alternative circumvention would be to use error trapping.  The first 
line of your program would be as shown below:

                      ON ERROR GOTO XXXXX

Where XXXXX is the line number of your error handling routine.  Somewhere 
in your error handling routine you should place the following line:

                      IF ERR = 16 AND ERL = YYYYY THEN RESUME

Where YYYYY is the line number of the OPEN statement.  The RESUME 
statement resets the error condition.  Since this is a false error,  
resetting it does not create any problems.  An error 16 which occurs at 
any other line of the program will not be handled by this statement, and 
should be handled with a separate statement in the error handling routine.

Refere to the ON ERROR and RESUME statements in the BASIC reference manual 
for additional details of there commands.


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


The following items have been identified as potential problems in DOS 3.20 
They have NOT been confirmed as yet.  The IBM National Support Center is 
attempting to confirm whether these items are, in fact, bugs or not.

1.  When using DOS V#.10or V3.20 BACKUP, you may encounter a "File Sharing 
Error".  If this occurs, the circumvention appears to be to use diskettes 
which have been freshly formatted, and do not have any data recorded on 
them.


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


RE10021 AT Fixed Disk, Undetected Write Fault Condition

07/15/86
DOS Disk Operating System Ver. 3.0 & 3.1 (6024180,6024211)
PC AT 20MB Fixed Disk Drive              (6450205)
Personal Computer AT System Unit/Keyboard (5170068,5170099)

Some fixed disk drives for the Personal Computer AT 5170 may in rare 
situations experience a write fault condition and not be detected by DOS.  
Only fixed disk drives that have "b143"as the first four digits of the 
11-digit barcode, located on the right side of the drive's front bezel, 
are affected.

This error could result in a loss of data in the record being written when 
the condition occurs.  A software patch for DOS 3.0 and 3.1 addressing 
this problem is available through the National Support Center.  This patch 
will enable DOS to correctly handle the condition by retries or posting an 
error to the display.

r
