Right, and thanks for your input Jim. I assumed my assumption was incorrect, since it does behave like a normal read. Would have thought I would have stumbled on that before now. Anyway, I can't find the "Debug memory map" dialog anywhere and the only thing I do see about memory access while debugging is a setting for the period of memory display updates (under the "Memory:Mode

eriodical" item). I'll just insure that I'm not displaying memory in the register space from here on.
The 1st link you supplied doesn't refer to the QG8, and the 2nd one does but utilizes interrupts to perform the I/O. An interrupt driven IIC transfer doesn't experience the problem I was having since the IICIF flag is reset in the IRQ routine. If one relies solely on the TCF flag in a non-interrupt driven I/O, you'll fail unless you also clear the IICIF bit... even though interrupts are not enabled. This is not true for a GT32A, even though the data sheet for both a 32 and a QG8 are almost word for word in the IIC chapter. I'm using the same code in a 32A and the only difference is to reset the IICIF in the QG8 to make it work. In my QG8 I'm using interrupts for the IIC I/O most of the time and they work just dandy, but I started having problems when I needed to read the EEPROM chip in some code loaded into low RAM, without interrupts. (My code is reprogramming the flash from data read from the EEPROM chip.)
I still believe that the QG8 has a bug in its IIC functions, specifically the characteristics of the TCF bit. At least now I know that BDM reads aren't invisible. Got to remember that.
And by the way, I couldn't tell you if that code looked ok. I have lotsa rust all over my c. I can barely read it. What I do I do in assembly.