This is another public release of my attempt to build an X11 server for
Amiga. It is supposed to fix all known bugs from the previous release and
may even have some new features. For details, see changes below.



Contact:
--------

	email:	dspach@free.fr
	web:	http://dspach.free.fr



Changes:
--------

* main changes in v040

    hopefully, Cybergraphics and/or Mediator users should be able now to
    use the server with almost all features:

	- PiP on Cybergraphics is supported without hardware acceleration
	  but only for rgb16pc pixel formats
	- Window mode on Cybergraphics is supported without hardware
	  acceleration (as on P96)
	- rgb16pc as all other XXXXpc pixel formats are supported also
	  without hardware acceleration, however, some rare complex graphic
	  ops will not be shown correctly (i.e. will display wrong colors).

    this has been tested on a WB3.0 machine with P96 V2 and CGX V42 with the
    latest updates available, graphic card being a PicassoIV.



* main changes in v030

    this release is now fully based on Xfree402 source code

    IMPORTANT:

    amiga specific options syntax has changed to avoid options name
    clashes with Xfree one's, this is now

	Xami402 [regularXoptions] -amiga:option1,option2,option3 ...

    features

	- only one version for RTG and OCS/ECS/AGA
	- built-ins fixed fonts and cursors
	- depth support 4/8/15/16/24/32 bits per pixel
	- always use a colormap for depth <= 8
	- hardware cursor is enabled by default
	- work-around for clients using little endian pixmaps
	- may display in a window
	- may display in a PiP window
	- Workbench tooltypes handling has changed, see below



Requirements:
-------------

    - WB 3.0 or up
    - 020, 030, 040 or 060 CPU with FPU
    - network subsystem such as AmiTCP, Genesis or Miami

    Supported depth, pixel formats and additionnal requirements:

    * Xami402

	- depth 4 bits for OCS/ECS chipsets
	- depth 4 or 8 bits for AGA chipsets

	when using a graphic card:

	- requires RTG system such as Cybergraphics (V41) or Picasso96 (V2)
	- depth 8, 15, 16, 24, 32 bits
	- window mode requires Picasso96 V2 or CGFX V42
	- PiP window mode requires Picasso96 V2 or CGFX V42r7

NOTE1:
some knowledge about X11 is required, since I'm not going to supply it !


NOTE2:
no more fonts are provided in this distribution since this release has
some built-ins fonts and cursors. But most clients will require more
fonts, so you may get them from my site, from the Geek Gadgets distribution
at http://www.ninemoons.com or from any BSD/Linux distribution.
Fonts must be dropped in X11ami:lib/X11/fonts/font-type-dir,
just make sure that fonts.dir and fonts.alias files have the correct
content (see an X font manual for description).



Useful links:
-------------

X is a big subject on his own, so you may find some related infos at

	http://www.xfree86.org
	http://www.rahul.net/kenton



Usage:
------

Before starting the server, make sure to launch the MakeAssign icon,
since an assign is required for the server to find fonts and bitmaps
at the right place.

To learn the Workbench ToolTypes and/or CLI options, use a CLI and
type:

	X11ami:Xami402 zzz

Almost all the CLI options are the same as the standart X11 servers
found in the Un*x world.

Amiga specific options are:

  noaccel

	turn off graphic acceleration. This will considerably slowdown
	graphics operations such as on screen rectangle fills or
	blittings. However this may in some cases be safer.

  nohwcursor

	disable hardware cursor emulation

  nolock

	This is a dangerous option that may crash your machine, you have
	been warned. This will remove the locking/unlocking mechanism
	of the screen or PIP bitmap.

  nocbpixe

	turn off pixmap endianness work-around

  planar

	use native Amiga chipset instead of RTG card

  pip

	show X display in a PiP window, you need a graphic card that has
	Picture in Picture capability. Some more restrictions may apply
	for your card, e.g. 8 bits PiP on a 16 bits screen, etc ....
	Consult your P96 or CGFX documentation.

  window

	show X display in a window of the default public screen. The depth
	and the pixel format of the X display will be the same as the public
	screen one's. The public screen depth must be more than 8 bits, that
	is an RTG card is required.

  screen=mode

	use that 'mode' screen, the value may be specified in Hex or decimal.
	For a PAL Hires Screen Mode this value is 0x29000.

  priority=N

	set the foreground process priority when the server is running
	(process will go down to priority -1 when iconified)

  dpi=XxY

	set display resolution to X and Y dpi instead of defaults 75

  pixel=format

	set pixel format such as rgb15, bgr24, argb32 ...

  WIDTHxHEIGHTxDEPTH

	use a display size of WIDTH and HEIGHT with a pixel that DEPTH



Workbench usage:
----------------

If you want to start the server from Workbench you will have to setup
the icon as a project whose tool is X11ami:Xami402 and provide
tooltypes almost the same way as the CLI options.

if you use from CLI

	Xami402 -amiga:800x600x16 -query pc -fp built-ins,tcp/pc:7100

then do on the icon

	- tool			X11ami:Xami402
	- 1st tooltype		-amiga:800x600x16
	- 2nd tooltype		-query pc
	- 3rd tooltype		-fp built-ins,tcp/pc:7100

NOTE4:
in the above example, we use a host named pc (probably a Linux box)
with a display manager (-query pc) and a font server on TCP port 7100,
but built-ins server fonts are first searched


Make sure also to modify the etc/X0.hosts file in order to allow remote
machines to display on your amiga machine.

Here are the settings I use to connect to my pc Linux box from my A4000
with AriadNE2 and PicassoIV cards:

    Xami402 -amiga:nolock,pip,960x720,pixel=rgb16,priority=1
	    :0 -query pc -fp built-ins,tcp/pc:7100 -once



Shortkeys:
----------

- RAmiga-Q	quit the server
- RAmiga-R	reset the server
- RAmiga-M	send screen or window to back
- RAmiga-H	iconify the server



Known issues:
-------------

- only TCP/IP transport is used even with local clients
- does not check if PIP window is greater than screen
- memory fragmentation (huge usage of alloc/free)
- pixel=bgr24 shows wrong colors, as probably some other formats



Please note also:
-----------------

The following may apply if the nocbpixe option is used.

Some applications running on Little Endian machines (PC's) display
wrong colors on the Amiga server which is a Big Endian machine. For
instance, StarOffice is known for that problem, as are some Window
Managers.

    THIS IS NOT a bug of Xami !


