MathisLav / internetce

C library for Ti-84+CE and Ti-83 Premium CE calculators, that allows you to interface with the internet.
GNU General Public License v3.0
64 stars 2 forks source link

When compiling with toolchain, ran out of registers #8

Closed ItsSven64 closed 9 months ago

ItsSven64 commented 10 months ago

Title, i get this error image

Do you know about this?

ItsSven64 commented 10 months ago

After some back and forth with the toolchain team we figured out that it has to do with compiler issues. I added LTO = NO to the makefile, and now it throws the following; image

MathisLav commented 10 months ago

Well, I'm not sure I understand what's causing this error. Maybe you're not using the same version of the toolchain as I am? (but your CEdev path suggests that you are)

Anyway, this seems to be more of a compiler side issue, I don't think I can help you with that, sorry. You could still reinstall the toolchain with the lastest version, it solves most issues, from experience.

ItsSven64 commented 10 months ago

Thanks for the help! Already opened an issue in toolchain

mateoconlechuga commented 10 months ago

The issue is the transport_checksum function. Changing the uint16_t chksmmsb and uint16_t chksmlsb variables to be of type uint24_t appears to fix the compile issue.

Still a compiler issue, but at least it is fixable.

MathisLav commented 10 months ago

Yes I had this bad habit to always choose the smallest variable size I could use. But I'll release soon a new version that uses uint24_t whenever it's possible, so it should fix the issue.

Thanks for the clarification @mateoconlechuga

MathisLav commented 10 months ago

Should be fixed in the fix_recent_phones branch. @ItsSven64 if you see this message, could you try to compile this branch (git checkout fix_recent_phones) and tell me if you still have the issues you mentioned in this thread?

MathisLav commented 9 months ago

Closing the issue as I think the last merge solved it. But feel free to reopen it if you encounter a similar issue again.