|
|
1.1 root 1: How to compile MiNT 0.96 with PureC
2:
3: -----------------------------------
4:
5:
6:
7: Julian F. Reschke, 19. Oktober 1992
8:
9: email: [email protected]
10:
11:
12:
13:
14:
15: (1) Special files
16:
17:
18:
19: First of all, you need a special osbind.h. This is because Pure's own
20:
21: version differs in some small details from the GCC header files. You
22:
23: can't use Pure's tos.h, either, because in its latest versions it already
24:
25: defines some of MiNT's data structures. You can either leave osbind.h in
26:
27: the MiNT source directory, or copy it to your PureC include folder. If you
28:
29: are using the MiNT library, all should work fine without this file.
30:
31:
32:
33: This is all what's needed. You can either use the command line versions
34:
35: of PureC, or you can use the PureC shell. I am compiling MiNT with GNU
36:
37: make (latest version at atari.archive.umich.edu should work fine) and a
38:
39: self-made 'cc' command, that I've specially written for the PureC command
40:
41: line versions (see makefile.pcc). This tool is still being tested, and
42:
43: I've not yet decided how to distribute it. If you are interested, write to
44:
45: me.
46:
47:
48:
49: If you're going to use the PureC shell, you'll have to 'manually'
50:
51: translate the .spp files to the PASM syntax using asmtrans.ttp. The
52:
53: syntax is
54:
55:
56:
57: asmtrans -purec -o outfile.s outfile.spp
58:
59:
60:
61: genmagic.ttp is needed to create the file magic.i, which in turn is
62:
63: included by the .spp files.
64:
65:
66:
67:
68:
69: (2) Things to do
70:
71:
72:
73: So far, I've made no attempt to translate asmtrans with PureC. Try it
74:
75: yourself (you'll need alloca; might work with the MiNT library version
76:
77: for PureC) or compile them with gcc.
78:
79:
80:
81:
82:
83: (3) Caveats
84:
85:
86:
87: This is a preliminary 'port'. It seems to work fine on my machine, but
88:
89: this guarantees nothing:
90:
91:
92:
93: There's still a conflict in the way PureC saves registers with what MiNT
94:
95: file system drivers or device drivers expect. That's why minix.xfs will
96:
97: bomb. There are two solutions: change it in the kernel, or change PureC.
98:
99: Both are being currently considered. Note that the same problem will
100:
101: arise if you try to write drivers with PureC.
102:
103:
104:
105:
106:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.