<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman,new york,times,serif;font-size:12pt"><div>So, consensus is to include the register definitions - then I will work on these.  To get all the possible register structures for all possible peripherals will take some time.  And naming conventions come into play as well.<br><br>I prefer having my device registers defined in structures.  Other people prefer non-structured "flat" definitions for the registers.<br><br>i.e.<br><br>PortA -> DDR<br>PortA -> PIN<br><br>vs.<br><br>DDRA<br>PINA<br><br>The current stellaris has a start for structures, unless there are objections, I would continue with these.<br><br>The actual names of the registers will be best to match the datasheet (otherwise, non-compiler writing / source reading people will need a manual [and somewhat lengthy one at that] to provide the correcting naming of
 each peripheral and register.)  BUT - there is no standard for what the peripheral structure instances should be named - so again, this would need to be documented if the target audience is people that won't be tearing the compiler apart.  [And again, more work...]<br><br>John<br></div><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><br><div style="font-family:arial, helvetica, sans-serif;font-size:10pt"><font face="Tahoma" size="2"><hr size="1"><b><span style="font-weight: bold;">From:</span></b> Geoffrey Barton <mrb@periphon.net><br><b><span style="font-weight: bold;">To:</span></b> FPC developers' list <fpc-devel@lists.freepascal.org><br><b><span style="font-weight: bold;">Sent:</span></b> Fri, August 19, 2011 1:19:38 PM<br><b><span style="font-weight: bold;">Subject:</span></b> Re: [fpc-devel] Arm Thumb2 - Stellaris status<br></font><br>
<br>On 19 Aug 2011, at 10:10, Florian Klämpfl wrote:<br><br>> Am 19.08.2011 11:07, schrieb Geoffrey Barton:<br>>> <br>>> On 19 Aug 2011, at 09:55, Florian Klämpfl wrote:<br>>> <br>>>> Am 19.08.2011 10:33, schrieb Geoffrey Barton:<br>>>>> <br>>>>> because one is forever re-compiling the compiler when one<br>>>>> switches to a device with a new peripheral, and if your main<br>>>>> activity is not compiler development but product development one<br>>>>> has to go back and find out how to do it each time. Better that<br>>>>> the core stays the same.<br>>>> <br>>>> This is true, it makes things maybe easier for the first<br>>>> implementor, he hacks together some units and directives but it is<br>>>> harder for any latter user. He basically needs to do the same<br>>>> amount of work as the initial implementator:
 find out that he needs<br>>>> some directive, find the correct units etc.<br>>> <br>>> exactly so, IMHO! (and in my own experience).<br>>> <br>>> If all he needs to add are a few peripheral definitions and drivers<br>>> and there have been provided some examples of structures which work<br>>> well in practice for these, a new user can be doing useful work very<br>>> quickly and contributing to the collective knowledge from day one.<br>> <br>> What I mean is: if the first user of a controller does things properly<br>> (create startup and interface unit, extend t_embedded.pas), subsequent<br>> users of the same controller have much less work, they need only to pass<br>> the correct parameter to the compiler and not to fiddle with<br>> configuration files, directives etc. The compiler takes care of everything.<br><br>and I agree with you 100%.<br><br>as the 'first user' though I had other
 pressures on me, such as having to prove that using FPC on Stellaris was viable so that I could avoid being forced into writing in C. I therefore concentrated on the one device I had on the evm; maybe thats what everybody does. Then one looks for the time to tidy things up, or for someone else to come along wanting to go the same route and needing a jump-start.<br><br>_______________________________________________<br>fpc-devel maillist  -  <a ymailto="mailto:fpc-devel@lists.freepascal.org" href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a><br><span><a target="_blank" href="http://lists.freepascal.org/mailman/listinfo/fpc-devel">http://lists.freepascal.org/mailman/listinfo/fpc-devel</a></span><br></div></div>



</div></body></html>