Jump to content



Photo
- - - - -

Collaborative Project: Revolution-fx


  • Please log in to reply
41 replies to this topic

#1 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 23 June 2007 - 02:00 AM

For updates, tutorials and documentation on the Revolution-FX project check out our homepage: http://revolution-fx.sourceforge.net

To subscribe to our RSS feeds: http://sourceforge.n...group_id=199425

It's now summer. Most of us are on summer vacation now. :) It's now time to do the super thing. The DEVO thing. It's time for a Revolution. :roflol:

EPSILON is now open source and has now been renamed to Revolution-FX. Until I can get hosting at SourceForge, Revolution-FX will be hosted at the hardware wiki: http://fxwiki.techla...p/Revolution-FX

What we need now is a development team for the fx-9860G platform. A development team does not have to work on the Revolution-FX library only, but we can do other collaborative projects also (games, utilities, etc.) and all our projects will be released as open source to the community. A development team doesn't only have to be limited to programmers, we can have artists that draw graphics for use in games and programs. We can also have people who would like to help out writing documentation or beta test programs and give suggestions.

With a development team, we can coordinate development and increase the output of high quality programs. Everyone would benefit.

If you're interested in creating a development team with me PM me or email me at kucalc AT gmail.com or you can just reply here also.

#2 Menno

Menno

    Casio Freak

  • Members
  • PipPipPipPip
  • 184 posts
  • Gender:Male
  • Location:Netherlands

  • Calculators:
    Casio 880P
    Casio Graph 25+
    Casio fx-9860g sd

Posted 23 June 2007 - 06:53 AM

Hey K,

unsigned char ReadPort_SCP();

is that for calc to calc communication?, is there also a "unsigned char SendPort_SCP();" command?

Or did i misunderstand....

i would love to help on your project but as said before, I guess my knowledge is not enough to be of any help on this level of hacking (nor any level of hacking ;) )

I can help on testing though, i have acces to many 9860 calcs so if there is ever need for someone to test something that supports calc to calc communication, give me a message...

#3 LordNPS

LordNPS

    Casio Freak

  • Members
  • PipPipPipPip
  • 173 posts
  • Gender:Male
  • Location:Porto/Portugal (makes me sad having to write this but....) /Europe
  • Interests:CG<br />Programming<br />Chess<br />Weapons<br />Porn<br />Explosives and rocketry<br />Calculators<br />History( mainly WW2 history)<br />

  • Calculators:
    FX 9860 SD


Posted 23 June 2007 - 02:04 PM

I would like to join the development team.

Great to see the Epsilon made open source (revolution-fx now, sorry ;) ).

#4 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 23 June 2007 - 04:01 PM

Great initiative, I'm in :D
I'm interested in making it possible to do in <{GNULINUX}> whatever you can do in Windows.

edit: quick question - does the fx-9860G processor run in big or little endian mode?

#5 thomatos

thomatos

    Newbie

  • Members
  • Pip
  • 28 posts

  • Calculators:
    fx-9860 G

Posted 23 June 2007 - 04:14 PM

I'm interested in drawing graphics for games, cause I reall like that !

Thanks ^^ !

#6 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 23 June 2007 - 04:25 PM

@Menno, I believe it could be possible to use that function to calc-to-calc communication. But I may be wrong, I never tried doing that. There is no SendPort_SCP() however. One could be written however. The direction of the ports is controlled by the PFC (pin function controller), which you can read more about in the SH7705 datasheet which you can find at the hardware wiki.

For LordNPS, Andreas B and thomatos, you're in.

So we now have some programmers, artists and testers.

Do you guys want to decide what project to work on?

@Andreas B, the SH3 CPU is big endian.

#7 Menno

Menno

    Casio Freak

  • Members
  • PipPipPipPip
  • 184 posts
  • Gender:Male
  • Location:Netherlands

  • Calculators:
    Casio 880P
    Casio Graph 25+
    Casio fx-9860g sd

Posted 23 June 2007 - 08:10 PM

@Menno, I believe it could be possible to use that function to calc-to-calc communication. But I may be wrong, I never tried doing that. There is no SendPort_SCP() however. One could be written however. The direction of the ports is controlled by the PFC (pin function controller), which you can read more about in the SH7705 datasheet which you can find at the hardware wiki.


