Hacker News new | past | comments | ask | show | jobs | submit login
KnightOS – an open-source operating system for TI calculators (github.com/knightos)
158 points by MaxLeiter on Nov 26, 2015 | hide | past | favorite | 36 comments



I've watched this project on Github and have been impressed by its rapid evolution. At least on certain models, KnightOS is only possible thanks to a private effort to factorize the firmware's 512-bit RSA keys. [0]

[0]: https://en.wikipedia.org/wiki/Texas_Instruments_signing_key_...


I liked the way the factorization was announced[0].

    Fun Number Theory Facts  
      
    Gentlemen,
    
    A mathematical morsel for your entertainment and edification.
    
    The number
    6,857,599,914,349,403,977,654,744,967,
    172,758,179,904,114,264,612,947,326,
    127,169,976,133,296,980,951,450,542,
    789,808,884,504,301,075,550,786,464,
    802,304,019,795,402,754,670,660,318,
    614,966,266,413,770,127
    
    is the product of
    5,174,413,344,875,007,990,519,123,187,
    618,500,139,954,995,264,909,695,897,
    020,209,972,309,881,454,541
    
    and
    1,325,290,319,363,741,258,636,842,042,
    448,323,483,211,759,628,292,406,959,
    481,461,131,759,210,884,908,747.
0. https://web.archive.org/web/20090805011013/http://www.united...


I mean, really - they used a non-trivial but practically workable math problem to block features from calculator enthusiasts. What did they expect to happen?!


The calculators were released in 1999 and 512-bit RSA was strong enough for that time period.

"Moody used two free implementations of the general number field sieve, msieve and ggnfs; the computation took 73 days on a 1.9 GHz dual-core processor. This demonstrates the progress of hardware development: the factorization of the similar 512-bit RSA-155 in 1999 using the same algorithm required a large dedicated research group, 8000 MIPS-years of computing time, and a Cray C916 supercomputer."[1]

[1] https://en.wikipedia.org/wiki/Texas_Instruments_signing_key_...


I might be mistaken, but I believe sneak was referring to the general irony of using RSA, whose underlying strength relies on the math problem of large number prime factorization, as a deterrent to keep out calculator enthusiasts, who presumably would find such a problem interesting. (Rather than the suitability of the key length of 512-bit RSA, which as you pointed out, was good enough back then)

However, I guess the same could be said for RSA being used in any product used by technically-oriented folks.


Maybe at the time the problem was intractable?


It's always seemed somewhat tenuous to tie our operational security to our rate of technological advancement. Though maybe it's more of a statement about our ability to generally understand our rapid advancements.


It is the recognition that almost all secrets are only valuable for an amount of time, and that you generate keys on the basis that within that time, it will be much more expensive to attack the keys than to attack something else.


The progression of the comments in that thread, in hindsight, is quite amusing. It goes something like this:

0. What is this???

1. Sorry, you're wrong.

2. This is the most amazing thing since sliced bread!


Comment 1 is more along the lines of "Is it the key for the TI Nspire? Nope, wrong length"


Past comment thread: https://news.ycombinator.com/item?id=7896990

More info/online demo: http://www.knightos.org/

It's really neat how you can target this to write C applications for TI-84s. Take for example, https://github.com/MaxLeiter/CoreLibCDemo/blob/master/main.c . If you don't want to use assembly, you don't need to. It's pretty neat.


the issue with using C is that filesizes are huge compared to an equivalent program in asm


Of course. But it's neat, no? It could make prototyping for the platform a lot easier, before one commits to writing out the ASM for their app/game.


Oh, it's super cool (I made the demo you linked d:), just pointing that out for people potentially interested in writing C programs for KOS (as it is a limitation)


Lead dev and project founder of KnightOS here. Nice to see it on HN again :)

Happy to answer questions.


Do you see some practical benefits of KnightOS or is it more just because we can and its fun? I mean is KnightOS equipped calculator really useful/convenient for something that vanilla TI is not?

In contrast the other open calculator project I know, WP34s, aims to create the best HP style calculator they can based on HP HW. Is your aspiration similarly to make a really good TI style calculator?


