Very "vintage" ... No, it's not a hoax !

Go To Last Post
51 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I read that with the correct settings GCC could also compile ... FORTRAN (???) Is this true for the WinAVR version, too ? And, how can I invoke it ? Switching the "programmers notepad" to Fortran mode, is this enough ? I saw on SourceForge that a programmer began with developing a Fortran compiler, but the project seems to be stopped unfinished since Dec 18.

Thanks for any answer !

This topic has a solution.
Last Edited: Sun. Nov 15, 2020 - 06:40 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 2

"gcc" means "Gnu Compiler Collection", and it includes compilers for several languages.

MOST languages require much more extensive run-time support than C (usually because IO is included in the language.)  Without the runtime support, you can have a compiler for a language that works, but is useless.

C is somewhat unique in its ability to create useful programs with essentially no run-time or library support.  I blame a lot of its success on that capability.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gfortran is known to work on...

 

https://gcc.gnu.org/wiki/GFortranPlatforms

 

I do not see AVR in that list

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for answers ...

To westfw : is an extension for Fortran available, especially to access the registers (I/O, timers) and bit manipulation ?

To ron_sutherland : I think these platforms are the environment to run gcc, not the target platforms available for the code generated (with some add-ons for cross compiling : look at WinAVR, which is a specific version of GCC for AVR). I don't wanna use an AVR as a development system smiley !

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Just for kicks I changed my gcc-8 build config arg's from "--target=avr --enable-languages=c,c++" to "--target=avr --enable-languages=c,c++,fortran".

The build died on building an info file, but the cross-compiler binaries seemed to build OK.   Then I tried this:

 

$ cat add.f
      subroutine add(integer c, integer a, integer b)
      c = a + b
      end
$ avr-gfortran -c add.f
f951: internal compiler error: gfc_validate_kind(): Got bad kind
0x5bf86e gfc_internal_error(char const*, ...)
	../.././gcc/fortran/error.c:1358
0x6de245 gfc_validate_kind(bt, int, bool)
	../.././gcc/fortran/trans-types.c:814
0x6de9fb gfc_init_kinds()
	../.././gcc/fortran/trans-types.c:691
0x663e8d gfc_init_decl_processing
	../.././gcc/fortran/f95-lang.c:511
0x663e8d gfc_init
	../.././gcc/fortran/f95-lang.c:242
0x588583 lang_dependent_init
	../.././gcc/toplev.c:1892
0x588583 do_compile
	../.././gcc/toplev.c:2118
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

 

Last Edited: Thu. Nov 12, 2020 - 02:21 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

More (error) report lines than instructions, some people would call this : crap". Fortran was the first language I learned in 1973 (on Univac1110 with punched cards), it worked well and brought me to computing. I hoped I could go "back to the roots" (an access of nostalgia ...) C is too "cryptic", like Forth (I used this on Commodore 64). Finally I think that for development of real applications  I will stay with GCBasic, it is not perfect, but it is the "less worse" among all.

no for Fortran with gcc ! indecision

Last Edited: Thu. Nov 12, 2020 - 03:30 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alberich wrote:

 

no for Fortran with gcc ! indecision

 

It's naive to expect the gcc fortran front end to hook up to an 8-bit back end right away. 

You are free to download the sources, build and fire up the debugger (gdb).

#1  0x00000000006de246 in gfc_validate_kind (type=type@entry=BT_REAL, 
    kind=kind@entry=8, may_fail=may_fail@entry=false)
    at ../.././gcc/fortran/trans-types.c:814
814	    gfc_internal_error ("gfc_validate_kind(): Got bad kind");
(gdb) p type
$1 = BT_REAL
(gdb) p kind
$2 = 8
(gdb) p may_fail
$3 = false

