Good news for Oshonsofters, seems I was wrong about Oshonsoft not having the maths. All it needed was a 32 bit word (LONG).
I've now tested the Arduino with I2C and that works too, so I know my hardware works. I've also changed my mind about Arduino, once you get away from the "do it all for you programs" it's a bit of a nightmare. C might be flexible but IMO it makes for a very steep learning curve. At least I can now understand the structure and some of the code in C or Arduino.
Having reviewed several BME280 programs in C, python, Arduino and Bascom, the datasheet is making more sense.
I've also come to the conclusion that I2C is the way to go. Current experiment is to get the ID back from the BME280 using I2C.
So if you are intersted in using the BME 280 with Oshonsoft, watch this space.
Update 24/8
After several experiments with I2c and or SPI, I've now come to the conclusion that Hardware SPI is the way (as Ian Rogers said many posts ago).
I managed to get atmega328p working in Tx mode, only to have some sort of mishap with lost signature. This now happens with all 4 of my M328p so something odd going on. See new post in MicroC AVR.
I switched to PIC16F877A and after some head scratching and reading of both the datasheet (PIC16f886/7 is better) and other ppls code offerings I've got Hardware SPI in Tx mode using Oshonsoft PIC Basic. I'm hoping that Rx will follow today. If the number of views of this thread is any guide, many ppl are interested in hardware SPI so I'll post the code when it's complete.
I'm making progress with the BME280 too, I'll start a new thread when it's complete.