From: d...@ic.ac.uk (David Carter)
Subject: Here's the Linux/68k FAQ
Date: 1996/01/04
Message-ID: <4cgel6$lpr@oban.cc.ic.ac.uk>
X-Deja-AN: 133937360
organization: Centre for Computing Services, Imperial College
newsgroups: comp.os.linux.m68k

Last-modified: 95-11-07
Maintained-By: Joerg Mayer <jma...@informatik.uni-kl.de>
Posting-Frequency: bi-weekly
Archive-name: linux/m68k-faq
URL: http://pfah.informatik.uni-kl.de:8000/pers/jmayer/linux68k-faq

                Frequently Asked Questions on Linux/m68k
              A Linux port to Motorola's 680x0 processors

Version of this FAQ    : 1.9
Version of Linux/m68k  : 0.9.13 (old) and 1.2.13pl3 (current)
Version of Linux       : 1.2.13 (stable) and 1.3pl37 (experimental)


i) Introduction
===============

This is an updated version of the Linux/m68k FAQ. Since it probably contains
errors (typographical and logical), outdated and missing infos, I ask that
you send feedback and corrections to me. This document is not intended to
describe what Unix is or how to to administrate it. To find out more about
that read the standard Linux manuals.

This version (1.9) does not contain everything I wanted to put into it.
As the alternative was to wait another week or more, I decided to do a
release now. Also, no proof reading has bee done :-(

ii) Newsflash
=============
- Hamish has released kernel 1.2.13pl3
- Hamish has passed the general release management to Roman;
  Geert has taken over the job of Amiga coordinator
- The atarix mailing list has been renamed linux-m68k.
- Roman has announced that 0.9.13 is the last kernel of the 0.9 series
  unless serious bugs are discovered. 1.2 is the current kernel.
- As 1.2 has become the "official" version, the FAQ has been updated to refer
  to the current version of 1.2 if not stated otherwise.

iii) Contents
=============

i Introduction
ii Newsflash
iii Contents
iv Versions
1. About Linux and Linux/m68k
2. Requirements to run Linux/m68k
  2.1 Processor
  2.2 RAM
  2.3 Harddisk
  2.4 Software
3. Similarities and differences of Amiga and Atari Linux/m68k
  3.1 Similarities
  3.2 Differences
4. The current status of Linux/m68k
  4.1 General
  4.2 Amiga
  4.3 Atari
  4.4 Mac
  4.5 VME
  4.6 PC
5. Hints on installing Linux/m68k
6. Sources for information/sources/binaries
  6.1 Documentation
  6.2 Newsgroups
  6.3 Mailinglists
  6.4 WWW-sites
  6.5 Ftp-sites
  6.6 Modem
  6.7 Distributions
  6.8 IRC (Internet Relay Chat)
7. Activities
  7.1 Coordinator 
  7.2 Bug reports/Known bugs
  7.2.1 TT-FPU bug
  7.2.2 Amiga with GVP 16 bit RAM
  7.3 Under construction/To do
8. Common problems
  8.1 I can't find the manpage for XXX
  8.2 Is there a X-server for the Amiga?
  8.3 How can I access my SCSI tape drive?
  8.4 Where did all my Amiga's chipmem go?
  8.5 Do I really need a FPU?
  8.6 How do I access Linux partitions from AmigaDOS?
  8.7 I can't boot from harddisk although the root partition 
      seems to be fine!?
  8.8 When I try to start X11, I get 'cannot open /dev/mouse'
  8.9 My SCSI bus locks up when I want to use my DAT drive
  8.10 I cannot delete files with rm as root
  8.11 My SCSI bus locks up when the kernel probes for devices
  8.12 I displayed a binary file, and now my console is totally screwed up  
  8.13 After installing a patch, the new files are in the current directory
9. Famous last words

iv) Versions
============

At the present time, two kernel trees exist: 0.9.x and 1.2.13plx.
To make switching between these versions a bit more interesting, they
use a different bitorder in the ext2fs code (ext2 is the primarily used
filesystem). In order to to be able to use a 0.9 ext2fs under 1.2, the
1.2 version of the filesystem check program has to be run and vice versa.
Also there are two versions of executables. The old a.out format, which
is being phased out and the new ELF format. The problem is, that a.out
executables don't work with ELF dynamic libraries and vice versa. To make
things a bit more ugly, for some packets (e.g. X11R6) the version numbers
of ELF and a.out libraries are the same. This makes it almost impossible
to use dyamically linked a.out and ELF binaries of X-window clients in the
same installation tree.
Finally, these are the different versions of the ataboot, amiboot and
amiga-lilo programs:
0.9.13 can be started via amiboot-1.12a, ataboot-0.7 and amiga-lilo-0.4a.
1.2.13pl3 can be compiled in two formats: a.out and ELF. The a.out version
can be started by the same programs as 0.9.13. If your kernel is ELF
compiled you must use amiboot-2.1, ataboot-1.2 and amiga-lilo-0.5 (the
latter is not yet available). These programs will boot a.out kernels too.



1. About Linux and Linux/m68k
=============================

Linux is a freely available operating system for PCs - to be more precise,
it is one of many flavours of Unix. Linux is being developed on the net by
several thousand people, first and foremost by Linus Torvalds, and being
tested/used by many many more.
The fun and success of Linux inspired Hamish Macdonald and Greg Harp to
port it to another platform - the Amiga. The first version released to the
general public was 005. While 008 was current, a few enthusiasts ported
that version to the Atari and the two versions have been successfully
merged with 09pl3 (this reads version 09 patchlevel 3). Linux/m68k can be
regarded as beta. This means that code that hasn't been ported/written
recently works well most of the time.
After having released v1.2pl3 Hamish handed the coordination over to Roman.

Here's the story in Hamish's words:
"I decided to port Linux to my Amiga for a variety of reasons.  I have
always had an interest in operating systems (my work is in embedded
systems for telecommunications).  After finishing my Master's thesis,
I needed some project to keep me busy, and justify keeping my Amiga.
Linux was just getting popular at the time, and I thought it would be
fun to port it to my Amiga.  So I did.  Greg Harp and a few others had
been talking for a while about porting Linux to the Amiga.  They'd only
got a little way into it when I got involved, bringing the work I'd
already done myself...."

2. Requirements to run Linux/m68k
=================================

2.1 Processor
-------------
You need a Motorola 680x0 processor *with PMMU*. There is *no way* to run
it without one. This reduces the list of possible processors to 68020+68851,
68030, 68040, 68LC040, 68060. Currently only the 68020+68851, 68030 and
68040 are supported. At this stage you will also need a 68881 or 68882 FPU
if you don't have a 68040.  A FPU is not strictly necessary as it can be
emulated with the normal processor, however nobody has written the code to
do so. This list of processors excludes the 68000, 68010, 68EC020, 68EC030,
68EC040.  Linux/m68k can *never* run on these processors as they lack a PMMU
and an interface for an external one (this is "true" for all machines but
some pretty old Suns :-).
The following Amigas have the "right" processor built-in: A3000, A3000T,
A4000/40 (not! A4000/30 which has a 68EC030 processor) and A2500/30.
The following Ataris (or clones) have the "right" processor built-in:
Atari Falcon (FPU is not standard but needed!), Atari TT, Medusa, Eagle
(not yet supported). Note: In some of the older TTs there is a bug in the PAL
controlling the access to the FPU. This may cause a crash (see 7.2.1).
Any processor upgrade card with a 68040 or 68030+68881/2 (like PAK/3) is able
to run Linux.
Note2: On the Amiga, there exists a program called "lawbreaker" (part of the
enforcer package). This program allows you to check whether you have a working
PMMU or not (it needs to generate 4 hits in combination with enforcer).

2.2 RAM
-------
Note1: On the Amiga the size of fastram is relevant.
Note2: If you have an Amiga with 16-bit expansion RAM on a GVP card, see
  "Known bugs".
It is possible to boot Linux/m68k with as little as 2 MB. Now you know that
the kernel works on your system - that's it. If you want to work with it you
should have at least 4 MB (8 MB with a X-server).

2.3 Harddisk
------------
If you want to do more than just boot Linux/m68k you will need 80 - oo
(infinity) MB of space on your hard disk and a supported hard disk controller.
Add another 20 MB for X.

2.4 Software
------------
Amiga: In order to run amiboot you need AmigaDOS 2.0 or higher (expansion.lib-
rary V36+) and at least version 39 of ixemul.library.
Amiga: amiboot works with SetPatch and RsrvMem (part of Emplant) running. It
  doesn't work with VMM running.

3. Similarities and differences between Amiga and Atari Linux/m68k
==================================================================

3.1 Similarities
----------------
All code that depends only on the processor (i.e. paging, systemcalls,
parts of the interrupt handling and of c(o)urse those parts of Linux that
were hand optimized by writing the code in assembler) has to be ported to
Linux/m68k only once. This means that the Amiga and the Atari may use the
same kernel image (in fact the vmlinux from tsx-11 runs on both machines).
Another big bonus is that all user programs (= binaries) should work on
any machine running Linux/m68k no matter whether the machine is an Amiga
or Atari - as long as no machine specific devices are used (see below).

3.2 Differences
---------------
All code that depends on the hardware is machine dependent and with very
few exceptions which are in the kernel (timer, a small part of interrupt
handling, startup code) has been put into modules called device drivers.
Writing device drivers makes up most of the porting work.

4. The current status of Linux/m68k
===================================

4.1 General
-----------
What has been done? The kernel (this means all the processor/mmu/fpu specific
stuff) has been ported. V1.2 is based on Linux/i386 1.2 patchlevel 13.
Several hardware independent drivers have been ported:
Ramdisk, mem, pty, tty, vt, (c)slip, ppp, net/inet, general SCSI stuff. Also
the following filesystems have been done: minix, ext2, msdos, proc, isofs,
affs, nfs (affs = Amiga Fast File System, read only).
A X-server exists that uses the frame buffer device. Frame buffer devices
exist for both Amiga and Atari in the kernel.

4.2 Amiga
---------
Supported built-in hardware:
A3000-SCSI, A4000-IDE, A1200-IDE, serial port, parallel port, mouse, keyboard,
graphics emulates an ASCII-terminal (resolution varies with your chipset/
setup), timer, floppy disk drive (DD/HD, Amiga and PC formatted disks),
beep (no real sound support), RTC of A2000/A3000/A4000.

Supported cards:
Several SCSI cards are supported. These are the A2091, A590 and GVP Series II.
The Ariadne, Hydra and A2065 ethernet cards are supported. Also the 16c552
double-UART of the GVP IO-Extender is supported.
To find out whether additional hardware is supported, look at the Linux/m68k
source (config.in provides a list of supported hardware).
Note: There are problems with GVP 16 bit RAM cards (see "Known bugs").

