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.106.161 with SMTP id gv1mr1346624wib.4.1363402290222; Fri, 15 Mar 2013 19:51:30 -0700 (PDT) Path: g1ni68477wig.0!nntp.google.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!94.232.116.12.MISMATCH!feed.xsnews.nl!border-2.ams.xsnews.nl!multikabel.net!newsfeed20.multikabel.net!news.mi.ras.ru!goblin-spool!goblin1!goblin.stu.neva.ru!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: Wed, 13 Mar 2013 22:32:53 +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: Wed, 13 Mar 2013 22:32:53 +0000 (UTC) Injection-Info: mx05.eternal-september.org; posting-host="da745e888d4a5182b5fda6212bbb0a63"; logging-data="5556"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+f6jaJLx0AGCt4TCUonsYnIBZaeaoQKj8=" User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2) Cancel-Lock: sha1:f2BbEc6bFfW4NKFSjTz9bBu3MQU= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 2013-03-13T22:32:53+00:00 List-Id: On Tue, 12 Mar 2013 07:04:12 -0700, Diogenes wrote: > On Tuesday, March 12, 2013 8:09:08 AM UTC-4, Brian Drummond wrote: >> http://wiki.osdev.org/Ada_Bare_bones >> Or see the RTS component of the AVR-Ada project on Sourceforge for >> another minimal RTS. > Yeah...these projects are what got me interested in doing this. > > Is it actually possible to compile the nullmain.adb procedure against > these runtimes and have it actually load on their respective platforms? I have done so for the AVR-Ada runtime (and an experimental port to the Texas MSP430). The Ada main subprogram compiles down to "ret" . For the MSP430 version, the whole executable is about 200 bytes (mostly crt0.s, but including 32 bytes of interrupt vectors. The AVR-Ada project is further along : a complete LED flasher is about 65 bytes, of which the RTS is probably 50 bytes. - Brian