I just posted RLP in Depth on Codeshare. Feel free to discuss and make suggestions here.
Finally, it’s here. Have fun and leave some comments of how to improve it!
Well done Simon !!
@ Simon from Vilnius - Just skim read through the guide. It is really excellent (~1 femotoKeil).
been wanting to look into rlp. hopefully this will give me a kick start.
many thanks for sharing.
Very, very nice! Honestly, I didn’t read the whole thing (maybe when I get some free time ). So, I may have missed you mentioning this: There are tools to strip ELF files of most, if not all, [em]useless[/em] sections. For instance, GNU tools have “strip.”
I love the keil awfulness factor.
Will try rlp soon. Thanks
Simon - This is very excellent! I cant’ wait until you finish the RLP Extensions sections…
Thanks for your hard work.
@ Simon from Vilnius - Very nice write-up. I have not looked at NETMF for awhile, since before the 4.3 betas started shipping, this and your templates are tempting enough that I am going to upgrade a few of my boards tomorrow and try them out!
Is the lack of RLP support on the Hydra a temporary situation? I hope so, because that is my favorite board.
If you don’t mind me providing a little input.
[ol]In the section ‘A few tips and tricks’ you say that 3.3 is a double-precision fixed point number, it is a double-precision floating point number. .NET/.NETMF does not have any fixed point types.
CCRAM - Is Core Coupled RAM, in the STM32 MCUs this is a block of 64K RAM that is connected to the core on a dedicated bus, the other blocks (2 blocks of 64K) are shared by the MCU and peripherals. The CCRAMs proximity on the die and dedicated connection to the core make it very fast, ideal for things like the stack and data that is performance critical.
The ‘x’ attribute in the memory section does indeed stand for eXecute. To try make a long story short, if the linker has to dynamically define an output section (ie. you did not specify an output section for an input section) the linker will select the memory region for the dynamically created output section based on the region attributes.[/ol]
A final comment…
I think you need to be a little less vague on your feelings about Keil, I was not really sure how you felt about it
I agree Keil is convoluted, the file management in particular just seems awkward to me. But I do not use it enough to say that I understand the philosophy behind the IDE. So who knows, maybe there is a method to the madness, but I fear I might go mad trying to grok the method…
Thanks everyone for the kind words! You have no idea how much time it consumed. I had 80% done in no time, and then details almost killed me…
@ Jeff — I’ll take a look at “strip”. Maybe
@ taylorza — Nice notes, thanks, will take into account.
Well: My boss calls me “Mr. 95%” :whistle:
it is a law of nature. 80% of the time is spent in 20% of the final work.
Unfortunately, Hydra is no longer supported by GHI, so it stays with RLPLite and 4.2, and I don’t even own one. I don’t think it will go into the manual, at least not anytime soon…
@ Simon from Vilnius - hydra now uses the same rlp as all other products.The only difference is you need to get the function address from the map file. There is no elf parsing.
Extensions are also not available on hydra but the firmware is open source if anything wants to be that advanced.
There is no rlp lite anymore
Looks like I missed something :think:
Anyway, I will postpone any experiments until cheap Hydras reach Mouser…
@ Simon from Vilnius - a free hydra will be dropped in the mail going to your address in your profile. Please check your address.
Thanks for helping us in documenting rlp.
Damn, I guess now[em] I will have[/em] to update the manual. I should have stayed silent ;D
Address updated. Thanks, Boss.
@ Simon from Vilnius - Very nice! Thanks for sharing!
Anyone looking at this please note [em]Cerberus templates will not work on GHI SDK 4.3.4[/em]. Updates are coming.