Menu

Tiny44a, 45, 461, 461a chipdata issue

2022-11-17
2022-11-18
  • Don Rosselot

    Don Rosselot - 2022-11-17

    Hello all,
    I think I found a problem with the chipdata files of the subject chips. I could not get the Tiny series chips to even blink an led, yet there was no problem with the MEGA series chips I tested. They would compile and flash just fine, but there was no response. After two days of trying everything, and using older versions of the compiler to no avail, I looked at the Atmel datasheet. It seems that the register addresses are off by 0x20 in the chipdata file. After changing the current chipdata sheet to the new addresses, the Tiny45 would blink!
    I looked at my archives of the chipdata files, and found that they were correct around April 2019. I copied the register section out of an old Tiny461a chipdata file, and it also worked to blink an led. I don't know if the addresses are the whole issue, I haven't done any more testing other than a simple blink program so far.
    Attached are copies of the current chipdata file and an older one.

    Hopefully this is of some help.

    Thanks for all your work at Great Cow!

     
  • Anobium

    Anobium - 2022-11-17

    Thank you.

    I will look at the masters and figure out what has happened.

    Thanks for reporting.

    Evan

     
  • Anobium

    Anobium - 2022-11-18

    I can when the error in the dat was introduced. Change 765 ( we currently at 1190!) on 5th June 2020. This has laid hidden since then!

    So, the change to make the chips listed below work broke the others!

    Change 765
    
    Support for ATMEL chips with 16 GPRs. Updated .DAT file with correct GPR value.[1083]
    All were re'gened with the following GPR=16 and ChipFamily=121
    ATtiny10
    ATtiny20
    ATtiny4
    ATtiny40
    ATtiny5
    ATtiny9
    

    Fixing today.

     
  • Anobium

    Anobium - 2022-11-18

    Root cause found, and, fixed.

    Get the patch ZIP, apply and confirm to me that all is good. https://sourceforge.net/projects/gcbasic/files/Release%20Candidates/Patches/


    During the implementation of the new AVR chip with only 16Bytes of GPR I added a test for these specific chips. Any chip that start with the following had the incorrect offset applies.

    tiny10
    tiny20
    tiny4
    tiny40
    tiny5
    tiny9

    So, Tiny44a, 45, 461, 461a all matched the tiny4. Oops. As did the Tiny 102 and 104 and the Tiny2.

    Anyway, all resolved.


    Change 1192

    Correct register offsets for non-chipfamily 121 as follows:

    tiny102.dat
    tiny104.dat
    tiny2313a.dat
    tiny4313.dat
    tiny43u.dat
    tiny44.dat
    tiny441.dat
    tiny44a.dat
    tiny45.dat
    tiny461.dat
    tiny461a.dat
    tiny48.dat


    Get the patch ZIP, apply and confirm to me that all is good. https://sourceforge.net/projects/gcbasic/files/Release%20Candidates/Patches/

    Thanks

     

    Last edit: Anobium 2022-11-18
  • Don Rosselot

    Don Rosselot - 2022-11-18

    Tested Tiny44a, 45, 461 and 461a. All work perfect!

    Thanks Evan!

     
    • Anobium

      Anobium - 2022-11-18

      I am grateful you spotted! We are about to release a new version .... we need the best build yet!

       
  • Don Rosselot

    Don Rosselot - 2022-11-18

    Glad I could help!

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.