These flags and hooks are available when MzScheme is embedded:
scheme_make_stdin, scheme_make_stdout, scheme_make_stderr, -- These pointers can be set to a function that takes no arguments and returns a Scheme port Scheme_Object * to be used as the starting standard input, output, and/or error port. The defaults are NULL. Setting the initial error port is particularly important for seeing unexpected error messages if stderr output goes nowhere.
scheme_console_output -- This pointer can be set to a function that takes a string and a long string length; the function will be called to display internal MzScheme warnings and messages that possibly contain non-terminating nuls. The default is
scheme_check_for_break -- This points to a function of no arguments that returns an integer. It is used as the default user-break polling procedure in the main thread. A non-zero return value indicates a user break, and each time the function returns a non-zero value, it counts as a new break signal (though the break signal may be ignored if a previous signal is still pending). The default is NULL.
scheme_case_sensitive -- If this flag is set to a non-zero value before scheme_basic_env is called, then MzScheme will not ignore capitalization for symbols and global variable names. The value of this flag should not change once it is set. The default is zero.