From: jhi@dol-guldur.hut.fi (Jarkko Hietaniemi)
Subject: Amiga Mach FAQ
Organization: Helsinki University of Technology, Finland
Distribution: comp
Date: 11 Sep 92 21:50:28


AmigaMach FAQ

====== WHAT?

Mach kernel (MK74) has been ported to Commodore Amigas.
The port works provably on the following platforms:

- 25Mhz A3000 with AmigaDOS 2.04 in RAM with 4MB fast
- A2000 with a GVP combo ('030 33Mzh)
- A500 with CSA MegaMidget Racer ('030)

The port is also known as "KludgeMach".

Motorola 68030 works, '020 should be sufficient as long as a MMU
(68851) is available.  To boot at least 2MB fast RAM is required
KludgeMach DOES NOT USE chip ram at all.  By tweaking sources the fast
RAM requirement could perhaps be pushed down to 512kB.
Diskspace requirement of the binaries is only 300kB.

The current distribution CONTAINS ONLY THE SOURCES and to build Mach
at least 3MB of fast RAM is required.  To build the binaries, 25MB of
diskspace is needed, of this 15MB is for Mach, 10MB for the
development tools. 

NOTE: these requirements are only for now; in near future the
distribution is likely to grow significantly because device drivers
and servers are added.  The recommended minimum is then 4MB fast RAM
and 40MB disk.  Nice-to-have amounts are then 8MB fast and 100MB disk:
this much is needed for double build directories and for possible
Mach-based filesystem's playground.

====== WHERE?

The port is available by FTP from the following places:

Australia:

	monu1.cc.monash.edu.au:/pub/mach	GMT+10 (NSW)

Europe:

	ftp.funet.fi:/pub/mach/amiga		GMT+2  (EET)
	(or /pub/amiga/mach, both work)
	ftp.dfv.rwth-aachen.de:/pub/amiga/mach	GMT+1  (MET)
	(or ftp.informatik.rwth-aachen.de, both work)

United States:

	homeboy.wpi.edu:/pub/mach		GMT-5  (EST)
	oes.orst.edu:/pub/mach			GMT-8  (PST)

monu1.cc.monash.edu.au is the primary distribution site BUT DO USE
THE SITE NEAREST TO YOU WHEN DOWNLOADING (ftp get'ting), NOT monu1.
The link to "down under" is seriously limited.  When uploading (ftp
put'ting), use the incoming/ directory of monu1.  Also remember to do
your ftp'ing when there is night at the site you are using.  The
distribution is mirrored daily from monu1 to homeboy and oes and from
there daily to Germany and Finland.

You need only the file

/pub/mach/amiga/KludgeMach-<latest>.tar.Z

to get started. Currently the latest version is 0.003.  Note that
the European sites have one directory deeper hierarchy, you will
need to get /pub/mach/amiga/amiga/KludgeMach-<latest>.tar.Z

The port was done by Bryan Ford <baford@peruvian.utah.edu>
>
> OK, I got Mach rolled to MK74, cleaned up, and uploaded to your incoming
> I uploaded three files:  'mk74-ami.tar.Z', which is the full
> Mach distribution, minus the things that aren't needed (kernel debugger,
> i386 stuff, norma stuff, etc.), plus the Amiga stuff, plus ready-made
> MIG stub '.c' files.  I decided to upload the whole thing because it
> would have become a real pain to keep track of things separately, especially
> after CMU rolls their archives to MK75 and beyond.  The MIG stubs are there
> because they need tons of manual coaxing to get working under AmigaDOS.
> The archive contains a 'readme' file which briefly describes how to get
> things set up; I also uploaded the 'readme' file separately from the archive.
> The archive contains the beta-test-version docs for SIM 1.67, which is what
> machSIM is based on.  The file 'SIM.lha' is the latest "normal" released
> SIM shareware distribution, just in case anyone needs it for some reason.

The full contents of the monu1 distribution are:

/pub/mach/README:
----------------------------------------------------------------------
This is an area for the distribution of sources related to ports 
of the Mach microkernel from CMU to the Motorola 68000 series of
microprocessors.

The directories are:

/pub/mach:               - you are here
total 10
-rw-r--r--  1 zik           171 Sep 11 13:26 README
drwxr-xr-x  3 zik          2048 Sep 11 13:23 amiga/
drwxr-xr-x  2 zik          2048 Sep 11 13:22 cmu_src/
drwxr-xr-x  2 zik          2048 Sep 11 13:22 contrib/
drwxrwx-wx  2 zik          2048 Sep 11 13:23 incoming/

/pub/mach/amiga:         - sources to AmigaMach
total 9686
-rw-r--r--  2 zik         11972 Sep  7 20:51 AmigaMach-FAQ
-rw-r--r--  2 zik       3210627 Sep  3 13:02 KludgeMach-0.000.tar.Z
-rw-r--r--  1 zik       3256873 Sep  3 14:12 KludgeMach-0.003.tar.Z
-rw-r--r--  2 zik         11972 Sep  7 20:51 KludgeMach-FAQ
-rw-r--r--  1 zik          8341 Sep  3 19:52 KludgeMach-README
-rw-r--r--  1 zik         68957 Sep  3 12:51 SIM.lha
drwxr-xr-x  2 zik          2048 Sep 11 13:23 diffs/
-rw-r--r--  2 zik       3210627 Sep  3 13:02 mk74-ami.tar.Z
-rw-r--r--  1 ftp         53096 Sep 11 12:50 scsi9091.lzh
drwxr-xr-x  2 zik          2048 Sep 11 13:23 tools/
-rw-r--r--  1 ftp         25840 Sep 11 12:50 uart.tar.Z

/pub/mach/amiga/diffs:         - differences between versions
total 0

/pub/mach/amiga/tools:         - tools that might be helpful
total 4370
-rw-r--r--  1 zik        345600 Sep  4 18:43 dmake.lha
-rw-r--r--  1 zik            80 Sep  4 18:47 dmake.lha.readme
-rw-r--r--  1 zik       3306066 Sep  4 11:54 gcc-2.2.2.lha
-rw-r--r--  1 zik           213 Sep  4 11:55 gcc-2.2.2.lha.readme
-rw-r--r--  1 ftp         32720 Sep  5 21:42 gcc222-fix1.lha
-rw-r--r--  1 ftp        244736 Sep 11 12:54 gtar10.lha
-rw-r--r--  1 ftp         86380 Sep  9 08:15 parserutils.lha
-rw-r--r--  1 ftp         54538 Sep  9 08:15 patchutils.lha
-rw-r--r--  1 zik        304585 Sep  4 11:55 pdksh-920711.lha
-rw-r--r--  1 zik           154 Sep  4 11:55 pdksh-920711.lha.readme

/pub/mach/cmu_src:             - unretouched CMU mach sources
total 4818
-rw-r--r--  1 zik           254 Sep  5 10:38 getting_bsdss
-rw-r--r--  1 zik       2863311 Sep  3 13:52 mk78.tar.Z
-rw-r--r--  1 zik        219675 Sep  3 13:53 poe9.tar.Z
-rw-r--r--  1 zik       1777023 Sep  3 13:53 user18.tar.Z

/pub/mach/contrib:             - other random sources from other places
total 492
-rw-r--r--  1 zik         92701 Sep  3 12:51 MachSun3.tar.Z
-rw-r--r--  1 zik         10327 Sep  8 11:27 Trigger
-rw-r--r--  1 zik         69167 Sep  3 12:52 mach030.tar.Z
-rw-r--r--  1 zik         11476 Sep  8 11:30 mach_disklabel_diffs.tar.Z
-rw-r--r--  1 zik        283131 Sep  8 11:33 poe-kernel-with-disk-image.tar.Z
-rw-r--r--  1 zik          2571 Sep  8 11:27 second_SYS.h

/pub/mach/incoming:            - the place to put new things
total 1280

Note that the European sites have one directory deeper hierarchy, you
will need to cd to /pub/mach/amiga, just /pub/mach is not enough.
Note also that the directory hierarchy (where the thing are) may
mutate because new material will accumulate and the hierarchy might
need reorganizing.  The rule of thumb: use the nearest ftp site, cd to
/pub/mach or /pub/mach/amiga (non-Europe and Europe, respectively) and
hunt for READMEs and FAQs.

In addition, oes.orst.edu mirrors amiga.physik.unizh.ch:/amiga/devel
at /pub/mach/devel.  The directory contains all kinds of Amiga program
development tools.  ftp.funet.fi has very similar directory called
/pub/amiga/programming/c

====== BEWARE!

KludgeMach works, but only for suitably small values of "works".
Hardcore hacker attitude useful.

====== WHO?

Amiga Mach is working but still far from complete.  Minor details such
as an operating system are still missing.  Volunteers for all kind of
jobs are very welcome.

- coordinators for various levels of the development work

  Michael Saleeba <zik@aurora.cc.monash.edu> maintains the primary
  distribution site and has volunteered to act as a clearing-house.
  He is also in charge of the "offical" releases so SEND YOUR PATCHES
  TO Michael.

- ftp service: the number of ftp sites is adequate (5) at the moment
  The people in charge are:
  monu1.cc.monash.edu.au	Michael Saleeba
  homeboy.wpi.edu		Dominic Giampolo <nick@homeboy.wpi.edu>
  oes.orst.edu			Erik Bennett <bennett@oes.orst.edu>
  ftp.funet.fi			Jarkko Hietaniemi <jhi@ftp.funet.fi>
  ftp.dfv.rwth-aachen.de	Stefan Becker
				<stefanb@pool.informatik.rwth-aachen.de>

- further work on the Mach kernel: the kernel needs to be upgraded
  to MK78 and it needs to be tested, tested, tested and then again tested.
  The initial port was done by Bryan Ford and patchwork has been done by
  Niklas Hallqvist <niklas@appli.se> who also maintains the amiga-mach
  mailing list.  DIFF LIST FROM THE STANDARD CMU MK74 TO AMIGA MACH
  IS NEEDED.

- console device: Bryan Ford and Keith Gabryelski <ag@monique.rt.com>,
  a former Amiga UNIX Development Team member, are working on this.

- drivers: SCSI, WD33C92, WD33C93, Commodore 2065/2090/2091 expertise needed
  Amiga UNIX has many device drivers WITH sources.  Their copyright
  status needs to be checked from Commodore.  Keith Gabryelski has
  volunteered to contact C= about this.  Ty Sarna <tsarna@endicor.com> is
  contacting GVP about their drivers.  Other 3rd party vendors like
  IVS could also use some questioning. 

- an OS :-) Work and queries are currently progressing on several fronts:

  BNR2SS/BSDSS: Michael Saleeba [Zik] <zik.aurora.cc.monash.edu>
  The situation is a bit muddy: CMU has stopped SUPing BSDSS.

  BSD4.4: Real Soon Now -- the "lite" or unencumbered version should
  be released 4Q92.

  Berkeley Sprite: Ty Sarna has researched this possibility.  Sprite
  unfortunately seems at the moment be unsuitable:

Mike Kupfer <kupfer@cs.berkeley.edu>:
>
> I understand that you're interested in the Mach-based Sprite
> single-server.  I'm the person who did the single-server.  I no longer
> work for the University of California, but I can give you some
> information about the server.
> 
> - The sources for the Sprite single-server are available for anonymous
>   ftp from allspice.berkeley.edu, in ~ftp/pub.  These sources are
>   primarily intended for browsing.  They do not include a bunch of
>   header files, Sprite libc sources, makefile libraries, or the
>   CThreads changes necessary to build the server.  (Actually, the
>   CThreads changes might be in a recent MK release; I haven't
>   checked.)  Please note that the ftp service on allspice is a bit
>   unreliable.  If you have problems using it, you can send mail to
>   root@sprite.berkeley.edu, and somebody will kick the appropriate
>   daemon.
> 
> - The Sprite single-server implements a subset of Sprite
>   functionality.  There is no binary compatibility, either with native
>   Sprite or with UNIX.  Process migration is not supported, nor is
>   access to the local disk.  Most of the Sprite distributed file
>   system is implemented, including Sprite cache consistency and
>   support for Sprite pseudo-devices.  The single-server currently only
>   runs on DECstations.  Performance of the Andrew benchmark is roughly
>   1/2 that of native Sprite on a DECstation 5000.
> 
> - Because the single-server cannot access the local disk, it can only
>   be used within an existing Sprite cluster.  That is, before you can
>   run the Sprite single-server, you would have to first install native
>   Sprite.  This is a non-trivial task.  In fact, the Sprite group gave
>   up on supporting external sites in early 1992, and requests for a
>   Sprite distribution are now politely refused.
> 
> - If you would like to browse any of the missing sources, I can try to
>   put together a tar file for you.  Also, feel free to send me mail if
>   you have additional questions.  Please be patient if I am slow in
>   answering--I already have many other things that need my attention.
> 

  CMU POE: VOLUNTEER NEEDED TO CHECK ON THIS: can a UNIX server
  be built from the sources available and is an AT&T license needed???
  not entirely free either???

  Linux:
  The upper layers may be portable enough to make an UNIX server???
  Some work has been done on this by Wild and the result was a disappointment:
>
> Well... I took a (really quick..) look at Linux sources, and well, I didn't
> like them. You literally smell i386, messydos, pee-cee in every corner
> of the source, really not a pleasure imagining that this beast should ever
> run on something different than what it was targeted for.
  Wild is also the right person to contact about the gcc port for
  Amiga and about dmake.

  386BSD: are the upper layers of Jolitz' work portable enough?
  Michael Richardson <mcr@latour.sandelman.ocunix.on.ca> has
  partial answer:
>
>   Yes, it is. The ISA bus architecture stuff is sufficiently isolated
> that making it work on other types of 386 system would be a snap. The
> 386 specific stuff is isolated to one directory tree (in which the isa
> stuff is located) as well. 
>   I am unclear as to how a Mach single server interacts with the rest
> of mach so I can't comment more.

- verification whether the port works on an '040
  (current guess is no)

- RDB (Rigid Block Standard) experts

- AmigaOS emulator

- contacts with C= technical people about hardware (and AmigaOS emulator???)

  Some C= current and former employees have already stepped out of
  the woodwork:

  Ken Dyke		<kcd@cbmvax.commodore.com>
  AmigaOS Networking

  Keith Gabryelski
  AmigaUNIX Networking, X11, serial devices, Ethnernet devices,
  random hardware (audio, clock, etc)

- this FAQ file is maintained by Jarkko Hietaniemi

DRAMATIS PERSONAE:

Erik Bennett		<bennett@oes.orst.edu>
	oes.orst.edu ftp maintainer

Stefan Becker		<stefanb@pool.informatik.rwth-aachen.de>
	ftp.dfv.rwth.aachen-de ftp maintainer

Ken Dyke		<???@cbmvax.commodore.com>
	C= AmigaOS Networking engineer

Bryan Ford		<baford@peruvian.utah.edu>
	the author of the initial port of Amiga Mach

Keith Gabryelski	<ag@monique.rt.com>
	former C= AmigaUNIX Networking/X11/device Engineer
	AmigaUNIX device driver source status

Dominic Giampolo	<nick@homeboy.wpi.edu>
	homeboy.wpi.edu ftp maintainer

Niklas Hallqvist	<niklas@appli.se>
	Mach kernel programmer
	amiga-mach mailing list maintainer

Jarkko Hietaniemi	<jhi@ftp.funet.fi>
	ftp.funet.fi ftp maintainer
	FAQ maintainer

Michael Richardson	<mcr@latour.sandelman.ocunix.on.ca>
	386BSD preliminary peek

Michael Saleeba		<zik@aurora.cc.monash.edu>
	monu1.cc.monash.edu.au ftp maintainer (the primary site)
	the central coordinator
	the official releases

Ty Sarna		<tsarna@endicor.com>
	Sprite research
	GVP contact

Markus Wild		<wild@amiga.physik.unizh.ch>
	Linux preliminary peek
	Amiga port of GCC
	dmake

====== HOW?

Want more information?

Join the mailing lists

amiga-mach@appli.se
machm68k@yoyo.cc.monash.edu.au

by sending a subscribe message (Subject: subscribe) to

amiga-mach-request@appli.se
machm68k-request@yoyo.cc.monash.edu.au

amiga-mach is the main mailing list to use.  It can, however, can
get quite congested at times.

The main list, amiga-mach, is most useful as an information channel
both for asking questions and for sending answers and progress reports.
For specific subprojects people are encouraged to use either personal
mail or create mailing lists if the subject is not necessarily useful
for "general public".
For example people working actively with console driver might get
together and create a sub-mailing list.  A person who knows how to and
is able to create and maintains a mailing list is needed.

Currently there is only one sublist:

amiga-mach-ftp@dol-guldur.hut.fi which is for
	ftp distribution maintainers

END_OF_FAQ