Omnimaga
Calculator Community => Other Calculators => Topic started by: thepenguin77 on November 28, 2011, 05:54:19 pm
-
This is a question people ask a lot, will x-level grayscale look good? or will it flicker? Well, now you can decide for yourself. I spent all day not doing my thanksgiving break homework and instead working on this program. It displays all levels of grayscale from 1-8 so you can see what looks good and what doesn't.
Controls:
- Left / right - swap levels
- / / * - adjust lcd frequency
- + / - - adjust contrast
- 2nd - report lcd frequency
- Clear - quit
Send this to your real calculator and tell me what you think. This can serve as your model for what is possible because I believe I did this the best that I could.
Also, if you need some grayscale routines, I'm including the source. Just be warned the 7-level one is a piece of crap.
Edit:
j/k on the messed up, it was good from the start
-
I remember messing with 5 level grayscale in xLIB before, but Nitacku's ditherer was not out yet and making sprites was a major PITA, since most softwares only allowed 4 level conversion. It didn't flicker incredibly bad, but it was 15 MHz only, due to the nature of TI-BASIC.
I never saw any 5 level grayscale game on calcs, though. The issue with 4 level grayscale and higher is that on the regular 83+ the contrast is so weird that we barely see one of the shades of gray.
-
Anything higher than 6 levels (in the screen shot) appears to get a bit rough. Is this program 15 Mhz models only?
-
Well, the screenshot isn't a good example because I had wabbitemu set for 12 shades of gray. So when you try to distribute that over 8, 7, or 5 colors, you run into problems.
And yes, it's only for 15MHz models because I used the crystal timers to make the grayscale perfect.
-
You should write a program that can display an arbitrary amount of shades :D
*Builderboy hides*
-
Btw 5 level grayscale in BASIC with xLIB is insanely huge, because each interlaced sprite frame has to be pre-rendered then stored into 8xi files separately, and it takes 4 pictures for one sprite sheet. The same is true about other grayscale levels but the size difference with ASM is much more signifiant than at 4 level.