OK, my cab is almost put back together after a lot of rework and a summer off doing other things.
One of the things that I wasn't able to do last time I was messing with my cab was display controls properly, which is still one of the "holy grails" for me.
What's the current state of affairs with control.ini and the different viewers? Can someone give me an overview of their differences and strengths?
Tiger's post has a lot of useful information.
Besides the three options you mentioned, there is another called CP Sketcher. It's promising, but I don't think it can produce images just yet.
IMO Johnny's biggest advantage is that it will work (via the AHK script) with any build of MAME. So it will work with Advance and other builds.
CPViewer has a superior GUI to Johnny. (IMO)
CPMaker has a number of advantages over the other two, and some disadvantages.
The advantages are:
1) Open source
2) Should work under other OSes than just Windows XP.
3) Dimming of unused controls (not a very important feature, but a feature nonetheless)
4) Will work with Johnny and CPViewer layout files
5) Faster than Johnny at creating images on the fly (only important for lower end systems)
6) Supports my LED controller.
7) Integrates with my other projects (MAME Movie Maker, etc)
Disadvantages:
1) Much more difficult to configure than the other two.
2) No GUI.
3) The issue with the control panel image for vertical games being a bit squished.
4) Requires -artres 2 to display readable text.