4.3 Atari
---------
SCSI, ACSI, Falcon IDE, all builtin serial ports, keyboard, Atari mouse,
parallel printer port, RTC clock, floppy disk (DD/HD/ED), native Atari
graphics (ST/TT/Falcon/Medusa), beep (all) and sound (Falcon/TT) are
supported. The ET4000 card used in the Medusa is partially supported
(you can't change the resolution).
Note: Linux' Minix FS is compatible to the Minix V2 FS used with MiNT.

Supported cards:
The following RAM cards for the Falcon are supported: FX-card and Magnum.
The Lance based ethernet cards (RieblCard, PAM's VME boards) are supported
too. Screen extenders(?) like Screenblaster, Onscreen, etc. work too.

4.4 Mac
-------
There was talk about a Mac port but it seems to have died. There is a port of
NetBSD for the Mac.

4.5 VME
-------
Two ports to different VME bus machines have been started (see 7.3.4), one
of them is already self hosting.

4.6 PC
------
Since PC's don't have Motorolas inside (except on soundcards and other
plug-ins), this section should read "What parts of Linux/m68k are available
for but not part of Linux/i386?"
 - Amiga Fast File System (read only) tsx-11:/pub/linux/patches/amigaffs.tar.Z
   Please note that most disk controllers for PC, Atari and Mac are not able
   to read Amiga formatted disks (this is a hardware limitation).

5. Hints on installing Linux/m68k
=================================

Please note that there is a much better installation doc available. It's the
'Linux/m68k installation guide' written by Frank Neumann and Ingo Wilken. A
more complete list of installation guides can be found in the documentation
section. If you want to find out whether Linux/m68k runs on your system the
hints given here may be sufficient. If you want to work with your Linux/m68k
system you should get the Installation guide. The address is given below.
 
 0. a) Get the installation guide mentioned above.
    b) Ignore steps 1-9 and follow your new guide.
 1. Get a working kernel, *all* announce files and the bootstrap program for
   your machine (different kernel versions may require different bootstrap
   versions), the root and usr-filesystems and the newfilesys (this is a
   ramdisk that contains everything you will need to set up a working harddisk
   environment). Sources for these programs: See below.
   You will also need gunzip (from the gzip package) for your native OS in
   order to unpack the following .gz files: amiboot/ataboot, filesys-1.2 and
   vmlinux.
   Note: If gunzip succeeds your files are OK. If you want to test the
   integrity of the files you downloaded without decompressing them you
   can do 'gzip -t <filename.gz>'.
 2. Bootstrap the kernel and filesys-1.2 as described in the ANNOUNCE file for
   that kernel. Many of the bootstrap flags available are documented in older
   announce files only.
   Note for Amiga users: You have to install ixemul.library in libs: in order
   to run versions of amiboot prior to 2.0. If you have any problems booting
   linux you may try to run this session without executing the
   startup-sequence. This will prevent any manipulation of the MMU as is
   done by the CPU, SetCPU, Enforcer and VMM commands.
 3. Create a partition on your harddisk and install an ext2fs filesystem on it.
 4. Create another partition as swapspace.
 5. Unpack the root and usr filesystem onto the disk (these are still a.out,
    sigh).
 5a. Install your ramdisk image to harddisk! It contains new versions of the
    filesystem utilities and newer libraries.
 6. Check that the utmp and wtmp files exist in the right places and that
    there are links from the old locations to the new ones as decribed in
    ELF/README. (I told you to read a somewhat more verbose installation.)
 7. Reboot
 8. Bootstrap your kernel, this time from the harddisk instead of ramdisk.
 9. Get and read the Installation-HOWTO for Linux. Start reading from section
    4 "Installing the Software". Warning: This is for the PC so you may have
    to do things differently at some points.
Installation guide: ftp://ftp.informatik.uni-oldenburg.de
    /pub/amiga/linux/local/docs/Install-Linux_m68k.doc
These are the filenames relative to 680x0/
  ANNOUNCE-1.XXXXXX (and 0.x!)
  filesys/filesys-1.2.gz
  filesys/root.tar.gz
  filesys/usr.tar.gz
  ELF/README
  ELF/gcc-2.7.0.bin.tar.gz
  ELF/ld.so-1.7.3.tar.gz
  ELF/libc-5.0.9.tar.gz
  v1.2/vmlinux-1.2.13pl3.gz
  v1.2/amiboot-2.1.gz (Amiga only)
  kernel/ataboot-1.2.gz (Atari only)
  v1.2/linux-1.2.13pl3.tar.gz (the kernel source tree)
  ../docs/HOWTO/Installation-HOWTO
  The root.tar.gz file contains no gcc, emacs or tcsh. If you are a
  tcsh or emacs addict you will want to get these packages from bin/ too.
  The filesystems naturally contain *no kernel sources*, so you will have
  to get these too.
   
6. Sources for information/sources/binaries
===========================================

6.1 Documentation
-----------------
This FAQ is available on ftp://tsx-11-and-mirrors/pub/linux/680x0/FAQ
and http://pfah.informatik.uni-kl.de:8000/pers/jmayer/linux68k-faq. An
installation guide is available at ftp://ftp.informatik.uni-oldenburg.de
/pub/amiga/linux/local/docs/Install-Linux_m68k.doc. Although the guide was
written for the Amiga, many things are also useful for Atari users. An Atari
specific install guide can be found at http://www.gti.net/azog/linux68k.txt;
another one can be found at http://zippy.spods.dcs.kcl.ac.uk/
~tomlin/flinux.html. The ANNOUNCE files are also valuable documentation.
Further documents can be found in the directories ftp://tsx-11.mit.edu/pub/
linux/docs/ and ftp://sunsite.unc.edu/pub/Linux/docs. These documents were
written for Linux/i386 but many are useful for Linux/m68k users too (e.g.
howtos on UUCP, PPP and the general Linux FAQ).
A faq on Motorla chips (including the 680x0 microprocessors) is available
at ftp://rtfm.mit.edu/pub/usenet/comp.sys.m68k/
comp.sys.m68k_Frequently_Asked_Questions_(FAQ) and mirrors.
Last but not least: Look into the Doc directory of the kernel tree (you do
have 0.9.13 or newer?).

6.2 Newsgroups
--------------
comp.os.linux.development.kernel: This group is on Linux *kernel* development
  only. From time to time it contains messages dealing with the Linux/m68k
  kernel.
comp.os.linux.announce: This group announces new Linux related products as
  well as new kernel releases. Announcements for new versions of Linux/m68k
  may be found there.
maus.os.linux68k:
  This group deals with Linux/m68k only. The languages currently used are
  German and English.  The following internet site is known to serve
  this group:    news.uni-stuttgart.de (read only)
  The Newsgroup is also available in FidoNet (LINUX-68K.GER).
comp.unix.amiga: This group is for discussions on AMIX, NetBSD and Linux/m68k
  on the Amiga. As most articles on Linux/m68k are not Amiga specific, the
  name is somewhat of a misnomer.
de.comp.sys.amiga.unix: Similar to comp.unix.amiga but in German language.

6.3 Mailinglists
----------------
I am aware of two mailinglists for Linux/m68k. The first is being phased out
because of technical reasons (overloaded). To join the first, send mail to
majord...@vger.rutgers.edu with no subject and body 'subscribe linux-680x0'.
Content messages should be sent to linux-68...@vger.rutgers.edu. An archive
for this list can be found via Helmut Neukirchen's WWW page.
Another mailinglist originally intended for Linux on Ataris where many
"general" things are dicussed as well is named linux-m68k. It is now a
full blown Linux/m68k mailing list. To subscribe send mail to
majord...@phil.uni-sb.de, any subject, with body 'subscribe linux-m68k'.
Note: linux-m68k was formerly known as atarix.
Note2: All mails sent to linux-680x0 will be mirrored in linux-m68k.

6.4 WWW-sites
-------------
Helmut Neukirchen's Linux/m68k WWW page:
  http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html
Chris Lawrence' Linux/m68k WWW page:
  http://www.rose-hulman.edu/~lawrenc/linux/index.html
Mirrors of tsx-11 via WWW:
  http://src.doc.ic.ac.uk/packages/Linux/tsx-11-mirror/680x0/

6.5 Ftp-sites
-------------
THE Linux/m68k server:
  ftp://tsx-11.mit.edu/pub/linux/680x0/
THE two Linux servers (sources for you to port to/compile on Linux/m68k):
  ftp://tsx-11.mit.edu/pub/linux/sources/
  ftp://sunsite.unc.edu/pub/Linux/system/
Mirrors (please use the one nearest to you, most of these mirrors are updated
daily):
  ftp://ftp.tu-clausthal.de/pub/systems/Linux/680x0/
  ftp://ftp.informatik.tu-muenchen.de/pub/comp/os/linux/680x0/
  ftp://ftp.informatik.uni-oldenburg.de/pub/linux/680x0/
  ftp://ftp.twi.tudelft.nl/pub/Linux/680x0/
  ftp://ftp.informatik.rwth-aachen.de/pub/Linux/BETA/680x0/
  ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/
  ftp://ftp.fu-berlin.de/pub/atari/linux/
  ftp://src.doc.ic.ac.uk/computing/operating-systems/Linux/tsx-11-mirror/680x0/
  ftp://ftp.uni-erlangen.de/pub/amiga/unix/Linux
  ftp://ftp.spc.uchicago.edu/pub/linux/680x0
  ftp://ftp.nvg.unit.no/pub/linux/680x0
Linux on Amiga:
  ftp://ftp.informatik.uni-oldenburg.de/pub/amiga/linux/local/
Linux on Atari (all new patches for Ataris):
  ftp://ftp.phil.uni-sb.de:/pub/atari/linux/
[Please tell me if your favourite mirror is not on this list.]
The kernel source for Linux/m68k can be found in 680x0/src/, a lot of
binaries in 680x0/bin/. A few more tools reside in 680x0/tools/.

The following addresses are known to offer ftp-mail:
  ftpm...@info2.rus.uni-stuttgart.de
  ftpm...@ftp.inf.tu-dresden.de

6.6 Modem
---------
If you have a modem, you can get Linux/m68k from the following addresses:

6.6.1 Germany
-------------
System name: nasim
Phone: +49 89 5469593, ZyX19200
Login:  Anon-uucp: nuucp - no password / ZModem: gast - no password
Contents: full 680x0-tree of tsx-11 in /pub/linux-68k
Get first: index file /pub/linux-68k/ls-lR.nasim.linux-68k.gz
Other features: provides uucp access to 680X0 channel (read only) and the
  linux.act.* news-groups
Admin: Frank Bartels (kn...@nasim.cube.net)

6.7 Distributions
-----------------
There are no distributions available via ftp at the moment.
ALD (= Autoren Linux68K Distribution) for Atari is available from Whiteline.

6.8 IRC (Internet Relay Chat)
-----------------------------
I'm trying to establish an IRC channel for Linux/m68k: #Linux68k
Just do a "/join #Linux68k" and look out for others. If nobody's there,
there are two possible reasons for this: You are the first to join this
channel (actually, the first one to join a channel creates this channel)
or (due to overload) the worldwide IRC net split into several nets and
everyone else is in another net (these nets merge automagically the moment
the overload goes away).
There already is a well established #Linux.
  
7. Activities
=============

