Hi John,
It's closer than PowerBasic, but there are still quite a few syntax differences. For instance, Freebasic uses the term 'Property' to define methods to get and set variables withing an object. In OxygenBasic, this distinction is unnecessary, since it is possible to 'pseudo-assign' with any method/function
But O2 can read low-level COM headers almost directly from C++ notation.