Dec 312017
 
Information and loader for CSD diskettes in the IBM OS/2 CSD. Download this file first and read the fixes and changes in the CSD. This file along with the SPG301.DSK thru SPG314.DSK are the files needed for the Upgrade.
File SPAKINFO.ZIP from The Programmer’s Corner in
Category OS/2 Files
Information and loader for CSD diskettes in the IBM OS/2 CSD. Download this file first and read the fixes and changes in the CSD. This file along with the SPG301.DSK thru SPG314.DSK are the files needed for the Upgrade.
File Name File Size Zip Size Zip Type
LDF.COM 11368 11305 deflated
README.SP 28251 7753 deflated
SPAPAR.TXT 135480 46761 deflated
SPLABELS.TXT 2658 279 deflated

Download File SPAKINFO.ZIP Here

Contents of the SPAPAR.TXT file





SUMMARY OF APARs

OS/2 STANDARD EDITION 2.0

SERVICE PAK XR06055

OCTOBER 23, 1992






*********************************************************************
* *
* The following list briefly describes problems reported against *
* OS/2 Version 2.0. In most instances, it describes what part of *
* the system code was fixed to correct the problem. *
* *
*********************************************************************

PJ01512: The Desktop object class is not exported from the
Workplace Shell

Five object classes are not exported from Workplace Shell. Exports
have been added, requiring new OS2386.LIB and recompile of the OS/2
2.0 Presentation Manager Workplace Shell. These new files resolved
the customer's problem.


PJ01667: WinCreateObject() call will fail with return code of 0X41645

WinCreateObject succeeds the first time. The object is deleted. The
next call to WinCreateObject fails with the same parms as the first
call. Code changed to the SOM class manager to correct this problem.

PJ01696: Application waiting on a semaphore associated with a Named
Pipe does not get invoked if a queue processor writes to
the pipe.

Comments: This is not an OS/2 problem. The hang situation occurs
because the thread that creates the Named Pipe and associates it with
the semaphore does a DosSemRequest (and blocks) without first "peeking"
into the pipe to determine if no data has already been written to the
pipe - the thread at the client end writes to the pipe immediately
after connecting (DosOpen) to the pipe, but before the server ends
does DosSemRequest.



PJ02058: WinCreateObject gives invalid message queue return code

WinCreateObject returns an error code that a message queue is invalid
even though this API doesn't require a queue. The problem is
intermittent and happens when Ctrl-C or Ctrl-Break is used to
abnormally terminate the application that is using WinCreateObject.
This problem was corrected in the OS/2 2.0 Presentation Manager
Workplace Shell.

PJ02271: WinCreateObj setup string too short

The WinCreateObject function call will fail if the setup string is
greater than 255 characters. This problem was corrected in the
OS/2 2.0 Presentation Manager Workplace Shell.

PJ03080: WinCreateObject picks up wrong icon

I create 2 objects, both full screen command prompts. The first
specifies an icon to be used, the second does not. The second icon
incorrectly picks up the same icon. WinCreateObject is picking up
the wrong icon. This problem was corrected in the OS/2 2.0 Present-
ation Manager Workplace Shell.

PJ03246: REXX will not execute PM programs

Comments: The customer reported a problem executing PM applications
from within a REXX script. Unfortunately, no testcase nor scenario was
provided. We will readdress this issue at such time that more
information is received.

PJ03510: Can't create objects with multiple "DOS DEVICE" strings

It is not possible to specify 2 or more Device drives with
"SET DOS_DEVICE=" or 2 or more program versions with
"SET DOS_VERSION= "
Failure include the following statements:
"SET DOS_DEVICE=C:\1.SYS,C:\2.SYS"
"SET DOS_DEVICE=C:\1.SYS,DOS_DEVICE=C:\2.SYS"
"SET DOS_DEVICE=C:\1.SYS,=C:\2.SYS"
This problem was corrected in the OS/2 2.0 Presentation Manager
Workplace Shell.

PJ03534: Trace Buffer is cleared on exit of TRACEFMT.EXE

Trace buffer is cleared without warning when exiting the Trace
Formatter Utility (tracefmt.exe). Trace Formatter will now display
a warning message to the effect that the trace buffer will be cleared
upon exiting the Trace Formatter.



PJ03638: 4029 39 Fonts 300 DPI, added in WIN-OS2. Microsoft Excel
when asked for print preview, gives message "Cannot find
300.drv file".

After installing the GA level of the 4029 Postscript driver (either
the 300 or 600 DPI) version, any attempt to load the driver would
cause a "Cannot find 300.drv printer driver". This was caused by an
additional comma added to the WIN.INI file that caused 300 to be
parsed instead of the correct 4029 driver name. This problem occurred
when trying to print or when using the Clipboard from some
applications (Excel for Windows for example) if the 4029 Windows
printer driver was installed.
Remove the comma from the 4029 driver name in three places; in the WPD
file, in the driver itself, and in the drop down list box for
installing printers. If the driver has already been installed when
the Service Pak is applied, the Service Pak will additionally fix
the INI file. If a customer adds the printer from the OS/2 2.0 GA
level printer disks, he may have to reapply the Service Pak in order
to fix this problem.

Temporary fix: Removing the additional comma in the 4029 printer
driver description in the WIN.INI file can fix the problem. Care
should be taken when editing the WIN.INI file.

PJ03647: Unable to get Titlebar again after removing, unable to
change color on digital character, digits erroneously
displayed on clock

Context menu code is trying to set the owner of the popup menu for
clock view to the system menu. Code changed in Presentation Manager
Window support to correct this problem.

PJ03656: Minimize to the Desktop not working correctly

This defect can be changed to only address the problem with seamless
applications not minimizing correctly but the problem with books and
other applications is going to have to wait for the next release and
here's why:
The problem with books (VIEW.EXE) is that when you run view, it kicks
off another process to open the book and then exits. The shell
currently only keeps track of the first process(which is the VIEW.EXE)
process and when the book is minimized, we have no way of linking that
book with the process it was started from.

PJ03661: PMTape Backup Utility does not work with GA code

PMTape was hanging waiting for a suspend IORB to IBM2FLPY to complete.
The Suspend did not complete due to a bit flag not being set
(GFlags.ShutdnPending) when the shutdown request was started. Problem
fixed in IBM2FLPY.ADD module.

PJ03666: DOS version of LOTUS requires MEM command in MVDM prior to
123.EXE or no EMS available to LOTUS...



Problem was that Lotus 123 was not seeing extended memory correctly
because it touched the memory before using it through the vemm.sys
driver. Other common problems with Lotus seeing memory are fixed by
setting DOS_SETTING MEM_INCLUDE_REGIONS to C0000-DFFFF.

PJ03668: WIN-OS2 add printers, cancel out of add printers and then
open printers from control panel, add printers no longer
works.

Open a Win-OS2 session, Open Control Panel, Open Printer,
select Add Printer. Printer list appears... Select Cancel,
open Printer again, select Add Printer. Printer list does not
appear. This is a problem with WINOS2 memory management of
reallocating local blocks in a link list. The problem was fixed
in cpsetup.c dealing with LocalAlloc and using an attribute
of LMEM_FIXED.

PJ03677: Accessing DOS full screen and WIN-OS2 causes Diamond
Speedstar SVGA in VGA mode to become unsynchronize

APAR cancelled as duplicate of APAR PJ04128

PJ03686: OS2/2.0: Swapper.Dat file does not shrink

Swapper.dat does not seem to be shrinking on a PS2 Mod 90 with 24MB
RAM. Problem can be duplicated using any application and WIN-OS2.
The Swapper compaction check was in error, it was looking at the
smDFMac instead of smcDFInuse. Code changed in OS/2 Kernel to correct
this problem.

PJ03696: Receiving error PMV2001: Not enough memory when attempting
to open games folders in OS/2 2.0: Icons don't go dormant

This APAR is a duplicate of APAR PJ03849.

PJ03701: In OS/2 2.0 Detach command is working incorrectly

When trying to start a program from inside a detached REXX CMD, it
tries to start the program full screen by default. SYS1059 is
returned in 2.0 when this is tried. 1.3 and 2.0 are hence
inconsistent. The problem is CMD.EXE is doing a DosStartSession when
previously it did a DosExecPgm. The DosStartSession will not work
from a detached process and is returning the error. Now when session
is detached a DosExecPgm is issued.

PJ03705: Seamless Windows, 2 programs running, goto folder with
programs slashed out, double click on one application and
the other reappears.

Minimizing and reselecting migrated windows applications sometimes
causes the wrong application to be started.
Two design changes were incorporated in the first Service Pak code
to correct this problem. The DCR numbers are PM20 105 and DCR CP20
1519. This fix will only be effective if the entire Service Pak is
applied.



PJ03708: Lan Manager enhanced option of OS2/WIN asks for OS/2 2.0
Install disk but does not recognize the files. Option
fails on GA code.

WIN-OS2 asks for MS network drivers on a print driver disk. This is
incorrect, the user must supply their own network driver disk.
A better message is now included.

PJ03709: SYS3176 received when opening DOS full screen session with
DOS = HIGH, UMB set in the DOS settings

SYS3176 when DOS settings DOS HIGH and UMB is set to ON for extended
BIOS machines. VBIOS was not allowing for ISA/EISA machines with the
extended BIOS data area. The DOS Kernel was using this area when
really it should be reserved. Code changed to allow ISA machines to
have Extended BIOS.

PJ03716: Moving a file Icon over an object Icon, only partial Icon
frame appears on the selected object Icon.

OS/2 2.0 PM Workplace Shell was displaying target emphasis on a
process that did not initiate the drag. This problem corrected
in the OS/2 2.0 PM Woorkplace Shell.

PJ03717: Closing Jigsaw program while it is drawing hangs the system

The customer reported a scenario in which closing down the Jigsaw
application, the system could be left in a "hung" condition. A
change has been made to the way the two threads of the jigsaw
application converse, particulary at the time of application shutdown.
The problem had been that the primary thread of the application
"suspended" the drawing thread, without checking what system resources
were in the possession of the second thread. Now, the second thread is
basically asked to give up key resources prior to shutdown.

PJ03721: OEM machines with Western Digital Super VGA video that have
1 Mb video memory crash after first boot then the C0000005
message occurs

An installation problem occurs on OEM machines with the Western Digital
Super VGA video chip, which has 1MB of video memory. This occurs when
the base 512K VRAM is upgraded with an additional 512K for 1MB total.
If the extra 512K is removed, the system boots normally.
The problem was fixed BVHSVGA.DLL module such that the system now
detects 1 Mb of memory on the adapter.



PJ03726: VDM causes hang if opened when MADGE SMART LSP running

Customer is using OS/2, GA on workstations. The Lan is supported
using Token Ring clone cards by Madge Networks. The Lan software
is a program called "SMARTLSP.EXE" from Madge, running in a DOS
session. The server is UNIX. User runs SMARTLSP.EXE in a DOS full
screen session. All works correctly. User can access network drives,
Ctrl-Esc to other OS/2 or DOS sessions, run programs in those sessions.
The hang occurs when the user tries to open a new DOS session. At that
point the cursor disappears and the system will not respond to
anything except re-boot. Special condition causes hang in VPICA.ASM.
Code change to correct this problem.

PJ03733: System hang when two or more processes perform DosDelete
function while using UNC file path names

When two or more processes perform DosDelete function to the same
server while using UNC file path names OS/2 System will deadlock.
The processes deadlocked include any DOS file I/O which require
access to the same drives. Code change in the OS/2 2.0 Kernel to
correct this problem.

PJ03740: PMV6011 error result when printing from Office/Vision
InBasket with Epson lq-2550(lpt1:) with properties on.

If you try to print a note or document from the Inbasket with
properties on, the properties page prints but then a message is
displayed... Jobid 29 on Printer
Can't print this print job because the data is in the wrong format for
this queue driver.
There may be a problem with the graphics program you used to create
the file. (PMV6011) Processing will continue
The note or document does not print and the job is held in the queue
once Cancel is pressed on the message.
The Save/Restore logic for journalling was broken if all of the output
for the page fit within the first band of the page. It now imposes a
two band minimum playing limit, so the saved DC has all of the
attributes for the next page. This problem is fixed in the Epson
Device Driver.

PJ03743: Simple BASIC program locks up system

Simple BASIC program could cause OS/2 2.0 GA to hang the entire system.
Protection for the interrupt vector table has been implemented.

PJ03748: Running a DOS executable in Codeview 3.11 will cause entire
OS/2 system to hang

Running MS protect mode Codeview of a DOS application causes OS2 to
get an Internal Processing Error (IPE) requiring a power down and
Reboot. Code was corrected in the OS/2 2.0 Kernel.



PJ03755: System hangs or video corrupts typing Alt-Home excessively
while running a simple BASIC program

System was deadlocking waiting for a semaphore. See defect # 26127
for detailed explanation.

PJ03757: Access violation occurs when using CodeView

Running customer application using Codeview, it traps with a fatal
Trap 000E (page fault).
The code is trying to access location es:c00 where es=11f
DL 11f = 11F BAS 230754 LIM=FFF DPL=3 P RW A
Trying to display using DW any address beyond es:8ab outputs an
invalid linear address error message.
DosPtrace created an alias to a selector mapped memory region and
allocated another selector in the debuggers context for it's use.
The problem is that the selectors limit was rounded up to page
granularity when it should have been set to the original selectors
limit. Code changed in OS/2 2.0 Kernel to correct this problem.

PJ03771: Using IBM 122 keyboard and GA code, install fails after
diskette 5 and Reboot.

Customer using GA code on a model 70 PS/2 and IBM 122 keyboard.
The install goes until disk 5 and asks to remove diskette and then
Reboots and says loading, screen goes white and at that stage
machine just hangs. If they reinstall using normal PS/2 keyboard
install works fine. Also there is no option to install 122
keyboard via selective install object. This problem was in the
OS/2 2.0 PM Window support, problem has been corrected.

Installation with 122 key keyboard fails when Rebooting after the
fifth disk for UK and French country codes. Other country codes
may experience similar problems.

PJ03780: XCOPY command doesn't work in LAN environment

In a VMB DOS 3.3 session in a LAN environment, the Xcopy command
doesn't work correctly.
Example:
c:>xcopy m:x.y c:x.y
receives this kind of error "Drive m: not found" where m: is the
LAN shared drive. In VDM or in local environment Xcopy command
runs without any problem.
A working bypass is to run the command from the source drive
Example:
c:>xcopy m:x.y c:x.y **** ERROR ****
m:>xcopy m:x.y c:x.y it works fine
Xcopy modified to correct this problem.



PJ03785 2.0 Install hangs on Install disk, ZEOS 386SX Notebook

