Path: Home => AVR-Assembler/gavrasm-en/gavrasm-de = > Statistics 50th version
Logo

50th version of Gerd's AVR assembler gavrasm released

In July 2021 gavrasm's 50th version has been released. Thank you for using gavrasm. It is a great pleasure to program useful software that is popular. This page looks back over the whole history of gavrasm.

Why another assembler?

Simple: ATMEL's Studio at that time provided a free assembler, wavrasm. But in 2001/2002 this was very buggy. After reporting those bugs to ATMEL I got nothing in return: no message whatsoever, no reaction at all. And: the errors were not bug-fixed, the next Studio version came with the same errors, nothing had been fixed. If others do not care about my error reports, no matter how severe those are, this provokes me and triggers the "Ok, then I'll have to do it by myself!" button in me.

And I started in the language that I knew best from my long-standing Turbo Pascal practice: Pascal. At that time I had the Borland Pascal compiler, and it worked fine. The first version of gavrasm that I wrote was very simple, no .IF or english translation (not speaking about French and Turkish). Makros, .IF, French and Turkish came only later on as additions, along with many other features.

As I sometimes use Linux as operating system, and always needed those def.inc's to be copied from my Windows Studio I thought about including these into my software. I wrote a def.inc reader that encoded all these symbols. And the software grew bigger and bigger, so I had to optimize this re-coding a lot. Finally I reached a state where additional AVR types with their new def.inc's can come in and need only a few bytes more to become part of my gavrasm unit gavrdev.

ATMEL in the meantime chose the other way: instead of optimzation they maximized their code, so it gets inpractical and is in my view unusable. I will not follow this route: I still use Studio 4.19, if I need to burn flash. But for nothing else. gavrasm and avr_sim are my preferred tools.

50 versions

Version release dates for gavrasm versions These are all version release dates, according to the log statistics.

gavrasm versions 0.1 to 2.1 This shows that the first version, 0.1, was released in May 2003. Improved versions followed nearly every month.

2004 saw four different versions, 2005 and 2006 saw five each.

gavrasm versions 3.6 to 4.9 Updates were provided twice to four times per year ever since, here displayed the years from 2017 on.

gavrasm downloads per year per version This shows, for all versions 0.1 to 4.9, how often the different versions were downloaded over the time they were online.

The later versions were roughly downloaded 1,000 to 2,000 times per year availability, earlier versions show roughly five to ten times higher download rates.

There is obviously still a large need for reliable assembler software.

50 versions open source software gavrasm

Monthly downloads of gavrasm executables and sources Here are the monthly downloads of gavrasm executables and sources. As can be seen, the number of downloads decreases slightly but the provided sources are nearly stable over the whole time. It seems that a nearly constant number of persons compiles their own version from the sources. As the Free Pascal Compiler FPC is provided for free, can be downloaded for many operating systems, is very fast and simple to handle (no tool chains of whatever complexity needed), this demonstrates that reliable compilers are very useful tools.

gavrasm downloads of executables and source between 2013 and 2021 This view from 2013 on also shows that the sources are of continued practical use.

Long term average of executables vs sources This is the long-term sum of the two categories, if you prefer cake views.

gavrasm languages

gavrasm language distribution The four languages that gavrasm can be compiled for show an interesting distribution: while the English and German version were dominating the first 12 years, the French and Turkish version find increased popularity in the past years.

Conclusion

If you go through the version entries in the ReadMe.Txt file of gavrasm you still see many fixed errors. One can conclude that software of this level of complexity is NEVER error-free. Most of the remaining errors concern very special cases that you do not run into with 99% of your assembling examples. But very few can drive you crazy, if you have to fix them. It needed me two long days to fix the .ELIF bug, another half a day to fix the % function. The first error was reported by a user (I have never used .ELIF by myself), the second was found by myself. Most of the errors are reported.

As long as I am able to program in Pascal I will fix reported errors. I guess that it will not be possible to release version 9.9. But as far as possible I'll constantly release fixed versions.

Not much need for new features, even though some request those. Most of the requested new features are more dangerous than they can provide assistance for the assembler programmer.

Towards having the best assembler ever! Please continue to hunt for errors! And thank you for reporting those.

To the top of that page

©2021 byhttp://www.avr-asm-tutorial.net