Does Ivan's tune even use the data from the O2 sensor? If not, I wouldn't expect the CO numbers to make any difference.
No, Ivan's website states it disables the O2 sensor. But the CO adjustment has nothing to do with the O2 sensor.
The FJR injection system (at least on the Gen 1 and 2, I never studied the Gen 3) is pretty primitive. It doesn't even have a mass air flow sensor -- the mass of air is estimated by use of the throttle position sensor, intake air pressure sensor, the barometric pressure sensor and the intake temperature sensor.
On starting, the ECU is in "Open loop" mode. That is to say, it calculates the injector duration (and therefore estimated mixture) based on the estimated air flow of the moment. The required mixture is estimated base on the coolant temperature -- a cold engine needing a richer mixture. The term "Open Loop" refers to the lack of feedback.
When the O2 sensor gets up to temperature and can start reading the residual O2 content in the exhaust stream, the ECU goes into "Closed Loop" mode. That is to say, the estimates are refined by sampling the results and adjusting the mixture as required, based on entries in a look-up table. Ivan's map is a replacement set of values stored in that table.
Now regardless of open or closed loop operation, all the sensors are considering the engine as a whole, without regard for individual differences between cylinders. For example, manufacturing tolerances in size or speed can mean that one injector actually flows slightly more fuel per millisecond of operation that it's neighbour. The CO adjustment is intended to compensate for those differences by varying the duration of each individual injector by adding or subtracting from the base injection duration. EG: if the ECU is calling for the injectors to open for, say, 3 milliseconds, the CO adjustment value of each individual cylinder will add or subtract a tiny amount of time for that particular injector's duration from that base calculation.
It is called the "CO" adjustment because Yamaha's adjustment procedure was to measure the carbon monoxide content in the exhaust at each individual header pipe at idle and set the compensation value so that all cylinders produced equal concentrations of CO. In theory, if the CO is the same, the mixture and power produced by each cylinder is the same.
Increasing the CO value of all cylinders will richen the overall mixture. IE: if we increase the CO adjustment to add 100 microseconds to every cylinder, then when the system calls for 3mS base duration the injectors will flow 3.1mS and when the system calls for 20ms, the injectors will flow 20.1ms. However, there are two problems with that concept. 1. As noted, the compensation is a discrete time interval, not a percentage. In the above example, adding 100uS at idle increased the duration 3%. But when the system calls for 20mS base duration, the CO adjustment will still only add 0.1mS -- 1/2%. So not really much of a difference at high air flows.
2. O2 sensor input will negate such universal CO adjustments by adding or subtracting from the base injector duration. Bear in mind that the FJR uses a crude unheated narrowband O2 sensor. It only works when the exhaust gas is hot enough to get the sensor somewhere north of 600°F, which takes rpm and time. (The thing is so unreliable that you can unplug it and not see a trouble code for weeks, because the ECU isn't sure if it should be seeing a voltage from the sensor yet or not. Just ask the Power Commander owners).
But once it starts working, the difference in O2 concentration between the outside air and the inside exhaust gas generates a small voltage. If that voltage is above 0.47V, there is a bigger difference than there should be, therefore oxygen concentration level in the exhaust is low (rich air-fuel ratio) and the ECU reduces base injector duration a touch. The ECU will continue to gradually reduce the base injector duration until the voltage drops below 0.47V.
Conversely, if the voltage is below 0.47V, there is a smaller difference than there should be, therefore oxygen concentration level is high (lean air-fuel ratio) and therefore the ECU will begin to slowly increase base injector duration until the voltage rises above 0.47V.
Note that the system is never stable in closed loop -- the ECU is always adding or subtracting. It recognizes "too much" and "too little" but has no concept of "just right". Like I said: crude.
So as can be seen from the above, Closed loop will override an attempt to richen the mixture via universal CO adjustments, and the effect of such adjustments are miniscule at high RPM anyway.
However, when Ivan disabled the O2 sensor in his flash, he opened the door to making effective adjustments to the mixture via the CO compensation mechanism, with the caveat that effectiveness will diminish with airflow. The trick will be to find the sweet spot that leans out 3,500 rpm enough for efficient cruise, without leaning the idle mixture too much -- and the joker in the deck is that the CO compensation will presumably affect idle mixture more than it will affect 3,500 rpm mixture.