Zeos notebook would hang on the 2.0 Installation diskette.
Installation process does not get past Installation disk on an
OEM machine. The problem was in the boot code during installation.
Boot code changed to correct this problem.

PJ03803: FIND command is not recognizing all network drives
recognized by NET USE

Customer cannot create a new program object from one of his network
drives because it doesn't show up in the Find/Locate/Drives list!
I've attempted to recreate this, and it is easily recreated.
I have 15 drives, 4 local, 11 network, only 6 network drives appear
in list! This was corrected in OS/2 2.0 PM Workplcae Shell.

PJ03807: Hard to see mouse pointer on L40 Laptop

Unable to see the current pointer on the IBM Laptop L40SX.
The VGA Code has been changed for the 16 bit and the 32 bit code to
increase the size of the pointer.

PJ03811: DR DOS problem with redirecting output files

When redirecting output from inside of DR DOS to a file it would
create a 0 byte file. Example: Dir > temp.txt would create a 0 byte
temp.txt with the GA fsfilter.sys.
The presence of fsfilter.sys in the DOS config.sys file causes the
problem. It is placed first in the DOS config.sys file as recommended
(ahead of any drive references). When Fsfilter is included in the
config.sys file, no redirection works properly, but without it
redirection works OK. Code modified in the FSFilter to correct this
problem.

PJ03812: Body Text, Font, and Pointsize popup options at bottom of
screen do not work in AMI-PRO seamless windows

Using Lotus AMI-PRO Word Processor in a WIN-OS2 Window(Seamless)
the 'Body Text', 'Font' and 'Pointsize' popup list boxes
at bottom of screen do not work correctly. Additionaly using
these pop up list boxes creates holes on the Desktop that are
not removed until AMI-PRO is closed. This problem does not
occur in Full-Screen WIN-OS2.
This problem has been fixed in WIN-OS2 as part of a number of
changes regarding painting, focus and messaging issues related to
seamless WIN-OS2. This fix involves a number of modules and
requires the entire Service Pak to be applied.

PJ03837: Periodically icons stored in the OS2.INI file go black

Problem in WIN component caused by Win32BuildPtrHandle thunk not
copying icon data that spans 64K boundaries. Code changed to correct
this problem.



PJ03838: Hang on install disk after IBM screen appears on systems
with an OAK TECH chip set VGA card

Systems using the OAK video VGA chip will not install at GA level.
The OS/2 Loader has been corrected to detect the OAK chip.
Oak chip uses the Int 10h function 13h.

PJ03852: ICON Editor color fill 2nd instance locks up session

On mod 80 with 8514/A Icon editor... place a template of a folder on
the Desktop. Open settings, general and edit the icon... select a
color, use tools, color fill, and fill in part of the icon... select
a new color, and still using the color fill try to fill another
section, the session is locked... Ctrl-Esc will allow you to exit.
Icon Editor code changed to correct this problem.

PJ03854: Focus returned to incorrect place after exiting Online Help
for the first time

Error description:
Open a folder (say "OS/2 System") and hit F1 for help. In help,
hit to exit. Help disappears and focus returns to the
Desktop.
The very first time you boot your machine, doing that will have
focus return to the folder after exiting help. Future invocations
will return focus to the Desktop. This problem was corrected in
OS/2 2.0 PM Workplace Shell. The focus will now return to the window
that had the focus before calling help.

PJ03863: Mode CO132 works under OS/2 fullscreen but fails under DOS
full screen on model 70 with XGA. Does not fail on mod 90.

On a model 70 with an XGA adapter, in a DOS fullscreen session, the
Mode command fails to correctly set the font when CO132 is specified
as the input parameter to Mode. It works correctly in a protect mode
fullscreen session. It also works correctly on a model 90 in a DOS
fullscreen session. The Mode code was changed to correct this problem.

PJ03875: XGA PM format does not display percent bar properly

This APAR is a duplicate of APAR PJ04043.



PJ03889: Reading POS Registers in OS.2 2.0 imperfect emulation in DOS

Four different concepts were fixed in this APAR.

1. Resident data was changed to swappable or init.
Most of the data in the resident area didn't need to be present
at all times. Saved about 200 bytes this way.
2. Code at FFFF:0 reset location now causes Int 19.
Running the real reset code sometimes would hang the machine.
That is the subject of this original Defect. Now we edit the
BIOS to cause an Int 19 to exit the VDM gracefully.
3. VXGA needs access to VIDEO ROM area. VBIOS does not need to map it.
A recent change in VBIOS allowed the mapping of VIDEO ROMs. VXGA
does not like this. Changed VBIOS to be smart about 8514 and
XGA and not include the ROM address space.
4. POS register read update after writes to adapter.
Some adapters change the POS registers based on writes to the
adapter POS. Subaddressing is the approved way, but other adapters
have other tricks. M-Motion uses the POS registers a window into
the internal registers. The APAR addressed this issue. We now
read the POS registers after every write to get the update status.

PJ03897: Disk access from a time critical thread is given lower
priority than print spooler disk access

Customer has a time critical process which interfaces with a
communications adapter and reads and writes disk files. They have no
problems running this application when the system is not printing.
However, when the system is printing the application is not getting
its disk reads. The spooler is getting its disk accesses to the spool
file ahead of the process. They need to be able to run their time
critical application and print at the same time on the same machine.
Settings page was added to the Spooler Object to allow the user to
set the priority of the print threads. The user can set a lower
priority to allow other processes more CPU time.

PJ03904: Can't create an installed printer object using
WinCreateObject()

Comments: WinCreateObject does not create a print object. Print
objects are special and have to be created by doing a
SplCreateDevice and a SplCreateQueue to set up all the connec-
tions that are associated with the print object. The shell will
then create the object without the customer having to do any-
thing extra.



PJ03905: Alt-Esc fails to jump over the "OS/2 Desktop " when it is
removed the window list

Alt-Esc fails to jump over the "OS/2 Desktop " when it is removed
from window list. Removed the entry by setting it "SWL_INVISIBLE"
and "SWL_NOTJUMPABLE". From the "OS/2 Desktop ", as this item
would normally be in the switch list, pressing ALT-ESC does
not appear to register; ie nothing happens. Press ALT-ESC again
and the next non invisible entry is brought to the foreground.
We don't believe you should have to press ALT-ESC twice to skip
the "OS/2 Desktop " entry. Code changed in Presentation Manager
Shell API to correct this problem.

PJ03906: Print icon when opened can't access settings and corrupts
them

A print object does not respond to mouse's right button to open
settings while this object is in a folder initially. Once the
problem is exhibited, moving the object to the Desktop does not
allow the user to play with the settings. This problem can only be
recreated if you load-up your Desktop by using the Drives Object
to view a drive's directory with a lot of folders.
To recreate:
-----------
(1) Create a Print Object for a print-driver (e.g. LaserJet IID)
(2) Move this object into your work-area folder _any folder_
(3) Use Drives Object to view a network drive's root
(4) Open up several directories __as many as system allowed, ...but
just before you get the "Out of Memory" error
(5) Go to the folder where you previously placed in the Print Object
(6) Click on the print object with mouse's right button
(7) Problem: Can't open the settings with step (6).
One can however double-click on the object to display its window and
use its system's icon to open the settings --just as a circumvention-,
but of course the customer is also experiencing other side effects:
from "settings being corrupted" to "can't open its settings at all"
from there on.
We now lock our objects so they can never go dormant when the folder
is closed. If they don't go dormant, the shell will never free our
data.

PJ03912: Losing connection to com port after several hours of usage
forces user to hardware Reboot his system.

The com port driver unloads after exceeding a maximum number of
spurious interrupts.
A new parameter was added to COM.SYS to specify the maximum number of
spurious interrupts before unloading the com driver, or just to
ignore spurious interrupts as follows:
COM.SYS (p,addr,irq,sp)
Where: p= port number
addr= port address
irq= port interrupt level
sp= d - deinstall com driver if spurious int > 1000
i - ignore spurious interrupts
p - post the error if spurious interrupts > 1000



PJ03918: Only RAM below 16 MEG used on Micronix 486 ISA bus at
Phoenix 0.10G14 level Bios machine.

There are two basic issues here.
a) Why can DOS 5.0 detect (on ISA machines) greater than
16 Meg of RAM and apparently make use of it (while OS/2 2.0
cannot).
b) If there are "Golden" rules as to what our hardware use
capabilities are, they should be stated up front (before the
sale) so that there is no "Mis-perception" in regards to
what the user is buying.
Code changed in BIOS module to correct these problem.

PJ03933: Monochrome monitor in 2'nd video conflicts with user
program in high memory area

OS/2 is allowing access to the monochrome memory space of 16k
(B0000-B3FFF) but was only restoring the lower 4k when DOS session
was swapped out and back, and was not preserving this memory across
DOS sessions. This caused some DOS programs which load themselves
there (4DOS) to be clobbered when the DOS session was restored.
A fix was made to vmono.sys to allow DOS programs to only have write
access to the lower 4k of memory from (B0000 to B0FFF), and will
preserve the contents of that memory space when the DOS session is
switched out of and later restored.

PJ03937: DosNewSize integrity problem on HPFS system

Certain cases of DosNewSize result in lost sectors and can lead to
possible file corruption. DosNewSize modified to correct this
problem.



PJ03942: Template folder allocates RAM when opened and never
relinquishes

The customer reports that the memory leakage is not
limited to the opening of the templates folder. Direct
manipulation operations also allocate memory in 4K chunks
without freeing it. In addition, opening other Workplace
Shell objects, such as program reference objects, also
allocate 4K chunks of memory without freeing it. Obviously,
a page is being allocated so the leakage is really anywhere
between 1 and 4096 bytes. This problem was in PM Workplace Shell.
OS/2 2.0 PM Workplace Shell was changed to correct this problem.

PJ03945: Using value() in a REXX procedure corrupts "C" code

RexxStart() from a "C" program calls a REXX procedure. If an
environment variable is set in the REXX procedure, the called
program environment is corrupted. The "C" GetEnv() call fails
to retrieve a variable that is known to exist.
The program may also fail on funtion call "DosGetInfoBlocks()".
failure depends on the environment set.
The code that transfers the environment has been modified to
address this problem.

PJ03946: WinQueryObject() returns wrong object handle in 0S/2 2.0

At boot time, we create our system and shortly after this, we
start some objects. This fails on us every so often with a return
code of 0x1709 (invalid object). I have found that the handle
returned by WinQueryObject() is invalid. This problem was corrected
in OS/2 2.0 Presentation Manager Workplace Shell.

PJ03956: Large amounts of disk space being lost for no apparent
reason. It can be reclaimed by issuing chkdsk /f:3

This is a duplicate of PJ04052 which is fixed in the Service Pak.

PJ03960: Faulty protection violation Trap handler

Comments: The test case provided did not demonstrate the failure
reported. When a null pointer is passed from an application, it is
the application that must handle it. If a new testcase can be
provided which shows where OS/2 should handle an error and is not,
please open a new APAR.



PJ03970: IPE 2094, 4023 when running seamless applications
periodically

Customer system detected an Internal Processing Error at location
0170:fff5e877 - 000f:00019877
PgMoveFrame: bad reference count
04860064 - 03/31 23:13:52.07
Internal Revision 6.307, 92/03/01
Sometimes when the customer double clicks on either the Designer or
Excel (Windows) icon.
Changed VDHMapMemBlock to lock down the destination pages that are
being mapped to. The internal error was generated when the Virtual
Memory Manager tried to move the pages that were being mapped to, but
the reference counts weren't what it expected because VDHMapMemBlock
calls directly into the page manager.

PJ03973: Insert mode changes when switching between entry fields.

On a multi-field entry in a PM dialog box, when the numlock is on,
the zero-key in the keypad keeps the insert mode toggling to replace
mode.
To reproduce error do the following:
- Numlock on, and Insert mode on
- Start File Manager
- Select "File", then "Search for..."
- You get a multi-line entry
- In the "Search for..." field, type 'a' and press "Home" key
- Tab to "Search from directory" field and type '00' on the keypad,
and press "Home" key.
- Tab 3 times to get to "Search for:" field and cursor is now in
Replace mode.
The same error occurs from "Group-Main", "Program" and "New".
Insert/overwrite state is inadvertently toggled by the numeric
keypad 0/Ins key even when Numlock is set on. Code changed in PM
Window to correct this problem.

PJ03974: Display corrupted when list border overlaps object Desktop

WinMessageBox will now return a MBID_ABORT return code when the
message box is destroyed.

PJ03981: Some objects not deleteable when created from templates
folder (most customers see this with creating folders)

Problem in PM Workplace Shell in which folders created from templates
could not be deleted either by shredder or popup menu. It would take
several tries for success. This problem was corrected in the OS/2 2.0
PM Workplace Shell.



PJ03998: VM BOOT not working correctly on L40SX

When doing a VM Boot of DOS 5.0 where the boot floppy's config.sys
loads HIMEM.SYS, the L40SX machine crashes.
HIMEM.SYS was directly programming Port 92. This port can cause the
system to Reboot. With Microchannel PS/2s, we were emulating. On
ISA PS/2s, we were not. Now we virtualize this port for the L40.

PJ04000: Replacing objects with WinCreateObject() OS/2 2.0

Comments: This is a duplicate of APAR PJ02271.

PJ04026: When a radio button is disabled, and a BM_QueryCheckIndex
message is sent to it, control never returns to the
application

Comments: Cannot duplicate customer problem, no test case was provided.

PJ04027: Backup not backing up empty subdirectories

The Backup Utility does not backup empty subdirectories or their
extended attributes. It is critical that we give the customer a
way to preserve the workplace environment when backing up and
restoring file objects and folders (subdirectories). Backup does
seem to work when there is a file at the lowest level of the tree to
be backed up.
Changed backup.c and backfind.c so that empty subdirectories
are preserved.

PJ04032: Trap 000E when using Send / Receive for TSO, PROFS, ETC

XcptFatalDispatchError causes an IPE at CS:EIP= 0160 : fff8ff69
when using a send/receive command for TSO, PROFS, etc.
The user found that the Trap 000E only occurs when Trace is set to ON
in the config.sys file. If Trace=OFF, then the problem does not occur.
Moved the exception message table into resident memory so that a
fatal page fault will not occur while trying to swap it in during
exception handling. Also changed the insert containing the module
name and object number to contain the module name, object number, and
offset of the faulting instruction.

PJ04036: Folders occasionally deadlock upon opening

Intermittently, when you open a folder (directory) system will
deadlock. When the mouse pointer is over the folder, it turn into
an hourglass. Sometimes the whole system will lock up and sometimes
only the folder itself.
Fixed by adding getting the folder semaphore before going into
_wpAddFirstChild so we avoid deadlock later.



