Join us on Discord!
You can help CodeWalrus stay online by donating here.

WARNING: Do NOT upgrade your TI-84 Plus CE to OS 5.5 and higher. It blocks ASM!

Started by Dream of Omnimaga, May 20, 2020, 04:39:51 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Yuki

The huge problem is indeed the exam mode being required by governments. The original intent was to do anything you want outside exam mode and to restrict functionalities when it's on without the teachers requiring to delete everything on the calc. But since this concept came quite late into the design of current calcs, TI struggles to make it fit.

One thing I thought was to act as an official third-party provider of apps, I asked TI-Cares but they don't seem to have any official way to sign apps for their latest lines of calcs, recommending me instead to develop for their old original TI-83 Plus line.

In the meantime, supporting Numworks really seems to be a good idea, their ROM is open source last time I checked and if you know ways to improve it, well go for it :) I really wish they successfully launch outside of France and manage to take away a bunch of market parts in the USA.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Dream of Omnimaga

Quote from: Yuki on June 09, 2020, 06:59:26 PMI asked TI-Cares but they don't seem to have any official way to sign apps for their latest lines of calcs, recommending me instead to develop for their old original TI-83 Plus line.
That's funny, considering they locked down the old 83 Plus line in France and Europe as well (see TI-82 Advanced and TI-84 Plus T). That leaves you only North America for the monochrome models.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Jean-Baptiste Boric

Quote from: undefinedI would even propose calling TI's bluff on something. Write TI a letter, signed by a EVERY major calc development community - Cemetech, Omnimaga, Codewalrus (unity is important on this), informing them that if they do not revise their decision on C/asm, and implement exam security in a way that is conducive to teaching, learning, and doing programming, we the community will be designing, releasing and marketing our own calculator to compete with them. And if they do not walk it back.. actually follow through.

There is no action legally they could take to prevent this: it would be our own hardware and programming, no copying of names, symbols, anything. Free market, people can compete with whoever they want.
Unlikely to happen. The closest that comes to what you are describing out there is Symbolibre and they are nowhere near an industrialized product at this time. It's one thing to hand-build a couple of prototypes cobbled together from parts, it's another to have a design ready for mass-production and cost-optimized. Production engineering is an extremely complex topic that is never addressed in calculator forums. Take a look at NumWorks' blog for a tiny peek at what goes behind the scenes.

Instead, boycott Texas Instruments. Do not recommend their calculators to anyone. Buy, use, tinker and develop with platforms from other competitors that actually care: Casio, HP, NumWorks, SwissMicros... Spread the good word. Seriously, TI will never learn unless their bottom line hurts, so make theirs hurt.

To be clear, you can tinker with one of the numerous calculator designs available on the Net or build your own if you want. Just don't expect to upend TI's marketshare that way.

Quote from: DJ Omnimaga on June 09, 2020, 06:35:24 PMSomething I wonder is if the TI community could team up with the existing Numworks team to expand that calculator's programming capabilities beyond Python and perhaps even promote the calculator? Of course the price still remains a problem but if eventually it sells more, then perhaps they can reduce the price per unit?
Well, do come in, we don't bite ;)

The main developer community around the NumWorks calculator is the Omega firmware, which is a fork of the official epsilon firmware. The biggest problem right now is the lack of manpower and the fact that unlike TI or Casio there is not a rich legacy to build upon. On the other hand, there's plenty of stuff to invent from the ground up if that's what you're after.

Quote from: DJ Omnimaga on June 09, 2020, 06:35:24 PMOr if the Numworks team is afraid of people tampering with the exam mode then they can sign our apps themselves before we release them on our website or an appstore of their own, so that they can review what can go on the calc.
There is no signing whatsoever in the NumWorks calculator, you can flash whatever you want. Should they need to tighten up their security in the future, I've written about it. They will not prevent people from running third-party firmwares, the openness of their platform is a major selling point.

Yuki

Quote from: Jean-Baptiste Boric on June 09, 2020, 07:22:05 PMInstead, boycott Texas Instruments. Do not recommend their calculators to anyone. Buy, use, tinker and develop with platforms from other competitors that actually care: Casio, HP, NumWorks, SwissMicros... Spread the good word. Seriously, TI will never learn unless their bottom line hurts, so make theirs hurt.

Yeah, sounds like a good plan.

Quote from: Jean-Baptiste Boric on June 09, 2020, 07:22:05 PMThe main developer community around the NumWorks calculator is the Omega firmware, which is a fork of the official epsilon firmware. The biggest problem right now is the lack of manpower and the fact that unlike TI or Casio there is not a rich legacy to build upon. On the other hand, there's plenty of stuff to invent from the ground up if that's what you're after.

