Grayscales On The Fx-9860!
#1
Posted 12 June 2007 - 05:03 AM
Larger Image
Nice, eh? Can you distinguish the shades of gray? I'll try to get a better picture next time.
I've been wanting grayscales on the fx-9860 for a long time now. Right now I'm trying to get the interrupts to work the way I want them to so we can use it within games (but games are not the important thing right now), but for right now this would be great for doing some intro graphics to a program or a bitmap viewer.
I'll experiment more with it and see if I can get more shades of gray.
#2
Posted 12 June 2007 - 09:10 AM
#3
Posted 12 June 2007 - 11:44 AM
And when do you think you could post a first add-ins with greyscales, just like wath you have on your fx-9860 ??
#4
Posted 12 June 2007 - 01:12 PM
I also uploaded the image to the wiki: http://fxwiki.techla...ge:IMG_1564.JPG
I believe more shades of gray can be done. If you want the add-ins, I'll post them soon.
#5
Posted 12 June 2007 - 01:42 PM
And, when do you think you'll post firsts add-ins with greyscales ^^ ?
#6
Posted 13 June 2007 - 12:31 AM
#7
Posted 13 June 2007 - 01:09 AM
#8
Posted 13 June 2007 - 02:15 AM
Great job my friend, finally you got it working, Congratullations. When did we speak about this stuff? Sunday was it? You are faster from what I thought
Lol, yeah. I said that if I can get grayscales working, then I'll stop hacking the fx-9860G. I could start working on other projects like a CAS and games after I release the grayscale library.
This will enhance the games ten fold! Congrats on this accomplishment, cant wait to see what else you can come up with.
Your name sounds very familiar for some reason. Did you use to own a CASIO graphing calculator?
Anyways, your a nice and friendly guy for a TI user (well, the guys at Omnimaga are friendly also). Maybe now that we have grayscales on the fx-9860, we can create a MLC for this calc and reconnect the link between the CASIO and TI community.
#9
Posted 14 June 2007 - 10:57 AM
#10
Posted 14 June 2007 - 04:44 PM
How many buffers are needed? (2 or more?)
How are the different colors represented through the buffers? (e.g. for two buffers, black=11, lightgray=01 etc)
Which interrupts are needed?
Technical details are interesting too, don't keep it for yourself
#11
Posted 15 June 2007 - 03:39 AM
What about giving a little more information about the way you did it?
...
Technical details are interesting too, don't keep it for yourself
Dude, haven't you seen the hardware wiki I started?: http://fxwiki.techlab.info. I have contributed and publicized a ton of info about the fx-9860. And you saying these stuff Orwell, about me not giving technical info, makes me feel that you want me do more and more, more work. I feel like a machine. No machine is even 100% efficient...
I agree that you make great work with these calculators.
Ah, that brought my spirits back up. That's good to hear. But what I'm going to present next well make a lot of you happier:
EPSILON v0.2 Beta Released!!!!
Download it here!
What's new?
* Greyscales engine
* Contrast control
* CPU speed change functions
* CPU reset function
Tell me what you think. If you have any questions about EPSILON, ask me. 'm still looking for a good value to input GrayInit function. If anyone finds a good value, tell me.
I still have to add those 3D functions and such... I promised I would stop hacking the fx-9860, I'm now going back to working on the CAS and some games now...
#12
Posted 15 June 2007 - 09:23 AM
#13
Posted 15 June 2007 - 10:39 AM
Well indeed I hadn't seen it That's a nice thing, but I still don't find the answers to my questions thoughDude, haven't you seen the hardware wiki I started?: http://fxwiki.techlab.info. I have contributed and publicized a ton of info about the fx-9860.
Its not that at all, it's just that I'm interested in the way you managed to get these results. I just asked for explanations about what you did, I'm not asking you to find any more new stuff It reminds me the time when I made the 5 colors library for the AFX, that's why I'm curious about thatAnd you saying these stuff Orwell, about me not giving technical info, makes me feel that you want me do more and more, more work. I feel like a machine. No machine is even 100% efficient...
My concerns are: how do you manage to reduce flickering? Are they several possible bit combinations for each color? Which sequence do you use to display the different buffers? Again I'm not asking you to find any new stuff, I'm just asking more information about YOUR (great ) work
#14 Guest_dfiad77pro_*
Posted 15 June 2007 - 11:54 AM
#15
Posted 15 June 2007 - 01:36 PM
Its not that at all, it's just that I'm interested in the way you managed to get these results. I just asked for explanations about what you did, I'm not asking you to find any more new stuff It reminds me the time when I made the 5 colors library for the AFX, that's why I'm curious about that
Ok, well you can ask me on MSN.
peerhaps is a problem of my calc, but your "devo" sample flick a lot
Yeah, it's a bit harder to get grayscales when using interrupts....
If you look in the sourcecode for the "DEVO" example, you'll find the the rate at which the buffers are drawn to the screen are adjustable. I consider this a advantage over the Gaumerie library for the ClassPad. Let's say you changed the CPU speed of your calculator, you can adjust the buffer rate to accommodate the change in speed. The important thing about the grayscale engine right now, is that the interrupts are working. I still haven't found the values that are good for grayscales with the use of interrupts. Our goal right now is to find the right values to input GrayInit for various CPU speeds to get the best results for grayscales. We could trial and error, but there are thousands of different values. I find however, that working around 900 is good.
I think the formula to obtaining the countdown value that you desire in GrayInit is:
(Time interval that you want in milliseconds)/(Cycle interval of the CPU in millseconds)/4
So let's say the CPU is 33MHz that has 30 nanonseconds interval and we want the interrupt called every 10 milliseconds:
(10)/(0.00003)/4 = ~83333
So, who wants go to find the right values for grayscales?
#16
Posted 16 June 2007 - 05:11 AM
http://casiokingdom....F...&t=599#6343
Values of 813, 650, 464 and 433 would be extremely good as you can't see flicker, but except for the fact that white lines pop up and fade away. Could still be good for games that don't require as much gray as my DEVO example. But then I also found good values, not perfect though, around 542. Well, we've got the weekends to figure this out.
#17
Posted 16 June 2007 - 10:20 AM
So that means you do not intend to reveal it publicly?Ok, well you can ask me on MSN.
I'm not only asking that by pure curiosity. Because depending on how you got your grayscales, we may be able to find better solutions to reduce flickering than just finding an optimal value for the refresh rate. For example, if you use more than 2 buffers, then each color can be coded with several combinations. And an excellent solution to eliminate flickering is to use all combinations at the same time, instead of picking just one and forgetting the others.
These are the kind of things that should be shared between all members of a community. A community grows by experience, not by technical data's or some mysterious libraries that everyone use without understanding how it works
#18
Posted 18 June 2007 - 12:30 AM
So that means you do not intend to reveal it publicly?
* Sigh * - You don't understand what circumstances I was in when I was writing that post. I was in a hurry and had to go to school while I was writing that post. I go to school very early in the morning. It's like how you were to busy to talk to me on MSN when I offered to tell you these kind of things. School and education comes first before grayscales.
For example, if you use more than 2 buffers, then each color can be coded with several combinations. And an excellent solution to eliminate flickering is to use all combinations at the same time, instead of picking just one and forgetting the others.
Can you clarify what you are saying? I don't really understand what you are saying. Using more than two buffers? Well, I tried using three buffers, look at the picture of my calculator above. But using three buffers would complicate programming for people who want to make some games. Having to keep track and drawing three separate buffers... Another problem is that it takes too much CPU resources as the CPU would be devoted to just drawing the buffers to the screen, unless maybe we use CPUSPEED... This kind of thing may be only good for displaying a bitmap.
We also have already eliminated flickering, it's already been done for a while now... The problem is a white line that pops up and fades. I've heard that the same problem occurs on the ClassPad. Do you want me to show you another picture?
Here's your "Devo EZ Muzak" explanation of how the grayscale engine works:
1. Determine the two buffers
2. Initialize the engine by setting up the SH3 timer interrupts
3. Run through some program code (Timer is counting down in the background)
3a. If the SH3 timer has underflowed draw the buffer on deck directly to the screen. Place the next buffer on deck and set the timer again.
4. Go back to 3
I guess you killed my topic. Look at the direction where this topic is heading towards now...
I was just looking for comments about grayscales on the fx-9860 since people want it really badly and we have been trying for about a year (and maybe even a pat on the back), not attacks! * Booji Boy voice * Good grayscales are a good thing to have and should be something we should not argue about. Watch a Devo video: * End the Booji Boy voice *
What we now need importantly are graphics routines that allow you to draw onto a buffer (array), instead of drawing to the VRAM. Then we can write games with grayscales for the fx-9860.
#19
Posted 18 June 2007 - 03:46 AM
I used your Devo example to make it display the grey int value and then i was surprised that i was not able to put anything else to the screen (like the value), anyway we discussed it on CK
#20
Posted 18 June 2007 - 05:54 AM
I think it is a great thing i will definatly try and use it in next games, even update my old ones. But i could really use commands like Drawline and Drawdot you think that is possible (ever)?
It's possible. It's what I'm working on right now. That's what I meant when I wrote we needed some graphics routines to write to the buffer (array).
#21
Posted 18 June 2007 - 07:21 PM
Then why didn't you simply write "Sorry I don't have time to explain it right now, I'm gonna add a more complete post later"? Your posts above show that you simply didn't plan to give the details, and you weren't expecting that someone could ask you about it.* Sigh * - You don't understand what circumstances I was in when I was writing that post. I was in a hurry and had to go to school while I was writing that post. I go to school very early in the morning.
No problem with that. Btw when you called me on MSN it was 2:00 AM here, and I had an exam at 8:00 AM. So indeed I was too busy at that timeIt's like how you were to busy to talk to me on MSN when I offered to tell you these kind of things. School and education comes first before grayscales.
Oh, sorry. I guess you were just expecting more posts saying "Yeah kucalc you are the best!".I guess you killed my topic. Look at the direction where this topic is heading towards now...
"attacks"?I was just looking for comments about grayscales on the fx-9860 since people want it really badly and we have been trying for about a year (and maybe even a pat on the back), not attacks!
So for you, asking for details or explanations about your work is an attack huh Did I say any bad comment on your work?
But as I thought, you were just expecting for people to acclaim your work. This is just too childish.
Sorry guy, but things don't work that way. Don't think that when you succeed in doing something, people never ask you about the whereabouts of your work. The only people who just say "yeah! wonderful!" are the ones who have no idea about how it could be done. People with experience will allways start by saying "yes that's nice, but what about ...?". You better should get used to that
(OK this one is an "attack". But it does not concern your program, only the way you act.)
OK this is a begin of explanations. But unfortunately there is absolutely nothing new here, because most grayscale systems that are based on timers work that way. I'd like you to give more precision... For example, you have 4 colors but only 2 buffers. So that mean that one of the two buffers appears more often than the other one. But in which proportion? 60%/40%? 66%/33% ?Here's your "Devo EZ Muzak" explanation of how the grayscale engine works:
1. Determine the two buffers
2. Initialize the engine by setting up the SH3 timer interrupts
3. Run through some program code (Timer is counting down in the background)
3a. If the SH3 timer has underflowed draw the buffer on deck directly to the screen. Place the next buffer on deck and set the timer again.
4. Go back to 3
It would complicate programming for people who will write the graphic library using the 3 buffers, that's for sure. But making games with it is another thingWell, I tried using three buffers, look at the picture of my calculator above. But using three buffers would complicate programming for people who want to make some games. Having to keep track and drawing three separate buffers...
This is a common problem with grayscales... That's why we should try to find some efficient way to reduce flickering without having to use some low values for the timer cycles.Another problem is that it takes too much CPU resources as the CPU would be devoted to just drawing the buffers to the screen, unless maybe we use CPUSPEED... This kind of thing may be only good for displaying a bitmap.
I'm well aware of that fact. And the reason is that the update rate of the buffers isn't perfectly synchronized with the refresh rate of the screen... I guess it is the best that could be obtained with this methodWe also have already eliminated flickering, it's already been done for a while now... The problem is a white line that pops up and fades. I've heard that the same problem occurs on the ClassPad. Do you want me to show you another picture?
Again I'm not trying to destroy your work (which is great, that's a fact). I'd like you to describe your work in a more professional way, that's all Remember, there aren't only gamers here, sometines there are some other programmers too
Or maybe you are just anxious that someone else could "steal" your work for himself?
I'm available on MSN if you want to talk a little
#22 Guest_dfiad77pro_*
Posted 18 June 2007 - 08:27 PM
he is too busy to post the source of greyscales, but i'm sure that he will post it when his work will be finished.
For the problem of screen, i think the screen of FX9860 is to remanent for greyscales
PS : SOrry for my english
#23
Posted 19 June 2007 - 02:06 AM
"Are You Experienced?"
Time for me to go study my exams now...
#24
Posted 19 June 2007 - 07:27 AM
Man, 15 year old kids might be talented, but they certainly are totally stubborn.
#25 Guest_dfiad77pro_*
Posted 19 June 2007 - 02:42 PM
#26
Posted 19 June 2007 - 04:17 PM
Or at less his friends can
3 trees can make a mountain
#27
Posted 19 June 2007 - 06:59 PM
For example, you have 4 colors but only 2 buffers. So that mean that one of the two buffers appears more often than the other one. But in which proportion? 60%/40%? 66%/33% ?
Probably 66%/33%. The light gray is too light, and the dark gray is too dark. Try 60%/40%, it gives better results.
You have done a very good work there, though. Isn't there any flickering ? IIRC, Gaumerie told me he has tried the same thing on the ClassPad, but he couldn't find a good timer frequency that doesn't make the grayscales flicker.
Man, 15 year old kids might be talented, but they certainly are totally stubborn.
Pardon ?
#28
Posted 19 June 2007 - 09:47 PM
http://orwell01.free.fr/Release/gxLib/Orwell, if you are so intelligent you can make greyscales yourself !
Oops, sorry about thatPardon ?
#29
Posted 20 June 2007 - 08:12 AM
Has anyone seen his Sonic game for the AFX? It's excellent!
#30
Posted 20 June 2007 - 09:39 AM
#31
Posted 20 June 2007 - 01:53 PM
I do not understand fully the way the people behave :| it seems like lately everything turned grim overhere, i mean my god, it is about gaming on graphic calculators...I appreciate your contribution, and i also appreciate v----'s contribution (my god, i mean how old must you be to write a users name this way, v-----.....)
I hope you are above this and do not get disapointed, because i know i would be if people behaved like this....
this is also to v-----
#32
Posted 21 June 2007 - 07:12 PM
Sorry Orwell but I have to be one of those mindless guys that is going to go ahead and congratulate kukalc for his work...
I don't understand why this rivalry has suddenly arrised... I mean vanhoa is a bastard with very little intelect, thus his behavior, now you? what's up with those comments...
oh well, perhaps I've been absent for too long to fully understand the matter...
Congratulations kukalc, great work indeed.
Good to be back... as far as I see it 9860's is getting empowered and empowered by the community as days go by... nice to see that...
#33
Posted 21 June 2007 - 07:44 PM
Wtf,?his?comments?were?absolutely?appropriate.?It's?not?like?he?does'nt?seem?to?appreciate?the?work?kucalc?does.?He even used quite a lot of smileys in his posts,?which?made them easy to interpret. Criticizing someone is not bad as long as the reason is fine. Jeez. I guess?the?difference?in?nationalities?of?the?members?here?has?something?to?do?with?it?Sorry Orwell but I have to be one of those mindless guys that is going to go ahead and congratulate kukalc for his work...
I don't understand why this rivalry has suddenly arrised... I mean vanhoa is a bastard with very little intelect, thus his behavior, now you? what's up with those comments...
oh well, perhaps I've been absent for too long to fully understand the matter...
I'd?also?love?to?see?documentation?on?new?stuff,?as?an?SH-3?asm?listing?is?not?good?enough.?If?kucalc?really?wants?to?help?the?community,?he?has?to?understand?that?documentation?is?very?important. If not, the progress only benefits those who want to use grayscales, not those who want to hack. This goes for all topics, not only grayscales.
#34
Posted 22 June 2007 - 12:45 AM
Don't you guys do anything else? I ride a bicycle, eat, sleep, play video games and hang out with friends building stuff. My computer can heck do a lot better a lot of things my fx-9860. I bet you guys didn't even notice that Halo 2 for the PC came out already. I'm trying to get Halo 2 right now. Now that school is over for me, I have planned better things to do this summer than fiddle with my calculator. What about you? Is your calculator your life? It's like you guys are just going for that big ice cream cone in the sky, that you don't the time to look at what's happening around you. You think a calculator is more important than a human being, that you would go and make another human being feel bad. You must be really messed up like Cowboy Kim (don't worry, it's just another Devo reference) to believe such things. The more I think about these things, the more I really hate my fx-9860.
If it will make things go right, then I deeply, deeply, deeply, deeply apologize to the following people: CFX_Master, samy, thomatos, Manuel Naranjo, Crazio, Madskillz, dfiad77pro, Menno, vanhoa, Kilburn, casiokingdom, LordNPS, Andreas B and to everyone else I have left out of this list.
#35
Posted 22 June 2007 - 04:35 AM
#36
Posted 22 June 2007 - 08:18 AM
Kucalc, don't even think that calculators are everything in my life, I have a lot of other occupations at the moment. And honestly, I never wrote a single line of code for a calculator during the last months. But I'm still interested by the subject, and sometimes I like to stay informed on what happens in the community. Thus recently I had a glance on the CFX Forum, I just saw your post, and your images, and I thougt "Hey that's interesting, how did he get that result?". And then after a few exchanges, I had to conclude "What the hell, he's not even able to describe his own work? ". Let's say I was a bit disappointed Hey, I don't even own a 9860!
My allusion about your age was perhaps a bit misplaced. Sorry.
But the fact remains that there is big difference between young amateurs who see programming as a hobbie and the others (to not say: the professionals) for which programming is a work. Hey, give the same answers to a boss (or a client!) that you gave to me, you will get fired instantly! It's just a difference of rigor and precision (which is normal, otherwhise anyone could claim that he's a professional ). I guess I was exactly the same a couple of years ago
>> Andreas : Yeah maybe nationalities do have an influence too
What about returning to the original subject now?
#37
Posted 22 June 2007 - 08:27 AM
Btw, I stopped programming on my calculator many months ago. I just do some silly Lua or C++ test from time to time.
Well, yes, let's return to the original subject.
#38
Posted 24 June 2007 - 05:51 AM
Thanks for releasing it to the community!
Alias
2 user(s) are reading this topic
0 members, 2 guests, 0 anonymous users