"which you can read more about in the SH7705 datasheet which you can find at the hardware wiki." :) oh yeah, like i am gonig to understand that.... :| i feel really dumb when reading into the assembler part. I have a print out (!) of the PDF that came with the SDK (900 pages printed out,yes.... my boss loves me ;) ) and i understand the index, thats about it :(

i think calc to calc communication would be quite popular though, imagine playing stratego or battleship from one calc to another.... :) when the commands are there i could develop games for it :)

#8 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 23 June 2007 - 10:29 PM

:roflol: :greengrin: :rolleyes: :lol2: :lol: B)
GOOOOOOOOOOOOOOOD I WANT TO JOIN, count with me.

BTW for those interested in Fourier stuff, I had implemented the DFT and IDFT I will be releasing those files soon, if anyone wants them fast and can't wait, just mail me.

#9 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 25 June 2007 - 03:29 PM

Cool Manuel, you're in.

Revolution-FX is now hosted at SourceForge: http://sourceforge.n...s/revolution-fx

Tell me if you want to become a developer of the project.

#10 ds316

ds316

    Newbie

  • Members
  • Pip
  • 1 posts

  • Calculators:
    CFX-9850GC
    !!Soon!! FX-9860

Posted 26 June 2007 - 09:08 AM

I'd be happy to join once i get my hands on my FX-9860 (only have a 9850GC atm), I always love to play around in assembly and love to mess around with low-level operations on my PC, so I might as well have some fun on my calculator as well :)

#11 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 26 June 2007 - 01:55 PM

Cool Manuel, you're in.

Revolution-FX is now hosted at SourceForge: http://sourceforge.n...s/revolution-fx

Tell me if you want to become a developer of the project.

I would like to join. I think there's some work I can help with this.

#12 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 26 June 2007 - 03:23 PM

Ok, cool. I'll add you Manuel Naranjo to the project. If anyone else wants to join the project, please PM me your UNIX name from SourceForge.

ds316, that's great to hear. :D While you're waiting for your fx-9860, you can read upon what we have figured out so far: http://fxwiki.techlab.info/

#13 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 26 June 2007 - 05:52 PM

Are any one of you guys on IRC? I'm on EFNet 24/7, - we could have a dev-channel there or somewhere else. cia.vc also
provides IRC bots for SVN commit announcements in-channel, works great. <3 SVN.

#14 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 27 June 2007 - 06:54 PM

An IRC would be great. What channel?

As for Revolution-FX, you can now create programs with GCC & Revolution-FX and have them run on your calculator! :D Soon, we won't need to use the Renesas compiling tool chain anymore. I've written a program compiled using GCC and it works perfectly.

You can download Revolution-FX v0.1 for GCC here: http://sourceforge.n...group_id=199425

GCC breaks some barriers and has advantages over the Renesas tool chain. One I just noticed, I can define a lot more global data. The Renesas compiler only allowed limited global data.

You'll need something however to put a header onto the binary code. For right now, you can use huhm_m's add-in header creator.

Also note, you'll need a GCC compiler that outputs ELF. <{GNULINUX}>'s GCC should be able to output ELF. For Windows users, look here: http://ecos.sourcewa...win-sh-elf.html. Maybe when I have the time, I'll create a complete GCC development package containing the GNU tool chain and Revolution-FX for Windows.

#15 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 27 June 2007 - 08:11 PM

Great stuff, I'm lurking in #casio at EFNet. I have an SVN announce bot there too. You should add one for your project too, kucalc, if you switch to SVN it is easiest :P https://cia.vc/
GCC support is great, I'll check it out :)

#16 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 27 June 2007 - 09:51 PM

Yeah, I'll probably add a bot when I come back.

I've reworked the fx-9860G library in the SDK (fx9860G_library.lib) and created a GNU compatible (fx9860G_library.a). We can now (fully?) ditch CASIO's SDK and move over to GCC instead. :) I updated the the Revolution-FX GCC package to contain the new library.

Here's the download link: http://sourceforge.n...lease_id=519229

#17 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 27 June 2007 - 11:11 PM

Hey great work :D
How did you made the library part? It's a recompilation from Casio's code? If so then you DELETE that file right now, and give the instructions on how to achieve that. You can't distribute Casio's code in a "public" way.
Any way, great work.

#18 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 10 July 2007 - 04:48 AM