(gdb) break validate_real
Breakpoint 2 at 0x6de160: file ../.././gcc/fortran/trans-types.c, line 753.
(gdb) p validate_real(kind)
No symbol "validate_real" in current context.
(gdb) p gfc_real_kinds[0]
$6 = {epsilon = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, huge = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, tiny = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, subnormal = {{_mpfr_prec = 0, _mpfr_sign = 0, 
      _mpfr_exp = 0, _mpfr_d = 0x0}}, kind = 4, radix = 2, digits = 24, 
  min_exponent = -125, max_exponent = 128, range = 0, precision = 0, 
  mode_precision = 32, c_float = 0, c_double = 0, c_long_double = 0, 
  c_float128 = 0}
(gdb) p gfc_real_kinds[1]
$7 = {epsilon = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, huge = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, tiny = {{_mpfr_prec = 0, _mpfr_sign = 0, _mpfr_exp = 0, 
      _mpfr_d = 0x0}}, subnormal = {{_mpfr_prec = 0, _mpfr_sign = 0, 
      _mpfr_exp = 0, _mpfr_d = 0x0}}, kind = 0, radix = 0, digits = 0, 
  min_exponent = 0, max_exponent = 0, range = 0, precision = 0, 
  mode_precision = 0, c_float = 0, c_double = 0, c_long_double = 0, 
  c_float128 = 0}
(gdb) 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

westfw wrote:
"gcc" means "Gnu Compiler Collection", and it includes compilers for several languages.

Indeed:

 

 the GCC team wrote:

GCC, the GNU Compiler Collection

The GNU Compiler Collection includes front ends for CC++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages (libstdc++,...).

https://gcc.gnu.org/

 

https://gcc.gnu.org/fortran/

 

 

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

To westfw : is an extension for Fortran available, especially to access the registers (I/O, timers) and bit manipulation ?

Not that I know of.  It's a bit academic since the other parts of the compiler are far from working.

AFAIK, API conventions for calling subroutines should end up well defined, so you can always provide an assembly language library to perform such functions.

 

 

It's naive to expect the gcc fortran front end to hook up to an 8-bit back end right away. 

Is this technically the "back end" ?  I thought all the languages compiled to the same "intermediate code", and we already have a back end (or what I thought of as a back end) to convert that intermediate code to avr code.
I guess there's a lot of room for "well, the backend doesn't support ALL the possible intermediate code"?

 

Hmm:  https://gcc.gnu.org/legacy-ml/gc...

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If you really want fortran you could try f2c.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for all Your answers, but I see that the solution is absolutely not simple ... So I gave up the idea of programming in Fortran and, finally, I am still thinking that GCBasic is, as I said, the "less worse" programming language !

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
I gave up the idea of programming in Fortran

Why would you want to program a small, 8-bit microcontroller in FORTRAN ?

 

FORTRAN is specifically aimed at numeric computation and scientific computing - to which an AVR would seem eminently ill suited ?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

As I wrote : nostalgia ... And finally (the old) Basic was a language derived from Fortran, so I asked myself why I should not use the original instead of the copy ?

 

smiley

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Why not 'C' (or C++) ?

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Microsoft had Fortran for the Z80; Intel had it for the 8085. Both could access to IO registers.

 

The source code for lots of things from that era are available to find.

#1 Hardware Problem? https://www.avrfreaks.net/forum/...

#2 Hardware Problem? Read AVR042.

#3 All grounds are not created equal

#4 Have you proved your chip is running at xxMHz?

#5 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand."

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Now you come to mention it, I think that the source for PALASM was in FORTRAN ... ?

 

It was printed in the back of the MMI PAL databook, and you had to type it in yourself!

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Not sure what timeframe, but spacecraft software was coded in Fortran in that time.

There is a famous case where a failure occurred because of a statement on the order of

      do i = 1.10

Do you see the problem?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

To awneil : first, C(++) is case sensitive, and this can be a source of "nerve breakdowns" ; second, I tested a prog found on the Web with WinAVR, despite of the fact that I edited the makefile I got an error at building time ; third, some instructions of C are very cryptic, it remembers me Forth :