7.1 Coordinator
---------------
Linux/m68k releases are built and released by Roman Hodek (Roman.Hodek@
informatik.uni-erlangen.de). As Roman does not have an Amiga, that part is
maintained by Geert Uytterhoeven (Geert.Uytterhoe...@cs.kuleuven.ac.be).
'Built' means that you can write a patch against the current version/
patchlevel and send it to them or the mailing list and they will integrate
it into one of the next releases. Make sure you state against which version
the patch was made. Please note that Roman has no way to test Amiga specific
patches and Geert can't test Atari specific things.
Note: If you patch processor specific code (e.g. 68030 vs. 68040 MMU or FPU)
  make sure that you document the dependencies.

7.2 Bug reports/Known bugs
--------------------------
Send bugreports to the author of the code or to Hamish (Amiga) or to Roman
(Atari). A probably better approach is to post it to the linux-680x0 channel
or to the appropriate newsgroup.
If there are bugs that will probably stay in the code for an extended period
of time let me know so I may publish them here.

7.2.1 TT-FPU bug
----------------
Problem:
Linux reports "*** COPROCESSOR PROTOCOL VIOLAION *** FORMAT=9" or something
  similar.

Fix:
Pull the 16L8 PAL's pin 11 free (this is the signal 'XBG') and solder it to
+5V. This prevents the PAL from tri-stating AS and DS until XBGACK has gone
low.

To make your 32 MHz daughter-card work:
1) Pull pin 11 of te 16L8 PAL out of the board
2) Solder pin 11 of the IC to +5V (pin 20 of 16L8)

****This applies to the CA400771 32 MHz daughter board****
**********Other boards should not have this bug***********
_______________________________________________________________
Atari 32 Meg Daughter Board / PGA                             |
                                                              |
                                   ___________________        |
                                   |                 |        |
                                   |                 |        |
                                   2 1 1 1 1 1 1 1 1 1        |
                                   0 9 8 7 6 5 4 3 2 1        |
    . . . . . . . . . .            . . . . . . . . . .        |
       PAL 16R4-7PC                   PAL 16L8-7PC            |
    . . . . . . . . . .            . . . . . . . . . .        |
                                   1 2 3 4 5 6 7 8 9 1        |
                                                     0        |
      CA400771                                                |
   ___________________________________________________________|
   |
   |
___|

7.2.2 Amiga with GVP 16 bit RAM
-------------------------------
Problem:
When using a GVP card with 16 bit RAM on an Amiga with 68040 Linux/m68k dies.

Fix:
Get some real 32 bit RAM. The 16 bit RAM may still be used as a ramdisk.

7.3 Under construction/To do
----------------------------
I would like a list of projects planned/started, similar to the Linux
Project-FAQ. If you send me infos, I will put them in this section.

7.3.1 General
-------------
Affs: Write code, other DOS types and special root block handling is missing
  (dorch...@cscip.uni-sb.de).
Documentation: A Linux/m68k update of the khg (Kernel hackers guide) needs to
  be written (especially the mmu specific stuff). Infos on the machine
  abstraction would be nice too.
FPU-emulation
  (li...@bat710.univ-lyon1.fr)
A new multi frame buffer device
  (Martin Schaller)

7.3.2 Amiga
-----------
Drivers for Acrnet cards are in alpha/beta
  (Frank.Neum...@arbi.informatik.uni-oldenburg.de)
A new frame buffer device with color support
  (Geert.Uytterhoe...@cs.kuleuven.ac.be)
A frame buffer device for the Cybervision graphics card is in alpha/beta
  (a...@physik.uni-kl.de and t_ebe...@informatik.uni-kl.de)
Adaption of the PC ide.c, ide-cd.c stuff is in mid alpha
  (t_ebe...@informatik.uni-kl.de)
The following drivers were asked about but nobody has reported interest
in writing them (yet):
- Concept/code for the use of chip ram and the blitter from user space.
- A2024 support missing
- Audio drivers
- Support for Emplant serial and scsi
- Support for the A4091 scsi card

7.3.3 Atari
-----------
Ethernetcards (internal PAM cards)
  (rnho...@informatik.uni-erlangen.de)
Low level code of the new multi frame buffer device
  (Martin Schaller).

7.3.4 VME
---------
A port to the MVME147 board has been started (en...@numerik.fb6.uni-siegen.de,
  n...@vespa.unix-ag.uni-siegen.de)
A port to the MVME166 is in an advanced state (selfhosting) (s...@gpt.co.uk)

8. Common problems
==================

8.1 I can't find the manpage for XXX
------------------------------------
There is a *wealth* of Linux documentation out there for the original PC Linux
which almost always applies to Linux/68k. Check out the documentation at your
favorite Linux ftp site.

8.2 Is there a X-server for the Amiga?
--------------------------------------
Yes, there is one: It's the same one as for the Atari, so get that. The
frame buffer device you need is already integrated into the 0.9pl5+ kernel.
Make sure that /usr/X11R6/bin/X is a link to /usr/X11R6/bin/XF86_Atari.

8.3 How can I access my SCSI tape drive?
----------------------------------------
Use /dev/st0. Be aware that your tape drive must be up and running at boot
time so that linux can recognize it and you can use it.

8.4 Where did all my Amiga's chipmem go?
----------------------------------------
It's still there, but the kernel doesn't offer it to the user. It is used by
drivers that use the custom chips (floppy, framebuffer, sound).

8.5 Do I really need a FPU?
---------------------------
Most software doesn't use the FPU, but you still need one, because the stan-
dard program startup code contains at least one FPU instruction. There are
two ways to avoid this problem: 1) write a FPU emulation and put it into the
kernel (as is done with the i387 code) or 2) change the crt0.o module of gcc
and recompile *all* programs you have.

8.6 How do I access Linux partitions from AmigaDOS?
---------------------------------------------------
There is an ext2 filesystem for AmigaDOS (http://theory.cs.bonn.edu/~fasten).
It allows you to read/write ext2 partitions. Not all write operations are
currently (version 0.3) supported. Btw: do read the "know bugs section".
Other ways to transfer files from Linux to AmigaDOS are to use a msdos
partition, an Amiga/PC formatted floppy with msdos file system (this requires
a mountlist entry on AmigaDOS side), the use of a partition with minix file
system and the minix file handler on AmigaDOS side (the driver is somewhat
unstable) or by accessing the floppy / any (empty!) partition directly via
GNU tar.

8.7 I can't boot from harddisk although the root partition seems to be fine!?
-----------------------------------------------------------------------------
If you have used the new-filesys RAM filesystem to boot, created
filesystems on harddisk partitions and try to boot from one of these
harddisk partitions, you might see an error like:
  No such file or directory while trying to open /dev/hda5
  The filesystem superblock is corrupt. Try running e2fsck ...
This does _NOT_ mean that your files are corrupt - instead, the /dev
directory on your harddisk is missing some special files for accessing
certain partitions. Check the following: Start the kernel with the RAM
filesystem, mount the root partition under /mnt and check all partition nodes
under /mnt/dev (sd<xy> for SCSI partitions and hd<xy> for IDE partitions).
If you discover that your root/usr/whatever partition is not among them,
you will have to create the special file(s) by using the 'mknod' command.
Unfortunately this command is not in the new-filesys, so you will
have to use the one from the root filesystem, like this:
'/mnt/bin/mknod <parameters>'. For example, if your root partition is
supposed to be on /dev/hda5, you should go to /mnt/dev (NOT /dev!) and issue
the command '/mnt/bin/mknod hda5 b 3 5'. In this case, the '3' is the major
device number for IDE harddisk devices - replace it with a '8' for SCSI
harddisk devices. The minor device number (the last value) is the partition
number on that harddisk, starting with 1 (NOT 0!) for the first partition.
Once we have new root filesystem images or a real installation program,
this should not be a problem anymore, but until then you will have to live
with it.

8.8 When I try to start X11, I get 'cannot open /dev/mouse'
-----------------------------------------------------------
Some installations automatically start the 'selection' demon when the system
comes up. 'selection' allows you to use Cut&Paste on virtual consoles.
However, this program uses the mouse driver (/dev/mouse or alike) to access
the mouse, and X11 also requires the driver. The current mouse driver,
however, can only be used by one program at a time.
For this reason, you will have to kill the selection process before you can
start X. The simplest way to do this is to issue the command 'selection -k'
(selection will then look for an already running process of itself and remove
it). This line could be quite handy if you put it into your $HOME/.xinitrc.

8.9 My SCSI bus locks up when I want to use my DAT drive
--------------------------------------------------------
This problem seems to be related to certain A3000 Amigas - probably only
those with BootROMs. It has been discovered that if you have a DAT
drive connected whose SCSI address is smaller than the smallest SCSI
address of a harddisk in your Amiga, the bus will lock up very early
(under AmigaDOS, while the SCSI bus is being scanned - you can notice
this by seeing that the SCSI LED is constantly lit and nothing happens). 
The solution is to use higher address for DAT drives (and maybe also for 
CD-ROMs) and the lower ones for direct-access media (read harddisks).

8.10 I cannot delete files with rm as root
------------------------------------------
If you have installed the root and usr filesystems from tsx.mit.edu
(pub/linux/680x0/filesys) and get a message like the following whenever 
you try to delete files as root: "rm: dont use rm"
you might find it interesting to look into the file '.bashrc' in root's
home directory. In the last line, it reads: "alias rm='echo dont use rm'"
which is probably not what everyone wants. Remove that line and re-login
as root to get rid of this (or, for the current shell, just type "unalias rm").

8.11 My SCSI bus locks up when the kernel probes for devices
------------------------------------------------------------
This can have two reasons:
a) Some SCSI devices dislike being inquired by the host adapter to negotiate
   for synchronous transfers. To inhibit that behaviour for selected
   devices, the amiboot program has an option "wd33c93=<xxx>".
   This option of course only makes sense on SCSI host adapters with the
   WD33C93 chip, like the A3000 built-in SCSI, the A2091 or the GVP Series II.
   I am not sure if this also works on other host adapters using the same 
   chip.
   An example: If you have a CD-ROM on SCSI address 4, the command line 
   option to amiboot would be 'wd33c93=16' (the number is calculated
   from 2^SCSI_ADDRESS - or, in our example, 2^4 = 16 (SCSI addresses start
   with 0). You can disable sync negotiation on more than one device
   by adding up the values for each device.
   A longer explanation of this subject is contained in the ANNOUNCE-0.9pl1.gz
   announcement file (on tsx under pub/linux/680x0).
b) Other devices dislike being polled on LUNs (logical units) other than
   0. What can happen here is that the SCSI bus just locks up because the
   device does not answer the inquiry. Quite a couple of drives have already
   been added to the blacklist of "bad" devices in the kernel, but there 
   are probably more. If you discover this behaviour on one of your scsi
   devices, you might try adding it to the blacklist (in drivers/scsi/scsi.c) 
   yourself or ask someone to do it for you if you are sure about it.
   Although not related, it seems as if you can also bypass this problem
   with the "wd33c93=" amiboot option mentioned in the previous item.

