

========
FILE:
Lib42E.ZIP

=========
DATE:
April 17, 1998

===================
CONTENTS OVERVIEW:

Lib4E2.zip contains library 4.2 headers and files that
were released previously on the Web as Lib42J.zip.  Six
of the header files have now been translated into English,
hence the "E" suffix. Please note that this zip does NOT include
PATCH files for libds.lib, libpad.lib, and libmcrd.lib 
that were  previously posted on the Web as 
"j421ds.zip", "j421pd.zip", "libmcrd421.zip" 
 


===============
INSTRUCTIONS:

If you have not installed any of the Library 4.2 files before,
then use PKUNZIP or WinZip to extract the contents
of the two directories, "\include" and "\lib"
into the directories appropriate to your 
development environment.  Then download the patches
"j421ds.zip", "j421pd.zip", "libmcrd421.zip"  from the Web
Site and unzip them to the "\include" and "\lib" directories.


Otherwise, if you already using an existing Library 4.2,
then you should just use PKUNZIP or Winzip to extract
the contents of the two directories into a temporary
directory.  Then copy the following files into the
"\include" directory of your development environment:

	Autopad.h
	kernel.h
	libcd.h
	libds.h
	libgte.h
	libspu.h
	

=====================
CONTENTS IN DETAIL:

This zip file contains the library 4.2 header and include
files.  It does not contain the latest patches for 
memcard

	Autopad.h
	kernel.h
	libcd.h
	libds.h
	libgte.h
	libspu.h

Read the following release note for more information
about this library (this is the same as the Library Release
4.2 information that was released on the Web previously
as Lib42J.zip).


	


[------------------------------------------------------------]

$PSDocId: Document Release 1.0 for Run-time Library Release 4.2$
                                                            January 1998

                                          PlayStation(R) Programmer Tool
                                             Runtime Library Release 4.2

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

Known Bugs and Cautions
---------------------------------------------------------------------------
	 -libpad.lib(controller library) has been added to support the 
          Analog Controller(DUAL SHOCK). libpad.lib not only supports
          the Analog Controller(DUAL SHOCK), but also supports all
	  other controllers including GUNCON and Multi tap. In order to 
          use the functions of the Analog Controller(DUAL SHOCK) it is 
          necessary to have libpad.lib. Therefore, for future controller 
          control we recommend libpad.lib. Please note that libpad.lib 
          cannot be used together with the current libgun.lib, 
	  libtap.lib and libpad.lib.
          Furthermore, in libapi.lib, the SendPad() function has been 
          deleted. Therefore, in order to use the vibration feature of 
	  the Analog Controller(SCPH-1180), libpad.lib will be needed.
          Please note that it is necessary to use the latest version for 
          libapi.lib, libapi.h, libpad.lib and libpad.h.  
	  
	  Please refer to Runtime Library Overview and Reference manuals
	  for details.

        - Regarding polygon non-active/active sub-division, the HMD 
          primitive driver function for libgs has restrictions. 
          For the (maximum)number of sub-divisions, do not set a number
          which is not defined in GsUNIT_DIV1 - 5 of libgs.h or 
          DIV2x2 - DIV32x32 of hmd.def.
          Please especially note that the number "0" will not work.
  	 

	- bsearch function in the C Standard Library(libc/c2) does not
	  work correctly.  This malfunction is planned to be fixed in
	  the next release. 

All product and company names mentioned herein may be the trademarks of 
their respective owners.  



Kernel Library(libapi)
---------------------------------------------------------------------------
##Library Bug Fix
~~~~~~~~~~~~~~~~~
	 -When standard input/output functions such as firstfile function,
          open, read are executed on different devices, for some orders 
          and combinations of executions, standard input/output functions 
          such as open and read did not work properly. This malfunction
          has been corrected.
	  	  
	 -When executing free3() after changing the size of an area 
          allocated in malloc3() using realloc3(), the area was not 
          completely freed. This malfunction has been corrected.
	  
Functions Deleted
~~~~~~~~~~~~~~~~~
	 -Following the new addition of libpad.lib, SendPad()
          has been deleted. 