PJ04045: Noisy hardfile when installing OS/2 2.0 on Family 1 Computers

Code changed to issue Recalibrate command after controller
Reset in IBM1506.ADD module.

PJ04050: Plus/ Minus signs not always shown in tree view

Sometimes (and this is very intermittent), using "Drives" the plus and
minus signs do not occur for a directory shown in the tree (view tree)
even though it does contain subdirectories / folders.
Code modified to correct this problem.

PJ04052: HPFS IPE - CPS: Extent not found

Randomly after frequent high volume manipulations on the HPFS file
system some customers experienced a CPS: Extent Not Found error which
damaged the HPFS integrity and reliability. The problem has been
repaired. A new HPFS.IFS file will prevent this problem from
recurring.

PJ04056: System hangs with 2456 SCSI scanner under OS/2 2.0 with
IWPM/2

IBM PS/2 with IBM SCSI adapter and 2456 SCSI scanner. The OS/2
2.0 GA SCSI driver hangs system when the SCSI scanner is used
with IWPM/2. Problem fixed in IBM2SCSI.DMD and OS2DASD.DMD
modules.

PJ04064: Printing to PaintJet causes error message '311 this
file'.

The call Dev32PostDeviceModes is being called from a thread in
the WPSH that has 4k stack. The paintjet driver needs a 12K
stack. A surrogate driver allocates a new stack and copies the
old one to it. The bug was that on return the function was
setting the return code (#bytes of storage the driver needs to
allocate) on the new stack, but didn't copy it back to the
original 4K stack. Only the DevPostDevice modes call into
Paintjet was affected.



PJ04076: System will not shutdown after LAN install

After you have installed the base, do not do anything to the shell,
such as moving icons, adjusting colors, but most of all do not
Reboot or perform any SHUTDOWNS until you have installed the LAN.
When the pop-up appears to Reboot, the machine perform a Shell
shutdown. The system will attempt to shut down but will Trap
instead.
This problem was corrected in the OS/2 2.0 Presentation Manager
Workplace Shell.

PJ04082: Microsoft C70 gets IPE - DPMI 0.9 not compatible

Microsoft C70 compiler traps when run from a OS/2 V2 VDM. MS
states that OS/2 DPMI 0.9 is incompatible with the standard.
The compiler traps immediately, regardless of the parameters
or file to be compiled. This problem is fixed in the Service Pak.

PJ04125: GP fault in GDI.EXE when minimizing CCMAIL seamless on
Desktop and new items arrive in inbox causing icon
to blink

Running CCMAIL VER 1.10 on GA seamless, minimize CCMAIL and then
from another workstation send a note. The icon will attempt to
blink, assuming notify is set in ccmail, a GP fault will occur in
module GDI.EXE.

PJ04128: Accessing DOS full screen and WIN-OS2 causes Diamond
Speedstar SVGA in VGA mode to become unsynchronized

Video adapters with certain level of TSENG chipsets will loose sync
when switching into fullscreen DOS and WIN-OS2 sessions.
The code has been corrected to resolve the problem.

PJ04136: VDM is Save/Restoring only active fonts in VGA font plane

The VVGA.SYS driver only saves the two active fonts in the VGA font
plane. However, from within the DOS session, there is memory for 16
fonts. Some programs are relying on all of these fonts being saved,
instead of just the active fonts. The usual effect is the DOS full-
screen session is blank on return.
This is a trade off, because we are currently reusing the memory from
the inactive fonts, but there are a good number of problems we are
encountering of this type, so that the problem warrants coding the
fix to allocate the memory to save all the fonts.
The fix involves detection of the 32K Hi-color DAC. If one is found,
then we make sure the color index is properly reset. We achieved
this by repeatedly reading the DAC Write Index register until we are
sure that the DAC is no longer in Command Mode.



PJ04155: Incorrect printer driver chosen for two queues (IBMNULL)

If you have two queues connected to one port (eg LPT1) and then
select one queue as the default. Each queue has a different
printer driver as the default printer driver.
If the first queue is the default; jobs submitted from the
command line use the correct printer driver. If the second queue
in the list is the default then the wrong printer driver is chosen
and the job properties(driver data) may not be for this printer
driver, causing the print jobs to fail.
This occurs for base(non-PM, including DOS and Windows) print
jobs.
The workaround is to modify the settings so that the queue and
driver that you want to be the default is in the correct order
to choose the default. Or create the queues from scratch.
This is not practical for normal users.
Code changed in the PM Spooler to correct this problem.

PJ04170: Actor V. 4 trap in Actor40.exe at 1:35CF

Attempting to start Actor 4.0 for Windows under WinOS/2 2.0 causes a
trap at ACTOR40.EXE 1:35CF. The program will not come up and is
completely unusable. This problem has been fixed by making a minor
change to WIN-OS2 that allowed for non-recommended programming
practices that ACTOR was performing. It is recommend that the entire
Service Pak be applied since the private fix is not integrated or
supportable.

PJ04181: System does not respond when spooling print jobs

Comments: The customer reported that, when printing numerous small
print jobs on a model 95, the processor was fully utilized and
can perform no other task.
Unfortunately, no further information has been provided and
this is not sufficient information to indicate defect in OS/2 code.
This issue can be readdressed when additional information
is provided.
Comments: The enhancement to this function will be added in a
future release of the product.

PJ04208: Problem with focus given to PM Windows OS/2 2.0 GA. User
left with no focus.

To recreate:
-----------
1) From the command prompts folder, start an OS/2 FULL SCREEN
session.
2) Use to bring up the window list.
3) click on "OS/2 Full Screen".
4) Select "Close".
5) Select "No".
Note that the focus is given to a minimized window.
Code changed in OS/2 2.0 PM Workplace Shell to correct this problem.



PJ04211: OS/2 Boot Manager does not work with UNIX

This APAR can not be verified from Service Pak build due to the fact
that the APAR fix code also require companion changes in vendor's
Boot code (ATT SVR4). This APAR is closed per code owner and support
lead permission. Related defect item is 26232.
Base code has changed but can not be verified without vendor's code
change.
Temporary fix: Use Fdisk to make ATT UNIX partition active

PJ04212: A null pointer has been identifies in PM Workplace Shell

A system hang was identified in Workplace Shell. This problem was
corrected in the OS/2 2.0 Presentation Manager Workplace Shell.

PJ04213: System hang on bootup of OS.2

The system hang condition was determined by remote debug
to be a problem with Memory Management. The problem was
fixed in the Memory Management component of the OS/2 Kernel.

PJ04215: OS/2 V2 GA scrollbar position is always returned with the
same value as the SB_SliderPosition. This is not true under
1.3

Under OS/2 1.3 when the user drags a scroll bar slider an outline was
moved, the thumbprint remained in its original position when queried.
Our application (IBM SAA Personal AS/2 Version 2.02 5669-38932F8344)
makes use of the original position information, which is compared with
the SB_SLIDERPOSITION message, and if the position is the same no
update is performed avoiding unnecessary application overhead which
would result in reduced performance. Under OS/2 V2, the scrollbar
position is always returned with the same value as the
SB_SLIDERPOSITION and therefore the application, which works well
under OS/2 1.3, is no longer able detect scroll bar movement under
OS/2 V2.0. OS/2 V2 should behave in an upward compatible manner with
OS/2 1.3 & return same information for the scrollbar position that
would be retuned under OS/2 V1.3, thereby enabling the applications
to work in either environment without modification. It is certainly
true that the look of sliders are different and under 1.3 the original
slider position remains until the mouse chooses a new location. This
is not seen under 2.0 either.
Code changed in PM Window support to always have the scrollbar position
returned with the same value as the SB_SliderPosition as in OS/2 1.3.

PJ04217: Calera WordScan won't work under OS/2 DOS

Calera WordScan won't work under WINOS2; works from native DOS
Windows. If migrated to OS/2, get error 'Page not inserted'.
An attempt to install from WINOS2 results in system stopped
error. Code changed in the OS/2 Kernel to correct this problem.

PJ04220: OS/2 switches some clones into slow (non-turbo) mode.

OS/2 2.0 forces some OEM clone machines with multiple processor
speeds into slow (non-turbo) mode. This problem seems to be appearing
on NEC Powermate OEM Machines. This problem has been debugged. There
is a problem with the Device Driver and code written for PS/2 Model 40.
This code is writing to a port on the family 1 machine which turns off
the turbo light. A check has been put in to test the family type of
the machine. The code will only run if on a family 2 type machine.



PJ04242: Set autostart does not work right: removing programs from
the statement in config.sys does not stop programs from
autostarting.

The default line in the config.sys:
Set autostart=programs,tasklist,folders
if changed to:
Set autostart=tasklist,folders
you would expect programs not to be autostarted, but this is not the
case: Programs are autostarted. Code changed in autostart to not
start programs if not specified the the config.sys autostart parameter.

PJ04248: ECF problem with system Lockup

ECF is Enhanced Connectivity Facility Program 1.2.0. ECS family
application - when a devhelper call is made to the lock subroutine,
the machine stops, press enter, get Trap 000D dump on the screen.
Code modified to correct this problem in the file system in OS/2 2.0
Kernel.

PJ04253: SYS3176 error when opening DOS full screen or WIN-OS2 on a
clone machine

On an OEM machine, SYS3176 error occurs when trying to open a DOS full
screen and WIN-OS2 command prompt. Machine is AST Premium Exec
386SX/25 monochrome display. Chipset is Trident 8800. 386SX/20 and
386SX/25 color machines work fine.
On this particular AST Laptop machine, the BIOS INT 10h SetMode call
always invokes another INT 10h SetMode under the cover, causes the
INT 10h hook code within the Video Device Driver to mistakenly pop
off the return address from the Client Stack Frame. Problem corrected
in the OS/2 2.0 Video Device Driver.

PJ04254: Blank Desktop - must Alt-F1 at every boot

Have to use alt-f1 to refresh the Desktop at every boot or screen
will be blank.
The defect for this APAR was closed as UR3, Not Reproducible in
current build. This problem is fixed in Service Pak.

PJ04264: Trap 000E CS:EIP= 0160 : FFF6FFE6 CSACC= C09B CSLIM=
FFFFFFFF when shutting down ( Exiting ) LAN Network Manager
V 1.0

This APAR is a duplicate of APAR PJ04076

PJ04266: Model 80, SCSI drive and OEM memory board, Xtend Micro
products, hangs or stalls system for up to 20 minutes

Xtend memory card together with non-IBM SCSI drive caused the Mod-80
to stall when trying to bring up an application in OS/2 2.0 GA.
The device driver IBM2SCSI.ADD has been rewritten to include a better
error-recovery routine as well as a memory-allocation routine.
Temporary fix: Use IBM memory expansion card or an IBM SCSI drive

PJ04273: Trap when starting LAN Requester