Well, from a design and usability perspective, KnightOS is much more sophisticated. It supports multitasking and has a package manager and so on. That being said, there is poor support for math (yeah, really). I want to polish that up until it's suitable for classroom use, and then use it as a platform for promoting open source in schools and getting kids interested in programming/hacking in school. KnightOS is basically a Unix system, so it'd be nice to help bring those concepts into the hands of student tinkerers.


Which make me to check and... a TI-89 is still over $100.


It's crazy to think I bought my ti-89 in 2000 it was 250ish. It ran on a 68000 that was already old AF, and I love that calculator. Why was it so expensive. At the time other graphing calculators existed but no other company had a comparable calculator(at least to me)


the TI-84 uses a z80 (which KOS targets), which is from the 80s


Both the Z80 and the 68000 were launched in the 70s.


The product doesn't need updating and they have no competition so why lower the prices?

If you want something newer with more power and more features they also have the Nspire line of calculators but the TI-89/TI-83 basically the staple calculator for highschool math.


> they have no competitors

That is exactly why it would rub people the wrong way on a site where people are interested in entrepreneurship and also in disruption. Being approved by standardized testing institutions becomes a barrier to entry and a means for rent seeking. Of course there could be far better calculators for lesser cost that aid learning better, and more clearly reflected the types of tools that should be the default quality for practitioners in the real world.

Compare the HP-12c in finance. It's extremely well-designed and optimized for a lot of patterns, and it even has a moderately steep learning curve that seems to enamor it to its users, yet it is absurd to argue that absent certification as an approved calculator for the CFA that there would not be be even better handheld calculators used more often that people spent time to learn.

The TIbcalculator doesn't address either demand that goals of high school mathematics should address. It doesn't expose students to the state of the art, and despite its constrained capability it is costly enough to shrink the talent pool of high school students who get to take the tests that show off their aptitude and achievement.


I don't think the problem are standardized test institutions; for example Collegeboard, who administer AP and SAT tests, allow wide range of calculators from five manufacturers. Sure, they might not be the only game in town, but afaik they are the most influential one.

I think the problem is far closer to the grassroots, down to individual teachers taking the easier well trodden road of TI monoculture for various reasons ranging from ignorance, busyness or fear.


A calculator is necessary for the AP calculus test; calculators are allowed, but not necessary, for the SAT.


Genuine question: It is nearly 20 years since I was in post-secondary education:

Why would calculators be needed for a calculus test?


To calculate certain definite integrals that you wouldn't expect a person to do by hand.


> The product doesn't need updating and they have no competition so why lower the prices?

They absolutely do have competition, see for example the HP Prime, which is far superior (IMHO) to any calculator TI puts out.

The issue is that TI has a very effective market lock-in, so they don't have any incentive to innovate. They know students in the US will still buy their calculators because they won't be allowed to take the test if they don't


So they don't have competition for a giant part of the market.


on ebay it can go for $65. I got mine in early June for $40. Supply and demand for school supplies are about as predictable as desk fans and space heaters.


I am an HP guy rather than TI but if they are of comparable build quality, you could still be using it 30 years later. Imagine that with a smartphone.


I got a TI-84 Plus CE, which is the most recent version of the calculator (same screen as the Color Silver Edition, but with a faster CPU and a different case). A bit dissapointing to see that nothing has come out for it yet, but Doors CS is working on it - https://www.cemetech.net/forum/viewtopic.php?t=11997


[deleted]


It only says CSE in the readme, which makes sense. The older calculators (including the CSE) use the 8-bit z80 while the CE uses the 24 bit ez80. Furthermore, the OS and app signing keys on the CE have not yet been found.


Yeah I didnt know the CE was a thing; assumed it was the CSE


I learned to program on my TI-85.

First I read the manual and made simple Basic programs by hand.

Then I found online resources to copy and modify.

#ticalc on Efnet was a great community. They turned me onto making a homemade PC link cable, loading custom firmware, and downloading and writing programs in Assembly.

The screenshots in the KnightOS header are extremely nostalgic.

I'm glad to see the TI hacking tradition continue.


TI's were the closest thing that some one who was born in the mid to late 80's to early 90's had to an "old school" PC's. If you were born after 84's most likely the 1st computer you had to deal with would've been already running Windows, (MS-DOS)Norton Commander/Customized Shell or something similar and came with a manual which thought you how to call a 1-800 number to load a disk rather than BASIC.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: