Yesterday, someone on reddit asked if there was a way to display commas as a thousands separator. Adriweb suggested that I work on it after I finished my
unit tool, but because of how much simpler it was I decided to do this first. So, I copy-pasted some of the code from my units program and added logic to insert commas into a number:
I also made a version of it that uses spaces instead, as well as one that uses the same notation that those Crazy Europeans use:
It took a bit longer than I thought it would since I had to fix a bug in capnhook first, but it's finished now, and you can see the source code on
GitHub.
That's something that I never really seen asked for after all these years but is super handy!
You even looked after weird euro format

.
Nice work as always, really should be a standard on calcs from TI.
Awesome
Also, as a European I'd use spaces not dots, that's just too confusing.... but yeah I've seen it >.>
On my screen it shows missing library USBDRVCE where do I find it
epicmitter wrote:
On my screen it shows missing library USBDRVCE where do I find it
Fixed now - it's not actually required, I think it was a bug with the linker. I've updated the GitHub release already; the Cemetech archives page should be updated soon. Just redownload it and the new version shouldn't complain about that anymore.
Not important but any possibility of specifying custom separator characters?
Nice work! I have seen this requested quite a few different times, so I suspect there will be a small but vocal subset of users who will be very happy this tool now exists.
This is a really sweet project. I've had people ask me for a program like this multiple times!
After trying to make a video on this project I discovered you have to run prgmCOMMAS three times after a reset to properly re-install the hook. Otherwise large numbers wont display properly, if at all. Perhaps the re-install instructions could be added to the readme?
Here I am trying to make a basic program to do this. But lo and behold the ASM gods have delivered.
Hey, I noticed something weird; I installed this on the 84 Plus CE Python I just got the other day, and when displaying values as output from a program, it double displays the answer. Seriously cool utility, though; this needs to be standard
What OS version do you have?
I must not be too bright. No matter how I launch it, I get a syntax error. ERROR:SYNTAX
I am running 5.2.2.043 (specifically found an old one on Ebay so I could do this).
I transferred the files (tried transferring to the archive and to RAM) in the end (after unarchiving in one case), I get the same result. I transferred capnhook and clibs as well. Any advice? Based on these thread dates I am a bit concerned I may need a never OS version, but would like to avoiding having to use another shell. Does the same thing for notes, etc.
I really appreciate any help you can provide. I really need commas!
Just update to OS 5.3.0. It has the most features with no restrictions. I've been using it since 2017.
https://tiplanet.org/forum/archives_voir.php?id=1138252
Okay, so I upgraded to OS Version 5.3.0.0037. I no longer get a syntax error, instead, I run the program, be it from the program menu or via Asm( and it runs, but any number that would have a comma causes it to display nothing.
For example-
If I type in the following:
9*99
I get an output of
891
..............................
[flashing cursor]
If i then type in:
999*9 and hit enter I get
...............................
[flashing cursor]
I investigated via 2nd MEM, 2:Mem Managent, 7:Prgm that COMMAS appeared as *COMMAS so I hit enter to remove the * (which maybe takes it out of archive and puts it in RAM?). When I executed the program after that it now returns an answer for those numbers that would have a comma... but no commas.
Okay, this is bizarre. I toggled it a few more times (* and no *) and it then started always showing the number instead of a blank, but the first time is showed that 9*999 was 9. I tried it again and it showed the correct answer, then used the up arrow to see a previous answer...
AND IT STARTED SHOWING COMMAS!
Now, even after a reset to defaults is is displaying commas. If I run the prog again they don't show so it appears that everything is now working as designed.
I then installed Cesium, and fun fact is that I can turn Commas off using Cesium, but can't turn it back on using Cesium.
Pretty odd. Anyone have any ideas? More than anything I wanted to put this on here so maybe someone who is having the same difficulty in the future can find the solution.
Captclam wrote:
I investigated via 2nd MEM, 2:Mem Managent, 7:Prgm that COMMAS appeared as *COMMAS so I hit enter to remove the * (which maybe takes it out of archive and puts it in RAM?). When I executed the program after that it now returns an answer for those numbers that would have a comma... but no commas.
COMMAS is implemented using a hook that needs to stay in a fixed location even after it stops running. Programs stored in the archive stay in one place until the next garbage collect, but programs in RAM get moved around frequently as the OS does its thing. So COMMAS only works when stored in the archive.
Captclam wrote:
I no longer get a syntax error, instead, I run the program, be it from the program menu or via Asm( and it runs, but any number that would have a comma causes it to display nothing.
For example-
If I type in the following:
9*99
I get an output of
891
..............................
[flashing cursor]
If i then type in:
999*9 and hit enter I get
...............................
[flashing cursor]
This is a known issue that I ran into a few times during development but couldn't figure out how to fix. COMMAS uses an undocumented MathPrint OS routine to display its outputs, and that routine appears to depend on something already being initialized elsewhere. Once you scroll up into the history, MathPrint will be properly initialized, and the routine I'm using will work properly. I figured it wouldn't be that much of an issue on calculators that people are actually using, since it only happens right after a memory reset / OS update.
Captclam wrote:
I then installed Cesium, and fun fact is that I can turn Commas off using Cesium, but can't turn it back on using Cesium.
I think this is because Cesium also sets its own homescreen hook (overwriting COMMAS's) which it then clears on exit without restoring the hook COMMAS added.