Author Topic: SourceCoder 3 brings full picture support to fx-CG10 programmers  (Read 6339 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
For a while, North American Casio PRIZM models, known as the fx-CG10, could only display 3-bit images created directly on the user's calculator and official pictures available on Casio's website. The fx-CG20, on the other hand, could display any picture created by community users. As a result, many BASIC games available on French Casio websites such as Planète-Casio could not run on North American models.

The picture limitation was to ensure that the calculator complies to exam rules in the United States. The TI community was relunctant about publishing any converter that could circumvent that restriction, in fear that such program falls under the wrong hands. However, last year, two new color calculators with full image support were released in the United States and in addition to that, despite the PRIZM and TI-82/83/Plus lacking any PTT/exam mode to restrict program/apps/images, they are still accepted in most tests. As a result, one fellow TI website, Cemetech, opened a topic asking people's opinion on whether SourceCoder 3 should get such conversion feature or not. In the end, the feature idea was finally welcomed, unlike two years ago, and you can now enhance your Casio FX-cg10 BASIC games like there's no tomorrow!



The animated GIF above demonstrates a program looping through multiple images I experimented with. Games like Shining in the Darkness for the Sega Genesis or Myst for the PC should theoretically be possible, but if you can keep your pictures small enough, perhaps you could do more type of games (the variations of the dungeon picture in the GIF above are for a potential Illusiat 1 remake).

Two image formats are supported: 3-bit and 16-bit colors with no transparency. Images are compressed, so files with less colors and more uniform patterns will generally be smaller. You can also store as many pictures as your calculator Flash can hold. When using RecallPict, images will appear as backgrounds and replace the previously recalled background without erasing anything else that was drawn on top of it (text, lines, circle, axises, etc). Every image is 384x192, so no sprite.

As with mViewer GX, TI-Connect and other SourceCoder 3 image conversion tools already available, we highly recommend community members to restrict their use of such feature for programming games, learning tools and experimental purposes.

Link to SourceCoder 3

Source: http://www.cemetech.net/forum/viewtopic.php?t=10516

Offline Sorunome

  • Fox Fox Fox Fox Fox Fox Fox!
  • Support Staff
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 7920
  • Rating: +374/-13
  • Derpy Hooves
    • View Profile
    • My website! (You might lose the game)
Re: SourceCoder 3 brings full picture support to fx-CG10 programmers
« Reply #1 on: August 01, 2014, 04:41:59 am »
SourceCoder3 is turning out so awesome IMO :)

THE GAME
Also, check out my website
If OmnomIRC is screwed up, blame me!
Click here to give me an internet!

Offline KermMartian

  • Editor
  • LV7 Elite (Next: 700)
  • *******
  • Posts: 500
  • Rating: +233/-20
    • View Profile
    • Cemetech
Re: SourceCoder 3 brings full picture support to fx-CG10 programmers
« Reply #2 on: August 04, 2014, 04:41:50 pm »
Thanks for posting this. :) Yesterday I got around to posting an "official" announcement on Cemetech (SourceCoder 3 Adds Casio Prizm g3p Picture Support, the text of which is copied below. It covers some of those ethics issues to which you allude.

Quote from: Cemetech
Although never officially unveiled, the graphing calculator programming and data management IDE SourceCoder 3 has been one of Cemetech's most popular tools. While it focuses on tools for TI graphing calculator programmers and users, it includes a program editor for Casio Prizm programmers. Thanks to a recent project by Cemetech administrator TIFreak8x, this program editor has recently been improved with a more accurate and complete list of Prizm programming tokens, a process which will continue as my users create Prizm programs with SourceCoder 3 and discover missing or inaccurate tokens. A reverse-engineering effort is underway to also add .g1m support to SourceCoder 3 to allow it to import and export fx-9750 and fx-9860 programs. Perhaps most significantly, SourceCoder 3 now includes support for the Prizm image format, .g3p.

The .g3p format has been the root of significant contention and disagreement in the graphing calculator enthusiast community over the roughly three years since the Prizm was first released. This image format is primarily used to store 384x192-pixel 3-bit and 16-bit color images on the Casio Prizm calculator. Unlike the TI image formats .8xi, .8ci, and .8ca, it includes security and obfuscation features. The body of every image is compressed, obfuscated, and signed with a cryptographic signature. A header is then added, and the header is signed with "security" values based on the file size. Throughout the years, the community leaders have largely pursuaded the community to use that obfuscation as evidence that Casio does not want the format opened, and more specifically, to not produce tools that allow users to put arbitrary pictures on their Casio Prizm (fx-CG10/fx-CG20) graphing calculators. Moreover, the method of generating and verifying the cryptographic signature at tbe end of the image data was not known. However, recent handhelds like the HP Prime, the TI-84+CSE, and the TI-Nspire CX can allow load arbitrary images created by users. Therefore, after an extensive discussion with Cemetech staff and members about the ethics of .g3p support in SourceCoder 3, I have decided to unveil the feature for all Cemetech users. You can now upload .g3p files to SourceCoder 3 to get the equivalent .PNG image. You can also upload .GIF, .BMP, and .PNG images and export 3-bit or 16-bit .g3p files that you can then transfer directly to your Casio Prizm and use in your Casio BASIC programs. In fact, well-known progammer of RPGs DJ_O has already started experimenting with the tool for his games.

TI and Casio Program and Data Editor
SourceCoder 3

Original image (left), exported from SourceCoder as 3-bit g3p (center), exported as 16-bit g3p (right).



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: SourceCoder 3 brings full picture support to fx-CG10 programmers
« Reply #3 on: August 04, 2014, 10:22:53 pm »
Nice article. I was wondering if the ethic issues would actually prevent a Cemetech front page posts or not, since such tool could fall under bad hands, but since SourceCoder is mainly a program editor, causal calculator users will most likely not notice it, plus if too many bad users did, you could perhaps limit the tool to registered and active members.

Thankfully we haven't run into such people over here in the past year, though. The biggest issues were around 2012-13, especially Nspire users.


Now, what we need is WabbitEmu or jsTIfied for the PRIZM, but you would need to find a way to generate a ROM image from a real calculator that cannot be obtained otherwise, to avoid legal issues. Or at the very least, maybe someone could port GrayScreenshotLib 9860G to the PRIZM to take animated screenshots on-calc from  ASM programs and also make a tool that lets you take animated captures from any BASIC/LuaZM program even in busy mode.
« Last Edit: August 04, 2014, 10:26:56 pm by DJ Omnimaga »

Offline KermMartian

  • Editor
  • LV7 Elite (Next: 700)
  • *******
  • Posts: 500
  • Rating: +233/-20
    • View Profile
    • Cemetech
Re: SourceCoder 3 brings full picture support to fx-CG10 programmers
« Reply #4 on: August 14, 2014, 10:01:49 am »
*bump* For the people who asked for it, I wrote a combination explanation of how I reverse-engineered the .g3p format and reverse-engineering tutorial:
http://www.cemetech.net/forum/viewtopic.php?t=10560



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: SourceCoder 3 brings full picture support to fx-CG10 programmers
« Reply #5 on: August 14, 2014, 12:47:56 pm »
Awesome to see Kerm . It will probably take me a while to dechiper all of this since the file format looks weird. Hopefully it can be handy for me to figure out how to make my images smaller. :)