


				  - 1 -



			  _P_A_W_S _3._2_1 _P_r_o_j_e_c_t _E_R_S

       PAWS 3.21 is a "maintenance" revision. It features no major
       enhancements.  Its purpose is to	provide	support	for the
       CATSEYE displays, and specifically the 319C+. There are no
       changes in code not related to CATSEYE. This means no bug
       fixes, no compiler revision, no Wolverine or Weasel support,
       etc.

       The MUSTS for the project are:

	 1.  CATSEYE support (all of 98548A, 98549A, 98550A) for
	     both alpha	and DGL	graphics.

	 2.  Model 319C+ qualification.

       There are no "wants".

       Detailed	descriptions follow.











































				  - 2 -



		       _C_A_T_S_E_Y_E _S_u_p_p_o_r_t _i_n _P_A_W_S _3._2_1

       PAWS 3.21 will be the first version to support the CATSEYE
       displays. These 3 versions of the CATSEYE display will be
       supported in revision 3.21:

	 1.  LCC (98549A) - Low	Cost Color CATSEYE. This is
	     intended to be a "replacement" for	hexagon.  It has 6
	     planes (2 overlay,	4 display), 1024 x 768 displayable
	     pixels, 1MB of framebuffer	(1/4 MB	off-screen). No
	     flashing H/W cursor. This is the display used in the
	     319C+.

	 2.  HRM (98548A) - High Resolution Monochrome CATSEYE.	A
	     new model,	it has 2 planes	(1 overlay, 1 display),	no
	     color capability, 1280 x 1024 displayable pixels, 2MB
	     of	framebuffer (3/4 MB offscreen).	No flashing H/W
	     cursor.

	 3.  HRC (98550A) - High Resolution Color CATSEYE. Another
	     new model,	it has 10 planes (2 overlay, 8 display),
	     1280 x 1024 displayable pixels, 2MB of framebuffer
	     (3/4 MB offscreen). No flashing H/W cursor.

       The 98541A CATSEYE (640x480 pixels) will	NOT be supported in
       3.21.

       HRM and HRC are collectively referred to	as HRX.

       PAWS 3.21 will provide "soft framebuffer" support for all of
       these models.  It will not employ any line-drawing or other
       "graphics engine" hardware built	in to any of these, except
       for using the window-mover for character	writes and screen
       clears. Both alpha and DGL graphics support will	be
       provided.

       CATSEYE will be supported on all	S300 SPUs supported at PAWS
       3.21 release (models 310, 320, 330, 350).

       Following are two detailed explanation sections,	one each
       for the alpha driver and	the DGL	driver.	Interactions
       between the alpha and DGL drivers are explained in the
       appropriate sections.



















				  - 3 -



       _C_A_T_S_E_Y_E _A_l_p_h_a _S_u_p_p_o_r_t

       A new driver will be written to handle all 3 CATSEYE
       versions. A new driver is desirable because there are
       architectural, timing, and feature differences between
       CATSEYE and its nearest relative, Topcat	(Bobcat	display
       driver hardware).  We expect that this new driver will also
       provide average 2X - 3X performance increase in character
       writing speed over Topcat displays on the same CPU,
       especially for dense text. This is due to a minor internal
       redesign	of the driver, which is	based on the CRTC driver.

       The new driver will be called CRTE, and will be supplied	in
       the INITLIB file	on the BOOT2: disc.

       CRTE will have similar functionality to CRTC, except it will
       not support a flashing cursor. CATSEYE hardware does not
       support a flashing cursor.

       CRTE will support CATSEYE only at control address $560000 in
       DIO I space (this is an internal	select code, not a "real"
       or external one), and NOT in DIO	II space.

       The driver provides capabilities/support	as follows:

			  |			 Model
	    Function	  |	LCC	   |	  HRM	     |	     HRC
       ================== | ============== | =============== | ================
       Screenpix width	  |	1024	   |	 1280	     |	    1280
       Screenpix height	  |	 768	   |	 1024	     |	    1024
       Width  (characters)|	 128	   |	  128	     |	     128
       Height (lines)	  |	  48	   |	   51	     |	      51
       Print lines	  |	  47	   |	   50	     |	      50
       Font char width	  |	   8	   |	   10	     |	      10
       Font char height	  |	  16	   |	   20	     |	      20
       Typeahead length	  |	 119	   |	  119	     |	     119
       Background color	  |    black	   |	black	     |	   black
       Alpha color	  |    white	   |	white	     |	   white
       Language		  |  based on kbd  |   based on	kbd  |	 based on kbd
       Font style	  |in graphics ROM | in	graphics ROM | in graphics ROM
       Number font chars  |  3 x 128	   |  3	x 128	     |	 3 x 128
       Cursor style	  | inverse "blot" | inverse "blot"  |	inverse	"blot"
       Cursor color	  |    white	   |	white	     |	   white
       DGL interaction	  |share DGL planes| share DGL planes| share DGL planes
       Togglealpha	  | disabled	   | disabled	     |	disabled
       Togglegraphics	  | disabled	   | disabled	     |	disabled
       Default colormap	  | same as 98547A |  no colormap    |same as 98700-8pln
			  |		   |		     |

       Note that setup for LCC is the same as for Hexagon (98547A).












				  - 4 -



       Internals users can and do change some of the above values
       for previously supported	displays. In general the same
       changes can be made the same way	for CATSEYE on PAWS as they
       were for	Topcat on PAWS.	 Values	which can be changed and
       their ranges are:

       Width in	characters:
	  any n, 20 <= n <= <screenpix width> div <character width>

       Height in lines:
	  any n, 1 <= n	<= <screenpix height> div <character
	  height>

       Background color:
	  changed by changing color map	entry 0	(LCC/HRC only).

       Alpha color:
	  changed by sending characters	136..143 to CRT	(can be
	  disabled) (LCC/HRC only).
	  Also changed by changing color map entries 0..7 (LCC/HRC
	  only).

       Language:
	  Language automatically selected based	on keyboard
	  installed at bootup.





































				  - 5 -



       _C_A_T_S_E_Y_E _D_G_L _S_u_p_p_o_r_t

       DGL will	support	all CATSEYEs as	"soft frame buffers".
       Except for graphics_clear, all drawing operations will be
       done by the CPU,	rather than by the CATSEYE assist hardware.

       DGL will	access CATSEYE using either address 3 or 6 in the
       display_init call.  In DGL, 3 talks to the current console
       device (which could be a	CATSEYE), while	6 accesses an
       alternate "internal" graphics display (which could be
       CATSEYE,	when alpha is being displayed on some other
       device).

       CATSEYE hardware	cannot be used in DIO I	address	space
       except at the "select code" that	corresponds to 3 or 6;
       therefore display_init (3.. or display_init(6.. are the only
       ways to access it from DGL.

       DGL will	NOT support CATSEYE in DIO II address space.

       DGL will	provide	monochrome graphics on HRM, 64 colors (same
       as hexagon) on LCC, and 256 colors on HRC. Resolutions will
       be 1024 x 752 on	LCC, and 1280 x	1004 on	HRx, increasable to
       1024 x 768 on LCC and 1280 x 1024 on HRx	by disabling
       typeahead.

       All DGL display functions that are applicable to	raster
       displays	will be	functional with	CATSEYE, with the note that
       HRM supports only monochrome graphics. LCC will default to
       the same	color map as 98547A, and HRC will default to the
       same color map as 98700-8plane. This is the same	color map
       that is used by the alpha driver.






























				  - 6 -






























































			PAWS 3.21 Configuration

PAWS 3.21 will be a PCO to PAWS 3.2. The revision affects 4 files in the system.
Since the system is supplied in both single and double sided versions, there
are 2 structures involved:

Single-sided: 	
	the module CRTE will be added to file "INITLIB" on disc "BOOT2:".
	file "GRAPHICS" on the disc "GRAPH:" will be replaced.
	file "FGRAPHICS" on the disc "FLTLIB:" will be replaced.
	file "FGRAPH20" on the disc "FLT20:" will be replaced.


Double-sided: 	
	the module CRTE will be added to file "INITLIB" on disc "BOOT2:".
	file "GRAPHICS" on the disc "SYSVOL:" will be replaced.
	file "FGRAPHICS" on the disc "FLTLIB:" will be replaced.
	file "FGRAPH20" on the disc "FLTLIB:" will be replaced.

These discs will keep the same part numbers, but the revision number will
change to Rev. 3.21. Other discs will not change.

There will be no other structural changes.