8.12 I displayed a binary file, and now my console is totally screwed up
------------------------------------------------------------------------
Once in a while, it may happen to you that you try to read a binary
file. Text viewers like 'more' will interpret the input they get as control
characters, for instance to change to an alternate character set. This
may result in a strange looking prompt, made up of special characters.
In such a case, you need to reset the terminal to its initial state.
There are several ways to do this, here's what I use: You have to
type (blindly):   
echo "^V Esc c"
      ^^^^^^^^  Read this as: Control-V, Escape key, character 'c'
The sequence 'Escape-c' does just what we want: It resets the text
attributes and character set, and also clears the screen. You have to mask
the escape character with Control-V, otherwise the shell would directly
try to use the 'Escape' for its purposes. ^V^O should do the same job.

8.13 After installing a patch, the new files are in the current directory
-------------------------------------------------------------------------
Do a "man patch". Understand what the "-p" option does. In case, the rest of
the patches install ok, add a "-p0" to your command options. I usually use
"patch -s -E -p0 <patchfile" (s: only report errors, E: remove empty files).

9. Famous last words
====================

I want to thank everyone who contributed to this FAQ. There are many
people who did so by writing mails/news answering questions or by asking
those questions. Sections 8.7 - 8.12 were provided by Frank Neumann.

You may freely distribute this FAQ without any legally binding restrictions
except that it must remain in whole and unmodified. I would however be
grateful if you drop me a note if you include this file on a disk or cdrom
(especially, if you send me a copy ;-)

Amiga, Atari, Motorola, Unix and maybe a few more words I used in this text
are trademarks. So what?



--
J"org Mayer  Student und Sysop an der  Universit"at  Kaiserslautern
http      :  http://pfah.informatik.uni-kl.de:8000/pers/jmayer.html
e-mail    :  jma...@informatik.uni-kl.de    //    PGPid: 0xFB2461E1
For my address ask me, use finger or take a look at my www page.

From: jma...@informatik.uni-kl.de (Joerg Mayer)
Subject: Linux/68k-FAQ
Date: 1996/05/23
Message-ID: <4o1a6d$88l@irz1.informatik.uni-kl.de>
X-Deja-AN: 156277054
distribution: world
followup-to: poster
organization: University of Kaiserslautern, Germany
keywords: Linux, 68K, port, Amiga, Atari, VME, FAQ
newsgroups: comp.os.linux.m68k,comp.os.linux.development.system,comp.unix.amiga,maus.os.linux68k,comp.os.linux.answers,comp.answers,news.answers


Last-modified: 96-05-23
Maintained-By: Joerg Mayer <jma...@informatik.uni-kl.de>
Posting-Frequency: bi-weekly
Archive-name: linux/m68k-faq
URL: <http://www-agrw.informatik.uni-kl.de/~jmayer/linux68k/linux68k-faq>

                Frequently Asked Questions on Linux/m68k
              A Linux port to Motorola's 680x0 processors

Version of this FAQ    : 1.15
Version of Linux/m68k  : 0.9.13 (old) and 1.2.13pl10 (current)
                         and  pre2.0.4 (experimental/alpha)
Version of Linux       : 1.2.13 (stable) and pre2.0.7 (BETA)
Version of amiboot     : 3.1 (not for 0.9.13)
Version of amigalilo   : 0.7beta2 (not for 0.9.13)
Version of ataboot     : 1.8 (not for 0.9.13)

Expiration note: This FAQ is updated every 2 to 3 weeks unless I'm under very
  heavy workload. If this file is older than 2 to 3 weeks, please check for a
  newer version at the WWW or ftp sites mentioned below.

i) Introduction
===============

This is an updated version of the Linux/m68k FAQ. Since it probably contains
errors (typographical and logical), outdated and missing infos, I ask that
you send feedback and corrections to me. This document is not intended to
describe what Unix is or how to administrate it. To find out more about
that read the standard Linux manuals.

ii) Newsflash
=============
- Cyberstorm Amiga scsi driver (Jesper Skov <js...@iesd.auc.dk>)
- pre2.0.4 "hackers only" version released (Jes <j...@aleko.kom.auc.dk>)
- Amiga FFS read/write code (Hans-Joachim Widmaier <hjwid...@foxboro.com>)
- 1.2.13pl10 released (Roman Hodek <rnho...@immd2.informatik.uni-erlangen.de>)
- FPU emulation code works on 68LC040 too (Paul Coene
  <Paul.Co...@esat.kuleuven.ac.be> and Roman Hodek)
- 1.3.96 "hackers only" version released (Jes <j...@aleko.kom.auc.dk>)

From version 1.14:
------------------
- Majority of m68k stuff added to official kernel tree (Jes and Linus)
  It does NOT compile yet (1.3.94).
- FPU emulation code (Paul Coene <Paul.Co...@esat.kuleuven.ac.be>)
- cross compiling environment i486-unknown-linux --> m68k-unknown-linux
  (both ELF) (Gerald Britton <gbrit...@whitman.gmu.edu>)
- 1.3.91 "hackers only" version released (Jes <j...@aleko.kom.auc.dk>)
- New X11R6.1/XFree release (<Geert.Uytterhoe...@cs.kuleuven.ac.be>)
- 1.3.86 "hackers only" version released (Jes <j...@aleko.kom.auc.dk>)
  The first m68k kernel with the same patchlevel as the main Linux tree!
- Roman proposes a "feature slowdown" for the 1.2 kernel series:
  "But seen in longer terms, real development activity should go into 1.3."

iii) Changes
============
- Infos about FPU emulation integrated.
- Projects section updated a bit.

iv) Contents
============

i Introduction
ii Newsflash
iii Changes
iv Contents
iv Versions
1. About Linux and Linux/m68k
2. Requirements to run Linux/m68k
  2.1 Processor
  2.2 RAM
  2.3 Harddisk
  2.4 Software
3. Similarities and differences between Amiga and Atari Linux/m68k
  3.1 Similarities
  3.2 Differences
4. The current status of Linux/m68k
  4.1 General
  4.2 Amiga
  4.3 Atari
  4.4 VME
  4.4.1 Motorola MVME166 and MVME167 boards
  4.4.2 Motorola MVME162 board
  4.4.3 Motorola MVME147 board
  4.5 PC
  4.6 Unsupported
  4.7 Other processors
5. Hints on installing Linux/m68k
6. Sources for information/sources/binaries
  6.1 Documentation
  6.2 Newsgroups
  6.3 Mailinglists
  6.4 WWW-sites
  6.5 Ftp-sites
  6.6 Modem
  6.7 Distributions
  6.8 IRC (Internet Relay Chat)
7. Activities
  7.1 Coordinator
  7.2 Bug reports/Known bugs
  7.2.1 TT-FPU bug
  7.2.2 Amiga with GVP 16 bit RAM
  7.3 Under construction/To do
8. Common problems
  8.1 I can't find the manpage for XXX
  8.2 Is there an X-server for the Amiga?
  8.3 How can I access my SCSI tape drive?
  8.4 Where did all my Amiga's chipmem go?
  8.5 How do I access Linux partitions from AmigaOS?
  8.6 I can't boot from harddisk although the root partition
      seems to be fine!?
  8.7 When I try to start X11, I get 'cannot open /dev/mouse'
  8.8 My SCSI bus locks up when I want to use my DAT drive
  8.9 I cannot delete files with rm as root
  8.10 My SCSI bus locks up when the kernel probes for devices
  8.11 I displayed a binary file, and now my console is totally screwed up
  8.12 Can I use both ELF and a.out libraries/binaries in my system?
  8.13 After installing a patch, the new files are in the current directory
  8.14 I can't mount MSDOS diskettes on my Amiga
  8.15 Less behaves weird when I press a key
  8.16 What are the current major/minor device numbers for /dev/xxx?
  8.17 How can I tell an a.out binary from an ELF one?
  8.18 How can I find out about supported hardware?
  8.19 Gcc complains that it can't find shared libs while linking
  8.20 Linux recognizes my Amigas XXX board but it does not work
  8.21 I can't use ttyS3 and ttyS4 simultaneously on my Atari
  8.22 Amiboot dies when I start it with VMM running
  8.23 mke2fs from filesys-pl4-newer doesn't work

9. Famous last words

iv) Versions
============

At this time, two kernel trees exist: 0.9.x and 1.2.13plx.  To make
switching between these versions a bit more interesting, they use a
different bitorder in the ext2fs code (ext2 is the primarily used
filesystem). In order to to be able to use a 0.9 ext2fs under 1.2, the 1.2
version of the filesystem check program has to be run and vice versa.
Please note that starting with version 1.2.13pl4 the bitorder has been
changed to yabo (yet another bit order). So you must run the current version
of the ext2fs tools with the current kernel!
There are also two versions of executables. The old a.out format (which
is being phased out) and the new ELF format. The problem is that a.out
executables don't work with ELF dynamic libraries and vice versa. To make
things a bit more ugly, for some packets (e.g. X11R6) the version numbers
of ELF and a.out libraries are the same. This makes using dynamically
linked a.out and ELF binaries of X-window clients in the same
installation tree a bit more complicated (see section 8.13).
Finally, these are the different versions of the ataboot, amiboot and
amiga-lilo programs:
0.9.13 can be started via amiboot-1.12a, ataboot-0.7 and amiga-lilo-0.4a.
1.2.13pl3 can be compiled in two formats: a.out and ELF. The a.out version
can be started by the same programs as 0.9.13. If your kernel is ELF
compiled you must use amiboot-2.0, ataboot-1.2 and amiga-lilo-0.5 or later.
These programs will boot a.out kernels, too. As a rule of thumb: The current
kernels require the current versions of the bootloaders.
Starting with amiboot-3.1 and ataboot-1.7 the bootstrap program checks
whether it is compatible with the kernel version and print out a warning
if features may be lost or exit if it would simply crash.


1. About Linux and Linux/m68k
=============================

Linux is a freely available operating system for PCs - to be more precise,
it is one of many flavours of Unix. Linux is being developed on the net by
several thousand people, first and foremost by Linus Torvalds, and being
tested/used by many many more.
The fun and success of Linux inspired Hamish Macdonald and Greg Harp to
port it to another platform - the Amiga. The first version released to the
general public was 005. While 008 was current, a few enthusiasts ported
that version to the Atari and the two versions have been successfully
merged with 09pl3 (this reads version 09 patchlevel 3). Linux/m68k can be
regarded as beta. This means that code that hasn't been ported/written
recently works well most of the time.
After having released v1.2.13pl3 Hamish handed the coordination over to
Roman Hodek.
Starting with Hamish's unfinished 1.3.20 port Jes Degn Soerensen started
to work on integrating the m68k stuff into 1.3. With 1.3.94 the majority
of the m68k stuff was put into the official kernel tree.

Here's the story about the beginning in Hamish's words:
"I decided to port Linux to my Amiga for a variety of reasons.  I have
always had an interest in operating systems (my work is in embedded
systems for telecommunications).  After finishing my Master's thesis,
I needed some project to keep me busy, and justify keeping my Amiga.
Linux was just getting popular at the time, and I thought it would be
fun to port it to my Amiga.  So I did.  Greg Harp and a few others had
been talking for a while about porting Linux to the Amiga.  They'd only
got a little way into it when I got involved, bringing the work I'd
already done myself...."

