I'm starting to program for the NES in C and noticed that an if statement comparing two variables compiled to calling pusha0 and tosicmp. Shiru's example project "Chase" compiles to the same thing. It seems like tosicmp is supposed to be doing a signed comparison, but it's called regardless if the variables are signed or unsigned, 8-bit or 16-bit. The only workaround would be a macro with inline assembly, but that's obviously not why I'm using C to begin with. So does anybody who uses cc65 know how to get rid of it?