: ? @ . ;

(yes, this is a correct instruction sequence).

Languages like Fortran, Basic or Pascal are more "readable", and they are my 3 (or now 2) preferred. Unfortunately there are only 2 versions of Pascal for AVR (I would prefer programming in Pascal, for Windows I used Delphi) : the MikroElektronika's, which is very expensive (and I tested the "evaluation version", the executable for AVR needs more ROM and RAM than the corresponding program written in GCBasic), and FreePascal which is a "gaseous plant", using GCC for AVR, and the IDE looks like Turbo Pascal, but it starts in a window smaller than 1/4 of the screen, not really ergononomic (unfortunately the "full screen" works no more with W7) ... And finally, GCBasic has a "real" setup for Windows, no need to "build" the compiler, at least for the Windows version. Good for updates ...

So, finally, there is only GCBasic left for me !

Last Edited: Fri. Nov 13, 2020 - 03:49 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Surely there is BASCOM-AVR.

And many readers on this Forum use it.

 

I would avoid any AVR software from MikroElektronika but their hardware is fine.

 

I suspect that there are other Basic compilers.    I am not brave enough to use Basic.

Other members should be able to advise.

 

Likewise,   I have never used Pascal.    But there might be a working Compiler out there.

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I tested the evaluation version of Bascom, I noticed 2 disadvantages :

