[Info-vax] VAX Macro to C conversion
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Sun Jul 21 19:19:34 EDT 2019
On 2019-07-21, VAXman- @SendSpamHere.ORG <VAXman- at SendSpamHere.ORG> wrote:
> In article <qh1l3i$7t1$1 at dont-email.me>, Simon Clubley <clubley at remove_me.eisner.decus.org-Earth.UFP> writes:
>>
>>Also, will the Basic RTL work in _any_ of the inner modes ?
>
> Why? Does the C RTL? ;)
>
$ search sys$examples:lrdriver.c memcpy
memcpy (sys_datap, qio_bufp, qio_buflen);
$
(And yes, I know it's a special kernel mode CRTL, not the usual
user mode one. :-))
However, C is unique among the higher level languages in that it
doesn't actually really _need_ a standard RTL for the actual language
features (as opposed to library functions) in order to create
functioning code.
Even Ada code, which is designed for OS work, either needs a minimal
RTL in kernel mode or to be compiled without support for the language
features which use that RTL. [*]
Basic also needs a runtime to function and unless there's any way to
turn it off, that runtime needs to be able to function in the inner
modes if you want to write OS internals code.
[*] In GCC Ada, that's done by turning on the Zero Footprint Profile runtime:
https://docs.adacore.com/gnathie_ug-docs/html/gnathie_ug/gnathie_ug/the_predefined_profiles.html#the-zero-footprint-profile
(In case there are any Ada people here thinking of trying this, be aware
that's in the Adacore version of GNAT Pro with all the associated licencing
issues. If you want to use the FSF version of GCC, the last information
I had was that you had to supply your own ZFP profile.)
Simon.
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
More information about the Info-vax
mailing list