From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00,PLING_QUERY autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,345cecbee95ca646 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit X-Received: by 10.180.75.8 with SMTP id y8mr3603607wiv.1.1363090246771; Tue, 12 Mar 2013 05:10:46 -0700 (PDT) Path: bp2ni87669wib.1!nntp.google.com!goblin3!goblin2!goblin.stu.neva.ru!aioe.org!eternal-september.org!feeder.eternal-september.org!mx05.eternal-september.org!.POSTED!not-for-mail From: Brian Drummond Newsgroups: comp.lang.ada Subject: Re: Bootstrapping a null procedure. Seriously?! Date: Tue, 12 Mar 2013 12:09:08 +0000 (UTC) Organization: A noiseless patient Spider Message-ID: References: <19d330ec-9b61-414e-abc3-e25a8c786b81@googlegroups.com> <513dbf68$0$6580$9b4e6d93@newsspool3.arcor-online.net> <9c94727f-6ace-4a8c-8d2d-7929db956f72@googlegroups.com> Mime-Version: 1.0 Injection-Date: Tue, 12 Mar 2013 12:09:08 +0000 (UTC) Injection-Info: mx05.eternal-september.org; posting-host="da745e888d4a5182b5fda6212bbb0a63"; logging-data="21638"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1++7DYLZNeUUBoTuxrtPL8y7dJZ8tORsDo=" User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2) Cancel-Lock: sha1:A+2ZLcjU8vD1hcbpb/iAP9pIkO0= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 2013-03-12T12:09:08+00:00 List-Id: On Mon, 11 Mar 2013 14:14:37 -0700, Diogenes wrote: > Actually I just need to figure out how to write a crt0.o file just for > bootstrapping the Runtime. > > That shouldn't be too hard. Really, all the machine needs is a _start > point. I can gradually add parts of the runtime/kernel from there. > > I'd like to build a runtime/profile that's slightly less rigorous than > the Ravenscar profile. It would allow Generics and allow Dynamic Memory > allocation only through the use of explicitly declared Storage Pools. > Suspect I'll have to do some in depth compiler hacking for that though. This tutorial on a minimal RTS may be useful (thanks to Luke Guest). http://wiki.osdev.org/Ada_Bare_bones Or see the RTS component of the AVR-Ada project on Sourceforge for another minimal RTS. - Brian