For Windows users, I've created a development package containing the proper GCC tools and the Revolution-FX library: http://downloads.sou...mp;big_mirror=0

Installation instructions are included within the archive.

#19 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 10 July 2007 - 03:26 PM

Great work man, I'll try it later.
Cheers

#20 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 18 July 2007 - 07:04 AM

Duty Now For The Future! Plan:

I've expanded the project goal now:

The Revolution-FX project goal is to provide the best platform for developing applications for the CASIO fx-9860G graphing calculator. Revolution-FX components include addheader, code editor, a hardware library, and works with the GNU toolchain.


Sounds kind of like a SDK... Anyways, if you checked the SourceForge page, you'll notice there are a couple of new things.

* addheader - Adds a proper header to binary files. Supports monochromic bitmaps.
* code-editor (Hopefully soon to be the Revolution-FX IDE) - Features color editing. Online help is included (limited). But right now the code editor is limited as of right now. If you know how to use the Win32 API and know C++, tell me if you are interested in developing the code editor. I'm also looking for people who are interested in expanding the help file as it's small right now. As of right now the code-editor is still in development. Here's a screenshot of the code editor:

Screenshot

For those who are experienced and know what they are doing, you may try out the pre-initial release of Revolution-FX Complete (the binary package of everything): http://downloads.sou...use_mirror=osdn

newlib (Standard C library), g++ (C++ Compiler), and GDB (GNU Debugger) are also included in the package.

#21 Mikael

Mikael

    Newbie

  • Members
  • Pip
  • 24 posts
  • Gender:Male

  • Calculators:
    fx-9860G Slim, TI-89, fx-82 Solar

Posted 18 July 2007 - 09:29 AM

I may be able to join in on this project soon. I have an fx-9860G Slim coming in later today, so I should be able to start playing around a bit. I have some experience with Java, Pascal, ASM and BASIC and limited experience with C. Also have a reasonable understanding of the lower level workings of computer systems (although I probably need to freshen up that knowledge...).

#22 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 18 July 2007 - 12:46 PM

Duty Now For The Future! Plan:

I've expanded the project goal now:
Sounds kind of like a SDK... Anyways, if you checked the SourceForge page, you'll notice there are a couple of new things.

* addheader - Adds a proper header to binary files. Supports monochromic bitmaps.

Very nice, good work. It will be an sdk :D.

* code-editor (Hopefully soon to be the Revolution-FX IDE) - Features color editing. Online help is included (limited). But right now the code editor is limited as of right now. If you know how to use the Win32 API and know C++, tell me if you are interested in developing the code editor. I'm also looking for people who are interested in expanding the help file as it's small right now. As of right now the code-editor is still in development. Here's a screenshot of the code editor:

Screenshot

Good work but... Why reinventing the wheel? I had played a lot with extensible IDEs that are easy to extend. Some are ligthweight some are not. Once I'm able to set up a hole enviroment I'll try to work on a pluging for Eclipse (one of the most used IDEs nowadays written in Java so very easy to use in any OS ;) ). We can also try with JEdit another java IDE but this one is very lightweight.


For those who are experienced and know what they are doing, you may try out the pre-initial release of Revolution-FX Complete (the binary package of everything): http://downloads.sou...use_mirror=osdn

newlib (Standard C library), g++ (C++ Compiler), and GDB (GNU Debugger) are also included in the package.


Some of the functions that are defined in revolution.h are defined in the CASIO sdk right? I think it would be better to move this declarations to our own fxlib.h (or what ever Casio calls it) that way porting projects from one sdk to the other is more easy.

#23 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 18 July 2007 - 05:14 PM

Nice work,
(again) Please follow the licensing for newlib and GCC (and GDB) (and scintilla). You can only redistribute their software if you follow their licenses, if not, you are violating copyright.

#24 Manuel Naranjo

Manuel Naranjo

    Casio Addict

  • Members
  • PipPipPip
  • 65 posts
  • Gender:Male
  • Location:Rosario, Argentina

Posted 18 July 2007 - 06:09 PM

B)-->
QUOTE(Andreas B @ Jul 18 2007, 02:14 PM) <{POST_SNAPBACK}>
Nice work,
(again) Please follow the licensing for newlib and GCC (and GDB) (and scintilla). You can only redistribute their software if you follow their licenses, if not, you are violating copyright.[/quote]

