$PSDocId: Document Release 1.0 for Run-time Library Release 4.5$ 
                                                               Feb. 1999

                                          PlayStation(R) Programmer Tool
                                             Runtime Library Release 4.5

                          Library Changes, New Additions, and Known Bugs
                                                        from Release 4.4
------------------------------------------------------------------------
                      Copyright(C) 1999 Sony Computer Entertainment Inc.
                                                    All Rights Reserved.
------------------------------------------------------------------------

Known Bugs and Cautions
------------------------------------------------------------------------
<Limitations on HMD Library>
- The environment map is provided as a Beta version, because the 
  format may change in future releases without keeping compatibility.  
  The Beta-version primitives are not officially supported by SCE at 
  this point. If you wish to use them for creating titles, please do 
  so on your own responsibility.

<Limitations on Memory Card GUI Module>
- At the moment, the latest module cannot be utilized for the "CodeWarrior 
  for PlayStation" of Metrowerks Inc. The module for the "CodeWarrior 
  for PlayStation" will be able to be downloaded from the SCE-NET
  when it is ready.

<Known Bugs>
- In the Extended Sound Library (libsnd), the phonation of noise 
  currently does not work properly.  Use the Basic Sound Library 
  (libspu) to use noises.  This problem will be fixed in the next 
  release.

  All product and company names mentioned herein are the registered 
  trademarks or trademarks of their respective owners.


SDevTC Tools
------------------------------------------------------------------------
<Files Changed>
pssn\readme_j.txt             
pssn\bin\asmpsx.exe           Updated
pssn\bin\aspsx.exe            Updated
pssn\bin\ccpsx.exe            Updated
pssn\bin\psylib2.exe          Updated
pssn\bin\psylink.exe          Updated
pssn\bin\symmunge.exe         Updated
pssn\bin\dos\asmpsxd.exe      Updated
pssn\gnusrc\gcc281s.zip       Updated

<Files Added>
pssn\bin\gnumake.exe        GNU Make utility
pssn\gnusrc\gnumakes.zip    gnumake compressed source file
pssn\gnusrc\gcc272s.zip     GCC 2.7.2 compressed source file


CD-ROM Library (libcd)
------------------------------------------------------------------------
<Function Specification Changes> 
- CdPosToInt() and CdIntToPos() have been separated into the different
  object files.

- Debug level 3 has been added to the CdSetDebug() arguments.
  As a result, "DiskError:" and "com=" messages are now displayed in the 
  debug level 3 only..
  
- The operation mode has been fixed to be set as mode=CdlModeSpeed in
  CdGetDiskType() internally.

Extended CD-ROM Library (libds)
------------------------------------------------------------------------
<Library Bug Fixes>
- After DsGetDiskType() is issued, the function occasionally does not 
  return until the disc cover is opened.  This problem has been fixed.

- Although the PlayStation disc is set, DsGetDiskType() occasionally
  returns DslOtherFormat.  This problem has been fixed.

<Header File Modification>
- DsGetDiskType() prototype declaration has been added to libds.h.


ETC Library (libetc)
------------------------------------------------------------------------
<Header File Modification>
- VSyncCallback() prototype declaration has been modified for the purpose 
  of supporting C++.


Basic Graphics Library (libgpu)
------------------------------------------------------------------------
<Functions Added>
- setDrawStp() which is the macro version of SetDrawStp() has been added.


<Header File Modification>
- GPU_printf() prototype declaration and DrawSyncCallback() prototype 
  declaration have been modified for the purpose of supporting C++.  


 Extended Graphics Library (libgs)
------------------------------------------------------------------------
<Library Bug Fixes>
- GsGetVcount() sometimes returns an incorrect value depending on the 
  execution timing.  This problem has been fixed.

<Header File Modification> 
- Declaration of the non-existing external variable, GsLSMATRIX, has been
  removed from libgs.h.   