And here about the port to the Atari in Roman's words:
"I'm an old Atari user, but in some dark age of Atari, I also bought a
PC... running only Linux, of course! Some time later, I noticed that
there was a Linux for m68k (was a version about 0.06 or so), but
learned that it was for Amiga only. Already at that time, I thought
that it can't be that hard to port this to the Atari, but after some
browsing in the sources, I gave up. I just didn't find a point where
to start. But at least I subscribed to the MausNet newsgroup
"LINUX68K". Several months later, in April '94, Bjoern Brauel posted
an article there, that he has adapted Linux' head.S so it ran on his
Falcon (until the first console output :-). I again was interested and
asked Bjoern for the sources. In the next time, we two built some very
basic driver, so we could at least see some output on the screen, and
the kernel booted until the "unable to mount root". There was no HD
driver yet... So I started to write a SCSI driver, and Bjoern went to
IDE.
At that time, we heard that there was another group working on an
Atari port. The most important members of this group were Robert de
Vries and Andreas Schwab. They've never announced that they're working
or how far they are, so we didn't know about them. And we communicated
over the MausNet, not the Internet, so they didn't notice us... So we
finally had two versions of an Atari port at the same time.
Fortunately, we've mostly worked on different parts, so the merged
version 0.01pl3 made a big jump in respect to what drivers were
available.
The next story is about Martin Schaller: He also ported Linux to
Atari, starting directly from PC Linux, not from the Amiga version.
(He didn't have a modem at that time, so no Internet, not even
MausNet...) For that he worked totally on his own, he came very far
and did a great job. In fall '94, a German Atari magazine published an
article about Linux/m68k. By this Martin heard that there were some
more Atari-Linux hackers and joined us."

2. Requirements to run Linux/m68k
=================================

2.1 Processor
-------------
You need a Motorola 680x0 processor *with PMMU*. There is *no way* to run
it without one. This reduces the list of possible processors to
68020+68851, 68030, 68040, 68LC040, 68060. All of these processors are
supported as of 1.2.13pl10. This list of processors excludes the 68000,
68010, 68EC020, 68EC030, 68EC040.  Linux/m68k can *never* run on these
processors as they lack a PMMU and an interface for an external one (this
is "true" for all machines but some pretty old Suns :-).  The following
Amigas have the "right" processor built-in: A3000, A3000T, A4000/40 (not!
A4000/30 which has a 68EC030 processor) and A2500/30. There has been a
report that the last A4000/40s produced by Commodore shipped with an
040LC. In that case you will need a kernel with FPU emulation compiled
in. The following Ataris (or clones) have the "right" processor built-in:
Atari Falcon, Atari Falcon with Afterburner 040, Atari TT, Medusa. The
standard Falcon does not have an FPU built in. In this case you will need a
kernel with FPU emulation compiled in. Any processor upgrade card with a
68040 or 68030 (like PAK/3 with or without 68881/2) is able to run Linux.
Note:  In some of the older TTs there is a bug in the PAL controlling the
access to the FPU. This may cause a crash (see 7.2.1).
Note2: On the Amiga, there exists a program called "lawbreaker" (part of
the enforcer package). This program allows you to check whether you have a
working PMMU or not (it needs to generate 5 hits in combination with
enforcer where the last one is an alert).
Note3: The FPU emulation does not yet support all transcendent functions
and not all supported functions have "full" precision implemented.
Note4: The standard 1.2.13pl10 kernel which can be found on ftp will not
  work with 68060 (not compiled in) or FPU emulation (small bug in the
  original 1.2.13pl10 sources). Locations of working kernels can be
  found in section 5 (installation).

2.2 RAM
-------
Note 1: On the Amiga the size of FastRAM is relevant, i.e. the ChipRAM is
  only used internally for graphics, sound and floppy data; it is not used
  by normal programs.
Note 2: If you have an Amiga with 16-bit expansion RAM on a GVP card, see
  "Known bugs".
It is possible to boot Linux/m68k with as little as 2 MB. Now you know that
the kernel works on your system - that's it. If you want to work with it you
should have at least 4 MB (8 MB with an X-server).

2.3 Harddisk
------------
If you want to do more than just boot Linux/m68k you will need 100 - oo
(infinity) MB of space on your hard disk and a supported hard disk controller.
Add another 20 MB for X.

2.4 Software
------------
Amiga: In order to run amiboot you need AmigaOS 2.0 or higher
(expansion.library V36+). If your version of amiboot is prior to 2.0 you also
need at least version 39 of ixemul.library.
Amiga: amiboot works with SetPatch and RsrvMem (part of Emplant) running.
 You can start amiboot version 3.0 or higher with VMM (see below how to do
 this).

3. Similarities and differences between Amiga and Atari Linux/m68k
==================================================================

3.1 Similarities
----------------
All code that depends only on the processor (i.e. paging, systemcalls, parts
of the interrupt handling and of c(o)urse those parts of Linux that were hand
optimized by writing the code in assembler) has to be ported to Linux/m68k
only once. This means that the Amiga and the Atari may use the same kernel
image (in fact the vmlinux from ftp.uni-erlangen.de runs on both machines).
Another big bonus is that all user programs (= binaries) should work on any
machine running Linux/m68k no matter whether the machine is an Amiga or Atari
- as long as no machine specific devices are used (see below).

3.2 Differences
---------------
All code that depends on the hardware is machine dependent and with very
few exceptions which are in the kernel (timer, a small part of interrupt
handling, startup code) has been put into modules called device drivers.
Writing device drivers makes up most of the porting work.

4. The current status of Linux/m68k
===================================

4.1 General
-----------
What has been done? The kernel (this means all the processor/mmu/fpu specific
stuff) has been ported. V1.2 is based on Linux/i386 1.2 patchlevel 13, its
Makefile structure has been adopted from the 1.3.x Linux/i386 kernel tree.
Several hardware independent drivers have been ported:
Ramdisk, mem, pty, tty, vt, (c)slip, ppp, net/inet, general SCSI stuff. Also
the following filesystems have been done: minix, ext2, msdos, proc, isofs,
affs, nfs (affs = Amiga Fast File System, read only). The ext2 filesystem
is *not* compatible between i386 and m68k on the physical layer, .i.e you
can't write to an ext2 filesystem on your PC, move that disk to your Amiga
and read from it again. At the present time, only the ext2fs bitmap layout
is portable.
An X-server exists that uses the frame buffer device. Frame buffer devices
exist for both native Amiga and Atari graphics in the kernel.
The list of supported hardware should be exhaustive, i.e. if it isn't in
here or in section 7.3 (Under construction/To do) it isn't supported at all.
If you find omissions please report them.

4.2 Amiga
---------
Supported built-in hardware:
A3000-SCSI, A4000-IDE, A1200-IDE, serial port, parallel port, mouse, keyboard,
builtin graphics is integrated into the frame buffer device, timer, floppy
disk drive (DD/HD, Amiga and PC formatted disks), beep and sound,
RTC of A2000/A3000/A4000.

Supported RAM cards:
  All RAM cards are supported
  Note: There are problems with GVP 16 bit RAM cards (see "Known bugs").
Supported SCSI cards:
  A2091, A590, GVP Series II
Supported Ethernet cards:
  Ariadne, Hydra, A2065
Supported IO cards:
  16c552 double-UART of the GVP IO-Extender, BSC MultiFaceCard III
Supported graphics cards:
  Cybervision64

4.3 Atari
---------
SCSI, ACSI, Falcon IDE, all builtin serial ports, keyboard, Atari mouse,
parallel printer port, RTC clock, floppy disk (DD/HD/ED), builtin Atari
graphics (ST/TT/Falcon/Medusa) is integrated into the frame buffer device,
beep (all) and sound (Falcon/TT) are supported. The ET4000 and the Mach64
cards used in the Medusa are partially supported (you can't change the
resolution).
Note: Linux' Minix FS is compatible to the Minix V2 FS used with MiNT.

Supported RAM cards:
  FX-card (Falcon), Magnum (Falcon)
Supported Ethernet cards:
  RieblCard, PAM's VME boards (most Lance based ethernet cards should work)
Screen extenders:
  Screenblaster, Onscreen work, others should work too.
Other peripherals:
  Atari Laserprinter

4.4 VME
-------
4.4.1 Motorola MVME166 and MVME167 boards
-----------------------------------------
(provided by Richard Hirst)
There are multiple VME boards out there on which Linux/m68k could run.
There is currently one port for the Motorola MVME166 and MVME167 boards.
These are complete systems on a card, so there's no need to support any
external controller cards:
        68040 at 25 or 33MHz (at least)
        4 to 32MB DRAM (maybe more)
        CD2401 four channel serial controller
        NCR53C710 SCSI controller
        Parallel port (currently unsupported)
        Intel 82596CA ethernet controller (under construction)
        VMEchip2 VME interface chip
        PCCchip2 local controller chip
        VSBchip2 (MVME166 only)
        MK48T08 BBRAM and TOD clock
        68230 PIT
The source is based on 1.2.13pl3 at present.  The system will happily loop
building the kernel for hours on end with no problems (no '040 MMU bug here!)
It takes about 20 minutes to build a kernel.

4.4.2 Motorola MVME162 board
----------------------------
A port to the MVME162 board has been made by Vaughn Skinner <vau...@solid.net>.
It is based on Richard Hirst's vme-1.2.13pl3 port.

4.4.3 Motorola MVME147 board
----------------------------
A port to the MVME147 board has been started  (see 7.3.4).

4.5 PC
------
Since PCs don't have Motorolas inside (except on soundcards and other
plug-ins), this section should read "What parts of Linux/m68k are available
for but not part of Linux/i386?"
 - Amiga Fast File System (read only)
   <ftp://sunsite.unc.edu/pub/Linux/system/Filesystems/jb-affs-1.0.tar.gz>
   Please note that most disk controllers for PC, Atari and Mac are not able
   to read Amiga formatted disks (this is a hardware limitation).

4.6 Unsupported
---------------
There is currently no Linux/m68k port for several 680x0 based computers
that would be able to run Linux. The reason for this is rather simple:
Nobody has written it. The reasons for that are many: The people who already
have most/all of the knowledge on the Linux side of the port are usually
busy maintaining/improving one of the existing ports. Another quite common
reason is that no or only insufficient documentation on the hardware
of that platform exists. Sun-3s are an even more special case: Unlike all
other machines mentioned here, they don't use Motorola MMUs (except the
Sun-3/80, which has an 68030). Here is a (probably incomplete) list of the
unsupported machines with 680x0 processor:
Apollos, HP 9000/300 series, Macintoshes, Sun-3s, NeXTs and most VME bus
machines. As far as I know, you can run NetBSD on most Sun-3s and Macs with
680x0 processors (see the FAQ on NetBSD).

4.7 Other processors
--------------------
Linux also runs on several other platforms in varying states of usability:
- Alpha (Linux/AXP): <http://www.azstarnet.com/~axplinux/>
- PowerPC processors (Linux/PPC): <http://www.linuxppc.org/>
  PowerMacs <http://www.mklinux.apple.com/>
