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=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM,WEIRD_PORT autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,8518fb63d2af28cf,start X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.232.42 with SMTP id tl10mr14890839pbc.7.1335755877716; Sun, 29 Apr 2012 20:17:57 -0700 (PDT) Path: r9ni114313pbh.0!nntp.google.com!news2.google.com!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail From: "Rego, P." Newsgroups: comp.lang.ada Subject: Tasking on GNATAVR Date: Sun, 29 Apr 2012 20:17:57 -0700 (PDT) Organization: http://groups.google.com Message-ID: <19355816.2739.1335755877395.JavaMail.geo-discussion-forums@ynlp3> NNTP-Posting-Host: 177.9.195.252 Mime-Version: 1.0 X-Trace: posting.google.com 1335755877 12094 127.0.0.1 (30 Apr 2012 03:17:57 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 30 Apr 2012 03:17:57 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=177.9.195.252; posting-account=TRgI1QoAAABSsYi-ox3Pi6N-JEKKU0cu User-Agent: G2/1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Date: 2012-04-29T20:17:57-07:00 List-Id: Ok, now I got to build and burn the .hex in an Arduino Duemilanove atmega32= 8p totally in Ada using GPL GNATAVR in GPS, following=20 http://student.agh.edu.pl/~mkucia/wiki/doku.php?id=3Davrada and much help from you guys.=20 In short it consists of: 1) Converting a .xml (from AVR Studio) to the atmega328p package spec, whic= h maps all the memory addresses of the chip (so I don't have to do it) 2) Using this spec package from a main file 3) GPS builds the .elf linking with a WinAVR object library 4) From command-line, convert the .elf in .hex and burn it into the chip us= ing avrdude. Now a simple blink program runs quite well, so runs accordingly as I burn i= t and start the chip. At this point, we achieve the same coding paradigm than AVR Studio, but in = Ada from GPS, not in C anymore. But now I want to include tasking on the code, and I did not find so many r= esources in documentation (actually I just found http://docs.adacore.com/gn= at-cross-docs/html/gnat_ugx_12.html). Anyway, I included=20 task My_Useless_Task; task body My_Useless_Task is begin null; end My_Useless_Task; and when I tried to build, builder returned me main.adb:13:04: construct not allowed in configurable run-time mode main.adb:13:04: file s-parame.ads not found main.adb:13:04: entity "System.Parameters.Unspecified_Size" not available main.adb:13:04: violation of restriction "No_Tasking" at system.ads:52 I also tried to look inside system.ads (c:\gnat\2011\lib\avr\4.5.3\rts-ztp\= adainclude\system.ads, which is installed with GNATAVR package), and there = is plenty of pragma restrictions, including pragma Restrictions (No_Tasking= ). I commented this pragma Restrictions (No_Tasking), but just the 4th erro= r line vanished. So, what should I do to make the tasks work?