I'd like seeing some more love to NumWorks in here on CW, porting some games and stuff :) That ought to give a message to TI.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Jean-Baptiste Boric

Quote from: Yuki on June 09, 2020, 07:43:11 PM
Quote from: Jean-Baptiste Boric on June 09, 2020, 07:22:05 PMInstead, boycott Texas Instruments. Do not recommend their calculators to anyone. Buy, use, tinker and develop with platforms from other competitors that actually care: Casio, HP, NumWorks, SwissMicros... Spread the good word. Seriously, TI will never learn unless their bottom line hurts, so make theirs hurt.

Yeah, sounds like a good plan.
I've even come up with a slogan at the Cemetech forums for this:

Remember, friends don't let friends buy TI calculators.

Quote from: Yuki on June 09, 2020, 07:43:11 PM
Quote from: Jean-Baptiste Boric on June 09, 2020, 07:22:05 PMThe main developer community around the NumWorks calculator is the Omega firmware, which is a fork of the official epsilon firmware. The biggest problem right now is the lack of manpower and the fact that unlike TI or Casio there is not a rich legacy to build upon. On the other hand, there's plenty of stuff to invent from the ground up if that's what you're after.

I'd like seeing some more love to NumWorks in here on CW, porting some games and stuff :) That ought to give a message to TI.
Now that I think about it, I'm not even sure that the Omega fork has been properly introduced here with a forum post... Which is too bad, because we have external apps support (including KhiCAS, NES and GameBoy emulators, periodic table), built-in symbolic computation, RPN... Heck, I've even managed to put a clock on the titlebar just a few days ago even though the hardware doesn't have a RTC quartz for time-keeping purposes.

Yuki

Do it! I don't think I've heard about it yet, how long has it been around?

Yeah, I'm kinda out of the loop these days.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Dream of Omnimaga

I forgot about the Omega fork actually. I should check it out.

As for the Numworks, I think it was released shortly after I got postraumatic stress disorder and at that time the entire site staff either moved on or got too busy to follow the rest of the calculator community. That was around when CodeWalrus activity died down and mostly shifted to Cemetech. However I don't remember seeing many posts about the Numworks on Cemetech. However this whole TI ordeal seems to have brought back several former TI community members.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Jean-Baptiste Boric

Quote from: Yuki on June 09, 2020, 08:16:29 PMDo it! I don't think I've heard about it yet, how long has it been around?
It was created somewhere around November/December 2019. It builds on previous work though, like my own RPN app and full-screen post-processing accessibility settings as well as the external app support from zardam.

I'll try to have either me or somebody else in the team make a post about Omega this weekend, right now it's nearing bedtime in France. In the meantime, you can check out the website for info. We do include all the features from the official NumWorks firmware too since we're a fork.

Dream of Omnimaga

Quote from: https://tiplanet.org/forum/viewtopic.php?f=49&t=23941
  • 1.665s : NumWorks N0110
  • 2.228s: NumWorks N0110 (firmware tiers Omega)
  • 2.751s : Graph 90+E
  • 2.838s : NumWorks N0100 (firmware tiers Omega)
  • 2.853s : NumWorks N0100
  • 7.087s : TI-Nspire CX CR4+
  • 9.142s : TI-Nspire CX CR3-
  • 19min45.846s : TI-83 Premium CE Edition Python

And even with a modified script that only runs on the TI-83 Premium CE Edition Python, the program takes much longer than the TI-Nspire CX.

Quote from: https://tiplanet.org/forum/viewtopic.php?f=49&t=23941
Quote from: https://tiplanet.org/forum/viewtopic.php?f=49&t=23941
  • 45.483s : TI-83 Premium CE Edition Python (script dédié optimisé à la main)
We will definitively switch from ASM/C/ICE to Python, right? :trollface:
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Yuki

So, comparing the specs, it's about 3000 times slower than it should?

Pathetic.
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Dream of Omnimaga

It actually reminds me of the Casio Classpad II, also known as the fx-CP400. Its BASIC language was ultra-slow and under some settings it could be up to 400 times slower than the TI-84 Plus C Silver Edition. I believe there's a fx-CP500 or CG500 now but it's probably not much better.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

nspiredev500

Do you think the performance difference between the Numworks and the TI-Nspire lies in the software or in the hardware?
If it's in the software, I looked at the Numworks firmware and they internally use an hardware abstraction layer.
So you would only need to implement that abstraction layer on the Nspire platform.
Or if they have a better Python interpreter, you could just take it out and adapt it for the Nspire.

