aboutsummaryrefslogtreecommitdiff
path: root/unix/mc68000/README
blob: e23f067d7252c262f1172060de093d092b379502 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
MC68000/IRAF Installation Notes.
18 January 1986 (dct)
-------------------------------------------

The 4.2BSD VAX version of UNIX/IRAF will run almost without change on a MC68000
based workstation.  In particular, the kernel should not have to be changed.
The changes which are required are due to machine differences, e.g., in the
assemblers and machine constants.  The affected files are summarized below.
This documents only the source changes required for a MC68000, not the full
installation procedure required before the system can be compiled and run.

host/as/*.s
	All of the assembler sources are of course different for a VAX and
	a 68000 based machine.  The various UNIX assemblers for the MC68000
	UNIX implementations are also different, e.g., in the comment
	convention, use of $ or # to denote a numeric constant, etc.
	Despite the differences there are many similarities, and the
	translation is usually not difficult.  Note that only a couple of
	assembler sources are required, although half a dozen or so should
	eventually be implemented for efficiency reasons.

	To modify the AS directory for a MC68000, replace ZSVJMP.S, AMOV.S,
	etc. with their MC68xxx versions, and remove all other VAX assembler
	sources which you do not plan to implement (e.g., rename the original
	AS directory as "vaxas").  Note that only the MC68020 has the bitfield
	instructions needed for BITUPK.S and BITPAK.S.

host/boot/*
	No changes should be required.

host/gdev/*
	No changes should be required, unless new graphics devices have to be
	interfaced.

host/hlib/clpackage.cl
	Change the default device names.

host/hlib/mach.h
host/hlib/[dir]mach.f
host/hlib/libc/spp.h (EPSILON)
	Change the machine constants to those for the MC68000.  If the machine
	has IEEE floating point, these constants are independent of the host
	operating system (e.g., SUN or ISI).  In <mach.h> only the machine
	epsilon usually needs to be changed; the values for INDEF, MAX_LONG,
	etc. the are the same for most modern minicomputers.

	The utility osb$zzeps.f may be used to determine the machine epsilon.
	The values determined for a SUN/MC68010 with software floating point
	were the following:

		EPSILONR	(1.192e-7)
		EPSILOND	(2.220d-16)

	For a MC68xxx, the bytes are not swapped:

		BYTE_SWAP2	NO
		BYTE_SWAP4	NO

	PORTLIB/[DIR]MACH.F contants:

		(to be determined)

host/hlib/libc/iraf.h
host/hlib/mkiraf.csh
host/hlib/irafuser.csh
	Change the pathnames in these files.

When installing a new version of UNIX/IRAF it is usually best to install the
new UNIX directories as well, and then modify or replace the above files as
necessary for the 68000.  All revisions are thus automatically picked up, and
the modifications required for the 68000 are minor.