Andreas I don't think he's violating the license any more, his giving gcc, binutils, etc source in the sf.net page.

#25 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 18 July 2007 - 06:21 PM

Yup, that's nice, but there is nothing saying what is licensed under what or where to get sources in the pre-release.

#26 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 18 July 2007 - 06:44 PM

Yup, that's nice, but there is nothing saying what is licensed under what or where to get sources in the pre-release.


Huh? :blink: It is there. When installing the pre-initial release package, there's clearly a text file during installation in which the user is required to read and agree to in order to continue installation:

Revolution-FX
Licenses

a) The GNU Tools included with Revolution-FX are based on the FSF GNU
sources (Binutils, GCC, GDB). All of these are released under free
software licenses. The GNU sources are freely distributable under GNU
GPL. The GNU GPL guarantees the software is free to use with the
freedom to share and change. The user also has the freedom to distribute
the copies of the free software. For more details on GNU GPL, please refer to
http://www.fsf.org/l...censes.html#GPL,
http://www.gnu.org/l...es/gpl-faq.html

b) Newlib is collection of the source code with many different licenses attached
to it. Please refer COPYING.NEWLIB in the source or
http://sources.redhat.com/newlib/ for all other details.

c) The Revolution-FX tools (addheader, hardware library, code editor) are released
under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.
To view a copy of this license, visit http://creativecommo...s/by-nc-sa/3.0/
or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco,
California, 94105, USA.

If you have any questions, please contact us at our forums at our SourceForge
page: http://www.sourcefor...s/revolution-fx

All sources are available for free and can be downloaded also from our SourceForge page.


I may be able to join in on this project soon.


Ok, great! :D If you are sure about joining, sign up for an account at SourceForge and then PM me your UNIX name.

#27 Andreas B

Andreas B

    Casio Freak

  • Members
  • PipPipPipPip
  • 160 posts
  • Gender:Male
  • Location:Norway

  • Calculators:
    fx-9860G SD

Posted 18 July 2007 - 07:37 PM

Huh? :blink: It is there. When installing the pre-initial release package, there's clearly a text file during installation in which the user is required to read and agree to in order to continue installation

Yea, you're right. Sorry I missed that :)

#28 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 20 July 2007 - 05:11 AM

@Andreas, it's ok.

There's gotta be some Windows developers out there.

#29 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 24 July 2007 - 10:20 PM

Duty Now For The Future! (Part II):

Ok, here it is: Revolution-FX v0.2.

Here's the setup program to install Revolution-FX v0.2 for the CASIO fx-9860G SDK: http://downloads.sou...mp;big_mirror=0

Installation should be easy. Just make sure that when it asks where to install that it is the correct path to where you installed the SDK. The installation will configure your SDK to work with Revolution-FX.

New features in v0.2 are based on feedback and comments on what they would like to see:

* Serial port control (Possible calc-to-calc gaming?)
* Extended grayscale engine (you can change the display rate for each buffer) allowing more shades of gray while still using only two buffers
* Graphics functions for drawing to buffers (makes life easier :D)
* User input (remember scanf()?)

#30 samy

samy

    Casio Fan

  • Members
  • PipPip
  • 46 posts
  • Location:France

  • Calculators:
    graph 100; graph85

Posted 30 July 2007 - 12:38 PM

when i tested the new Grayinit function i've got an error on the computer (it says there is a problem with the reset function) and on the calculator it makes the calc shut down and restart... does it happen to someone else? how to correct this?
thank you

#31 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 30 July 2007 - 02:54 PM

when i tested the new Grayinit function i've got an error on the computer (it says there is a problem with the reset function) and on the calculator it makes the calc shut down and restart... does it happen to someone else? how to correct this?


