Author Topic: Casio Prizm 3rd-party development: The good and the bad news  (Read 9845 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Casio Prizm 3rd-party development: The good and the bad news
« on: January 10, 2011, 01:34:31 am »
First of all, the bad news is that Casio USA and Japan both apparently have no plan to release a SDK in the near future. The good news, however, is that programmers may not even need that SDK, after all, providing that Casio won't pull a TI on them.

It appears that z80man has managed to run 3rd-party machine code on his Casio Prizm. Qwerty.55 wrote machine code that clocks the calculator to 58 MHz (twice its default speed) for approximately 4 milliseconds, then a reset occurs. After it was put into fx-cg10 add-in format (the Casio equivalent of TI-83 Plus Flash applications), FinaleTI tried to launch it on his calc, but it wouldn't show up in the main menu. Finally, z80man edited the application with the same checksum as Casio's Conversion add-in, then ran the application on his calculator. As z80man expected, the calculator crashed with the following screen:



Afterward, it appeared that USB transfers stopped working. z80man had to reset the calculator storage (archive) memory to fix that problem. Thankfully, his calc remained safe from this "torture session". However, there still remains the fact that machine code was executed, causing the calculator to perform things that it wouldn't normally.

Assuming that Casio won't start trying to release software updates preventing such add-ins from being executed on the Casio Prizm models, could this mean that assembly or even C for this new calculator is already at our door?

Link to the post announcing that 3rd-party code was run: http://ourl.ca/8207/162012

More discussion is also available earlier in that thread.
« Last Edit: January 10, 2011, 02:37:45 am by DJ Omnimaga »

Offline JosJuice

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1344
  • Rating: +66/-14
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #1 on: January 10, 2011, 01:36:07 am »
overclocking for four milliseconds is so fun < 3>

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #2 on: January 10, 2011, 09:02:36 am »
This is great news!

Offline fb39ca4

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1749
  • Rating: +60/-3
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #3 on: January 10, 2011, 01:25:03 pm »
This is good that we can run our own code, but bad as the sdk wouldve included an emulator.

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #4 on: January 10, 2011, 01:32:14 pm »
Quote
Assuming that Casio won't start trying to release software updates preventing such add-ins from being executed on the Casio Prizm models, could this mean that assembly or even C for this new calculator is already at our door?

They'd almost certainly break compatibility with their own software if they released updates blocking this entry point. I'm sure they have more than one unreleased add-in that they'd have to rewrite to accommodate new changes. And C might be a bit far off at the moment. I'd settle for being able to run any code without crashing :P
« Last Edit: January 10, 2011, 01:32:38 pm by Qwerty.55 »
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline fb39ca4

  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1749
  • Rating: +60/-3
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #5 on: January 10, 2011, 01:36:50 pm »
SuperH is supported by gcc, tho.

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #6 on: January 10, 2011, 01:58:52 pm »
But you still have to insert the hex into a add-in, which would be 28 KB of data  :P
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #7 on: January 10, 2011, 02:14:50 pm »
This is good that we can run our own code, but bad as the sdk wouldve included an emulator.
There will most likely still be some sort of emulator or computer version of the Prizm, like TI did with the Nspire. However, like the Nspire, it won't include a SDK.
Quote
Assuming that Casio won't start trying to release software updates preventing such add-ins from being executed on the Casio Prizm models, could this mean that assembly or even C for this new calculator is already at our door?

They'd almost certainly break compatibility with their own software if they released updates blocking this entry point. I'm sure they have more than one unreleased add-in that they'd have to rewrite to accommodate new changes. And C might be a bit far off at the moment. I'd settle for being able to run any code without crashing :P
I see. Hopefully eventually someone can make an ASM IDE and maybe another language like Axe for it. First, the most important part is running code, though.

I wonder if this calc supports parser hooks?

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #8 on: January 10, 2011, 02:23:06 pm »
Even if it doesn't, we can always set up a redirect through a third party parser that can read any commands meant for itself then pass everything else off to the OS parser.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline z80man

  • Casio Traitor
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 977
  • Rating: +85/-3
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #9 on: January 11, 2011, 01:41:46 am »
I'm almost certain that hooks are supported because a few of the apps add basic commands you can use.

List of stuff I need to do before September:
1. Finish the Emulator of the Casio Prizm (in active development)
2. Finish the the SH3 asm IDE/assembler/linker program (in active development)
3. Create a partial Java virtual machine  for the Prizm (not started)
4. Create Axe for the Prizm with an Axe legacy mode (in planning phase)
5. Develop a large set of C and asm libraries for the Prizm (some progress)
6. Create an emulator of the 83+ for the Prizm (not started)
7. Create a well polished game that showcases the ability of the Casio Prizm (not started)

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #10 on: January 11, 2011, 01:51:29 am »
This is amazing!  I can't believe we already have code running on the Prizm :D And the way they have implemented add-in's makes it impossible for them to block the apps we are making without also breaking compatibility with their own apps :D (not that I think they would :P Casio is cool unlike TI) great work everybody! ^^ Can't wait to see what people dream up with this :)

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #11 on: January 11, 2011, 12:59:30 pm »
This is amazing!  I can't believe we already have code running on the Prizm :D And the way they have implemented add-in's makes it impossible for them to block the apps we are making without also breaking compatibility with their own apps :D (not that I think they would :P Casio is cool unlike TI) great work everybody! ^^ Can't wait to see what people dream up with this :)
Lol, Casio is cool. I sure hope they don't change it. I wonder if they would give protocols and such

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #12 on: January 11, 2011, 03:37:27 pm »
I'M not sure. It seemed like it was them that wanted info on how we did our stuff. :P

Also while they may be more open to third-party development (not sure yet), they should really spend more effort at optimizing their BASIC interpreters. Heck, maybe someone could write a new one and send it to them? :P

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #13 on: January 11, 2011, 05:35:12 pm »
I don't think there's room for complaint on the basic front, compared to the nspire :P At least it has Pt-On

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Casio Prizm 3rd-party development: The good and the bad news
« Reply #14 on: January 11, 2011, 05:36:58 pm »
Awesome job!  Good luck progressing this further. :)