Extended Memory Card Library (libmcrd)
------------------------------------------------------------------------
<Library Bug Fixes>
- When MemCardExist() or MemCardAccept() is executed to a new MEMORY CARD, 
  it is not detected as a "new card" occasionally.  This problem has been 
  fixed.  

- While creating a new file by MemCardCreateFile(), if the MEMORY CARD
  is inserted or removed repeatedly, it is possible that the process 
  freezes and sometimes does not return from the function.  This problem
  has been fixed.

- If attempted to delete the active PDA application file by 
  MemCardDeleteFile(), the program does not return from the function.  
  This problem has been fixed.

- While the MEMORY CARD is being initialized by MemCardFormat(), 
  insertion or removal of the controller or another MEMORY CARD to the 
  other slot results in initialization failure occasionally.  
  This problem has been fixed. 

- MemCardFormat() operates improperly occasionally when MemCardExist() or 
  MemCardAccept() is executed immediately before MemCardFormat() to another
  slot than the specified slot.   This problem has been fixed.


PDA Library (libmcx)
------------------------------------------------------------------------
<Library Bug Fixes>
- During registration process execution, the program occasionally go into 
  unstable.  This problem has been fixed.

- The result of McxSetUIFS() was not reflected to the PDA boot application.

- When no MEMORY CARD nor PDA is inserted to the MEMORY CARD slot, 
  McxSync() does not return the correct results.  This problem has been 
  fixed.

- With McxExecApl(port,-1), PDA application cannot be terminated by a
  kill command.  This problem has been fixed.

- When attempting to read or write the user definition device driver of its 
  data length with zero, communication error occurs.  This problem has
  been fixed.


<Function Specification Changes>
- The following function names are changed.  (Related part such as 
  macro names are also changed)

    Change               To
  McxGetApr()       McxGetApl()
  McxExecApr()      McxExecApl()
  McxFlushAcs()     McxFlashAcs()
  
- The 2nd arguments of McxHideTrans(int, int) was not utilized 
  therefore it has been changed to McxHideTrans(int).
  
- The order of call of McxStartCom() and initialization functions 
  have been changed.

- McxSync() has been changed so that any of arguments, "cmd" and 
  "result" may be given as zero pointers if no return values are 
  of interest. 

<Function Added>
- A special-purpose function, McxCardType(), has been added to 
  determine whether or not the PDA is inserted to the MEMORY CARD
  slot. 


Data Compression Library (libpress)
------------------------------------------------------------------------
<Function Specification Changes>
- DecDCTBufSize() has been separated into another object file.


Serial Input/Output Library (libsio)
------------------------------------------------------------------------
<Library Bug Fixes>
- With _sio_control(0,3,0), when obtaining the communication speed, 
  if the communication speed is over 65536bps, an incorrect value is 
  returned.  This problem has been fixed.


Extended Sound Library (libsnd)
------------------------------------------------------------------------
<Library Bug Fixes>
- With SsSetReservedVoice(), when the reverb or noise are used for the 
  non-reserved voice by utilizing libspu, the reverb or noise instantly
  disappear.  This problem has been fixed.


Basic Sound Library (libspu)
------------------------------------------------------------------------
<Functions Added>
- SpuSetESA() has been added.  This function sets the reverb memory for
  the straight PCM playback.


MEMORY CARD GUI Module (mcgui)
------------------------------------------------------------------------
<Module Bug Fixes>
- With McGuiSave() and McGuiLoad(), when save and/or load is executed,
  zero is returned whereas the specified return value is 1. This problem 
  has been fixed now and 1 is returned as specified.

- As for SE playback, regardless of McGuiEnv.sound.se.prog's value, 
  the playback is always performed as in program No.=0.  This problem 
  has been fixed.

<Module Specification Changes>
- The English message display logic has been added.


<Header File Modification>
- McGuiSetExternalFont() prototype declaration has been added to mcgui.h.
