summaryrefslogtreecommitdiff
path: root/sys/arch/m68k/060sp/ReadMe.NetBSD
blob: fdfff72606133e4ff4d9cefb327207cf0ab7daaa (plain)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
$OpenBSD: ReadMe.NetBSD,v 1.2 1996/05/30 22:13:57 niklas Exp $
$NetBSD: ReadMe.NetBSD,v 1.1 1996/05/15 21:06:20 is Exp $

Copyright (c) 1996 Ignatios Souvatzis.  All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
   must display the following acknowledgement:
	This product includes software developed by Ignatios Souvatzis.
4. The name of the author may not be used to endorse or promote products
   derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Notes about the NetBSD integration
----------------------------------

Preface and Acknowledgements: 

A first try at integrating the M68060 Software Package was done by
Yasushi Yamasaki of the NetBSD/x68k group, but only available as a
patch file to their source tree (which wasn't integrated into the
NetBSD master tree at that time).

I started with their glue code version from the patch file, and
changed the following things up to now:

- collapse a few identical glue routines (fetch code/data words/longs
from user space) into a multi-labeled one

- make the gas syntax files of the glue code the Master files

- I call the access error handler (label _buserr) directly, instead of
through an RTE as in the example file

Other changes are only in the method this was integrated into the
Amiga vs. X68k port, which is machine dependend anyway.

Thanks for the initial effort!



I. File suffix convention

I cvs imported all of the Motorola files (with lowercase names).

These are:

*.s:	Assembler files "unsupported by Motorola, provided as a reference only"
*.sa:	Pseudo assembler hex dump files, which is Motorolas supported version.
*.doc:	docs by Motorola

errata, changes, files, readme: by Motorola.


I choose .S as the file suffix which is feeded to our assembler
directly or indirectly.

We use:		To create: 

isp.sa		isp.S
fpsp.sa		fpsp.S

In addition, inetbsd.S and fnetbsd.S are our part specific glue files,
netbsd.S is our general glue file, and copyright.S ensures we have a
copy of the copyright notice in the kernel if using the 060SP.

To enforce the right relative positions of isp/its glue code inetbsd.S
includes isp.S at the end, and fnetbsd.S includes fpsp.S.

Ia: Don't Change Files

- all Motorola doc files, all .sa (hex) files.

Ib: Nearly Don't Change Files

- for now, the .s files by Motorola. We might use the fpsp.s file
later to create an optimized version, once we a) verified its
identical to the supported .s and b) write a conversion (to .S format)
script.

II. Interface to the arch/$machine/$machine files:

[to be continued]