OK, Thanks again to Mr. E, the data and clock pins are still working with the I2C commands - how interesting that the enhanced bit did that....

The DEFINE I2C_SLOW 1 does not seem to make any difference in my test.

icommand var byte 'The command byte to the MCP23016
i2c_addr var byte 'Address of the 23016

I set up the 23016 at address zero this way:
i2c_addr=$20 'Address 0 for the test????
icommand=6 'Access to IODIR0
i2cwrite idata,iclock,i2c_addr,icommand,[$00,$00] 'Sets device as all OUTPUTS
pause 20 'Cause its the thing to do
(No error modifier Mr. E)

Then I try to push the outputs low as I have 10k pullups on the outputs:
i2c_addr=$20
icommand=0
i2cwrite idata,iclock,i2c_addr,icommand,[$00]
pause 20

The result is that all outputs are high, being pulled so by the 10k sip resistor.....

Any thoughts?