The customer received the following IPE while starting the LAN
Requestor...
The system detected an internal processing
error at location ##170:fff6bc7e - 000f:00026c7e.
line 3785, in file 4051 @ (#)vmkrh. 6.10 92/03/11. An error was found
in the file sysem. This problem has been correct in the OS/2 2.0
Kernel file system.



PJ04284: BASICA halts system

Customers using non-IBM OS/2 2.0 machines would get a hang/trap or
other error when executing the BASICA command in a VDM.
A message is now returned indicating that "The Rom portion of BASIC
not found."

PJ04290: Fortran/2 Version 1.02 Traps immediately in OS/2 session

The released version of the IBM Fortran compiler will not run in
protect mode on OS/2 2.0 GA. The problem is that the 16-bit compiler
defined a 20 byte stack to start execution on and immediately switched
to a larger stack upon entry to the compiler. OS/2 2.0 forced DOSCALL1
.DLL initialization onto all applications whether they use an API in
DOSCALL1 or not. A 20 byte stack is not enough stack space to complete
DLL initialization and results in a GP fault. Consequently, any 16-bit
application that begins execution on a small stack, something less
than 256 bytes?, will fail to execution on OS/2 2.0.
The fix is to create a temporary stack if the executable is a 16 bit
application with less than a 4k stack and it uses dll's that require
initialization.

PJ04303: DosReadQueue hangs intermittently with DosStartSession

When starting another session, using queues, the session that
started the other session hangs right at DosReadQueue. The test
case starts another session and, after the session is completed,
terminates and returns to the first session. The second session
is started, terminates, and hangs on DosReadQueue.
The problem is in the ParentNotify routine - CX is supposed to be
the session ID of the session that is terminating but CX gets
cleared in WriteTermQueue. CX should be saved at the beginning of
WriteTermQueue since for 16 calls it will zero CH and for the 32
bit calls - it destroys CX altogether. The 32bit WriteTermQueue
should save and restore all the registers it destroys that are
needed by the 16 bit code. Code changed to save CX in WriteTerm-
Queue in module smrpanot.asm.

PJ04305: Problem with drawing the cursor in high resolution super
VGA32 display drivers

This problem is due to the code length field being larger than the
actual code to be locked in memory. This was causing the lock to get
an access denied return code and none of the code memory got locked
down. Changed the hard-coded length of MoveCursor to a calculated
value.

PJ04313: TRAP E - CS:EIP = 160:FFF888A7 - TKWAKEUP()

TKWakeup's third parameter is a pointer which is used to return
the count of the number of threads that were awaken. The problem
was that TimContextHook was passing a ULONG(SSToDS(ulcount)) as
this third parameter instead of the address of a ULONG
(SSToDS(&ulcount)). Changed TimContextHook to pass NULL as third
parameter to TKWakeup because it ignores the returned value anyways.



PJ04324: 8516 Touch Screen support causes lockup during driver load

Installation of OS/2 with 8516 and XGA on a Reply Corp. machine causes
IPE when loading device driver for Touch Display support.
fix was made to Toumou.bio to allow the systems with this configur-
ation to boot and fuction properly.

PJ04325: Codeview, /O Option, Debugging child processes, hangs
when child started.

Using cvp.exe to debug 16bit applications on a 2.0 system, system
hangs when child process is started. This occurs when the /O option
is used (debug child processes).
OS/2 2.0 Session Manager was changed to stop searching the linked
list when the parent process ID was found and then terminate
the parent. It had been searching for the parent's parent process ID.

PJ04337: Trap 0008 in the page Fault Handler

Trap 0008 consistently happens on Mod56. Below is the screen output:
The system detected an internal processing error at location
##0170:FFF779DE - 000F:000329DE. Line 2927, in file 4014 @(#)
LDRSTE.C 6.76 92/03/26. LDRGETPAGE: BAD LDRREAD.
The system is stopped.
EAX=000000F0 EBX=7D030E1C ECX=00000000 EDX=00000010
EIP=FFF779DE ESP=00006548 EBP=0000659C IOPL=2
CS=0170 SS=0030 DS=0168 ES=0168 FS=0000 GS=0000
CR2=14F00000 CR3=001CA
0170:FFF779DE 837DD000 CMP DWORD PTR EBP-30,
+00 SS:000065 C=000000F0.
The problem was being caused in qsSys16Sem, it pushed several
registers including seg regs then checked if a record would fit
into a cache; if it didn't it would not clear off variables it had
pushed after the seg regs. Afterwards, when the registers were
being popped off the stack it would put the wrong value into a seg
reg causing a trap. Code corrected for this problem.

PJ04338: COREL performance impacted dramatically due to OASIS.DLL
processing images incorrectly.

Corel Draw (32 bit) for OS/2 uses a protected Windows image processor.
Their problem is that OASIS is not returning the correct size of
image bands (returns size/data for entire page instead of single
band from page). Performance impacted considerably since Corel Draw
would wait for OASIS to process entire page for each band it asked
for.
This problem has been corrected with a change to the OASIS code.
It is recommended that the user install the entire Service Pak
since a private fix is not available.



PJ04344: Trap 000C - CS:EIP = 160:FFF8A31E - Debuggers, DosPTrace()

This APAR is a duplicate of APAR PJ04661

PJ04348: Vdisk needs to work above 16 Meg

The Virtual Disk Device Driver, VIDSK.SYS, in OS/2 2.0 prevents the
full utilization of available RAM resources. This does not meet the
advertised promises of OS/2 2.0 regarding its memory addressability.
Code has been changed in VDISK.SYS to handle greater than 16Meg of
installed system memory.

PJ04358: TRAP 0000 CS:EIP= 0158 : 00000158 CSLIM= FFFFFFFF

The problem is that TRAP 0000 errors were being reported
intermittently for various applications in no predictable order.
Trap 0002 errors were being reported as Trap 0000 errors incorrectly.
The code has been changed to correct this problem. Customers
experiencing this problem most likely have bad memory modules.

PJ04370: Dialog manager application under 2.0 GA is unable to display
function keys via SHIFT-F1, produces reason code 1600600

Dialog Manager Function Key support results in a TRAP.
FKA.DLL is not properly supported under 2.0 and function keys
that were accessible under 1.3 are not under 2.0.
In this particular case, using DM::
A DM application under 2.0 GA is unable to display function keys
via shift-f1 - it produces a reason code of 1600600. Code changed
in OS/2 2.0 Presentation Manager Workplace Shell to correct this
problem.

PJ04377: PSTAT traps when running Communication Manager, LAN
Requestor and Database Manager

The customer reported problems with the PSTAT usility trapping under
OS/2 2.0.
The problem was that PSTAT was overwriting a buffer. The buffer
length is now properly checked and expanded if required.

PJ04402: Port Driver problem

Settings window for Port driver cannot be opened unless the Port
driver is the serial or parallel driver supplied with the operating
system.
Reworked code which depended on specific driver file names.



PJ04440: XCOPY returning inappropriate exit/return code ie.
errorlevel

On an OS/2 E.E. 1.32 and OS/2 V2.0 system, performing an XCOPY of
a directory which has some files in use by another process will
result in a return code of 0 (normal completion) being generated
even though the files that are in use were not copied. Shouldn't
the return code be 2 (some files or directories were not copied due
to file or directory errors) or isn't a file in use regarded as a
file error when copying?
The no_error return code from DosCopy overwrote the error return
code from DOSOPEN. Have the rc from DosCopy overwrite the DosOpen
error rc only when it has an error code.

PJ04444: RexxSysFileTree gives inconsistent results

REXX SysFileTree gives false results under certain conditions.
Customer made a REXX program called FileTree.CMD which contains
/* Small program to demonstrate SysFileTree bug */
parse arg arg1
rc = SysFileTree( arg1, stem, 'BO' )
do i = 1 to stem.0
say stem.i
end
All it's supposed to do is show a list of files that match the
first argument. It normally works fine, however, in one case, it
returns false data. The current directory for C: is C:\JUNKC\ and
it contains a file called JUNKC.TXT. The current directory for D:
is D:\JUNKD\ and it contains FileTree.CMD. When D: is current and
I type D:\JUNK2 FileTree c:*, it returns D:\JUNKD\JUNK1.TXT which
doesn't even exist. Somehow, SysFilTree combined the file name on
C: with the path on D:. This works fine if I type D:\JUNK2 FileTree
c:.\* or if I type D:\JUNK2 FileTree C:\JUNKC\*.
Problem fixed in REXX Utility program.

PJ04456: Miscellaneous problems using COM3 and COM4 on BUS systems

Comments: It dealt with too many problems in one APAR some of the
problems described in PJ04456 can be addressed through other apars.
If not, then a new APAR should be created dealing with a single
problem.
The customer for this APAR had PJ04710 listed in it's PSAR page.
Of all the customers in the IP page I added
1x441,b091,c00
0x404,b514,c00
5x444,b091,c00
To the IP page of PJ04761 which dealt with their problem.

The only other valid PMR in the IP page of this APAR 7x984,b091,c000
was notified that this APAR was going away to please create a new APAR
if needed.



PJ04470: TRAP 000D @ ##0160 : FFF6435F - 000D : A53F on 2nd Install
disk

The customer reported a trap within the OS/2 2.0 Loader. Extra
validation is now performed by the Loader to assure that a valid MTE
pointer is provided by the Tasker. In the case when it is not, a
different access method is used.

PJ04499: 3270 printscreen or drag and drop from the Desktop
will default to the opposite tray selected with the
LASERJET KYOCERA 3000A.

The escape sequences for tray selection were reversed. By
changing them back, the printer will pull the paper from the
proper tray.

PJ04500: IPE ## 0F00 : 00000D0F - 0002 : 0D0F 60000 , 2008
Doing various activities- dump received and available

Internal Processing Error at location ## 0f00 : 00000D0F - 0002 : 0D0F
60000 , 2008 ....
The problem has been reported with various different scenarios being
involved, but all have this same location.
.... Internal Processing Error at Location 0F00 : 00000D0F - 0002 :
0D0F can also be found on the same machines.
.... Scenarios when IPE has occurred.
1. Starting OS/2 Lan Requestor received 0f00:00000d0f IPE
2. Editing a file using BRIEF version 3.1 under DOS full screen
A flag was set in the beginning of the IdHandlerHP to notify
KbdStatusWait that we are currently in the interrupt state and not to
yield the process.

PJ04507: SCSI adapter system I/O problem

1.) Set DMA Pacing Value explicitly in ADD
2.) Fix handling of SCSI SenseData when more than default # of bytes
is requested.
3.) Fix handling of flushing of queues for removable devices.
4.) Observe IORB DISABLE RETRY bit after timeout.
5.) Set default ADD timeout to 10s.
6.) Fix handling of ABIOS Stage-On-Time.
7.) Return correct BLOCKSIZE for DASD devices
8.) Add support for skipping adapter cards
9.) Add support for lock/unlock unit.



PJ04509: Network printer Icon, when built, does not duplicate the
servers printer configuration

When a network printer object is created on a requester, the complete
printer propeties are not copied from the server to the requester.
The Workplace printer object and PMSPL.DLL files have been updated
to now fully replicate the server settings on the requester.
Note:
If the service is applied to the requester, the server must also
have the latest PMSPL.DLL installed on it. The 1.3 PMSPL.DLL has
been updated and should be paired with the latest LS 2.0 code for
a 1.3 server environment. If the server is 2.0, the server will
need either the Service Pak applied or the newest PMSPL.DLL file.
If the Laserjet driver is being used on the requester and server, it
should be updated to 1.3.346 level or above to work correctly in this
environment.

PJ04519: Trap 000E CS:EIP 0160 FFF7FA79 CSLIM FFFFFFFF running an
application converted from OS/2 1.3 application to a 32-BIT
OS/2 2.0 application

The customer reported a fatal trap 0000E within a call to
DosWaitMuxWaitSem.
A fatal page fault occurred when semDelFromMuxQ was called und
the context of the process that cleared a shared semaphore with
a private mux and not under the context of the process that own
the private mux. The trap physically occurred when semDelFromMu
used pPTDACur to locate the private semaphore table containing
semaphore within the private mux instead of the actual PTD

PJ04540: Trap 000D CS:EIP= 04E8 : 00002889 CSACC= 009F
CSLIM= 000031FD during installation at diskette 1

The modification was to comment out some error checking code in
the OS/2 Loader to handle a very specific BIOS glitch being
encountered in some types of hardware.

PJ04548: OS2 2.0 3270 session dies when Shift Prt-Scrn pressed

When different print drivers or different level of print drivers
are used on a 2.0 Requester printing to a WR05050 level of 1.3 Server
using 3270 print screen, the Communications Manager session will lock
up.
If the system detects that the printer drivers do not match, the
spooler will spool the job locally then redirect it across the
network to the server instead of spooling directly to the server.

PJ04553: Critical memory corruption in PMWIN.DLL

Critical memory corruption in Presentation Manager Window support.
Code changed in OS/2 2.0 Kernel to correct this problem.



PJ04564: Bitstream facelift fonts do not appear under seamless
Windows

Bitsteam Facelift Fonts work OK in Full Screen WIN-OS2, but do not
appear when running Seamless Applications. Tested with AMI Pro both
full screen and seamlessly.
The problem here is that Bitstream does a memory reallocate call and
expects to get back the SAME selector. While this is usually the case,
it is not always the case. Under OS/2, a new selector was given back
to Bitstream, so it trapped when it tried to use the old one. To "fix"
this problem, I fixed the OS/2 kernel code so that it makes the old
selector an alias to the new one.

PJ04567: Innocent looking folder, when left open at shutdown,
causes system to hang upon bootup

With a specific Desktop configuration, a harmless looking folder
will cause the system to hang upon Reboot if it was left open
prior to shutdown. The scenario requires the "folders" folder to
be open at shutdown. The system will hang during the next startup.
Workaround is to use ALT-F1 to replace ini files on boot.
This problem was corrected in OS/2 2.0 PM Workplace Shell.

PJ04572: Multiple execution of REXX CMD causes Swapper.DAT to grow
excessively

Multiple execution of a REXXUTIL SYSINI example in the same OS/2
session increases swapper.dat until the file runs outs of space.
This problem was corrected in OS/2 2.0 REXX support.

PJ04583: INT 3 left in Shell code causing SYS3173 error in
PM Workplace Shell

Int 3 left in Shell code causing SYS3173 error in PM Workplace Shell.
This problem was corrected in the OS/2 2.0 Presentation Manager
Workplace Shell.

PJ04587: Internal processing error line 60003 File selwrk.asm when
using IPMD.EXE (PM Debugger)

The above IPE occurred using the C Set/2 IPMD debugger to view the
contents of a variable. The problem is memory related and is caused
by freeing the RMP record associated with a memory segment twice. This
happened when the segment is an alias one. To resolve the problem, we
no longer free the RMP record if the segment is an alias.



PJ04596: Focus is returned to Desktop folder instead of the user's
folder.

Use standard GA product and first do the following:
1/ Open a DOS full screen VDM.
2/ Open the epm editor.
3/ Open the os/2 system folder and maximize it.
(nothing else needs to be running on the system)
...
to recreate the problem:
1/ Select the 'system setup' icon, with the mouse. Do not open,
just leave the focus on this icon, we will want to come back
to it.
2/ Press CTRL+ESC, and select the DOS full screen, switch to it.
3/ Once in the DOS full screen, press CTRL+ESC again to bring
up the task list.
4/ From the task list, select the epm editor.
5/ Once in the editor, press ALT+f9 to minimize the epm editor.
6/ PROBLEM: Focus is now sent to Desktop.
...
We need the focus to go back to the 'system setup' ICON in the OS/2
system folder. But instead we go back to Desktop.

PJ04600: Swapper doesn't respect the swappath minfree parameter
in config.sys.

Customer is using GA level code. Problem in crit-sit state. With little
disk space left, trying to open WIN-OS2 sessions ignores the minfree
number in config.sys eating until the end of the hard disk and the
system eventually hangs. It looks like all we need to do is make sure
minfree is obeyed in all cases and that should clear up the hang since
we'd never get into a spot where the disk would be full. Also, I have
noticed that if you manually get into a less than minfree available on
the hard disk, the system does not detect you are below that number.
It looks as though the swapper acts on this only if HIS action would
take the disk below minfree. MinFree was fixed and tested so that it
will not exceed the limit set in the config.sys. Therefore, the
corruption will not occur.

PJ04615: WinSetPresParam not setting background color of some
controls

Problem found in PMWIN causing WinSetPresParam to fail in some cases.

PJ04662: Switching to a DOS application causes the system to hang

The system was getting into a state where interrupts are enabled,
but the interrupts enabled hooks were not getting called, and the
system would hang.
Changed Em86EnabledInterrupts to set the force flag for
STI (Enable Interrupts) hooks if the interrupts are enabled.



PJ04661: Trap 000C in ptcnvrt.c function ptlintosel on Cobol compiler
that worked on OS/2 1.3.

Trap 000C occurs in ptcnvrt.c function ptlintosel cell convert
0s3losf fails restoring the stack.
Code changed to pass a double word parameter instead of a word
parameter.

PJ04664: TSENG 3000 Video boards cause flicker at top of screen

Using a video card with the TSENG 3000 chipset causes flicker at
the top of the video display. This problem was fixed in the OEM
BIO code.

PJ04669: Parallel port interrupt not simulated into DOS Session

Parallel port hardware interrupts not simulated into the DOS
session. Customer has an Ethernet Adapter which uses the IRQ of the
parallel port. The software attempts to set the IRQ EN bit of the
parallel control port, and therefore does not operate correctly
The virtual printer device driver did not simulate the IRQ EN
bit of the parallel control port.
VLPT.SYS updated to simulate IRQ EN bit of the parallel control
port.

PJ04680: Unable to print using picview's print to an HP7595A
plotter.

Using picview's print function unable to print using HP7595A
plotter driver. The print job goes in the spool queue and
disappears a few seconds later without any output to the plotter.
The plotter driver FillPath procedure was returning an error
when filling a null rectl. Code was changed to return OK.

PJ04695: Some DOS applications which ran under .304E are not
accepting keyboard input in 2.0 GA.

Keyboard beeps when using DOS application called MDS by Hewlette
Packard along with other DOS applications.
The OS/2 2.0 DOS Kernel was changed to fix this problem.

PJ04696: In a folder's settings notebook, include page 2, file
system criteria, the or criteria does not work properly.

