Forum > Embedded - AVR
AVRPascal – free code editor for FPC for AVR
ackarwow:
--- Quote from: VisualLab on October 07, 2024, 12:08:50 am ---It just needs to be ergonomic. As for functionality, I meant more what it can do (operations).
--- End quote ---
Of course you are right.
ackarwow:
--- Quote from: cb_1964 on October 06, 2024, 09:12:10 pm ---Great Work
--- End quote ---
Thank you :)
ackarwow:
Today I published AVRPascal 2.6 on my website (http://akarwowski.pl/index.php?page=electronics&lang=en). The changes are mainly bug fixes.
Bug fixes:
- fixed small memory leaks
- fixed PID label name in USB device edit window
- fixed USBAsp connection notification (port: USB)
New features:
- storing height of Messages area
Other:
- new version of UnoLib (https://sourceforge.net/projects/unolib/) library; many thanks to Henk Heemstra for tests and TestBlinkWithoutDelay.pas code
mizar:
I just tried AVRpas on linux64.
In my opinion, a better interface than Arduino IDE v. 2, great job! :)
I compiled the blink example for ArduinoUNO board (AVR328P):
AVRpas (fpc): code 2816 byte, data 112 byte :-[
Arduino IDE: code 924 byte, data 9 byte :o
Is Arduino IDE cheating or what ? 8-)
I wish I could program avr using fpc, but we are on a platform where we can't afford to waste flash and /or ram that way...
I hope I made some mistake or that with larger programs the differences will be reduced
ackarwow:
--- Quote from: mizar on October 22, 2024, 08:11:52 pm ---I just tried AVRpas on linux64.
In my opinion, a better interface than Arduino IDE v. 2, great job! :)
I compiled the blink example for ArduinoUNO board (AVR328P):
AVRpas (fpc): code 2816 byte, data 112 byte :-[
Arduino IDE: code 924 byte, data 9 byte :o
Is Arduino IDE cheating or what ? 8-)
I wish I could program avr using fpc, but we are on a platform where we can't afford to waste flash and /or ram that way...
I hope I made some mistake or that with larger programs the differences will be reduced
--- End quote ---
Thank you for your comment and opinion, its nice for me :)
I made some quick tests for ATMega328p with your options settings:
- program which do nothing (only begin..end): 398 bytes code, 18 bytes data
- and with directive {$mode objfpc}: 792 bytes code, 46 bytes data (+394 bytes code, +28 bytes data)
All code and data seem to be initialization code of FPC RTL.
More tests:
- with timer.pas, with its own initialization code: 1720 bytes code, 73 bytes data (+928 bytes code, +27 bytes data)
- TestBlink.pas (+used units defs.pas and digital.pas) with commented Delay(1000): 2424 bytes code, 133 bytes data (+704 bytes code, +60 bytes data)
My conclusions:
1) part of the code is initialization data of RTL, hard to reduce without changing RTL library
2) part of the code is initialization code of timer.pas which (I suppose) can be improved.
3) yes, its possible that with larger programs the differences will be reduced
4) AVRPascal uses FPC 3.3.1, which (as far I know) is not final version of the compiler and it is in working process.
Navigation
[0] Message Index
[#] Next page
[*] Previous page