C Standard Library(libc/c2)
---------------------------------------------------------------------------
##Library Bug Fix
~~~~~~~~~~~~~~~~~
     	 -When memset() was used, there was a warning while compiling the 
          software. This malfunction has been corrected by commenting out
          the memset() argument within memory.h.



Link Cable Library(libcomb)
---------------------------------------------------------------------------
##Functions Added and Header File Modified
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	 -For all features currently implemented using the _comb_control 
          functions, highly readable macro functions have been defined 
          and added to libcomb.h.
	  Please refer to function references for details.


	
Extended CD-ROM Library(libds)
---------------------------------------------------------------------------
##Library Bug Fix
~~~~~~~~~~~~~~~~~
     	 -After issuing primitive commands DslPlay,DslReadN, DslReadS, 
          some parts of the internal status were not initialized even after
          calling DsFlush(). This malfunction has been corrected.
	


Basic Graphic Library (libgpu)
---------------------------------------------------------------------------
##Functions(macro) Added
~~~~~~~~~~~~~~~~~~~~~~~~
	 -Macronized SetTexWindow(), setTexWindow() has been added to 
          libgpu.h.  

##Library Bug Fix
~~~~~~~~~~~~~~~~~
	 -Up till now, functions such as AddPrim,SetPolyF3 have been linked
          as one object. These functions have been separated into individual
          objects as to avoid unnecessary links.

	 -The malfunction of GPU timeout occurring when using setLineG3/G4
          has been corrected. 

	 -The malfunction of GPU timeout occurring when executing 
          BreakDraw()/ContinueDraw() has been corrected. 
	  
	 -The library has been modified so that the standard display area
          (position on the actual display)set in libgpu is to be displayed
          in the center of the screen of a regular TV set. 



Extended Graphics Library (libgs)
---------------------------------------------------------------------------
##Functions Added
~~~~~~~~~~~~~~~~~~
         -Translucent primitive driver with no light calculation for HMD 
          has been added. 

	 -Dual-side primitive driver for HMD has been added. 

	 -Pseudo environment map primitive driver Beta version has been added. 

        Please refer touAppendix A: Primitive Type Listvin hmd.doc for
        details of the new functions added.		  


##Library Bug Fix
~~~~~~~~~~~~~~~~~~  	

          -The malfunction that address errors occur when using the following 
           GsSortObject5(J) low level functions has been corrected. 

	  GsPrstF3GL(), GsPrstF3GLFG(), GsPrstF3GNL(),
	  GsPrstG3GL(), GsPrstG3GLFG(), GsPrstG3GNL()

          -In HMD animation, when switching SID the current sequence ID 
           did not transist. This malfunction has been corrected. 



Basic Geometry Library(libgte)
---------------------------------------------------------------------------
##Library Bug Fix
~~~~~~~~~~~~~~~~~
         -The malfunction that the return value for ApplyRotMatrix() 
          returned an incorrect value has been corrected. 



Memory Card Easy Access Library(libmcrd)
---------------------------------------------------------------------------
##Library Specification Changed
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    	
           -For the functions MemCardExist, MemCardAccept, MemCardReadData, 
            MemCardWriteData, MemCardReadFile, and MemCardWriteFile, the
	    retry process after communication errors has been improved.



Extended Sound Library(libsnd)
---------------------------------------------------------------------------
##Functions Added
~~~~~~~~~~~~~~~~~
	 -The following functions have been added:

	  SsSeqPlayPtoP()	Play a specific section for SEP/SEQ 

	  SsSeqSkip()     	Increase the play pointer for SEP/SEQ

	  SsSetCurrentPoint() 	Set data address retrieved from
                                SsGetCurrentPoint() for SEP/SEQ 


##Library Bug Fix
~~~~~~~~~~~~~~~~~
         -When a callback function is set by NRPN in a SEQ with a 
          infinite loop and the value given to that callback function
          is over 19, at some point the system hung up.
          This malfunction has been corrected. 