I'm amazed at what the people at Numworks managed to cram into the tiny Flash and RAM.
The RAM is literaly only twice the size the Nspire uses for a single thread stack (after Ndless expands it), and in the Numworks all the data lives in that, including the Python heap.
But I don't know if the firmware is executed directly from Flash or from RAM, that would save much space in RAM.
If I had the money to do it and not had a calculator, I would buy a Numworks calculator.
But I already have my TI-Nspire CX CAS I had to buy for school, and I don't need two.
For now I just try to make the most of the one I had to buy.

About the TI-83 and 84, the Nspire had no assembly support since the beginning, and Ndless came to add it.
I think the community rage is big enough for some people to start a similar project for those calculator models, if it is only to rebell against TI.
But that will take time, in which people who have to buy calculators with the new OS version are out of luck.
Or a miracle happens and TI listens to the community.
  • Calculators owned: TI-Nspire CX CAS

Lionel Debroux

There have been efforts porting the NumWorks firmware to other platforms, e.g. the HP Prime, by none other than Jean-Baptiste Boric :)

The NumWorks series uses XIP on NOR Flash memory, like the TI-Z80, TI-68k, TI-eZ80 series and other models I'm less familiar with. The N0100 and N0110 models both have only 256 KB of RAM, while NumWorks' Epsilon firmware is ~900 KB nowadays (the N0100's meager 1 MB Flash is close to be full, and even though it's possible, few users attempt to solder an external 8 or 16 MB NOR Flash chip onto the appropriate area of the N0100's PCB), and the Omega fork containing xcas (khicas) is probably like 3-4 MB.
Larger Flash memories are NAND, and NAND Flash needs to be read on a page basis, which makes it unsuitable for direct code execution.
Unlike the TI-Z80, TI-68k and TI-eZ80 series (at least), the NOR Flash of the N0100 (internal + external if that is populated) / N0110 (both internal and external are populated and used out of the box) is accessible at a high rate, ~100 MHz. No speed-destroying wait states necessary on the N0100, possibly one on the N0110 whose CPU is clocked at a rate twice higher.

The TI-Z80, TI-68k and TI-eZ80 series simply weren't designed with security in mind. The Nspire series' design is more security-oriented, but it fails time and again to prevent users from executing arbitrary native code on the whole series (including the CX II, this has been public knowledge for months at this point). The only graphing calculator which could be locked down fairly strongly (secure boot scheme) by the manufacturer, but currently isn't locked down, is the HP Prime G2. Even that could technically fall to vulnerabilities in the firmware, but people don't try to attack it that way, precisely because HP's not trying to prevent users from doing whatever they want with the calculators they own.
You're right about TI-eZ80 user rage, which will end badly for TI - they have far more to lose than users :)
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TIEmu and TILP.
Co-admin of TI-Planet.

Dream of Omnimaga

Imagine how fast Epsilon/Omega's Python would be on the G2 HP Prime :O

Also, I wonder if wait states slow down TI-83 Premium CE python? Because I found this program: https://www.cemetech.net/downloads/files/1276

EDIT: It seems that wait states were improved on newer hardware revisions.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Dream of Omnimaga

For the past decade, the TI community as a whole for the most part have been careful not to let programs that tamper with the exam light, to ensure that TI doesn't remove ASM or to convince them that letting people run TI community ASM programs still protects the exam mode. Whenever a program dedicated for cheating was published on Omnimaga, Cemetech, CodeWalrus, TI-Planet or Ticalc.org, it was deleted and such program was limited to a release outside the calculator community that barely anyone could find. Programs that simply tampered with the exam light were met with the same fate.

With TI's recent removal of ASM/C from the TI-83 Premium CE in OS 5.5.1 and soon on the TI-84 Plus CE with OS 5.6, it was only a matter of time before such forum rule gets modified and that similar programs would finally make their way on TI calculator websites. Today, it finally happened, with the release of "LEDmorse" for the TI-82 Advanced and the TI-84 Plus-T.

https://tiplanet.org/forum/archives_voir.php?id=2639002

Basically, this program lets you talk in morse code via the exam light. The program requires CalcUtil shell to run and since this calculator always lacked ASM/APP support, there is an elaborate tutorial explaining how to circumvent that limitation and install Flash APPS (such as the aforementioned shell) at https://tiplanet.org/forum/viewtopic.php?f=63&t=22192&lang=en , in French.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Powered by EzPortal