It appears the OR is acting as an AND command. OS/2 2.0 PM Workplace
Shell changed to correct this problem.

PJ04706: Sound effects do not work with After Dark 2.0,
soundblaster and OS/2 2.0

Sound effects cannot be heard when After Dark 2.0 is used with a
Soundblaster board in a VDM.
A change was made to GlobalPageLock so that it would return a 1 in AX
instead of a 0, in the 286 version of WinOS2 kernel.



PJ04711: Mod-70: Custom Software not working with OS2SCSI.DMD driver

1) IBM2SCSI.ADD w/ OS2SCSI.DMD: Trying to allocate SCSI device
type 0, removable media devices receives error code 01.
2) AHA164X.ADD w/ OS2SCSI.DMD: Trying to deallocate SCSI CD-ROM and
optical devices receives error code 89.

PJ04713: Unattended OS/2 2.0 Install hangs on Reboot

System has problems in executing a Reboot or shutdown. Fix in file
system shutdown code. System will now Reboot, or successfully
shutdown.

PJ04730: Unloading classes twice causes SOM to Trap

We have come across a problem with the way WPS unloads classes.
We have a complex folder, with sub-folders to several levels
and heaps of other objects (using various classes) scattered
within these folders. When we try and delete this folder a
message is sent to unload the class, and the usage count is
of the same class (in a different folder) is deleted BEFORE
the first unload class message is processed. SOM then tries
to unload the class twice. Code changed to correct this problem.

PJ04736: Mode COM# displays BUFFER=N/A when buffer is set to auto

Mode command shows "BUFFER=N/A" when in "auto" mode. It should be
"BUFFER=AUTO".

PJ04819: Doc needed to explain the item in config.sys and limit

In the ONLINE command reference information on DEVICE=COM.SYS,
there is no mention of the paramters necessary to setup for COM3
COM4. Explicitly (P,ADDR,I), where P=Port, Addr=Address, and I=I
Explanations put in Command Reference for Com3 and Com4 setup.

PJ04835: When page is in focus the first time, text is in bold.
The next time the page gets focus, text is not bold.

Customer has added some pages to the settings notebook. When a
page is in focus the first time, it shows the text in bold. The
next time the same page gets the focus, its text is not bold
anymore. Note that the first page in the notebook is always the
same (not bold). OS/2 2.0 PM Workplace Shell changed to correct
this problem.

PJ04836: Problem adding pages to settings notebook using method
WPInsertSettingSpage.

Customer has added some pages to the settings notebook using
method WpInsertSettingsPage. When the user gets help on a WPS
settings page (eg General) leaves this window visible, moves on
to an added settings page and hits HELP, the HELP window
disappears. The correct HELP window is shown but just for a second.
OS/2 2.0 Help Manager support changed to correct this problem.



PJ04878: Getting SYS2237 with DOSAP Easy V1.0 from WordStar. Looking
for a math co-processor when it doesn't require one under
DOS.

Programs using sequence marked *** below in their assembly language
caused SYS2237 to be generated:
dbe3......finit
d92e9001..fldcw word ptr(0190) ***
d93e9201..fstcw word ptr(0192) ***
bb0800....mov bx,0008
This sequence tests for the presence of a numeric math coprocessor.
The module vnpx.sys was fixed to allow these commands to be executed
by the program.
Please note:
That the customer's PMR that created this APAR was fixed,
other PMRs that were improperly IP'd onto this APAR may not be
fixed and will require another more specific APAR. Programs
that branch off into program data areas are likely to
cause this error and are usually customer program errors, and
are not fixed with this APAR, and must be fixed by the vendor
of that program. The fix incorporated into VNPX.SYS allows
the instructions listed on the program summary page to be
executed without receiving the sys2237 error. More apars
may be needed in the future to address other specific
circumstances. This specific sys2237 error has been fixed.

PJ04882: Problems using COMDD.SYS and COM/VCOM drivers.

VCOM was not unhooking INT 14h successfully, causing problems for
the other ASYNC drivers. VCOM code was fixed so that it could
unhook INT 14h.

PJ04890: Embedded EPS graphic and a downloadable font.

When printing with the pscript driver, an embedded EPS file
printed within Describe would be printed very small. This
problem occurs no matter what font is used and each page after
the first occurence will be printed very small due to the
transform matrix being reset by the postscript driver from what
Describe initially set it to. Describe was changing the
coordinates for the output. When this was done, the pscript
driver would reset them on the next page. The driver was
changed to correct the problem.

PJ04895: Printer not responding popup message box; should have Retry
as default action and not Abort.

When a printer popup occurs for the drivers that popup a Abort, Retry,
and Ignore message box, Cancel is the default selection.
The code was changed to default the message box to Retry so that the
print jobs will not be deleted inadvertently.



PJ04904: Mouse cursor goes to right corner on Laptop. Wild mouse
fix only works about 50% of the time.

On a Toshiba laptop, connected to a Toshiba deskstation, the mouse
would go to one edge of the screen and remain there.
The mouse bytecount was getting out of sync because the mouse
controller was detecting an error when a byte from the mouse was
received by the mouse controller.

PJ04920: Customers PM Program generates SYS3171 error.

Customer has a PM application if compiled with Stack = 64,000
application fails with a SYS3171 error. If application is compiled
with stack = 55,000 application runs fine.
Altered thunk code so that it will allocate a suitable amount of
stack space for the application to run in: always more than 8k
and less than 61k.

PJ04930: Trap 000D at 0160 : FFF9FDDF running DOS program

The customer provided a scenario in which the DOS kernel would trap
during the processing of a findfirst / findnext directory search.
A change has been made to the system.
Previously the logic anticipated a fixed length buffer to
have been passed as an argument to the find api's. This was
not detected until the buffer address was near the segment
limit. We have changed the logic to stop processing the
buffer at the end of the supplied string rather than the
fixed length.

PJ04942: WinSetCP allocating memory and not freeing it

WinSetCP is allocating 4k of memory and not freeing it. OS/2
2.0 PM Window support changed to correct this problem.

PJ04960: Starting applications or closing folders on model 80
hangs / stalls system: See slow performance: Long
installation

Opening or closing windows takes too long on systems that have large
OS/2 partition (where the .ini files resides). The routine to
calculate the amount of disk space in OS/2 2.0 PM Shell API was
changed to calculate free disk space more efficiently.

Temporary fix: Keep the OS/2 partition to be as small as possible,
preferably to be under 100 MB and use FAT, the performance will be
increased tremendously. This is just a work-a-round.



PJ04968: With Panasonic printer, printing headers / footers,
footers appear on next page.

With many Epson-compatible printers including Panasonic printers
they have an automatic load feature. When this is used, the
actual printable area left on the paper is less than 8.5 by 11
inches. Hence the bottom part of a print is being put on the
next page. For many printers, the printable area has been
reduced so that any data will now fit onto the page. A formfeed
is added to ensure that the next page starts on the top of the
next sheet of paper.

PJ05032: WinCreateObject or WinSetObjectData against an open object
will hang Desktop

If WinCreateObject or WinSetObjectData API are used to modify an
object that already exists and is open, the Desktop will hang.
After Reboot an attempt to modify this object with an API may cause
the Desktop to hang, even if the object has been closed.
The OS/2 2.0 PM Workplace Shell was changed to correct this problem.

PJ05044: EMS_OS_LOW_MAP_Region stays at 384 needs 576. This is needed
for Quarterdeck porting DESQVIEW to VDM.

DOS setting EMS_LOW_OS_MAP_REGION stalls at 384k.
Modules VDMM.C and VDMMCRT.C have been corrected to support a setting
of greater than 384 for the EMS_LOW_OS_MAP_REGION.

PJ05052: WinSendMsg with MM_Queryselitemid when a menu is selected
returns mid error.

When a menu item is selected from the action bar, the menu item and
the 1st item of its drop down menu are highlighted or selected. When
the application queries the Id of the item selected
(MM_QUERYSELITEMID) in response to a WM_MENUSELECT message, the
application gets MID_ERROR in return. Finally, the Id of the 1st item
in the drop down menu is returned. The problem is that the Id of the
selected menu item (from action bar) is not pass to the quering
application. Code changed to return both menu item's IDs.

PJ05090: Double click on entry field not working in OS/2 2.0

Customer has an application in which he double clicks on an entry
field. Uses PMSPY to see that message is not getting to the
dialog procedure. This worked in 1.3. OS/2 2.0 PM Workplace Shell
changed to correct this problem.

PJ05093: DosConnectNMPipe giving error 109 where it worked in 1.3.

DosConnectNMPipe returning 109 error in 2.0 where the same exact call
in 1.3 worked. The code has been changed to check if the pipe was
closed while the call was in a blocked state.



PJ05097: Disabled menu item which has been added dynamically turns
black after it has been clicked.

Disabled Menu Item added dynamically reverses to Black Color
when clicked on it. Menu Item is still disabled after selecting,
it is just the appearance from disable to enable that changes.


PJ05147: Floppy change line not supported, causes beep during Install.

1) Fixes command line parsing for IBM1FLPY.ADD.
2) Add VIDEOPAUSE support. This fixes problems during Part II of OS/2
installation when using Adaptec 154x controllers.
3) Fix problems in support of drives with no changeline. In some
cases, the wrong diskette drive was being accessed. Also, the
non-ready timeout was too long for drives without a changeline.

PJ05157: PMV2001 running seamless WIN APP using OS/2 Kernel 6.412,
GA works OK

Running Windows application seamless caused PMV2001 error messages to
the effect that the Workplace Shell had run out of memory. Running the
same application off WINOS2 worked ok.
Memory was being allocated and not freed. The code was changed to fix
the problem.

PJ05160: OS/2 Kernel fix causes LOTUS 123 V3.1 not to read/write
drive A: causes protection fault.

Post GA and Pre-6.429 OS/2 Kernel files cause LOTUS 123 v3.1 abend
when accessing A: drive or when user presses control-break.
Em86CreateWrtSel was changed so that ECX is now preserved.

PJ05162: Communals in BSS segment aren't always initialized by the
Loader to 0.

The problem was that fixups were getting written to both initialized
and zero-filled pages when the two types of pages were combined
under a single page range.

PJ05179: Access violation in FKA.DLL

Trap 000D while accessing QueryFKADisplayDetails routine in FKA.DLL.
Proper Flag (abort execution) is returned if the return value of
FrameMinMax is zero, and the user responded to the WM_MINMAXFRAME with
a TRUE, indicating the operation is to be aborted. Problem fixed in
OS/2 2.0 PM Window support.

PJ05185: SYS3175 IN COREL DRAW 2.00A FOR OS/2.

TRAP D in CorelDraw 2.00A when entering text using the text tool.
The problem was a test as to whether the text is greater than
the user supplied buffer was performed before the code to
recalculate the offset in the buffer. Then the recalculation could
cause the length to changed to a value greater than that of the
buffer. To fix the problem, the test was moved to after the
recalculation. Now, no more text than can fit in the buffer will be
supplied.



PJ05187: 16 Bit program gives incorrect register information on trap

The problem was that the system's general protection fault handler,
trap0d, was not preserving EAX while attempting to correct a fault
that occurred in protect mode of the kernel. This is why AX usually
contained the flat ring 0 data selector (0x158 on retail kernel, and
0x168 on debug kernel). This problem equally affects 32-bit programs.

PJ05189: Trap D related with keyboard monitors

If many DosMonOpen/DosMonClose's happen at the same time, the monitor
dispatcher may not free a semaphore. When that process ends, the
semaphore is destroyed, but it is not a valid semaphore so the problem
occurs.

PJ05191: System hung in loop on DosMonRead and DosMonWrite

OS/2 2.0 running LANP/2 would sometimes hang after doing a DosMonWrite
and DosMonClose. When the hang occurs the Mouse still works.
Mon code was waiting on a semaphore that was not reset.

PJ05214: Autoscroll does not function in a right justified SLE
control box.

When using a right justified single line entry control box, the
autoscroll style does not function. Appropriate code was modified
to correct problem.

PJ05215: Old DOS applications using FCB's seem to corrupt File
System.

Customer's testcase failed due to FCB handles not being closed
properly. Changed the kernel to account for FCBs.

PJ05226: Drag and drop to Laserjet not correctly formatting page
through query of forms.

Additional space given when not computing the correct height for
characters in cyheight. This problem was corrected in OS/2 2.0
PM Workplace Shell.

PJ05232: Alt-F4, after opening the Calculator locks up the keyboard.

The customer reported that the Desktop would lock up when certain
keystrokes were struck while moving around the Desktop when the PM
calculator application was present.
A change was made to the way the calculator application saves /
restored the keyboard state table each time it became active /
inactive.



PJ05247: GA driver's COM.SYS/VCOM.SYS broke X00.SYS

GA's driver's VCOM.SYS and COM.SYS abends with X00.SYS (FOSSIL
Driver) for BBS.
The fix for this problem adds a new DOS setting HW_COM that removes
the IO hooks from the com port driver.

PJ05290: When Wm_QueryTrackInfo is sent, BP is getting corrupted.

In short, when the WM_QUERYTRACKINFO message is sent, PM is walking
over memory at 13 and 14 bytes past the end of the structure
(TRACKINFO) being passed as one of the mparams. This is causing BP
to get corrupted on the stack, and so we (Lotus) crash.
Fixed field-length defines in THK32.INC so BP doesn't get corrupted.

PJ05292: BP register gets trashed when a WM_TRANSLATEACCEL is sent
via the WinSendMsg API.

Cust sees that when he issues a WinSendMsg with a WM_TRANSLATEACCEL
message, the memory 4 bytes past the structure that is being
passed as a parameter is being trashed, causing the application
to trap.
Fixed field-length defines in THK32.INC so BP doesn't get corrupted.

PJ05310: Mouse support problem with WORD4 on VGA machine

The mouse would scroll with the text when it scrolled; pieces of the
mouse would be left behind sometimes.
The problem occurs when MS WORD, while in graphics mode, makes an
INT33 Function 9 call followed by an INT33 Function 10 call, to set
one graphics cursor and one HARDWARE text cusor respectively. The
Function 10 call causes VMOUSE and VVIDEO to flag the VDM as having
a HARDWARE cursor. This only seems to be significant to the
vvPtrRestore routine in VVIDEO, which at seeing the flag, stifles all
subsequent calls to vvPtrEraseGraphPtr. Thus, the mouse pointer
(when below the current line) was being redrawn but not erased each
time the user pressed enter for a new line.
I have modified the VVIDEO device driver to check the Video Mode
before granting any request to define a text or graphic pointer.
I have also modified the VMOUSE device driver such that, rather
than forcing a value of 1 into AX upon completion of the define
pointer request, it now simply passes on the value returned in AX
by VVIDEO (1 - emulated/0 - not emulated).

