Article View: comp.sys.amiga.tech
Article #11763Re: New RKM:AutoDocs & Includes MAJOR problem!
From: Eric Green
Date: Sat, 11 Mar 1989 03:51
Date: Sat, 11 Mar 1989 03:51
22 lines
1628 bytes
1628 bytes
in article <1467@percival.UUCP>, baer@percival.UUCP (Ken Baer) says:
> pleased with the fact that the parameter types were actually listed with
> the function descriptions. HOWEVER, to my dismay, I discovered that the
> type sizes are WRONG! Those of us who use Manx C, know that when you
> pass an integer to an Amiga system function (like Draw()), you have to
> cast it to LONG (or it must me LONG in the first place). But, in the new
> RKM, these variables are listed as SHORT!! Not as LONG! I guarentee
Note that this is a problem with Manx's "wrapper" functions, not with
the Autodocs etc. The Rom Kernel was designed to be accessed via
assembler. When it says a parameter is "SHORT", what it is really
saying is, "OK, load the parameter using an ordinary 16-bit MOV into
register <n>". Manx calls the Rom Kernel via "stub code" written in
assembly, which translates from Manx's "on-the-stack" form of
parameter passing to Exec's "In-the-registers" form of parameter
passing. Manx does it wrong in a number of places, depending on what
version of the compiler you have.
--
| // Eric Lee Green P.O. Box 92191, Lafayette, LA 70509 |
| // ..!{ames,decwrl,mit-eddie,osu-cis}!killer!elg (318)989-9849 |
| \X/
Technical Details
Message-ID:
<7500@killer.Dallas.TX.US>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!amdahl!ames!killer!elgReferences:
<1467@percival.UUCP>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!amdahl!ames!killer!elg From: elg@killer.Dallas.TX.US (Eric Green) Newsgroups: comp.sys.amiga.tech Subject: Re: New RKM:AutoDocs & Includes MAJOR problem! Message-ID: <7500@killer.Dallas.TX.US> Date: 11 Mar 89 03:51:44 GMT References: <1467@percival.UUCP> Organization: The Unix(R) Connection, Dallas, Texas Lines: 22