Yes, I have experienced the same problem also. You probably have a empty loop in your program. First, make sure you have downloaded the latest release (look at the first thread, it's now at v0.2.1) or just click here http://downloads.sou...mirror=internap and install it. Next, take a look at this example (and notice that the loop is not empty):

/*
   Example using the Revolution-FX library to create grayscales.
   Draw a DEVO logo.

   This file is part of the Revolution-FX library.

   Written by kucalc with some additions by Menno
   Contact: <u title="Email protected, replace "  AT  " by "@"">kucalc[i]  AT  [/i]gmail.com</u>
*/

#include "fxlib.h"
#include "stdio.h"
#include "string.h"
#include "revolution.h"

int grey=3661;
char buffer[21];

void set_gray() {
	while(IsKeyDown(KEY_CTRL_EXE)==0){
		Bdisp_AllClr_VRAM();
		sprintf(buffer,"%d",grey);
		PrintMini(50,57, (unsigned char*)buffer, MINI_OVER);
		Bdisp_PutDisp_DD();
		if(IsKeyDown(KEY_CTRL_DOWN))
		{
			grey = grey-1;
		}
		if(IsKeyDown(KEY_CTRL_UP))
		{
			grey = grey+1;
		}
		if(IsKeyDown(KEY_CTRL_LEFT))
		{
			grey = grey-10;
		}
		if(IsKeyDown(KEY_CTRL_RIGHT))
		{
			grey = grey+10;
		}
		if(grey<1)
		{
			grey=1;
		}
		Sleep(100);
	}
}

int AddIn_main(int isAppli, unsigned short OptionNum)
{
	unsigned long buffer1[] = {0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000
000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
		0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000000
0,0x00000000,0x00000000,0x00000000,0x00000000,0x00003000,0x00000000,0x00000000,0x
00030000,0x0000F800,0x00600000,0x00000000,0x00038000,0x0001D800,0x00780000,0x0000
0000,0x0007E000,0x00079C00,0x004E0000,0x000FFC00,0x00067000,0x000E0C00,0x00430000
,0x003E1E00,0x000C3E00,0x007C3C00,0x00C30000,0x00F80780,0x000C0F00,0x00F07800,0x0
0C30000,0x01E001C0,0x001801C0,0x0381C000,0x00820000,0x038000E0,0x0038E1E0,0x0F078
000,
		0x00820000,0x070FF070,0x0030F070,0x1C0E0000,0x00820000,0x061C3830,0x0061FC3
8,0x783C0780,0x00820000,0x0C381C18,0x00E18E0C,0x70F00F80,0x00820070,0x1C600618,0x
00C3070C,0x30E03CC0,0x018600CC,0x18E0070C,0x0083018E,0x186070C0,0x01060186,0x18C0
030E,0x01860086,0x1C33C1E0,0x01040301,0x10C00186,0x038E0086,0x0C3F87C0,0x01040E03
,0x10C00186,0x030C0086,0x061E0F00,0x0104180C,0x10C00082,0x061C0086,0x06183C00,0x0
1083018,0x10C000C2,0x06180186,0x03007000,0x01086030,0x18E000C2,0x0C380186,0x0381E
007,
		0x0208C060,0x186000C2,0x1C30018E,0x0183800F,0x020980C0,0x1C6000C2,0x1860030
C,0x01830039,0x820B0100,0x0C300086,0x30E0070C,0x00C300F1,0x861E0700,0x0C380186,0x
60C00618,0x00E181C1,0xC61C0C00,0x061C038C,0x60F00C38,0x0061CF87,0xC4101800,0x070F
070C,0x70381C30,0x0030DC0E,0x04003000,0x0303FE18,0x3C1F7870,0x0038F83C,0x04006000
,0x0181F838,0x0F07F0E0,0x001860F0,0x0400C000,0x01C00070,0x038001C0,0x000C01C0,0x0
4030000,0x006001C0,0x01F00380,0x000C0F80,0x04060000,0x003C0F80,0x00380700,0x00061
C00,
		0x060C0000,0x000FFE00,0x001FFE00,0x00067800,0x03980000,0x0007F800,0x0003F00
0,0x0003E000,0x00E00000,0x00000000,0x00000000,0x0003C000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000
000,
		0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000000
0,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000};

	unsigned long buffer2[] = {0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000
000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,
		0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000000
0,0x00000000,0x00000000,0x00000000,0x00000000,0x00003000,0x00000000,0x00000000,0x
00030000,0x0000F800,0x00600000,0x00000000,0x00038000,0x0001F800,0x00780000,0x0000
0000,0x0007E000,0x0007FC00,0x007E0000,0x000FFC00,0x0007F000,0x000FFC00,0x007F0000
,0x003FFE00,0x000FFE00,0x007FFC00,0x00FF0000,0x00FFFF80,0x000FFF00,0x00FFF800,0x0
0FF0000,0x01FFFFC0,0x001FFFC0,0x03FFC000,0x00FE0000,0x03FFFFE0,0x003FFFE0,0x0FFF8
000,
		0x00FE0000,0x07FFFFF0,0x003FFFF0,0x1FFE0000,0x00FE0000,0x07FC3FF0,0x007FFFF
8,0x7FFC0780,0x00FE0000,0x0FF81FF8,0x00FF8FFC,0x7FF00F80,0x00FE0070,0x1FE007F8,0x
00FF07FC,0x3FE03FC0,0x01FE00FC,0x1FE007FC,0x00FF01FE,0x1FE07FC0,0x01FE01FE,0x1FC0
03FE,0x01FE00FE,0x1FF3FFE0,0x01FC03FF,0x1FC001FE,0x03FE00FE,0x0FFFFFC0,0x01FC0FFF
,0x1FC001FE,0x03FC00FE,0x07FFFF00,0x01FC1FFC,0x1FC000FE,0x07FC00FE,0x07FFFC00,0x0
1F83FF8,0x1FC000FE,0x07F801FE,0x03FFF000,0x01F87FF0,0x1FE000FE,0x0FF801FE,0x03FFE
007,
		0x03F8FFE0,0x1FE000FE,0x1FF001FE,0x01FF800F,0x03F9FFC0,0x1FE000FE,0x1FE003F
C,0x01FF003F,0x83FBFF00,0x0FF000FE,0x3FE007FC,0x00FF00FF,0x87FFFF00,0x0FF801FE,0x
7FC007F8,0x00FF81FF,0xC7FFFC00,0x07FC03FC,0x7FF00FF8,0x007FCFFF,0xC7FFF800,0x07FF
07FC,0x7FF81FF0,0x003FDFFE,0x07FFF000,0x03FFFFF8,0x3FFF7FF0,0x003FFFFC,0x07FFE000
,0x01FFFFF8,0x0FFFFFE0,0x001FFFF0,0x07FFC000,0x01FFFFF0,0x03FFFFC0,0x000FFFC0,0x0
7FF0000,0x007FFFC0,0x01FFFF80,0x000FFF80,0x07FE0000,0x003FFF80,0x003FFF00,0x0007F
C00,
		0x07FC0000,0x000FFE00,0x001FFE00,0x0007F800,0x03F80000,0x0007F800,0x0003F00
0,0x0003E000,0x00E00000,0x00000000,0x00000000,0x0003C000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000
000,
		0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000000
0,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x
00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0000
0000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x0
0000000,0x00000000};

	GrayLinkBuffers(&buffer1, &buffer2);
	GrayInit(grey, grey);

	while(IsKeyDown(KEY_CTRL_EXIT) != 1)		// Don't use GetKey()....
	{
		if(IsKeyDown(KEY_CTRL_SHIFT)==1){
			GrayEnd();
			set_gray();
		}
		GrayLinkBuffers(&buffer1, &buffer2);		// Tells Revolution-FX what are the two buffers you want to use
		GrayInit(grey, grey);					 		// Initializes the Revolution-FX grayscales engine. 
	}

	Reset_Calc();					 // Resets the CPU

	return 1;
}

#pragma section _BR_Size
unsigned long BR_Size;
#pragma section


#pragma section _TOP

int InitializeSystem(int isAppli, unsigned short OptionNum)
{
	return INIT_ADDIN_APPLICATION(isAppli, OptionNum);
}

#pragma section

We really need a website for the Revolution-FX project. A place for tutorials, documentation and such....

#32 samy

samy

    Casio Fan

  • Members
  • PipPip
  • 46 posts
  • Location:France

  • Calculators:
    graph 100; graph85

Posted 30 July 2007 - 03:07 PM

ok thank you for the rapid answer, i'll test it as soon as i can.
i have 2 other questions:
-what is the use of GrayEnd() (i suppose it stops the timers...)
-(it is surely linked with the first question): are we supposed to end the program with the reset function, when we use grayscales?

#33 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 30 July 2007 - 03:14 PM

No problem.

GrayEnd() turns off the grayscale engine by turning off the timers.

I use Reset_Calc() because it allows me to run the addin again if I want right after exiting it.

#34 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 01 August 2007 - 02:24 AM

For anyone interested here, I've posted documentation for usage of the Revolution-FX library. There's a description and some have code for each function in the Revolution-FX library. You can check it out here: http://revolution-fx.../documents.html.

Still writing...

#35 samy

samy

    Casio Fan

  • Members
  • PipPip
  • 46 posts
  • Location:France

  • Calculators:
    graph 100; graph85

Posted 01 August 2007 - 08:33 AM

ok for the answers! and great to do the documentation for the fx_revolution project!
for thoses who search values for grayscales i've got some who are not terrible but can maybe help:
-3 grayscales: 3673- 3657 (there is a white line which moves very slowly: the timing must be around but i can't find better)
-4 grayscales: 504- 1069 (there are whites lines which appear and disappear, but they don't scroll, and it doesn't flick a lot)

#36 METERON

METERON

    Newbie

  • Members
  • Pip
  • 5 posts

  • Calculators:
    fx-9860 sd

Posted 02 August 2007 - 01:52 PM

Hi kucalc

Thought Revolution was a broad resource for use with the 9860g SDK ( + hitachi )
Looks like its aimed at the GCC toolchain and will build to a significant SDK itself
Can you give me your views on the best way to proceed I have started with the "casio" 9860g SDK :blink:
and I wondering if I should have taken the GCC route, Your thought would be very welcome.. :rolleyes: :rolleyes:

Cheers

Meteron

#37 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 02 August 2007 - 09:35 PM

Thought Revolution was a broad resource for use with the 9860g SDK ( + hitachi )
Looks like its aimed at the GCC toolchain and will build to a significant SDK itself


It's both. :D Revolution-FX comes in two different packages, one for the CASIO fx-9860G SDK (Renesas toolchain) and the other for the GCC toolchain. It's recommended however that you use Revolution-FX with the CASIO fx-9860G SDK, since the GCC version still needs lots of work.

To start using Revolution-FX in your programs (after you install it), just include the Revolution-FX header by adding this line to the top of your source code:

#include "revolution.h"

After that you have access to the many functions in Revolution-FX. You can read about them here: http://revolution-fx.../documents.html. There's lots of example source code and each one comes with a description.

You may want to keep checking the tutorials page: http://revolution-fx.../tutorials.html I'm still writing tutorials. All I have done is the fade in/fade out tutorial. I'll be glad to accept any tutorials from users and post it on the page.

If you would like to stay continually updated on future releases of Revolution-FX, it's recommended that you subscribe to our RSS feeds: http://sourceforge.n...group_id=199425

#38 METERON

METERON

    Newbie

  • Members
  • Pip
  • 5 posts

  • Calculators:
    fx-9860 sd

Posted 08 August 2007 - 04:30 PM

Hi kucalc

Thanks again for your help will keep on checking the above links
noticed the fade in fade out ap works on calculator but does not work on the SDK emulator
I read somewhere your 15 at the mo! thats a coincidence I was 15 (in 1958 and i'm only rotting at the extremeties!!) well maybe not a coincidence lol :roflol:

CHeers meteron

#39 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 08 August 2007 - 05:04 PM

Thanks again for your help will keep on checking the above links
noticed the fade in fade out ap works on calculator but does not work on the SDK emulator


No problem. :D The fade in/fade out doesn't work on the SDK emulator as it doesn't fully emulate completely the whole entire fx-9860G. But it's ok.

I read somewhere your 15 at the mo! thats a coincidence I was 15 (in 1958 and i'm only rotting at the extremeties!!) well maybe not a coincidence lol :roflol:


Lol. :D

#40 kucalc

kucalc

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1422 posts
  • Gender:Male
  • Location:USA
  • Interests:Programming: C/C++, Fortran, LISP, COBOL 85 Standard, PHP, x86 and SH3 Assembly

    Computer graphics

  • Calculators:
    fx-9860G / fx-7400G Plus / Algebra FX 2.0+ / fx-9770G / CFX-9850G / CFX-9850GB+ / TI-89 / TI-nSpire

Posted 30 August 2007 - 05:09 AM

Revolution-FX is now at v0.3!!! Yipee!!!

New features:

* Optimized for speed (You might notice however that because of this, some programs might seem a bit large)
* Simplified and easier to use serial port functions
* Grayscale engine now allows 3 buffers so you can now have 8 colors on your calculator
* Extended graphics library. Now you can draw sprites 16x16 & 32x32 with even transparency (thanks to Bebe-Vador)

Download here: http://revolution-fx.../downloads.html




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users