PJ05318: Child process still remains in the Task List after the child
process and parent process are killed.

WinSendMsg needed to completely terminate child process to the Shell
Process. Code change implemented.



PJ05354: Cannot loadhigh in DOS 5.0 VMB session

Doing a DOS 5.0 boot from a diskette in a DOS VDM, with FSFILTER.SYS
in the CONFIG.SYS, prevents LOADHIGH from loading TSRs in Upper
Memory Block (UMB) regardless of the amount of memory available in
Upper Memory.
Code added to FSFILTER.SYS to allow loadhigh to work correctly.

PJ05360: Running out of heap space much faster under 2.0 than in 1.3

Customer says that his application gets 1012 hex error when issuing
APIs WinCreateAccelTable, WinCreateMsgQueue and WinCreateStdWind
ow. Customer says that system runs out of heap space much faster
with 2.0 than in 1.3. Customer ran a simple program which creates
standard windows until application runs out of heap space. He
was able to create 746 standard windows under 1.3. But he was
able to create only 99 windows when running this test case
under 2.0. PM Window heap code was changed to correct this problem.

PJ05370: Hang - Mouse moves OK, mouse buttons and keyboard not
working. Applications continue to run (EG PULSE).

A problem was reported in which the Desktop would hang while in the
process of switching sessions. A change was made to the keyboard
driver such that if a period of three seconds occurrs after a 'make'
keystroke is received, and a 'break' is not encountered, the 'make'
will be disregarded.

PJ05404: Network printer user defined forms not seen by
application.

If an application does not pass in a printer name on the
DevPostDeviceModes and the print object does not have a port
associated, such as with a network printer object, the customer
will not be able to see their user defined forms. The code has
been changed so if an application does not pass a printer name
on the DevPostDeviceModes call and there is no port associated
with the queue, then the print destination can be used if that
object is the default printer object on the Desktop. The user
will still not be able to use the forms with other printer
objects that are not setup as the system default.

PJ05411: Print object hangs the Workplace Shell

A problem was reported with the printer object on the OS/2 Desktop.
Often, while the settings pages were accessed the Desktop would
hang. A deadlock situation was found in which the print object thread
would stall while another Workplace thread was updating the informat-
ion in the ini files. The interface between these threads has changed
to prevent this problem.



PJ05433: Read queue loops in Q_EMPTY

Under certain circumstances it was possible for the system to
continually loop in a routine called q_empty. This routine is called
by DosReadQueue and DosPeekQueue. Semaphore was set before entering
the loop to prevent getting stuck in the loop.

PJ05476: RSPINST fails with SYS3175

SYS3175 or Trap 000D errors in a nonswapping environment in low
memory situations.
Changed memory code in the Kernel to correct this problem.
Temporary fix: Add more memory.

PJ05480: Semaphore handle gets corrupted.

Semaphore handle gets corrupted and system gets deadlocked.
The OS/2 2.0 PM Workplace Shell was changed to correct this problem.

PJ05506: Once an object is hidden with WinSetObjectData, the object
can not be unhidden.

An object is hidden using WinSetObjectData. Unhiding the same object
using the same call is not working. Once the object is hidden it
stays hidden. The OS/2 2.0 PM Workplace Shell was changed to correct
this problem.

PJ05511: 32 Bit call hooks don't work

Call Hooks do not work if installed (WinSetHook with the HK_CallHook
option), as a 32 bit procedure. They do work as a 16 bit procedure.
In the former call, PMWIN crashes in what appears to be a call to the
hook itself.
PMWIN calls the hooks in the HW_CallHook chain directly without
checking the memory model. So we end up calling their hook by doing
a 16bit call to a 32bit address.

PJ05594: Popup message from LAN Requester print causes WIN-OS2
screen to go black until timeout or ESC on XGA machine

The XGA VDD mistakenly pass the query mode request to the VVGA.
Code has been fixed in module VXGA.

PJ05655: Keybord lock problem in OS/2 full screen session, just beeps

Keyboard beeps and locks while running monitors. The kbd beeps due
to the registered monitor not accepting any more keystrokes if the
user types too fast.
DosMonWrite, DosMonClose, DosMonOpenKbd$ changed to correct problem.



PJ05673: Network print object truncates Named Pipe to 8 characters

The printer server has a queue connected to output of \pipe\trhp2b.
The user is defined on the domain controller and print server as a
user with administrative authority. The user does a net use for lpt2
to the print queue. The user opens settings for the print queue via
the network folder. Select the output tab. The output pipe names are
truncated to '\pipe\tr' and no output is selected. The user selects
one of the 'Pipe' definitions and closes settings. The user receives
an error indicating an invalid parm and a 2nd error indicating that
the printer destination can not be found. When you open settings and
select the output tab at the print server, there is no output
connection selected.
There are two modules fixed for this: PMSPL.DLL and WPPRINT.DLL.
The PMSPL.DLL must be installed on any OS/2 2.0 Print Server that will
be accessed from a Requestor running this updated print object module
WPPRINT.DLL.
If a Requestor with this fix applied tries to open the settings for a
Print Server that does not have this PMSPL.DLL fix applied, the
requestor may get garbage in its Output settings box, and possibly
trap later.

PJ05679: CTRL-ESC does not display Window List when a disabled button
has focus.

When a disable button has focus, Ctrl+Esc will not bring up the Window
List.
Code Error: Checking that current window (focus taken away from) was
disable. If so, that means window is being destroyed. Now, parent
chain is traversed to find frame window. If frame window is not
disable, bring up Window List.

PJ05683: Background REXX Program can not continue when VIOPOPUP in
foreground.

Background processing of a REXX batch file halts when a viopopup is
displayed by another program. This problem can be caused by starting
a REXX Application that starts a PM application that terminates itself.
Once the PM application has completed the REXX file can no longer
execute other programs following the PM app until the foreground
viopopup has been dismissed. New code hasbeen implemented to correct
this problem.

PJ05731: IPE at 0160 : FFF7BB9C using updated VCOM.SYS.

When using multimedia extensions for Windows, VCOM.SYS was failing
on a call to VDHQueryLin during INT 66H processing. Failure was due
to failing to clear the upper half of the ESI register.
VCOM.SYS code changed to correct this problem.

PJ05742: 2.0 WinDDEInitiate api call causes access violation.

When using the WinDDEInitiate api in 32 bit mode, Lotus application
crashed. The error returned was PMWIN:7. Code changed in OS/2 2.0
PM Window support to correct this problem.



PJ05763: Object class pointer passed to WPCLSUNINITDATA is bad.

Object Pointer which does not point to any Class hangs WPSH.
When a class .DLL unloaded prematurely, a problem in the WPSH
exception handler caused the system to hang. The exception handler
was fixed to correctly handle this situation.

PJ05769: ATM Traps with Font with large kerning table.

ATM font with a large kerning table will not load through
the font palette.
PMATM had not handled AFM files greater than 64K. This problem was
resident since 1.3. Corrected to handle over 64K AFM files.

PJ05787: Extra PF keys on 122 key keyboard are not supported in PM
environment under OS/2 2.0.

F13-F24 keys on 122 keyboard not supported in PMWIN code.
PMWIN.DLL changed code in jagvkey.asm to recognize F13-F24 keys on
122 keyboard.

PJ06014: Redirected output from int 21 functions 02h and 06h
does not appear in an output file.

As part of it's attempt to self-check results, the DT.EXE test
had occasion to "rewind" STDOUT sometimes and check if expected
output characters have appeared in the redirected output file.
Redirected output from Int 21 fn 02H and 06H (output) isn't
showing up in the output file. DT finds the characters written
previous to the one it expected.

PJ06015: Virtual Machine Boot ( VMB ) does not have files =
support.

The files= xxx line was being ignored in a VMB in the CONFIG.SYS
file.
Move a line from demcreatevdm2 to vdm1 to allow file=.

PJ06016: DPMI not always unlocking memory it locked down,
affects AUTOCAD 12 and other DPMI using programs.

There was a problem in the logic DPMI used to free mapped
objects if a real mode page was mapped more than once into a
protect mode memory block. Fixed dpmFreeMapItem to work
correctly so that all mapped pages will be unlocked.

PJ06017: Diskette drive becomes inoperable after changing the
value of port 21h (Interrupt Mask Register).

In a VDM, sometimes diskette drives become inoperable after
changing the value of port 21H (Interrupt Mask Register). VPIC
provided an interface for VFLPY to mask and unmask IRQ 6. The
Effective IMR was not being updated. This is now being done.



PJ06018: Vwin.sys placed in Config.sys when Dos/Win not installed.

Vwin.sys is placed in the config.sys when DosEnvironment=0 in
response file install. Vwin.sys is not installed to the hard disk,
but the config.sys tries to load it resulting in a error at boot time.
One of the two places that the Vwin.sys could be added to the
config.sys did not check to see if you were actually installing
WIN-OS/2, only if seamless WIn-OS/2 would be installed. Since
WIN-OS/2 is always and only availabe on VGA displays, all VGA display
systems would get this error if WIN- OS/2 was not selected for
installation.

PJ06019: Response file install won't install 8514/A when using
SEMAINT.

Response file install won't install 8514/A when using semaint. In the
C/I/D install scenarios, OS/2 builds a maintanance system using
SEMAINT, Reboots off the maintsys, then starts the response file
install. The display type for 8514/A is incorrectly detected. OS/2
detects the display type as a VGA.
The code was altered to change the process to query the system for
the proper detection of the XGA and 8514/A adapter.

PJ06031: 16BIT mixed mode application calls 32BIT user built dll
which does DosRead. Trap 000D occurs in DOSCALL1.DLL when
thunk changes sp

The scenario occurs when 16bit mixed mode application calls
into a 32 bit user built dll which calls a DosRead. The stack
which DOSCALL1.DLL uses comes from 16bit main. When the
32 bit entry point to DosRead is called, DOSCALLS.DLL thunks
the parameters to 16bit since DosRead is 16bit.In GA when
this was done the thunk looked at stack pointer and if within
1024 bytes of 64k boundary it was bumped up to boundary to start
in next segment. This does not adversely affect 32 bit applications.
but gets trap 000D when called in manner described.
Problem corrected by allocating new stack when this case occurs.

PJ06032: Installing printers from the control panel kills VDM.

If you chose to add a printer (main, control panel, printers,
install) without a diskette in drive a:, a message says that the
program has executed an illegal instruction and kills the VDM.
Code change to em86int.asm to fix the problem.

Note: This APAR is answered for informational purposes regarding
an internal defect.



PJ06035: Mystify Screensaver causes a GP fault and kills VDM

The WINOS2 and WINOS231 path is set to winos2.com which does
not allow you to select windows fullscreen on the session page
of the notebook (winos2.com is DOS full screen). The path should be
* with the working directory set to the correct windows director
From control panel, Desktop, if you chose Mystify screensaver,
a GP fault occurs and the vdm closes.

Note: This APAR is created and closed for informational purposes as
a internal Defect. Below are closure comments from the developer:
.
EM86 was not always insuring that the user's data segment was valid
so it was possible to trash kernel data.

PJ06050: Trap 000e when closing folders with printers in them.

PET Foods is experiencing a problem where a TRAP E occurs when
they close their folder that contains all their printers. The
shell was unloading all of our data that was associated with the
print objects.
We now lock our objects so they can never go dormant when the
folder is closed. If they don't go dormant, the shell should
never free our data.

PJ06052: C0000005 error displayed during boot process.

C0000005 error displayed and system hangs during the boot
process when customer's 1.x Device Driver which references
a customer DLL is included in the config.sys device=xxxx.
This is a working 1.x product that fails on 2.0 GA code.
The failure is caused by the system not calling the DLL's
initialization code when the DD and DLL are loaded.

PJ06053: DLMSEM Internal err - libi block bad flags.

Taking a TK inversion panic on a RequestMutex on the DLMSem.
TKLibiInitNextDll did not free the DLMSem as the libi init block
did not have the DosLoadModule flag set. Consequently the thread
that did the load was still the owner of the semaphore after the
load was complete. The thread then went away, and the slot id
was reused for another thread in another process. When the
original process did a DosLoadModule (different thread), the
semaphore code paniced as the owner of the semaphore was bad.
DLM SEM problem - could exit from DosLoadModule without freeing the
semaphore due to plib flags.

PJ06057: Cannot change border size of schemes in scheme palette.

This APAR was a result of an internal defect as described below:
On 6.420, go to scheme palette and select a scheme to edit the
border size of that scheme. Notice that the sample in the edit
scheme dialog does not update while you are changing the border
size. If you drag the editted scheme onto any windows, the
border sizes of the recipient windows do not change.
Code changes to textconv.c and ddepragt.c is fix the problem.



PJ06058: Nack running DDE, DIB FORMAT, PM CLIENT / WIN SRVR,
VGA only.

Internal Defect information: Nack is received doing DDE, device
dependant bitmap format, PM Client / Windows Server. This problem
exists in both XGA and VGA environment.
- Works fine in the VGA/GA environment
- Nack is not received in the XGA/GA environment; however, the
data is never received from the server.
Changes made to clipping and DDE code to fix problem.

PJ06059: Insufficient memory error when performing DDE.

Internal defect information:
When requesting bitmap format, warm/hot links, a message box
saying that you have insufficient memory is displayed.
Fix made to btmpconv.c in the clipping code.

PJ06060: Clipboard and DDE can not be switched to private

There are WINOS2 settings to switch Clipboard and DDE to private
(default is public). If you select private, the Clipboard (and
DDE) remains public. Also, the settings are not being saved -
if you chose private in WINOS2 setup, close it down and
reopen it, public is still set.

PJ06071: XGA system deadlocks waiting for Coprocessor not busy

If I run an XGA application, e.g. FVT test application. NATIVE.EXE,
in a VDM and I invoke a screen switch i.e., CTRL or ALT + ESC at just
the right time that the application is commanding the XGA coprocessor,
the VXGA DD gets stuck in a loop waiting for the XGA Coprocessor Busy
bit to clear. Since the loop is so tight (test and jump), the XGA
Coprocessor never gets a chance to finish servicing the application
and come ready.
Upon switch to backround VXGASetBgnd is calling vXGAVideoState
which is calling vXGAWaitForCoProReady which is still getting
caught in a TST and JMP loop. Code modified to correct this
condition.

PJ06072: Windowing SVGA 1024X768X16 creates a blank (Black) window

Running SVGA.EXE in a window produces a ring 0 trap on some
systems, and generates erroneous data on others. This problem
is a source of great confusion to users, as they often run the
program in a window, generating false results, and wreaking
havoc with their video.
Added the necessary code to the VSVGA.SYS module to invalidate
usage of SVGA.EXE in a Windowed VDM.