- The price for the licence (but it is less than for Mikroelektronika's Basic or Pascal) ; GCBasic costs ... ZERO !

- The main : the limitation to only one operation on each line, one cannot write A = B + C * D, You must write A = C * D and then A = A + B ... And I think it is similar for other operations, they must be splitted between several instructions. For example, I think it would not be possible to write :

Tampon_variateur = (tampon_variateur And 0b00110000) Or Selecteur_vitesse

This line is from a GCBasic prog that I wrote and compiled ... and it runs since 2 years ago !

The only issues I had with GCBasic concerned string manipulations (buffer overflows).

But I would be happy if one could find a really useable (preferably free) Pascal compiler, with the same ergonomy as GCBasic.

Last Edited: Fri. Nov 13, 2020 - 06:04 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Wait for advice from genuine Bascom users.

It looks as if the licence is 108 EUR which seems pretty reasonable if it does what you want.

 

You can try the Free Evaluation first.   I suspect that 4kB might be enough for many programs.

 

Do you realise that Tampon in English means "female sanitary product" ?

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

BTW : The word "Tampon" can be used in French for this, too ... But it means also "buffer" (as "memory", or for railways : in France we don't use "female sanitary protections" to absorb the schocks to railroad cars, LOL). This is one ambiguity of French language ... And in my progs I use French variable names ! Here it is used for modifications to the output port, I prefer modifying a buffer, image of the port, and then write the complete byte to the port, this avoids transient states in some cases (if several "sections" of the port get modified successively).

 

devil

Last Edited: Fri. Nov 13, 2020 - 06:51 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Why not Ada?   It's in the gcc suite and Ada was designed with embedded systems in mind.

(My first try to build with --target=avr on gcc-8.3.0 failed.  Will try again.)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
third, some instructions of C are very cryptic, ...
and ambiguous though IIRC C's ambiguities are in the C standard.

lemiceterrieux wrote:
Unfortunately there are only 2 versions of Pascal for AVR ...
a third is from E-LAB Computers in Germany.

lemiceterrieux wrote:
... FreePascal ...
Some operators of Free Pascal are on this forum.

 


ISO/IEC JTC1/SC22/WG14 - C: Approved standards

E-LAB Computers Pascal-scm for Atmel AVR

MPLAB Snap and atbackend | AVR Freaks (Free Pascal)

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There can be issues building a cross GCC with Ada.

Can immediately recall only one easy to install AVR GCC Ada but it's GCC v4.5 (no XMEGA) and GPL (the application becomes GPL as the very minimal run-time (ZFP) is GPL); AVR-Ada is GPL with the GCC run-time exception (the usual way)

The third option is GMGPL though be sitting when you receive the quote from one at AdaCorewink; GNAT Pro is excellent quality and service though GNAT Pro Developer is a better value (reduced price, Arm and RISC-V)

 


GMGPL - GNAT Modified GPL

ZFP - Zero Footprint

 

I didn't know you could get Ada for AVR | AVR Freaks (current run-time includes GCC 9)

Downloads - Adacore

Pragma License (GNAT Reference Manual) (GCC)

AdaCore Launches New GNAT Pro Product Lines - AdaCore

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yes, I forgot the E-Labs, but the price is about 1.5 times the price at MikroE ...

 

About languages : I learned Fortran, the 6502 (C64) Assembler, Basic, Pascal, Forth, Delphi and VBA for Excel, I am 67 years old and as I think too old for another language, especially if it is almost "unreadable" like C or if I must first "build" my compiler. GCBasic installs via a setup.exe prog, You select simply the modules that should be available ...

 

sad

Last Edited: Fri. Nov 13, 2020 - 10:27 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The "build" is important; I have not used gFortran, but I bet it wants a Makefile to spin the build operation, Ada also. I suspect that Delphi has hidden the build process, but with this GCC stuff, the build is the developer's job to figure out. If GCBasic has taken care of the build process for you and will do whatever it is you want to do, then excellent.

 

I recall a teacher explaining that C was a shorthand version of Pascal. Begin is replaced with "{" and so on, but I don't remember much of that now. I used a lot of Visual Basic, but then discovered Python, that also satisfied any lingering thoughts to rekindle my short Fortran history. After Fortran, I got exposed to Mathematica, so there was never any hope for Fortran after that, but I find Python satisfying in place of Mathematica.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I will swap to a new language when the installing procedure for the compiler will be available as a simple setup like GCBasic for Windows ; all "make" ... etc instructions are most time written for Linux or are as cryptic as C  sad. The AVR-GFortran was a good idea, unfortunately is was never completed and development seems to be "abandoned" since end of 2018, and the author does not answer on SourceForge.angry

Last Edited: Sat. Nov 14, 2020 - 07:28 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
... and FreePascal which is a "gaseous plant", using GCC for AVR, and the IDE looks like Turbo Pascal, ...
Turbo Pascal was popular when I was a young man (early '80s); am glad Pascal is a living computer language.

lemiceterrieux wrote:
... but it starts in a window smaller than 1/4 of the screen, not really ergononomic (unfortunately the "full screen" works no more with W7)
Windows 7 ESU has a limited life; Windows 8.1 may be reasonable though do consider Windows 10.

Lifecycle FAQ - Extended Security Updates - Microsoft Lifecycle | Microsoft Docs

Prepping for 2020 | AVR Freaks

Windows 8.1 | Lifecycle FAQ - Windows - Microsoft Lifecycle | Microsoft Docs

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
I will swap to a new language when the installing procedure for the compiler will be available as a simple setup like GCBasic for Windows ...

Downloads - Adacore

[two pull-down menus]

AVR microcontroller ELF (hosted on windows)

2012

  • up to AVRe+ inclusive (iow, no XMEGA AVR, no unified-memory AVR, no AVR DA ...)
  • AVR GDB for AVRJTAGICE mkII (EOL, there's a clone)

AVR is apparently legacy at AdaCore though still in the catalog; not legacy is AVR-Ada.

Education in embedded Ada by the ones at AdaCore is apparently by micro:bit (15EUR at one distributor in France)

lemiceterrieux wrote:
; all "make" ... etc instructions are most time written for Linux or are as cryptic as C  sad.
Maybe Zak's shell script can be extended to add Ada, or, Rolf's to add Windows.

Either way is several hours on older PC plus development time; hopefully one would post or publish their bash and the resultant exe.

 


Instruction Set Summary | AVR® Instruction Set Manual

USB AVR JTAGICE XPII - Waveshare Wiki

LEARN.ADACORE.COM — learn.adacore.com

https://blog.adacore.com/search/results?q=%22micro%3Abit%22

 

AVR-GCC 10.1.0 for Windows 32 and 64 bit – Zak's Electronics Blog ~*

I didn't know you could get Ada for AVR | AVR Freaks (current run-time includes GCC 9)

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
I will swap to a new language when the installing procedure for the compiler will be available as a simple setup like GCBasic for Windows

Atmel Microchip Studio gives you that.

 

MS Visual Studio gives you that.

 

etc, etc, ...

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

awneil wrote:

 

Microchip Studio gives you that.

 

 

etc, etc, ...

 

with debuggers, support for ASM and C . No, thanks ... No Pascal or even ADA ! I looked at AVR-ADA on SourceForge : completely contaminated by penguins. And about the "micro:bit" : I need 32 I/O's !

 

What I am looking for : a compiler for Pascal or perhaps ADA in form of a setup ... like MikroElektronika's ! BTW I saw that they lowered their prices ... but there is still a "minimum" of ROM amount used, (about 1200 Bytes) : ???

 

 

 

Last Edited: Sat. Nov 14, 2020 - 05:01 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
I looked at AVR-ADA on SourceForge : completely contaminated by penguins.
laugh

Yea, still a Windows "world" though been stated that Windows may have ten more years of life (maybe Windows 10X in '21 will be the "end")

lemiceterrieux wrote:
And about the "micro:bit" : I need 32 I/O's !
The ones at AdaCore like STM32 though do have a few SAM.

Can go via Interfaces.C for SAM iff wink you're willing.

 

Ada_Drivers_Library/boards at master · AdaCore/Ada_Drivers_Library · GitHub

bb-runtimes/arm/sam at community-2020 · AdaCore/bb-runtimes · GitHub

Interfacing with C and C++

 


Using the MSP432 DriverLib ROM with Ada and SPARK

Porting the Ada Runtime to a new ARM board | The AdaCore Blog

Ada on ARM Cortex | AVR Freaks

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

1) I use only 8515 (90S and mega) and Mega162.

2) And still W7 x64 Pro on an I5 Quad-core.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
the author does not answer on SourceForge.

 

It's a fork (probably), and they lost interest. I found a mirror of GCC on Github that I can fork.

 

https://github.com/gcc-mirror/gcc

 

that is from git://gcc.gnu.org/git/gcc.git

 

I am guessing there is an HTTP interface as well.

 

http://gcc.gnu.org/git/

 

Yep. Interestingly, it looks like GCC may have moved from SVN to Git 10 months ago, so forking now is easy. UPDATE:

Daily bump to Fortran logs.

 

https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/fortran/ChangeLog;h=a44c019dfa1d3b6c12ca7821ec8dd87b6e892727;hb=77f67db2a4709388b905397421bd3a851fbbf884

Last Edited: Sat. Nov 14, 2020 - 08:36 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks, I looked at the last link You wrote about, really it seems as if people made a "bug report" and suggestions (or is it a report of modifications made by a development staff ? ) about a version of Fortran which could be found ... WHERE ? And this does not solve the problem of "the simplest way to get a working F-cross-compiler" for AVR running with Windows ! The version on SourceForge was distributed as a zip which could be extracted to a fully functional tree-structure with all programs ... I looked at github, searched for "avr fortran compiler", the only thing that I found was a script from a programmer (from Germany ? ) to build a working version of gcc, but it was ... "PENGUIN CONTAMINATED"

 

sad

Last Edited: Sat. Nov 14, 2020 - 11:01 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
modifications made by a development staff ?

 

It is a log file of changes being made to the source. Staff is probably the wrong way to think about it; they are not paid by GNU; they are interested in it for whatever reason. There are (or use to be) outfits that would package this stuff up and provide support, but it can save a lot by figuring out how to build the source yourself.

 

I have not looked recently, but recall seeing Windriver on some firmware used by telecom equipment when testing after integration.

 

https://www.windriver.com/products/development-tools/Diab-TUEVCertificate/

 

This certification thing seems odd to me; GCC is a moving target, and it has bugs, especially in areas that are not widely used, like gFortran on tiny processors.

 

Update:  A dormant memory... basic-stamp

 

https://www.parallax.com/microco...

 

http://forums.parallax.com/categ...

Last Edited: Sat. Nov 14, 2020 - 11:55 PM
This reply has been marked as the solution. 
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

It is not windriver, but Wind River laugh !

At least the product exists for Win 7 x64, but they don't speak of prices online, a bad omen ; and only about C(++) in the description, no Fortran.

Basic Stamp has an interpreter, like PicBasic in the past. In this case I prefer GCBasic, at least it is a (cross) compiler !

Finally there is only 1 choice left for me : staying with GCBasic.

I gave up to idea of migrating to MikroE, I had some issues with the "test" version, being unable to force saving and re-building (maybe I did something wrong ? )

Thanks to all people who answered me. Keep on coding !

Last Edited: Sun. Nov 15, 2020 - 09:01 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alberich wrote:
C is too "cryptic"
The C code I see here is written more cryptically than necessary.  Apparently it is taught by teachers that like cryptic stuff.  

 

People should be taught languages that have "classes" like C++.  That makes it easier to write more readable code.  Using classes is often called OOP, maybe to make it more mysterious. smiley

 

 

On a totally different subject, quoting a small chunk of someone else's post is easy when using Edge.  You just highlight the stuff you want, right click and hit copy, then punch the Quote button.  That doesn't work when using Firefox.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

steve17 wrote:
That doesn't work when using Firefox.
It just did for me...

David

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

steve17 wrote:
That doesn't work when using Firefox.
Chrome 86 (Oct'20)

P.S.

Context is IDE in the form of a web app :

The File System Access API: simplifying access to local files (Google)

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

PS : meanwhile I understood my issue with "forcing" the save and build operations : I must open the mpav (project) file instead of mpas. Unfortunately the system default in mpas. And the "more" ROM needed is caused by the Soft-RS232 library. Now MikroE Pascal has become again a good choice for me. I prefer Pascal to C. Wait and see ...

Last Edited: Sun. Nov 15, 2020 - 06:20 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

frog_jr wrote:

It just did for me...

Me too.  Maybe Firefox only does it on Sundays.  smiley  Strange.  I've tried many times and it didn't work. 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:

Languages like Fortran, Basic or Pascal are more "readable", and they are my 3 (or now 2) preferred. Unfortunately there are only 2 versions of Pascal for AVR (I would prefer programming in Pascal, for Windows I used Delphi) : the MikroElektronika's, which is very expensive (and I tested the "evaluation version", the executable for AVR needs more ROM and RAM than the corresponding program written in GCBasic), and FreePascal which is a "gaseous plant", using GCC for AVR, and the IDE looks like Turbo Pascal, but it starts in a window smaller than 1/4 of the screen, not really ergononomic (unfortunately the "full screen" works no more with W7) ..

 

Free Pascal doesn't use all of GCC, just the binutils as (FPC emits assembler), ld (to link object files) and obj-dump (to spit out the executable code as hex file for flashing) for the AVR target. The "IDE" you describe sounds like the text mode editor. Alternatively you can use the Lazarus IDE, which is similar to Delphi. My opinion on using FPC/Lazarus for AVR programming:

 

Pros:

  • Fast IDE (much much faster than MPLAB X, which is almost useless on my low end laptop - no experience with AS)
  • Code completion, templates etc.
  • Very fast compiler
  • Run natively on a wide range of hosts
  • Straight forward inline assembler syntax

 

Cons:

  • Not quite up to date with support for latest range of controllers
  • No built-in simulator (there are opensource alternatives such as sim-avr)
  • No integrated support (other than gdb-server) for external debugger probes
  • Few hardware libraries

 

I'm very happy using FPC/Lazarus, although there was a bit of a learning curve to get everything configured the first time round.  There is also an installation tool (fpcupdeluxe) that hides almost all of the configuration and installation hassles.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

steve17 wrote:
quoting a small chunk of someone else's post is easy when using Edge.  You just highlight the stuff you want, right click and hit copy, then punch the Quote button.  That doesn't work when using Firefox.

It's not to do with what browser you use.

 

This is one of those long-standing forum bugs - sometimes the 'Quote' button will just quote the selected text; sometimes it will ignore the selection and quote the entire post.

 

frown

 

EDIT

 

It's #3 on Johan's list: https://www.avrfreaks.net/commen...

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
Last Edited: Mon. Nov 16, 2020 - 01:38 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

lemiceterrieux wrote:
Wind River ... they don't speak of prices online, a bad omen

Indeed.

 

They are tagetting major corporate customers; especially defence contractors and the like - certainly not for hobbyists.

 

If you think  MikroElektronika is "very expensive", Wind River is probably several orders of magnitude above that!   surprise

Top Tips:

  1. How to properly post source code - see: https://www.avrfreaks.net/comment... - also how to properly include images/pictures
  2. "Garbage" characters on a serial terminal are (almost?) invariably due to wrong baud rate - see: https://learn.sparkfun.com/tutorials/serial-communication
  3. Wrong baud rate is usually due to not running at the speed you thought; check by blinking a LED to see if you get the speed you expected
  4. Difference between a crystal, and a crystal oscillatorhttps://www.avrfreaks.net/comment...
  5. When your question is resolved, mark the solution: https://www.avrfreaks.net/comment...
  6. Beginner's "Getting Started" tips: https://www.avrfreaks.net/comment...
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0


awneil wrote:
sometimes it will ignore the selection
It seems to be stranger than that.  

 

I have two computers that are almost identical.  On computer A, Edge and Firefox both work every time.  On computer B, Edge always works and Firefox always fails.

 

I have the same version of Firefox on both computers.  (but maybe the build numbers are different?)

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ccrause wrote:

  • Not quite up to date with support for latest range of controllers
No XMEGA AVR though does have unified-memory AVR (AVRxt yes, AVRxm no)

ccrause wrote:

  • No integrated support (other than gdb-server) for external debugger probes
An AVR GDB proxy is available via atbackend.exe

 


https://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/compiler/avr/cpuinfo.pas?revision=44136&view=markup#l51

Instruction Set Summary | AVR® Instruction Set Manual

MPLAB Snap and atbackend | AVR Freaks (Free Pascal)

MPLAB Snap

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

steve17 wrote:
I have two computers that are almost identical.  On computer A, Edge and Firefox both work every time.  On computer B, Edge always works and Firefox always fails.

 

The only fix I know is to nuke it from orbit, terraform with Linux, then grow Windows on the newly formed meadows.

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gchapman wrote:

An AVR GDB proxy is available via atbackend.exe

Is there a similar tool for Linux?  mdb was tested before but it doesn't cover enough functionality compared to gdb to be useful as an IDE debugger backend.  Which is strange because I suspect mdb and MPLAB X uses the same core functionality for debugging. And it is slow!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ccrause wrote:
Is there a similar tool for Linux? 
Yes though do search AVaRICE for the specific AVR (all produced AVR are in Microchip Studio)

 

AVaRICE - Browse /avarice/avarice-2.14 at SourceForge.net

Debian Package Tracker - avarice

Once again: Debugging with GDB | AVR Freaks (AVaRICE)

 

AVaRICE is with VisualGDB (Windows) :

BSPTools/DebugPackages/AVaRICEDebugPackage at master · sysprogs/BSPTools · GitHub

 

"Dare to be naïve." - Buckminster Fuller