- Sparc processors (Linux/Sparc) <http://www.geog.ubc.ca/sparclinux.html>
- I think I heard some rumors about an Intel version too ;-)
This list is *not* exhaustive: More complete and more current versions of
these infos can be found at: <http://homer.ncm.com/>.

5. Hints on installing Linux/m68k
=================================

Please note that there is a much better installation doc available. It's the
'Linux/m68k installation guide' written by Frank Neumann and Ingo Wilken. A
more complete list of installation guides can be found in the documentation
section. If you want to find out whether Linux/m68k runs on your system the
hints given here may be sufficient. If you want to work with your Linux/m68k
system you should get the Installation guide. The address is given below.
The hints given here are for 1.2.13pl5 and later!

 0. a) Get the installation guide mentioned above.
    b) Ignore steps 1-9 and follow your new guide.
 1. Get a working kernel, *all* announce files and the bootstrap program for
    your machine (different kernel versions may require different bootstrap
    versions), the root, usr and var filesystems and the filesys-pl4-newer
    (this is a ramdisk that contains everything you will need to set up a
    working harddisk environment). Sources for these programs: See below.
    You will also need gunzip (from the gzip package) for your native OS in
    order to unpack the following .gz files: amiboot/ataboot,
    filesys-pl4-newer and vmlinux.
    Note: If gunzip succeeds your files are OK. If you want to test the
    integrity of the files you downloaded without decompressing them you
    can do 'gzip -t <filename.gz>'.
 2. Bootstrap the kernel and filesys-pl4-newer as described in the ANNOUNCE
    file for that kernel. Many of the bootstrap flags available are documented
    in older announce files only.
    Note for Amiga users: You have to install ixemul.library in libs: in order
    to run versions of amiboot prior to 2.0. If you have any problems booting
    linux you may try to run this session without executing the
    startup-sequence. This will prevent any manipulation of the MMU as is
    done by the CPU, SetCPU, Enforcer and VMM commands.
 3. Create a partition on your harddisk and install an ext2fs filesystem on it.
 4. Create another partition as swapspace.
 5. Unpack the root and usr filesystem onto the disk (these are still a.out,
    sigh).
 5a. Install your ramdisk image to harddisk! It contains new versions of the
    filesystem utilities and newer libraries (the latter may not be true
    anymore but you definitely need the filesystem utilities!)
 6. Check that the utmp and wtmp files exist in the right places and that
    there are links from the old locations to the new ones as decribed in
    ELF/README (I told you to read a somewhat more verbose installation
    guide).
 7. Reboot
 8. Bootstrap your kernel, this time from the harddisk instead of ramdisk.
 9. Get and read the Installation-HOWTO for Linux. Start reading from section
    4 "Installing the Software". Warning: This is for the PC so you may have
    to do things differently at some points.
Installation guide: <ftp://ftp.informatik.uni-oldenburg.de
    /pub/amiga/linux/local/docs/InstGuide_v2.0a.txt.gz>
These are the filenames relative to 680x0/ of the master ftp site and its
mirrors:
  ANNOUNCE-1.XXXXXX
  v1.2/filesys-pl4-newer.README
  v1.2/filesys-pl4-newer.ext2.gz and or v1.2/filesys-pl4-newer.minix.gz
  filesys/watchtower-root-fs.tar.gz
  filesys/watchtower-usr-fs.tar.gz
  filesys/watchtower-var-fs.tar.gz
  ELF/README
  ELF/gcc-2.7.2.bin.tar.gz
  ELF/binutils-2.6.bin.tar.gz
  ELF/ld.so-1.7.12.tar.gz
  ELF/libc-5.0.9.tar.gz
  v1.2/vmlinux-1.2.13pl10.gz (for 68060 and FPU emulation: see below)
  v1.2/amiboot-3.1.gz (Amiga only)
  v1.2/ataboot-1.8.gz (Atari only)
  v1.2/linux-1.2.13pl10.tar.gz (the kernel source tree)
  ../docs/HOWTO/Installation-HOWTO (only on servers not dedicated to 680x0)
  The root.tar.gz file contains no gcc, emacs or tcsh. If you are a
  tcsh or emacs addict you will want to get these packages from bin/ too.
  The filesystems naturally contain *no kernel sources*, so you will have
  to get these too.
  The current (1.2.13pl10) kernel does not work with FPU emulation or
  68060. Precompiled kernels with 68060 support can be found at
  <ftp://sunsite.auc.dk/pub/local/os/linux/680x0/68060/> and
  <http://www.esat.kuleuven.ac.be/~coene/files.html> with FPU emulation.

After you succeeded in installing Linux/m68k, you may want to become a
registered user at <http://www.cs.kuleuven.ac.be/~geert/Linux/m68k/>.

6. Sources for information/sources/binaries
===========================================

6.1 Documentation
-----------------
This FAQ is available on <ftp://ftp.uni-erlangen.de/pub/Linux/LOCAL/680x0/FAQ>,
<rtfm.mit.edu://pub/usenet-by-hierarchy/comp/os/linux/answers/linux/m68k-faq>
and <http://www-agrw.informatik.uni-kl.de/~jmayer/linux68k/linux68k-faq>. An
installation guide is available at <http://www.informatik.uni-oldenburg.de/
~amigo/inst.html>. It is also available in various formats from
<ftp://ftp.informatik.uni-oldenburg.de/pub/amiga/linux/local/docs/>. Although
the guide was written for the Amiga, many things are also useful for Atari
users. An Atari specific install guide can be found at <http://www.gti.net/
azog/linux68k.txt>; another one can be found at
<http://zippy.spods.dcs.kcl.ac.uk/~tomlin/flinux.html>. The ANNOUNCE files are
also valuable documentation.
Further documents can be found in the directories <ftp://tsx-11.mit.edu/pub/
linux/docs/> and <ftp://sunsite.unc.edu/pub/Linux/docs>. These documents were
written for Linux/i386 but many are useful for Linux/m68k users too (e.g.
howtos on UUCP, PPP and the general Linux FAQ).
A FAQ on Motorola chips (including the 680x0 microprocessors) is available
at <ftp://rtfm.mit.edu/pub/usenet/comp.sys.m68k/
comp.sys.m68k_Frequently_Asked_Questions_(FAQ)> and mirrors.
A FAQ about NetBSD for Amigas can be found at <ftp://ftp.uni-regensburg.de/
pub/NetBSD-Amiga/docs/NetBSD-Amiga-FAQ> and
<http://rfhs1012.fh.uni-regensburg.de/~feyrer/NetBSD/AFAQ/>
Last but not least: Look into the Documentation directory of the kernel tree
if you are using a current 1.2.13 kernel. 

6.2 Newsgroups
--------------
comp.os.linux.m68k: The group comp.os.linux.m68k is intended to further
  interest in, and development of, the port of the Linux operating system to
  the 680x0 architecture. All discussion in the newsgroup should be in
  English.
comp.os.linux.development.kernel: This group is on Linux *kernel* development
  only. From time to time it contains messages dealing with the Linux/m68k
  kernel.
comp.os.linux.announce: This group announces new Linux related products as
  well as new kernel releases. Announcements for new versions of Linux/m68k
  may be found there.
maus.os.linux68k:
  This group deals with Linux/m68k only. The languages currently used are
  German and English.  The following internet site is known to serve
  this group:    news.uni-stuttgart.de (read only)
  The Newsgroup is also available in FidoNet (LINUX-68K.GER).
comp.unix.amiga: This group is for discussions on AMIX, NetBSD and Linux/m68k
  on the Amiga. As most articles on Linux/m68k are not Amiga specific, the
  name is somewhat of a misnomer.
de.comp.sys.amiga.unix: Similar to comp.unix.amiga but in German language.

6.3 Mailing Lists
-----------------
I am aware of one mailinglist for Linux/m68k, which is named linux-m68k.  As
there is a newsgroup for Linux/m68k topics on this list should be restricted
to development issues if possible.

(provided by Benjamin Lorenz)
You can subscribe to linux-m...@phil.uni-sb.de by sending a mail to
majord...@phil.uni-sb.de, random subject and a single line in the mail body
containing "subscribe linux-m68k". You may want to subscribe to
linux-m68k-dig...@phil.uni-sb.de instead: In this case, you will receive one
mail per day containing all mails to the list from the last 24 hours. If you
prefer to read mail in this way, please unsubscribe from linux-m68k to reduce
net load!
You can download archives from the digest mails! They are stored on the ftp
server ftp.phil.uni-sb.de, in the directory "pub/linux-m68k/mailinglist".
Another mailinglist archive that supports searching can be found at
<http://aire.ncl.ac.uk/Atari/Mailing-Lists/Linux-m68k-phil-List.index.html>.

Note1: linux-m68k was formerly known as atarix.
Note2: The old mailinglist on vger for Linux/m68k has been phased out.
Note3: Archives for the old lists can be found via Helmut Neukirchen's WWW
  page.

6.4 WWW-sites
-------------
Chris Lawrence' Linux/m68k WWW page:
  <http://www.rose-hulman.edu/~lawrenc/linux/index.html>
Mirrors of tsx-11 via WWW:
  <http://src.doc.ic.ac.uk/packages/Linux/tsx-11-mirror/680x0/>
Linux/m68k Registration Site:
  <http://www.cs.kuleuven.ac.be/~geert/Linux/m68k/>
Borek Lupomesky's Linux/m68k page:
  <http://www.ujep.cz/linux/>
Helmut Neukirchen's Linux/m68k WWW page (no longer maintained):
  <http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html>
Dirk Wetter's Linux/m68k WWW page:
  <http://bunsen.pci.uni-hannover.de/linux68k.html>

6.5 Ftp-sites
-------------
THE Linux/m68k server:
  <ftp://ftp.uni-erlangen.de/pub/Linux/LOCAL/680x0/>
THE two Linux servers (sources for you to port to/compile on Linux/m68k):
  <ftp://tsx-11.mit.edu/pub/linux/sources/>
  <ftp://sunsite.unc.edu/pub/Linux/system/>
Mirrors (please use the one nearest to you, most of these mirrors are updated
daily):
  <ftp://tsx-11.mit.edu/pub/linux/680x0/>
  <ftp://ftp.funet.fi/pub/Linux/BETA/680x0/>
  <ftp://ftp.tu-clausthal.de/pub/systems/Linux/680x0/>
  <ftp://ftp.informatik.tu-muenchen.de/pub/comp/os/linux/680x0/>
  <ftp://ftp.informatik.uni-oldenburg.de/pub/linux/680x0/>
  <ftp://ftp.twi.tudelft.nl/pub/Linux/680x0/>
  <ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/>
  <ftp://ftp.fu-berlin.de/pub/atari/linux/>
  <ftp://src.doc.ic.ac.uk/computing/operating-systems/Linux/tsx-11-mirror/
       680x0/>
  <ftp://ftp.spc.uchicago.edu/pub/linux/680x0/>
  <ftp://ftp.nvg.unit.no/pub/linux/680x0/>
  <ftp://ftp.phil.uni-sb.de/pub/linux-m68k/mirror.erlangen/>
  <ftp://ftp.unina.it/pub/linux/linux68k/>
  <ftp://ftp.belnet.be/packages/Linux-680x0/>
