HP Forums
50G FULL SCREEN grayscale viewer - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: General Forum (/forum-4.html)
+--- Thread: 50G FULL SCREEN grayscale viewer (/thread-16552.html)



50G FULL SCREEN grayscale viewer - BINUBALL - 03-29-2021 06:55 AM

I use OPENFIRE for viewing grayscale image. It support 4 and 16 scale grayscale image. But I don't want border of OFVIEW4. So I tried to find another grayscale viewer with full screen. I found gDREAM but It doesn't seem to operate properlyon 50G.
Do you know any full screen grayscale viewer with 50g compatibility?


RE: 50G FULL SCREEN grayscale viewer - Jonathan Busby - 04-03-2021 05:51 PM

(03-29-2021 06:55 AM)BINUBALL Wrote:  I use OPENFIRE for viewing grayscale image. It support 4 and 16 scale grayscale image. But I don't want border of OFVIEW4. So I tried to find another grayscale viewer with full screen. I found gDREAM but It doesn't seem to operate properlyon 50G.
Do you know any full screen grayscale viewer with 50g compatibility?

Programs like GRS64 and gDREAM/32 only work on Saturn based calcs, not emulated Saturn ARM based calcs, because they rely on precise timing. But, not all hope is lost. The algorithms used by the above greyscale viewers have been used for decades in LCD displays to increase the number of user perceived colors. Specifically, the method is called "spatio-temporal dithering". The reason that greater than four grey level ( say, eg. eight ) greyscale viewers on HP calcs that use the "usual" greyscale algorithm start to badly flicker is due to many pixels turning off and on in lockstep, for longer and longer times with more and more grey levels. To stop the flickering, the toggling of pixels have to be de-correlated. To do this, the grey level associated with each pixel is translated into a regular, repeated toggling pattern corresponding to what proportion of time the pixel should be on in the 1/64th of a second refresh rate of the calculator. Then, the said pixel's toggling pattern is given a random "phase" ie. starting offset so that other pixels on the screen with the same grey level don't toggle at the same time as the said pixel, or if other pixels do toggle at the same time, the number of pixels which do is minimized, resulting in little to no flicker. This method can be combined with something like Floyd-Steinberg(1) error diffusion dithering to further reduce flickering.

AFAIK, the 32 and 64 reduced flicker greyscale viewers for the Saturn calcs use a very CPU intensive method, but not much extra memory. One can also use a lot of memory but very little CPU time, although I don't think I've seen a low flicker greyscale viewer for the Saturn calcs that does this. A while ago ( well, back sometime between 2000 and 2004 ) I coded a low-flicker 64 shade greyscale viewer for the HP48 series which traded low CPU usage for high memory usage. The code is on some external hard drive that I currently have in storage but I remember the algorithm I used. For ARM based calcs like the 50G, I'd have to translate said code and algorithm into ARM assembly. I might do it if there's enough demand.

Regards,

Jonathan

References : (1) Floyd-Steinberg dithering


RE: 50G FULL SCREEN grayscale viewer - BINUBALL - 04-05-2021 12:44 PM

I think I should be satisfied with open fire, or modify open fire's OFVIEW4 to remove border.
Thanks for replying.