hardin@eecea.eece.ksu.edu (David Hardin) (11/09/88)
A couple of friends and I have been doing a port of Minix to a PC coprocessor board of our own design based on the Rockwell AAMP processor. AAMP is a 16-bit stack-oriented micro that is quite similar to EM (thus the interest in Minix). AAMP was designed by the folks here in the Collins Government Avionics Division in Cedar Rapids (my comrades and I work at CGAD, and are doing this port in our "spare" time). AAMP is one of the few micros in the universe that does not yet have a C compiler targeted to it. Almost all code written for AAMP is written in Ada, using a validated compiler written by CGAD. In addition to government avionics, the chip is also used in the avionics for Boeing commercial jets. (Did you know you were trusting your life to a stack machine running Ada?) We have Minix running on a PC, and have purchased the Minix C compiler from UniPress. I have been writing the code generator for the C compiler, which is about 80% complete. I have done this despite the documentation from UniPress, which is horrid. I found additional EM info in some articles done by AST in the early 80's, although that EM does not much resemble the Minix EM. So here, finally, are my questions: What are other folks doing for code generators? Have people been using ACK? (Sorry, I don't have the bucks to purchase it, and none of my university friends has it.) What are you doing for asld? The asld sources from UniPress are fairly useless for porting, seeing as how they are mostly machine-generated, and the generator is not included. One expects assemblers to be fairly non-portable, but not this bad... Does anyone have a complete description of the EM used in Minix? I have been able to puzzle most of it out myself from the one-line descriptions found in the UniPress docs, but a few instructions remain mysterious. A set of semantics such as can be found in AST's "Using Peephole Optimization on Intermediate Code" (ACM TOPLAS, vol.3, no. 1) would be a great help. Please, don't anyone suggest the GNU C compiler or assembler! As everyone should know by now, much of GNU is just plain unsuitable for 16-bit machines. Plus, the gas code is pretty nasty (don't think RMS had much to do with it). Thanks in advance, David Hardin -- David Hardin Rockwell International M/S 124-211, 400 Collins Rd. NE INTERNET: hardin@eecea.eece.ksu.edu Cedar Rapids, IA 52498 UUCP: {pyramid,ucsd}!ncr-sd!ncrwic!ksuvax1!eecea!hardin