It's been a while since I looked at PhotoChrome - a lot of effort was made in v5 to upgrade the convertor to use more powerful algorithms and with more flexible options. Some extra features were also added which I did not fully document.
One of these features included the capability to convert images for display formats other than the native PCS format - including display routines which had not yet been developed. The aim was to provide a toolkit for converting images, rather than just trying to display images with more colours - since everyone has their own routines...
PhotoChrome was the first attempt at dual-field images on the ST/E. Meaning - using more than one bitmap to display extra colours normally not available. There have been several very good implementations since then, including good convertors. While a lot was done with my convertor, it has been stuck with a display routine from 1991. This routine was based on the SPU (Spectrum512) timings because it was well known, I could generate images compatible with Spectrum using the same tables, and it was good enough at the time. No more!
So I decided to go back and push against some limits again.
PhotoChrome v6 has a new experimental specification for a stock STE. This is one of several new modes for v6.
* Full overscan - 416x272
* 52 palette changes per scanline (I believe the last record was 48?)
* Uniform distribution of colour changes
All of these things have been achieved or slightly exceeded individually, but not all at once in the same mode. I had this working a while ago but wanted to wait until I had it tested on a few different machines. I also still have some things to fix (like wakeup protection, missing 1st scanline and several other glitches) and I will get around to that.
Getting this mode to work really depended on a good "image-at-once" reduction algorithm, or at least the ability to propagate error globally between scanlines - since there is complex sharing of colours across left/right border. Scanline-at-a-time can't do it.
Further, PhotoChrome v6 can generate and display images with the highest colour depth so far - "tri-field" images. It can render from a palette of nearly 100,000 colours
(the old PhotoChrome - and it's recent competitors - achieved nearly 28,000 colours on STE). This is a fun experimental thing, but results are already getting pretty good and I have now found a decent way to stabilize them. These images are presented without any dithering:
Also, I have upgraded the convertor to accept more complex display configurations. It is now possible to define a unique rule for any group of scanlines, down to a single scanline. This can be done via a rule file, without recompiling the convertor. If you think of a great new displayroutine but it involves fiddly stuff for bottom border or you want to reserve colours in a portion of the image, it's now relatively easy to generate an image for it by making one of these rule files. The new displaymodes I have created are implemented through these rule files and I'll provide them as examples. The rest is down to reformatting the data it produces to suit your display code (it's best to emit the data in raw format, when doing this - it saves messing with PCS format headers).
Wakeup protection (preventing the dreaded columns of random dots/lines) can also optionally be enabled, as a flag (this works for old types of image but I haven't fixed it for flexible image types yet).
Lastly, there are new algorithms and some new features aimed at different tasks. I'll describe these later when I release the updated tool.
I figure that should qualify as an upgrade - and perhaps something new to beat
For now though, I think it may be (however briefly) back at #1
Happy holidays to all Atari coders and users alike!
You do not have the required permissions to view the files attached to this post.