PJ06073: SVGA.EXE in a window produces traps or erroneous data

Running SVGA.EXE in a window produces a ring 0 trap on some
systems, and generates erroneous data on others. This problem
is a source of great confusion to users, as they often run the
program in a window, generating false results, and wreaking
havoc with their video.
Added the necessary code to the VSVGA.SYS module to invalidate
usage of SVGA.EXE in a Windowed VDM.

PJ06074: Corrupted DOS Full Screen Image (EVEREX CARD)

This problem has been observed in the execution of FRACTINT
on the EVEREX SVGA adapter in the 640x480x256 resolution. We
believe it is a VVID problem because it is manifested as a
corrupted DOS Full Screen image.
Problem Scenario:
1. Executing FRACTINT in the DOS Full Screen produces a
correct image, for VGA MCGA mode (Function key F3)
320x200x256.
2. Pressing Alt+Home to place the image in a DOS Window
results in a correct image.
3. Pressing Alt+Home again to return the image to a DOS
Full Screen results in a corrupted image.
This is a problem with the chain4 bit on some vga hardware.

PJ06075: Cursor corruption on switch to fullscreen windows session

Bring up several fullscreen Windows sessions - both ProgMan and
Windows applications (CorelDraw, for ex). Then, switch between
the sessions using Alt-Esc, or go to the Desktop and use the
Window List. Eventually, the sprite is corrupted but the
problem is definitely intermittent and variable. It appears
with vertical lines over it. These lines stay and move -
Acting as a part of the sprite until the sprite is changed
(as when you resize, enter an application, ...).
To insure proper operation when it comes to modification of the
hardware Sprite (Mouse Pointer), the current XGA Coprocessor
request must complete its operation. Therefore, to solve the
Sprite corruption problem, we now have to wait for the
Coprocessor to get done before reading or writing to the Sprite
hardware.



PJ06076: XGA/VGA: Seamless windows application allows icons to bleed
through

Recreate:
(1) Start a windows application in a seamless WINOS2
session. The problem was originally found with
Clock.
(2) Open the Minimized Window Viewer.
(3) Position the mouse pointer over the minimize
button of the seamless windows application
(4) Press the left mouse button to minimize the app.
The application icon should appear in the Minimized
Window Viewer window highlighted. (If it is not
highlighted, use the mouse to highlight it.)
(5) Press the ENTER key to restore the windows application
to a seamless window. Use the mouse to
minimize the application. Repeat this process of
minimizing and restoring the windows application very
quickly.
Eventually, the windows application will appear to lose the
focus when it is restored. If the mouse is used to select
any function in the seamless window, whatever is underneath
(on the Desktop) will bleed through or appear on top of the
seamless window. This occurs on both XGA and VGA systems.
The application can be closed from the Windows List and does not
appear to have any side effects, other than the fact that the
windows application can not be used while it is in this state.

PJ06077: Fixes for ADAPTEC 154X.ADD.

1.) Fixed Trap-D when supporting disks > 1GB.
2.) Do not truncate cylinder counts for disks with >1024
cylinders.
3.) Allow for CDB without data transfer direction.

PJ06078: BVHSVGA.DLL fails setting 256 color on TRIDENT 512K.

Trying to change to the 256 color mode on Trident causes a failure
in BVHSVGA.DLL. Change was made to OEMHLP code to correct the
problem.

PJ06079: ADAPTEC AHA174X.ADD fixes.

1.) Correct problems handling disks > 1GB.
2.) Fix problems with shared IRQ levels on EISA machines.
3.) Correct CDB/Request Sense lengths while clearing pending
Unit Attention conditions on removable devices.

PJ06080: ADAPTEC AHA152X.ADD fixes.

1.) Change over to ADD/DM command line parser.
2.) Fix handling of request sense for internally generated
commands.
3.) Clear pending UNIT ATTENTION conditions on removable devices.
4.) Also includes fix for IPE (DevHlp Usage Error) when
configuration includes CD-ROM.



PJ06081: ADAPTEC AHA164X.ADD fixes.

Fixes for support of >1 GB drives on Adaptec's MicroChannel SCSI
Adapter.

PJ06083: AHA154X.ADD - Incorrect SCSI sense data returned.

A problem was found in the AHA154X code which causes the module
to return incorrect sense data for certain SCSI commands. Since
sense data is used by OS2SCSI and drivers written to SCSI, to
determine error conditions, drivers using the SCSI.SYS interface
do not operate properly with the AHA154X.ADD driver.

PJ06084: Don't return error on IOCTL 8-66 if no media.

IOCTL 8-66 returns an error if there is no media. This is not
necessary because the data packet already returns info on the
presence of media.
IOCTL 8-66 doesn't return media not present error now. It does
return an indication of whether media is in the drive or not in
the data packet.

PJ06087: FD16-700.ADD/FD8XX.ADD correct handling of SCSI sense
data.

Updates to IORB->StatusBlock were being written to the wrong
segment. Adapter Error codes in the IORB->StatusBlock were not
being translated from CAM CS_* equates. The flag in the
IORB->StatusBlock indicating valid Sense Data was being set
regardless of whether Sense Data was returned.

PJ06088: OS2SCSI.DMD - correct handling of READDEVICEPARMS.

The bit settings in SCSCSI.H for the Device Flags field of
Read Device Parameters were incorrect. The device flags setting
currently returned (0) was benign. If a SCSI device had a
pending check condition, then the first Read Device Parms
request to the device may fail. OS2SCSI uses IOCM_UNIT_STATUS
to determine whether the device is Powered-On or Defective. This
request can set an error IORB Status if there is a pending check
condition on the device. OS2SCSI failed the Read Device Parms
call when an error was returned on the UNIT_STATUS IORB. Removed
IORB Status check on IOCM_UNIT_STATUS request. Corrected Device
Flag equates.

PJ06089: Copy protection logic fail at IBM PUBLISHING/55.

The logic of TT_NOT_CONSEC of CheckFormatPacket in DMIOCTL.C
is wrong. Problem was due to a typo in a test for the type of
command (multitrack or not).



PJ06094: Server print properties are not reflected on the 2.0
Requester properly

Printer properties information on the server is not fully available
to the requester using a network print object on a 2.0 requester.
The code was changed in PMSPL to correctly pass back to the requester
using a network print object any information, such as new forms
changes or updates, that have taken place on the server.

Note: Apar PJ06094 opened from OS/2 1.3 APAR JR06464 for OS/2 2.0

PJ06101: VDM FullScreen in the foreground - the VDM still runs
OK and background applications run but CTRL-ESC/ALT-ESC
doesn't work.

The foreground application did not respond to messges to switch the
focus so the 'application not responding' dialog was displayed. But
somehow a switch did occur and brought the VDM fullscreen
session to the foreground. When the 'application not responding' dialog
is displayed, Session Manager will not allow session switches
until the dialog is answered. The problem here is the user
cannot see the dialog but still Ctrl-Esc/Alt-Esc did not work.
The fix was to allow session switches if the 'application not
responding' dialog is up but PM is not in the foreground.

PJ06102: OS/2 2.O Linker incompatible w/ CODEVIEW 1.0/BASCOM/2.

When using BASCOM/2 and creating an executable using the OS/2 2.0
Linker generates the following error message when invoke by
codeview 1.0:
Unknown symbol

The problem was that LINK was using NB02 to delimit debugging
information while LINK386 was using NB00 to delimit debugging
information. However, in OS/2 1.x, LINK used NB00 to delimit
debugging information. This incompatibility has been resolved.

PJ06103: LINK386 is generating a 16-bit reference.

LINK386.exe is generating a 16-bit reference in the Toolkit
sample vdd that was shipped at GA. This happens when the
vdd tries to do an import from any of the vpic subsystem. All
code objects in vpic are 32-bit flat. The loader faults in
load_vdd's when it tries to load the vdd. We originally felt
this was a loader problem, but further investigation showed
that it was actually a bad fixup record that is being generated
by the Linker.



PJ06104: LINK386 traps when linking applications with big libraries.

The Linker only set one meg of virtual store for SRCLINES
debugging information. When linking objects and libraries with
>1 Meg of SCRLINES info, the next memory object was overwritten
which caused traps.

PJ06105: COMDAT problems.

1) This problem exposed two Linker problems related to the
COMDAT object record. The first, which led to the L1103
error message, was that the Linker was not correctly
assembling COMDATs that were defined in two or more records.
Each COMDAT specifies an offset and length within the
communal variable, but the Linker was not paying attention to
the offset when determining the final size of the COMDAT. For
example, NONCONN1 contained four COMDAT records describing
variable A:
COMDAT #1: variable A offset 0 length 20
COMDAT #2: variable A offset 4 length 4
COMDAT #3: variable A offset 12 length 4
COMDAT #4: variable A offset 20 length 4
Clearly the size of the variable should be 24 bytes, but the
Linker only managed to come up with 16. An error message
resulted when attempting to reference data beyond the invalid
segment limit (16) with a FIXUPP record. The Linker now
correctly determines sizes of communal variables defined by
COMDAT records.
The second problem, which led to the L1101 error message, was
that the Linker did not incorporate any means to reference a
COMDAT record from a FIXUPP record within the same object
module. A communal variable defined by a COMDAT record
receives a matching PUBDEF, so an EXTDEF from a different
object module is resolved correctly. The Linker now creates a
matching EXTDEF record as well so that an external reference
within a FIXUPP record will be resolved correctly, even within
the same object module. Simply treat a COMDAT as an EXTDEF as
well. For example, to reference COMDAT #1, #2, and #3 in the
following layout with an external index:
EXTDEF #1: variable A
EXTDEF #2: variable B
COMDAT #1: variable C
EXTDEF #3: variable D
COMDAT #2: variable E
COMDAT #3: variable F
use 3, 5, and 6 respectively.



2) This problem further exposed the Linker problem related to
referencing a COMDAT record from a FIXUPP record. Whereas the
private Linker with a fix for problem #1 will work fine when
linking a single object file, it may generate the L1101 error
message when linking multiple object files that define the
same COMDAT variable with different external indexes. This is
because the Linker only generated a matching EXTDEF record for
a COMDAT record when the COMDAT was first encountered. The
Linker now creates a matching EXTDEF record for every unique
COMDAT record within an object file. In the test case
provided, COMDAT1.OBJ defined COMDAT XYZ, which should have
had an external index of 11, while COMDAT2.OBJ also defined
XYZ, which should have had an external index of 9. However,
whichever object was linked first determined which external
index would be used across both objects. Linking
COMDAT2+COMDAT1 produced the L1101 error message because the
FIXUPP in COMDAT1 which referenced external index 11 was
invalid due to the Linker only having defined 10 valid external
indexes. Linking COMDAT1+COMDAT2 simply produced an invalid
fixup because the FIXUPP in COMDAT2 which referenced external
index 9 was resolved but referenced the wrong item.

3) This problem exposed a Linker problem related to iterated
data within COMDAT records. The Linker erroneously used the
amount of data (11 bytes) in the COMDAT record to determine
the size of COMDAT_SEG1 instead of the size of the expanded
data (400 bytes). This led to the L1101 error message. The
Linker now uses the size of expanded data when determining the
amount of information provided by a COMDAT record.

4) This problem exposed a Linker problem related to encountering
the same COMDAT variable defined by multiple COMDAT records
in two different object files. When an already defined COMDAT
variable is encountered in a different object module and the
selection type is SAME_SIZE and the COMDAT variable is the
same size has defined earlier, the Linker is supposed to skip
subsequent concatenation records for this same variable. It
wasn't, however, which led to the L2057 error when it
encountered a COMDAT concatenation record for variable A in
the second object file. The Linker now behaves properly.

5) This problem resulted from an invalid FIXUPP record. The
FIXUPP record, which followed a COMDAT record that had an
implied external index of 18, referenced external index 19,
which had not been defined yet because it belonged to a
subsequent COMDAT record. Because every COMDAT variable is
assigned a matching EXTDEF by the Linker, the following
statement from the OMF document applies to this problem:
"Any EXTDEF records in an object module must appear before
the FIXUPP records that reference them."



PJ06106: Linker does not use LIB= environment variable for .DEF
files.

The documentation for the Linker states that the LIB= environment
variable can be used to specify directories along which object
modules, libraries, and module definition files will be located.
This was not the case with definition files.

PJ06113: FD16-700/FD8XX.ADD need to set IORB_STATUSBLOCK_AVAIL.

FD16-700/FD8XX.ADD were not setting IORB_STATUSBLOCK_AVAIL when
necessary.

PJ06114: OEM machines do not boot if the controller is reset.

Some OEM machines will not boot if the controller is reset.
Fix made to IBM1S506.ADD to allow machines with this problem to
boot.

PJ06117: DosSetFileMode does not return Access_Denied if ACL.

DosSetFileMode needs to check to see if there is an ACL on the
file. If there is, return Access_Denied.

PJ06119: Queues returns Error_Sys_Internal to DosWriteQueue.

The problem was that the Error_Too_Many_Posts error code was
being returned to Quecalls from a call to DosSemClear, and
DosWriteQueue translated this error code into Error_Sys_Internal.
While it is true that Error_Too_Many_Posts is an error code, it
should be ignored by Quecalls because the end result is that the
semaphore is clear, which is what needs to be accomplished by
the DosSemClear call. Changed Quecalls to treat
Error_Too_Many_Posts as a successful return from DosSemClear.

PJ06149: Incorrect output of print test on IBM52XX.

Prtdd_29 char mode 1 and prtdd_29 char mode 2 of Printest are
printing wrong on 5204 quick writer and 5202 quiet writer and
3816 pageprinter. The spacing of 'chardir' string is big in
prtdd_29 char mode 1 and 2. In Printest_post 60 and post 62 and
post 64 and post66...post 70 the spacing between characters and
between the rows of characters is very large.
Removed the hard coded DC_TYPE in the GreConvertWithMatrix calls.

PJ06150: Overlapping text on IBM52XX.DRV.

The headings of Lotus charts are overlapping on top of each other
...spread sheet cells are too small, so the text and cells are
overlapping each other on 3816 PagePrinter. On 16bit, it is OK.
This problem scenario caused by same problem as PJ06149. Same
fix applies: removed the hard coded DC_TYPE in the
GreConvertWithMatrix calls.



PJ06151: Extra sheet of paper for PageMaker jobs on Epson
printers.

When any PageMaker job is printed on an EPSON printer, an extra
sheet of paper is ejected. The form feed in the job properties
panel is "Conditional".
Added extra check for RAW job formfeed in wooutput.c

