From: Shark8 <onewingedshark@gmail.com>
Subject: Pascal Calling Convention
Date: Wed, 23 Mar 2011 14:37:55 -0700 (PDT)
Date: 2011-03-23T14:37:55-07:00 [thread overview]
Message-ID: <9b04626e-567d-408c-aab3-39b964b3ffd6@l2g2000prg.googlegroups.com> (raw)
I was looking around for a way to use the Pascal calling convention in
GNAT; particularly because I thought it might be nice to do the GUI-
stuff in good old Delphi 5 and the application itself in Ada. All
easily doable via DLL or, possibly, through the $L compiler directive
which specifies a .obj file to link to.
-- I found a utility to convert between .o and .obj; so that's not a
problem. Though if someone knows a way to
-- have GNAT emit .obj files instead of .o I'd like to hear it.
The problem comes with the conventions... I'd like to be able to
interface w/o using stdcall or cdecl calling convention and directly
use the Pascal calling convention within my Ada texts. According to
this page ( http://gcc.gnu.org/onlinedocs/gnat_ugn_unw/Stdcall-Calling-Convention.html
) the STDCALL convention *is* the Pascal calling convention; both are
callee clean-up of the stack however, according to wikipedia (and
http://www.swissdelphicenter.ch/torry/showcode.php?id=1233 ) there is
a difference: left-to-right vs. right-to-left parameter passing.
This could also be a good nugget of information if I decide to use BP7
to write an OS loader & runtime for that OS; I had an OS written in
BP7 to the point where it could display a command-line, read
[keyboard] commands, and change the display-mode... when trying to
port that code to Ada apparently it failed to load properly due to the
non-existent runtime's requirement.
{True, it would be limited to 32-bits; but there isn't going to be a
shortage of 32-bit CPUs for a while.}
next reply other threads:[~2011-03-23 21:37 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-23 21:37 Shark8 [this message]
2011-03-23 23:25 ` Pascal Calling Convention Yannick Duchêne (Hibou57)
2011-03-24 0:24 ` Randy Brukardt
2011-03-24 0:43 ` Yannick Duchêne (Hibou57)
2011-03-24 2:04 ` Shark8
2011-03-25 15:40 ` Yannick Duchêne (Hibou57)
[not found] ` <F8mdnYCca6tRJBfQnZ2dnUVZ_s-dnZ2d@earthlink.com>
2011-03-24 19:20 ` Keith Thompson
2011-03-25 16:04 ` Robert A Duff
2011-03-25 17:02 ` Hyman Rosen
2011-03-25 17:09 ` Robert A Duff
2011-03-25 17:35 ` Hyman Rosen
2011-03-26 19:51 ` Robert A Duff
2011-03-25 17:51 ` Keith Thompson
2011-03-26 20:46 ` Robert A Duff
2011-03-27 2:24 ` Randy Brukardt
2011-03-28 15:41 ` Adam Beneschan
2011-03-28 19:52 ` Robert A Duff
2011-03-29 2:32 ` Randy Brukardt
2011-03-29 6:06 ` Shark8
2011-03-29 23:45 ` Randy Brukardt
2011-03-29 19:19 ` Robert A Duff
2011-03-30 0:02 ` Randy Brukardt
2011-03-30 12:40 ` Robert A Duff
2011-03-30 19:40 ` Randy Brukardt
2011-03-30 20:56 ` tmoran
2011-03-30 22:34 ` Robert A Duff
2011-03-31 21:00 ` Randy Brukardt
2011-03-28 20:29 ` Hyman Rosen
2011-03-28 21:16 ` Adam Beneschan
2011-03-28 21:26 ` Hyman Rosen
2011-03-28 22:08 ` Adam Beneschan
2011-03-28 23:47 ` Georg Bauhaus
2011-03-29 12:23 ` stefan-lucks
2011-03-29 13:10 ` Hyman Rosen
2011-03-30 13:42 ` Phil Clayton
2011-03-31 7:40 ` Phil Clayton
2011-03-29 2:48 ` Hyman Rosen
2011-03-29 18:30 ` Robert A Duff
2011-03-29 23:25 ` Adam Beneschan
2011-03-30 12:50 ` Robert A Duff
2011-03-30 14:47 ` Adam Beneschan
2011-03-30 18:10 ` Robert A Duff
2011-03-29 3:01 ` Hyman Rosen
2011-03-29 18:22 ` Robert A Duff
2011-03-26 21:30 ` Florian Weimer
2011-03-27 16:18 ` Robert A Duff
2011-03-27 16:38 ` Florian Weimer
2011-03-27 16:56 ` Robert A Duff
2011-03-24 2:15 ` Shark8
2011-03-24 0:38 ` ytomino
2011-03-24 2:23 ` Shark8
2011-03-24 21:29 ` Gautier write-only
2011-03-25 12:47 ` Marco
2011-03-25 15:38 ` Yannick Duchêne (Hibou57)
2011-03-26 8:39 ` ObjectAda [was: Pascal Calling Convention] Gautier write-only
2011-03-26 14:05 ` Marco
2011-03-26 21:58 ` Gautier write-only
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox