An X-Window system Port for MiNT


This is a port of the X-Window system (X11R5) for MiNT. Unfortunately,
this
distribution contains only executables. There's still a lot of work to be
done
to be able to distribute the full source code. Until shortly you could get
the
original source code on ftp-server of the TU Darmstadt, but somehow they
are
gone now. (This might have something to do with the fact that they have
X11R6
there now?!) Anyway, you can find more fonts and documentation there.


Installation
============

1. Install mint-net and get a shell "sh".

2. Create a neu directory. In the following steps you must replace "$X11"
with
   this directory.

3. Unpack the archive in "$X11". You will get the directories "$X11/etc",
   $X11/home and $X11/usr.

4. Create the directory "$X11/tmp".

5. Create the directory "$X11/bin" and put the shell "sh" in it.

6. Edit (or create) the file "mint.cnf": It should contain at least:
   CON=u:\dev\console
   PRN=u:\dev\console
   cd u:\
   setenv UNIXMODE /-ru
   setenv PATH /usr/local/bin/X11
   setenv HOME $X11/home
   sln $X11\bin u:\bin
   sln $X11\etc u:\etc
   sln $X11\usr u:\usr
   sln $X11\tmp u:\tmp
   exec $X11\bin\kbd
   exec $X11\pty\pty
   INIT=$X11\usr\local\bin\X11\xinit

7. Restart your computer. You should get a "xterm" and a "xclock".

The X-Server
============

The actual X-server is called "X". It should be invoked by "xinit" or
"startx"
but can also be invoked directly. If you invoke the server directly, the
"DISPLAY" environment variable should be set to ":0".

The "/tmp" directory has to be on a minix-partition of your disk or you
have to
invoke the server as "root". Otherwise you'll get an error like this:

    Binding Unix socket: access denied.

When the X-server starts, the program will print out an error message like

    Couldn't open RGB_DB '/usr/lib/X11/rgb'

You can safely ignore it. Sometimes you will also encounter a message like

    Unix domain socket /tmp/.X11-unix/X0 trashed, receating

This is because this file is supposed to be a socket and not a normal
file. But
this shouldn't cause any other problems.

The server needs at least two fonts: "cursor" and "fixed". They can be
found in
the "fonts" subdirectory. If you want to install more fonts, put them
there
too.

The keyboard driver is called "kbd". Kbd installs a driver that puts the
scancodes in "/dev/scancode". You have to be "root" to do this. The only
option
is "-n". This option causes the driver to pass on keyboard events to TOS,
even
when another program gets them (i.e. when "/dev/scancode" is open).

You can kill the server with "CTRL-LSHIFT-ESC" immediately. However,
running
applications aren't shutdown correctly (yet?).

The server doesn't use VDI. It accesses the display memory directly. Up to
now
it only supports monochrome displays. You can only run TOS and X programs
with
this server. You _cannot_ run GEM files!

The two mouse buttons on the Atari mouse play the roles of the first and
third
mouse button on a normal X-mouse. You will probably be able to use the
second
mouse button on three-button-mice that use "/dev/mouse" correctly.


Applications
============

You can set global application defaults in "/usr/lib/X11/app-defaults/*"
and
personal user defaults in "~/.Xdefaults". The author's personal defaults
file
is incuded as "home/.Xdefaults" in the distribution. The files in the
"usr/lib/X11/app-defaults" directory are the original system defaults.


xterm
-----

You need the "pty" driver to run xterm. With every invokation you will get
two
ptys in "/dev/[pt]tty*". This can only be done as root. However, this
driver
doesn't work reliably: the stty settings don't work.

Also, you'll need the "/etc/termcap" file. The original "termcap" file is
included in the distribution.

On the author's machine the "tcsh" shell crashed a couple of times
(shortly
before the prompt came up). This was fixed by shortening the entry for
"xterm"
in "/etc/termcap". But lately, it seems to work even without
modifications.

There's a utility program called "resize" that re-sets the values of
"COLUMNS"
and "LINES" when you have changed the size of your window.


twm
---

The "twm" configuration is determined by the contents of

    /usr/lib/X11/twm/system.twmrc

and also "~/.twmrc". The first should contain global definitions and the
second
personal definitions that are preferred.

The files "{jim,keith,lemke}.twmrc" are the original twm files.
"home/.twmrc"
is the authors configuration.


xinit
-----

This program sets up the X-server and then tries to call "~/.xinitrc" or
"/usr/lib/X11/xinit/xinitrc". If this fails you will get an "xterm".
"home/.xinitrc.orig" is the original file, "home/.xinitrc" is the file
that the
author uses.

There's also a shell script "startx" that calls "xinit".


bitmap, atobm, bmtoa
--------------------

This program needs the "Bitmap" resource file and the corresponding
bitmaps to
work.


x11perf
-------

The window of this application is a little smaller than normal, so that it
fits
onto the author's screen. But if you test the program with images it
crashes!


Bugs
====

- xdpyinfo outputs a wrong resolution
- keyboard auto-repeat doesn't work
- there's no colour support
- clients don't recognize (properly) when the server dies
- the cursor still flashes, even when X is running
- the program-flags aren't set correctly, so the programs can't use
fast-ram


Author
======

Send comments and bug reports to

  Andreas Kirschbaum
  ank@rbg.informatik.th-darmstadt.de

or via snail mail:

  Andreas Kirschbaum
  Quellenstr. 5
  61118 Bad Vilbel
  Germany


Tschuess, Michael

    ------------------------------------------------------------------------


