  '12:43 18/03/2017
  '23:23 29/07/2022


  'ABST
  '====
  'compile source code string and return intermediate code string
  ! o2_abst( string s ) as string


  'BASIC
  '=====
  'compile source code string to binary code, and return pointer
  ! o2_basic( string s ) as sys


  'BUF
  '===
  'select current binary code buffer and return pointer
  ! o2_buf( int n ) as sys


  'ERRNO
  '=====
  'return error number, if any
  ! o2_errno() as int


  'ERROR
  '=====
  'return compiling error string, if any
  ! o2_error() as string


  'EXEC
  '====
  'execute inary code in current buffer (or from location specified by pointer
  ! o2_exec( sys p=0 )  as sys


  'LEN
  '===
  'return length of code in current binary code buffer
  ! o2_len() as int


  'LIB
  '===
  'return base location of o2 runtime function table
  ! o2_lib() as sys


  'LINK
  '====
  'compile o2 machine script to binary and return pointer
  ! o2_link( string src ) as sys

	
  'STATS
  '=====
  'return set of compilation metrics
  ! o2_stats() as string


  'MODE
  '====
  'specify string mode for various o2 API functions
  '0 ascii char*
  '1 ascii char*
  '2 unicode wchar*
  '8 ole bstring ascii
  '9 ole bstring ascii
  '10 ole bstring unicode
  '16 returns current mode (affected by UTF-16)
  ! o2_mode( int m=16 ) as int


  'PATHCALL
  'set callback to obtain hosted oxygenBasic path string
  ! o2_pathcall( sys m )


  'PREP
  '====
  'compile source code string and return assembly code string
  ! o2_prep( string s ) as string


  'VARCALL
  '=======
  'set callback to obtain host variable location, by name
  ! o2_varcall( sys m )


  'VERSION
  '=======
  'return version string, include time/datestamp
  ! o2_version() as string


  'VIEW
  '====
  'compile source code string and return o2 machine script string
  ! o2_view( string s ) as string



  o2_mode 9 'for oxygenBasic ascii strings
