m_a_i_n --> _m_a_i_n

This commit is contained in:
ceriel
1991-03-06 14:26:16 +00:00
parent 76d79cf17a
commit b893ec7013
38 changed files with 57 additions and 72 deletions

View File

@@ -1,9 +1,6 @@
The m68k2 back end is an EM code generator for the
Motorola MC68000. It defines an integer to be 16 bits
and a pointer to be 32 bits.
At present it does not support floating point operations.
(All EM floating point instructions are translated to the
68000 "trap" instruction.)
The m68k2 back end generates code for the ACK 68000 assembler.
(The mnemonics recognized by this assembler can be found in
"as/mach3.c").
@@ -32,17 +29,16 @@ on the kind of target 68000 system.
ACK a.out format to your a.out format (as defined in
"/usr/include/a.out.h"). The program "cv/cv.c" does
the job for UniSoft Unix. It probably need only be slightly
modified for your system. Note that the program
generates no text or bss segments, but only a data segment.
modified for your system.
If your target 68000 does not run Unix, but is e.g. a stand alone
68000, you will need a program to download the ACK a.out file.
The program "dl/dl.c" produces Intel Hex format on standard output
from an a.out file.
- The EM runtime start-off ("libsys/head_em.s") may have to be modified.
It should call the procedure _m_a_i_n with parameters (argc,argv,envp).
It should call the procedure __m_a_i_n with parameters (argc,argv,envp).
Usually, Unix will put these on top of the stack before starting
the program. Note, however, that for 4-byte systems Unix will provide
a 4-byte argc, while _m_a_i_n expects a 2-byte argc; so the value
a 4-byte argc, while __m_a_i_n expects a 2-byte argc; so the value
must be shortened to 2 bytes.

View File

@@ -51,7 +51,7 @@ begtext:
! envp pointer.
add.l #2,sp !convert argc from 4-byte to 2-byte
jsr _m_a_i_n
jsr __m_a_i_n
add #010,sp
EXIT:
move.w d0,-(sp)