Linux on Amiga:
  <ftp://ftp.informatik.uni-oldenburg.de/pub/amiga/linux/local/>
Various stuff:
  <ftp://ftp.phil.uni-sb.de/pub/linux-m68k/>
[Please tell me if your favourite mirror is not on this list.]
The kernel source for Linux/m68k can be found in 680x0/v0.9/ and 
680x0/v1.2/, a lot of binaries in 680x0/bin/. A few more tools reside in 
680x0/tools/.

The following addresses are known to offer ftp-mail:
  <ftpm...@info2.rus.uni-stuttgart.de>
  <ftpm...@ftp.inf.tu-dresden.de>
  <ftpm...@informatik.uni-oldenburg.de>
To get more info on ftpmail send a mail with subject help to one of
the addresses mentioned above.

6.6 Modem
---------
If you have a modem, you can get Linux/m68k from the following addresses:

6.6.1 Germany
-------------
System name: nasim
Phone: +49 89 5469593, ZyX19200
Login:  Anon-uucp: nuucp - no password / ZModem: gast - no password
Contents: full 680x0-tree of tsx-11 in /pub/linux-68k
Get first: index file /pub/linux-68k/ls-lR.nasim.linux-68k.gz
Other features: provides uucp access to 680X0 channel (read only) and the
  linux.act.* news-groups
Admin: Frank Bartels <kn...@nasim.cube.net>

6.7 Distributions
-----------------
There are no distributions available via ftp at the moment.
ALD (= Autoren Linux68K Distribution) for Atari is available from Whiteline.

6.8 IRC (Internet Relay Chat)
-----------------------------
I'm trying to establish an IRC channel for Linux/m68k: #Linux68k. Start irc
and select one of the servers of LinuxNET. A list of servers can be found
at <http://www.blackdown.org/LinuxNET/LinuxNET.html>. Just do a
"/join #Linux68k" and look out for others. If nobody's there, there is a
simple reasons for this: You are the first to join this channel (actually,
the first one to join a channel creates this channel). There already is a
well established #Linux.
Note: The attempt to establish a channel #Linux68k via the "regular" IRC
  servers more or less failed because of many, many netsplits. LinuxNET
  is much more reliable (knock on wood).

7. Activities
=============

7.1 Coordinator
---------------
Linux/m68k releases are built and released by Roman Hodek <Roman.Hodek@
informatik.uni-erlangen.de>. As Roman does not have an Amiga, that part is
maintained by Geert Uytterhoeven <Geert.Uytterhoe...@cs.kuleuven.ac.be>.
'Built' means that you can write a patch against the current version/
patchlevel and send it to them or the mailing list and they will integrate
it into one of the next releases. Make sure you state against which version
the patch was made. Please note that Roman has no way to test Amiga specific
patches and Geert can't test Atari specific things.
Note: If you patch processor specific code (e.g. 68030 vs. 68040 MMU or FPU)
  make sure that you document the dependencies.

7.2 Bug reports/Known bugs
--------------------------
Send bugreports to the author of the code or to Geert (Amiga) or to Roman
(Atari). A probably better approach is to post it to the linux-680x0 channel
or to the appropriate newsgroup.
If there are bugs that will probably stay in the code for an extended period
of time let me know so I may publish them here.

7.2.1 TT-FPU bug
----------------
Problem:
Linux reports "*** COPROCESSOR PROTOCOL VIOLATION *** FORMAT=9" or something
  similar.

Fix:
Pull the 16L8 PAL's pin 11 free (this is the signal 'XBG') and solder it to
+5V. This prevents the PAL from tri-stating AS and DS until XBGACK has gone
low.

To make your 32 MHz daughter-card work:
1) Pull pin 11 of te 16L8 PAL out of the board
2) Solder pin 11 of the IC to +5V (pin 20 of 16L8)

****This applies to the CA400771 32 MHz daughter board****
**********Other boards should not have this bug***********
_______________________________________________________________
Atari 32 Meg Daughter Board / PGA                             |
                                                              |
                                   ___________________        |
                                   |                 |        |
                                   |                 |        |
                                   2 1 1 1 1 1 1 1 1 1        |
                                   0 9 8 7 6 5 4 3 2 1        |
    . . . . . . . . . .            . . . . . . . . . .        |
       PAL 16R4-7PC                   PAL 16L8-7PC            |
    . . . . . . . . . .            . . . . . . . . . .        |
                                   1 2 3 4 5 6 7 8 9 1        |
                                                     0        |
      CA400771                                                |
   ___________________________________________________________|
   |
   |
___|

7.2.2 Amiga with GVP 16 bit RAM
-------------------------------
Problem:
When using a GVP card with 16 bit RAM on an Amiga with 68040 Linux/m68k dies.

Fix:
Unfortunately, there is no known solution to that problem. So your best bet
is to get some real 32 bit RAM. The 16 bit RAM may still be used as a ramdisk,
but you *must* disable it as normal RAM (-m option of amiboot).

7.3 Under construction/To do
----------------------------
I would like a list of projects planned/started, similar to the Linux
Project-FAQ. If you send me infos, I will put them in this section.

7.3.1 General
-------------
FPU-Emulation code is in beta <Paul.Co...@esat.kuleuven.ac.be>
   (kernel 1.2.13pl10).