PJ06152: No pop-up on server / requester when printing via
manual feed.

No pop-up on server/requester when printing via manual feed.
When attempting to print a legal form thru manual feeding on the
IBM4019 drivers, there should be a pop-up message asking to mount
the legal form to the printer and select "OK" or "Cancel" to
print. This pop-up is not received on the server when sending a
job from a requester. As a result, legal form cannot be printed.
The job detail view says it is "PRINTING" but it does not print.

PJ06153: Not able to change timeouts in printer port settings.

When trying to open printer port setting by double clicking on
the port ... LPT1 ... a popup occurs stating "ERROR IN LOADING
MODULE C:\OS2\DLL". Change made to spooler so that load module
error does not occur.

PJ06154: Start again option does not work for print while
spooling job.

When a print job is printed while still spooling, the start again
option does not work. The start again should restart the print
job even if it was printing while spooling.
Fixed start-again for printwhilespooling jobs.

PJ06204: Extended Operations Console Facility/2 program, fails to
run on XGA, but runs on VGA.

Machine with VGA setup....Blue Popup appeared for the EOCF/2 IBM
product stating that it was initializing and then the popup
disappears and the Desktop comes right up....all is well.
Change machine to XGA setup.....Reboot machine.. config.sys
processes and the blue popup for EOCF/2 never shows up... only
the Desktop background color appears...machine is completely
hung... hardboot to recover...softboot doesn't work.
Problem unique to XGA being active.
An attempt was made to access the pib before the pointer was
initialized. This has been corrected.
Note: Apar PJ06204 opened from OS/2 1.3 APAR JR05775 for OS/2 2.0



PJ06217: System with X.25 and multiple artic cards hangs in customer
application with internal processing error at location
0228:8DA6

"Internal Processing Error at location 230:8da6 System is stopped"
error occurs intermittently. A dump of the problem shows that
PhysGetHearderInfo calls HY_IntErrNull because the arena header is
incorrect. This problem was caused when the user attempted too many
calls to DosGetShrSeg. When the number of calls to this API exceeds
its maximum possible value, the value in the Global reference count
rolls back to zero, thus causing an IPE. Since this field is only
16bits, its maximum value is limited to 65535. When an addition call
to this API is made, its value gets slashed down to zero. To prevent
this an additional error condition was added, so when the max value
is reached, it simply returns a general failure error when more calls
are made to DosGetShrSeg.
Note: Apar PJ06217 opened from OS/2 1.3 APAR JR05097 for OS/2 2.0

PJ06263: Print 120+ jobs from IWP/2 generates PMERR_SPL_NO_MEMORY.

When a single iwp/2 prints more than 120 documents with the
ibm4019 printer driver, they receive an error condition of
PMERR_SPL_NO_MEMORY. Fix made by LexMark to 4019 driver.

PJ06274: WP config displays resolution as Y by X instead of
X by Y.

The Workplace Config page that displays the screen resolutions
currently displays the resolutions as y-resolution by x-resolution
by colors. This is contrary to popular usage. Screen resolutions
are identified as 640x480 or 800x600, not 480x640 or 600x800.
This is confusing and counter-intuitive and should be corrected.
Code was changed to display resolution x by y instead of y by x,
as is generally accepted practice.

PJ06275: Norway: Key for "SELECT ALL" doesn't work in drive/icon
view.

The Ctrl-key combination for the choice "Select All" does not
work in the 307H Norwegian driver when used in an Icon view of a
drive object. It works in the US driver. The key combination
works in all other folders I have tried in the system. Different
keyboard layout requires us to use other keys than US, so the
translated definitions for this function must be used in the
drive objects, as in all other folders in the system.

PJ06277: Image background lost after reopen settings and goto
background.

After you have your folder settings currently set to display an
image as the background, if you reopen the folder's settings and
goto its background page, the folder background clears to color
background and the image background is lost. A similar problem
occurs with the settings for Lockup. None of the settings were
being saved after they were changed.



PJ06280: Add/Change dialog comes up twice from Include page of
settings.

On 6.420, if you go to the 2nd page of the include tab of the
settings notebook of any folders and click on the add or change
button, a change/add dialog would come up. After you finish
making changes to the include settings, if you click on the add
or change button on the dialog, the system will first close the
dialog and then bring up another dialog immediately. Select
'Cancel' to the second dialog fixes the problem.

PJ06281: Problems with WPMAKEDORMANT processing.

WM_MAKEDORMANT clears some flags on the parent folder of the
object being made dormant. Some places we call _wpMakeDormant()
directly and these flags don't get cleared. This can cause
disappearing objects or other strange behaviors.
Also, if there is a trap during processing the snooselist,
exception handling recovers, but there are cases where objects
will never be made dormant again (when a bad object on the
sleeplist causes the trap). We need an inner exception handler
to handle removing the offending object the sleeplist.

PJ06283: Prevent error popup on lock/unlock without media in
drive.

With out media in the drive and lock or unlock is selected,
an error popup is displayed stating that the drive is not ready.
Since the intent is to lock/unlock an empty drive, this error
popup needs to be suppressed.

PJ06286: SEINST should not care what /T param is on pristine
system.

A remote install usability problem would be solved if SEINST
would not require or ignore the /T: parameter if the system was
booted from a diskette. SEINST would need to ignore and/or not
require this parameter in both the first and second pass of the
program. This could be accomplished by returning 0xFF01 if
booted from the hardfile on the first pass and 0xFF02 if booted
from a diskette on the first pass. Then, on the second pass,
when it is ALWAYS booted from the hardfile, the program would
know to ignore the parameter again. This is a customer usability
concern. This would allow the administrator to code parameters
for SEINST without knowing if the machine was booted from the
hardfile or diskettes. SEINST was changed so that if the current
boot drive is removable, the /T parameter is optional. If the /T
parameter is provided, it is not validated. On the first pass of
SEINST, if the boot drive is removable and all went well, it will
return a return code of 0xFF02. On the second pass of SEINST, if
REMOTE_INSTALL_STATE is set to 2, the same /T parameter stuff
described above applies. SEINST will do none of the cleanup done
when REMOTE_INSTALL_STATE equals 1. It will fall through to the
wait for WPS section.



PJ06290: Query, then set kbd leds hangs system on fast machines.

System hangs as a result of DosDevIoctl for querying (then
setting) the keyboard LEDs. A delay should help. Fix made to
BDKBD component to solve problem.

PJ06291: Value Set returns incorrect data on VN_SELECT, VN_ENTER.

The code is presently returning the value set's window handle on
the VN_SELECT and VN_ENTER messages, instead of the row and
column information that the documentation specifies. The fix is
to have the value set return row and column rather than the
window handle.



**********************************************************************
* The following problems were reported against OS/2 Version 2.0. *
* These problems are Unreproducible with this Service Pak installed. *
* They are listed for Information Only. *
* Note: There could be other reported problems that are not listed. *
**********************************************************************


PJ01861: Dragging windows across VGA screen leaves horizontal lines behind.
Mouse pointer also leaves lines

PJ02977: PCOM (PC3270) does not work properly with 6.177H under VDM.
Also LAN Support Program V1.24 drivers do not work properly with
6.177H

PJ03233: Unpredictable ordering of objects within folders

PJ03268: OS/2 2.0 VDM does not allow asynchronous communications to run
properly. Communications never go past the dialing stage

PJ03499: The "Arrange" option in the Minimized Icon Viewer folder arranges
the icons in an inconsistent pattern

PJ03606: Unable to load block device driver under WIN-OS2.

PJ03700: VIEW.EXE returning error "Cannot open input files" when more than
3 files are specified as parameters when data files on HPFS LAN

PJ03739: Unable to print a PostScript file in OS/2 2.0 with AES support

PJ03756: User DBM application receives SYS3171 error - "Stack overflow"

PJ03783: MOUSE.SYS fails to recognize mouse parity errors as signalled by
keyboard controller, and mouse rails to screen edge

PJ03810: PCAnywhere's AWSEND function hangs session

PJ03823: Trap 000E at OS/2 Requestor periodically, running Ami Pro
across the LAN from a LAN server

PJ03833: CHKDSK /F trashes directory structure

PJ03836: When opening folders, they are not receiving the focus and
end up behind other windows and are difficult to find

PJ03901: Com port failure on system outfitted with DigiBoard4, X00 Fossil
driver, and BBS software

PJ03928: Pulse: if opened, then a Windows application is opened, then Pulse
is closed, can't re-open Pulse



PJ04006: 4019 object installed in HPFS bootable partition disappears after
initial shutdown of Desktop

PJ04018: Maximized System Editor traps when entering type for data file
with no EA's

PJ04023: System hang, varies during installation. Install will not continue

PJ04025: DOS_Version DOS Setting doesn't get saved

PJ04054: Dragging icon files to A: drive causes IPE...system dies

PJ04099: No Help from DOS Full-Screen (Windowed) pulldown Help Item

PJ04125: GP FAULT in GDI.EXE when minimizing CCMAIL seamless on Desktop
and new items arrive in In Box, causing icon to blink

PJ04133: Customer system stops with Trap 000E when reading from A: drive
while printing

PJ04150: Cannot print to server if print drivers different levels

PJ04159: Windows application object created from Drive folder/directory IPE's

PJ04204: Win-OS/2 can't load if setting is enabled. It will work if set
auto

PJ04222: Shutdown hangs after installation of LAN Requestor

PJ04256: DosCopy returns undocumented Return Code 6

PJ04267: FundMaster 6.0 causing Trap 000D in filesystem routine

PJ04268: Dual Boot does not boot back to OS/2 from DOS

PJ04287: Incorrect error handling in PMWIN when windows opened and
closed simultaneously

PJ04292: Running XGA at VGA resolution on Model 90 causes ghosts on
display. Customer can recreate at will

PJ04308: Word for Windows Spell Check does not work correctly when run
under seamless mode of Win-OS/2

PJ04326: Error SYS3171 occurs when attempting to shred multiple directories
simultaneously

PJ04366: Lotus 123/G PM painting problems

PJ04380: Error messages (namely 2018) of RC Compiler are not descriptive
of the real problem



PJ04417: Many customers experiencing .INI file corruption immediately
after successful install. Symptom is missing objects, icons

PJ04482: Desktop goes blank when attempting to print from Database Applet
in Productivity folder

PJ04489: Norton Desktop for Windows Fatal Error 0X0404

PJ04494: OS/2 V2 - Poor performance with Clipboard in Win-OS/2

PJ04502: DDE problems between Win-OS/2 and OS/2

PJ04515: Printing more than 8 pages from PMChart causes trap

PJ04628: Mouse locks when in Win-OS/2 session

PJ04640: Mod-70 traps when H_DOS_SEARCH_NEXT instruction is
encountered

PJ04699: Seamless windows cause WP Shell to lock up

PJ04727: Print to single printer from multiple queues results in overlaid
output

PJ04791: Problem with seamless Word for Windows V2.0 receiving focus

PJ04845: Vwin.sys entry put into config.sys even if Windows environment
not requested on response file install

PJ04854: Screen paints itself after exiting from Excel

PJ04883: Word for Windows hangs seamless Help Tutorial

PJ04897: PostScript and host-directed printing

PJ04926: Double-clicking on a folder with drives doesn't work. OS/2 v2 GA.
Drive is FAT

PJ04941: WordPerfect macro does not pause in semaless mode but works
fine under Win-OS/2 full-screen

PJ04945: Using comm port CTS handshake causes system to slow down

PJ04964: Dragging the command prompt onto the Desktop and then running
Chkdsk from an OS/2 command prompt shows bad extended attributes

PJ04967: Make-Utility-Diskette can't find BOOTDISK.EXE. This is from the
new preloaded machines' Welcome folder

PJ04983: IPE at 0160:FFF722F9 running Sequel (SQL) Server

PJ04993: Error Code 4: cannot print to LPT1 when printing to HP Deskjet
500C or 500 with Epson printer driver



PJ04999: DISKCOPY of one 720K diskette to another is corrupting target

PJ05012: Folder with manilla icon on Desktop has two folder choices in
"Create Another"

PJ05061: Double icons for Public Applications

PJ05075: Win-OS/2 Pscript.drv out-of-date/buggy

PJ05079: Problems with rendered bitmaps in OS/2 Clipboard

PJ05098: Running Visual Basic seamlessly sometimes gets an inactive
window's menu displayed when selecting it from background

PJ05151: Missing icons in Public Applications folder

PJ05212: OS/2 Applets unable to print to HP LaserJet III printer

PJ05257: Workplace Shell loses icons from folders after shutdown and IPL

PJ05268: MicroFocus COBOL application fails to load _SORT.DLL across network
more than once

PJ05377: Trap 000E after ALT-ESC back from Win-OS/2 full-screen

PJ05378: Windows application running from PM Desktop in full-screen
Win-OS/2 session does not close after calling up help

PJ05419: Trap 000E at 0160 : FFF897CC running application that worked
under 1.3

PJ05472: Swapper grows continually at 30 Mb per hour with Excel and SQL
running a DDE link

PJ05491: WordPerfect for Windows traps when using 3270 emulator

PJ05497: GP Fault using clipboard in Win-OS/2

PJ05533: Platinum 2.0 for DOS traps when running in a windowed or
full-screen VDM. Platinum is being used with Novell 3.11 network

PJ05573: Sort hangs after execution and ungraceful shutdown

PJ05574: IBM mouse not working on 8516 when connected to the monitor.
Works fine when connected to the CPU. Double-clicking problem

PJ05674: Screen blanks when switching from Win-OS/2 to Desktop
while Win-OS/2 redrawing screen

PJ05682: Tutorial for MS Project will not run correctly in seamless
window



PJ05849: PaintJet driver does not print in landscape mode

PJ05897: Cannot get OS/2 objects into Win-OS/2 Clipboard on Mod 95 486/50
running medium resolution

PJ05908: OS/2 V2.0 - traps with Win-OS/2 applications on L40SX

PJ05920: Seamless WordPerfect for Windows icon remains hatched after
exit if Help is used

PJ05985: The comm.drv dated 6-11-92 (8394) is not working with PCPlus/Win
or with CrossTalk/Win (3.1.0). GA driver works fine

PJ06025 Using OS/2 2.0, Mod95, and the EPM editor, text marking the
redrawing process leaves lines behind where text used to be

PJ06045: IPE 0170:FFF7834D line 3197 in LDRSTE.C LDRSEG - bad lock

PJ06137: ProComm Plus traps when exiting seamless session

PJ06138: Invoking Word for Windows will bring up a new object even
though the settings are set to display existing object

PJ06250: DOS_Version not updating using SysCreateObject


 December 31, 2017  Add comments

Leave a Reply