The only problem is that when I bring up the Service Menu while R-Type is running, I get the 60Hz value set. That means I can't have a crack at fixing up the geometry without compromising the other games that are important to me.
I guess there must be a trigger that decides whether the TV uses the 60Hz or 50Hz settings. I need to learn a bit more about how all the values and frequencies of each mode interrelate before I can hunt down the crossover point.
R-Type vfreq is slightly higher than 50 Hz (55.017606Hz) so assuming that vfreq is the trigger factor that may be the reason why it ends up being treated as a NTSC signal. As your TV expects 240 active lines for a NTSC signal it will not know what to do with 256 lines (rtype yres).
Does Mortal Kombat (54.815170Hz) look fine? Is it treated as a PAL signal? If that is the case then you may try forcing R-Type as PAL too by using two lines:
monitor_specs0 15625-16200,
49.50-54.90, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448
monitor_specs1 15625-16200,
55.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448
That will create a gap in the middle, but Irem games would be calculated using the first line. They will run at 54.90 Hz (0.2 Hz compromise).
But the trigger factor might be also hfreq based (total lines related, PAL is 15625 Hz, NTSC is 15734 Hz), or vfreq-hfreq combined. So you need some patience and experimenting.
If you manage to get a 55.01 Hz signal properly displayed by chaging some porch values with Arcade_OSD (ie reducing vertical back porch by some lines) then you might come up with a three lines setup filling in the gap:
monitor_specs0 15625-16200,
49.50-54.90, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448
monitor_specs1 15625-16200,
54.90-56.00, 2.000, 4.700, 8.000, 0.064, 0.160,
0.896, 0, 0, 288, 448
monitor_specs2 15625-16200,
56.00-65.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448
You may use Arcade_OSD to change each frequencies and value separately, you just need some practice and patience, but please be careful: nothing should happen, but the risk is real. So if you feel your CRT is stressed by a given mode just press "2" so you can tweak the settings while not in full screen mode, minimazing the pain. Then press "1" to bring the full screen mode back.