1.3: Put the Linux/m68k stuff into the 1.3 kernel tree (partially done:
  <ftp://sunsite.auc.dk/pub/os/linux/680x0/v1.3/> <j...@kom.auc.dk>
Affs: Write code and other DOS types are missing (beta, not yet in
  1.2 kernels) (Hans-Joachim Widmaier <j...@sofal.tynet.sub.org>)
Creation of a freely available Debian distribution for Linux/m68k
  Send mail to debian-68k-requ...@pixar.com with the word "subscribe" in the
  message body. Mails should be sent to debian-...@pixar.com. Please do not
  join the list if you are not willing/going/able to actually work on the
  packages. Testers are not yet needed (it's too early for that).
Integration of VME stuff into main kernel tree (?)

7.3.2 Amiga
-----------
Cyberstorm SCSI driver is in alpha/beta <js...@iesd.auc.dk>
Support for 68060 processor is in stable beta <js...@iesd.auc.dk>.
Drivers for Arcnet cards are in alpha/beta
  <Frank.Neum...@informatik.uni-oldenburg.de>
Support for the Oktagon SCSI controller is planned
  <kcoz...@io.org> and <sherm...@ct.picker.com> 
A frame buffer device for the Spectrum/Piccolo/Picasso II (/SD64)
  graphics cards is in the works <Frank.Neum...@informatik.uni-oldenburg.de>
Support for the a2410 and DMI resolver gfx boards is planned
  <t...@susanna.oulu.fi> and <j...@kom.auc.dk>
The following drivers were asked about but nobody has reported interest
in writing them (yet):
- Concept/code for the use of chip ram and the blitter from user space.
- A2024 support missing
- Support for Emplant serial and scsi
- Support for the A4091 scsi card and the A4000T builtin scsi controller
  (could be based on the NCR53C710 driver for the MVME166/167 boards?)
- BSC MultiFaceCard II support. Docs available from Joerg Dorchain
  <dorch...@mpi-sb.mpg.de>.

7.3.3 Atari
-----------
Currently none?

7.3.4 VME
---------
A port to the MVME147 board has been started <en...@numerik.fb6.uni-siegen.de>,
  <n...@vespa.unix-ag.uni-siegen.de>

8. Common problems
==================

8.1 I can't find the manpage for XXX
------------------------------------
There is a *wealth* of Linux documentation out there for the original PC Linux
which almost always applies to Linux/m68k. Check out the documentation at your
favourite Linux ftp site.

8.2 Is there an X-server for the Amiga?
---------------------------------------
Yes, there is one: It's in the same package as the one for the Atari.
It can be found at.../680x0/X11R6/X-binaries.tar.gz. The frame buffer
device you need is already integrated into the 0.9pl5+ kernel.  Make
sure that /usr/X11R6/bin/X is a link to /usr/X11R6/bin/XF86_Axxxx.

8.3 How can I access my SCSI tape drive?
----------------------------------------
Use /dev/st0. Be aware that your tape drive must be up and running at boot
time so that linux can recognize it and you can use it.

8.4 Where did all my Amiga's chipmem go?
----------------------------------------
It's still there, but the kernel doesn't offer it to the user. It is used by
drivers that use the custom chips (floppy, framebuffer, sound).

8.5 How do I access Linux partitions from AmigaOS?
--------------------------------------------------
There is an ext2 filesystem for AmigaOS (<http://titan.cs.bonn.edu/~fasten>).
It allows you to read/write ext2 partitions. Not all write operations are
currently (version 0.3) supported. Btw: Do read the "Known bugs section".
Other ways to transfer files from Linux to AmigaOS are to use an msdos
partition, an Amiga/PC formatted floppy with msdos file system (this requires
a mountlist entry on AmigaOS side), use of a partition with minix file
system and the minix file handler on AmigaOS side (the driver is somewhat
unstable) or by accessing the floppy / any (empty!) partition directly via
GNU tar.

8.6 I can't boot from harddisk although the root partition seems to be fine!?
-----------------------------------------------------------------------------
(provided by Frank Neumann)
If you have used the new-filesys RAM filesystem to boot, created
filesystems on harddisk partitions and try to boot from one of these
harddisk partitions, you might see an error like:
  No such file or directory while trying to open /dev/hda5
  The filesystem superblock is corrupt. Try running e2fsck ...
This does _NOT_ mean that your files are corrupt - instead, the /dev
directory on your harddisk is missing some special files for accessing
certain partitions. Check the following: Start the kernel with the RAM
filesystem, mount the root partition under /mnt and check all partition nodes
under /mnt/dev (sd<xy> for SCSI partitions and hd<xy> for IDE partitions).
If you discover that your root/usr/whatever partition is not among them,
you will have to create the special file(s) by using the 'mknod' command.
Unfortunately this command is not in the new-filesys, so you will
have to use the one from the root filesystem, like this:
'/mnt/bin/mknod <parameters>'. For example, if your root partition is
supposed to be on /dev/hda5, you should go to /mnt/dev (NOT /dev!) and issue
the command '/mnt/bin/mknod hda5 b 3 5'. In this case, the '3' is the major
device number for IDE harddisk devices - replace it with a '8' for SCSI
harddisk devices. The minor device number (the last value) is the partition
number on that harddisk, starting with 1 (NOT 0!) for the first partition.
Once we have new root filesystem images or a real installation program,
this should not be a problem anymore, but until then you will have to live
with it.

8.7 When I try to start X11, I get 'cannot open /dev/mouse'
-----------------------------------------------------------
(provided by Frank Neumann)
Note: This should be fixed by the 1.2.13pl7 kernel.
Some installations automatically start the 'selection' demon when the system
comes up. 'selection' allows you to use Cut&Paste on virtual consoles.
However, this program uses the mouse driver (/dev/mouse or alike) to access
the mouse, and X11 also requires the driver. The current mouse driver,
however, can only be used by one program at a time.
For this reason, you will have to kill the selection process before you can
start X. The simplest way to do this is to issue the command 'selection -k'
(selection will then look for an already running process of itself and remove
it). This line could be quite handy if you put it into your $HOME/.xinitrc.

8.8 My SCSI bus locks up when I want to use my DAT drive
--------------------------------------------------------
(provided by Frank Neumann)
This problem seems to be related to certain A3000 Amigas - probably only
those with BootROMs. It has been discovered that if you have a DAT
drive connected whose SCSI address is smaller than the smallest SCSI
address of a harddisk in your Amiga, the bus will lock up very early
(under AmigaOS, while the SCSI bus is being scanned - you can notice
this by seeing that the SCSI LED is constantly lit and nothing happens).
The solution is to use higher address for DAT drives (and maybe also for
CD-ROMs) and the lower ones for direct-access media (read that as
"harddisks").

8.9 I cannot delete files with rm as root
-----------------------------------------
(provided by Frank Neumann)
If you have installed the root and usr filesystems from tsx.mit.edu
(pub/linux/680x0/filesys) and get a message like the following whenever
you try to delete files as root: "rm: dont use rm"
you might find it interesting to look into the file '.bashrc' in root's
home directory. In the last line, it reads: "alias rm='echo dont use rm'"
which is probably not what everyone wants. Remove that line and re-login
as root to get rid of this (or, for the current shell, just type "unalias rm").

8.10 My SCSI bus locks up when the kernel probes for devices
------------------------------------------------------------
(provided by Frank Neumann)
This can have two reasons:
a) Some SCSI devices dislike being inquired by the host adapter to negotiate
   for synchronous transfers. To inhibit that behaviour for selected
   devices, the amiboot program has an option "wd33c93=<xxx>".
   This option of course only makes sense on SCSI host adapters with the
   WD33C93 chip, like the A3000 built-in SCSI, the A2091 or the GVP Series II.
   I am not sure if this also works on other host adapters using the same
   chip.
   An example: If you have a CD-ROM on SCSI address 4, the command line
   option to amiboot would be 'wd33c93=16' (this number is calculated
   from 2^SCSI_ADDRESS - or, in our example, 2^4 = 16 (SCSI addresses start
   with 0). You can disable sync negotiation on more than one device
   by adding up the values for each device.
   A longer explanation of this subject is contained in the ANNOUNCE-0.9pl1.gz
   announcement file (on tsx.mit.edu under /pub/linux/680x0).
b) Other devices dislike being polled on LUNs (logical units) other than
   0. What can happen here is that the SCSI bus just locks up because the
   device does not answer the inquiry. Quite a couple of drives have already
   been added to the blacklist of "bad" devices in the kernel, but there
   are probably more. If you discover this behaviour on one of your scsi
   devices, you might try adding it to the blacklist (in drivers/scsi/scsi.c)
   yourself or ask someone to do it for you if you are sure about it.
   Although not related, it seems as if you can also bypass this problem
   with the "wd33c93=" amiboot option mentioned in the previous item.
If you think you're adventurous and want to fix the kernel for a specific
SCSI device yourself, here is what you could do:
Under AmigaOS, use the "scsiutil" command (on Aminet) and its "-i" option
to send an Inquiry command to that particular device. Write down its
vendor identification, product identification and Product revision level.
For instance, an Apple CD-300 CD-ROM drive might give (at the bottom) this
output:
  Vendor identification: SONY
  Product identification: CD-ROM CDU-8003A
  Product revision level: 1.9a
Now go into the kernel source tree and (under drivers/scsi/scsi.c) add 
your drive to the blacklist of drives that have problems (just search for 
"blacklist"). Recompile the kernel and try it out without the wd33c93= 
options you probably used so far. 
If it works, you might want to send your change as a GNU context diff to
one of the Linux/m68k maintainers.
[Can someone mail instructions how to do this on the Atari, please?]

8.11 I displayed a binary file, and now my console is totally screwed up
------------------------------------------------------------------------
(provided by Frank Neumann)
Once in a while, it may happen to you that you try to read a binary
file. Text viewers like 'more' will interpret the input they get as control
characters, to for instance change to an alternate character set. This
may result in a strange looking prompt, made up of special characters.
In such a case, you need to reset the terminal to its initial state.
There are several ways to do this, here's what I use: You have to
type (blindly):
echo "^V Esc c"
      ^^^^^^^^  Read this as: Control-V, Escape key, character 'c'
The sequence 'Escape-c' does just what we want: It resets the text
attributes and character set, and also clears the screen. You have to mask
the escape character with Control-V, otherwise the shell would directly
try to use the 'Escape' for its purposes. ^V^O should do the same job.

8.12 Can I use both ELF and a.out libraries/binaries in my system?
------------------------------------------------------------------
(provided by Frank Neumann)
No problem. If you moved to ELF according to Andreas Schwab's hints
(<ftp://tsx.mit.edu/pub/linux/680x0/ELF/README>), you already have a mixed
system. All old a.out shared libraries, stubs, static libraries and simple
object files (*.so, *.sa, *.o, *.a) are now in /usr/m68k-linuxaout/lib,
except for libc and libm which remain in /lib. 
The ELF shared libraries are in the usual places -- /lib, /usr/lib and
maybe /usr/X11R6/lib and /usr/local/lib -- and don't interfere with the
a.out libraries. 
When starting a program which is either a.out or ELF, the corresponding
link loader will determine what shared libraries are required and load
them on the fly. This of course works for both a.out and ELF binaries.
You only have to keep in mind that with a mixed system (using binaries
some of which require ELF libraries while others require a.out libraries)
both ELF and a.out libraries have to be kept in memory (in particular, but
not limited to, libc and libm). This certainly costs valuable memory.
So, the long-term solution will be a pure ELF installation (libraries and
binaries).
Note: Concerning a.out libraries, a couple of people had problems with the
last libc that was created (4.7.2). So we recommend staying with 4.6.27
which most people were using.

8.13 After installing a patch, the new files are in the current directory
-------------------------------------------------------------------------
Do a "man patch". Understand what the "-p" option does. In case the rest of
the patches install ok, add a "-p0" to your command options. I usually use
"patch -s -E -p0 <patchfile" (s: only report errors, E: remove empty files).

8.14 I can't mount MSDOS diskettes on my Amiga
----------------------------------------------
On the Amiga, the floppy minor numbers are 0-3 for drives 0-3 using Amiga
formatted disk and 4-7 for drives 4-7 using MSDOS formatted disks (drive+4).
Please name them mfd0-mfd3. Just in case you don't know how to create
the device files: Do a mknod "/dev/mfd(0-3) b 2 (4-7)" and please read a book
about Linux (even PC :-). Now you can do a "mount -t msdos /dev/mfd0 /mnt".
In case this still doesn't work: Do a "cat /proc/filesystems" and check
whether the kernel was configured to support msdos filesystems.
Alternatively you can use the mtools package. You can find a correctly
configured and precompiled package on tsx-11 in the bin directory.

8.15 Less behaves weird when I press a key
------------------------------------------
The older versions of the root-filesys have the wrong device numbers for
/dev/tty. Delete it and do a "MAKEDEV std" (you do have a somewhat current
/dev/MAKEDEV, don't you?)

8.16 What are the current major/minor device numbers for /dev/xxx?
------------------------------------------------------------------
The address of the "official" version of MAKEDEV for Linux/i386 can be found
at sunsite and mirrors in /pub/Linux/system/Admin/MAKEDEV-2.2.tar.gz.
A list of the major/minor device numbers can also be found in the 1.3 kernel
tree as Documentation/devices.txt.

8.17 How can I tell an a.out binary from an ELF one?
----------------------------------------------------
Use the "file" command. It will either tell you 'mc68020 demand paged' if it
is an a.out binary, and give a longer (self-explanatory) description if it
is ELF.

8.18 How can I find out about supported hardware?
-------------------------------------------------
Take a look at sections 4 (The current status of Linux/m68k) and 7.3 (Under
construction/To do) of this document.

8.19 Gcc complains that it can't find shared libs while linking
---------------------------------------------------------------
(provided by Geert Uytterhoeven)
The latest ld requires you to create links from *.so to *.so.6 for all libs,
so you should have e.g. libX11.so -> libX11.so.6, libX11.so.6 -> libX11.so.6.0

8.20 Linux recognizes my Amigas XXX board but it does not work
--------------------------------------------------------------
Linux/m68k can detect the Amigas autoconfig devices. That it is able to
detect and correctly classify these devices does not mean that the kernel
has an actual driver for that device. The list of supported hardware given
earlier should be exhaustive, i.e. anything that is not listed is not
supported. Note: turbo boards that appear as autoconfig devices are
almost always supported (except for the SCSI controller, if they house one).

8.21 I can't use ttyS3 and ttyS4 simultaneously on my Atari
-----------------------------------------------------------
This is perfectly normal: ttyS3 and ttyS4 correspond to different physical
external connectors on the Atari, but these connectors use the same internal
hardware (Channel A of the SCC).

8.22 Amiboot dies when I start it with VMM running
--------------------------------------------------
(provided by Martin Apel)
What happens is that amiboot gets loaded into virtual memory and shoots
itself out of accessible memory when disabling the MMU. But fortunately
there's an easy way to solve this:
Enter amiboot into the task list of VMM with code and data set to "No VM".
Then amiboot (version 3.0 or higher) should work correctly.

8.23 mke2fs from filesys-pl4-newer doesn't work
-----------------------------------------------
Right. It's broken.

9. Famous last words
====================

I want to thank everyone who contributed to this FAQ. There are many people
who did so by writing mail/news answering questions or by asking those
questions. Some sections are marked "provided by"; this means that the text
was originally written by that person but has been edited by me.
Frank Neumann <Frank.Neum...@informatik.uni-oldenburg.de>
Benjamin Lorenz <be...@phil.uni-sb.de>
Richard Hirst <s...@gpt.co.uk>
Geert Uytterhoeven <Geert.Uytterhoe...@cs.kuleuven.ac.be>
Martin Apel <a...@tecmath.de>

You may freely distribute this FAQ without any legally binding restrictions
except that it must remain in whole and unmodified. I would however be
grateful if you drop me a note if you include this file on a disk or cdrom
(especially, if you send me a copy ;-).

Amiga, Atari, Commodore, Motorola, MSDOS, Sun, Unix and maybe a few more words
I used in this text are trademarks. So what?
--
J"org Mayer  Student und Sysop an der Universit"at Kaiserslautern
http      :  http://www-agrw.informatik.uni-kl.de/~jmayer/
e-mail    :  jma...@informatik.uni-kl.de //  PGPid: 0xFB2461E1
For my address ask me, use finger or take a look at my www page.

			  SCO's Case Against IBM

November 12, 2003 - Jed Boal from Eyewitness News KSL 5 TV provides an
overview on SCO's case against IBM. Darl McBride, SCO's president and CEO,
talks about the lawsuit's impact and attacks. Jason Holt, student and 
Linux user, talks about the benefits of code availability and the merits 
of the SCO vs IBM lawsuit. See SCO vs IBM.

Note: The materials and information included in these Web pages are not to
be used for any other purpose other than private study, research, review
or criticism.