add: scheme_set_param(scheme_current_config(), MZCONFIG_ENV, (Scheme_Object *)env);
context: Scheme_Env *scheme_basic_env(){  Scheme_Env *env;  if (scheme_main_thread) {    /* Reset everything: */    scheme_do_close_managed(NULL, skip_certain_things);    scheme_main_thread = NULL;    scheme_reset_finalizations();    scheme_init_stack_check();#ifndef MZ_PRECISE_GC    scheme_init_setjumpup();#endif    scheme_make_thread();    scheme_init_error_escape_proc(NULL);    env = scheme_make_empty_env();    scheme_install_initial_module_set(env);    scheme_init_port_config();    scheme_init_port_fun_config();    scheme_init_error_config();#ifndef NO_SCHEME_EXNS    scheme_init_exn_config();#endif    return env;  }#ifdef UNIX_LIMIT_STACK  {    struct rlimit rl;        getrlimit(RLIMIT_STACK, &rl);    if (rl.rlim_cur > UNIX_LIMIT_STACK) {      rl.rlim_cur = UNIX_LIMIT_STACK;      setrlimit(RLIMIT_STACK, &rl);    }  }#endif#ifdef UNIX_LIMIT_FDSET_SIZE  {    struct rlimit rl;        getrlimit(RLIMIT_NOFILE, &rl);    if (rl.rlim_cur > FD_SETSIZE) {      rl.rlim_cur = FD_SETSIZE;      setrlimit(RLIMIT_NOFILE, &rl);    }  }#endif#ifdef MZ_USE_IRIX_SPROCS  GC_INIT();#endif  scheme_starting_up = 1;#ifndef MZ_PRECISE_GC  scheme_init_setjumpup();#endif#ifdef TIME_STARTUP_PROCESS  printf("#if 0\nbasic @ %ld\n", scheme_get_process_milliseconds());#endif  scheme_init_stack_check();  scheme_init_portable_case();  {    int i, k;#ifndef USE_TAGGED_ALLOCATION    GC_CAN_IGNORE Scheme_Local *all;    all = (Scheme_Local *)scheme_malloc_eternal(sizeof(Scheme_Local) * 2 * MAX_CONST_LOCAL_POS);# ifdef MEMORY_COUNTING_ON    scheme_misc_count += sizeof(Scheme_Local) * 2 * MAX_CONST_LOCAL_POS;# endif    #endif    for (i = 0; i < MAX_CONST_LOCAL_POS; i++) {      for (k = 0; k < 2; k++) {	Scheme_Object *v;	#ifndef USE_TAGGED_ALLOCATION	v = (Scheme_Object *)(all++);#else	v = (Scheme_Object *)scheme_malloc_eternal_tagged(sizeof(Scheme_Local));#endif	v->type = k + scheme_local_type;	SCHEME_LOCAL_POS(v) = i;		scheme_local[i][k] = v;      }    }  }  {    int i, k;#ifndef USE_TAGGED_ALLOCATION    GC_CAN_IGNORE Scheme_Toplevel *all;    all = (Scheme_Toplevel *)scheme_malloc_eternal(sizeof(Scheme_Toplevel) 						   * MAX_CONST_TOPLEVEL_DEPTH 						   * MAX_CONST_TOPLEVEL_POS);# ifdef MEMORY_COUNTING_ON    scheme_misc_count += (sizeof(Scheme_Toplevel) * MAX_CONST_TOPLEVEL_DEPTH * MAX_CONST_TOPLEVEL_POS);# endif#endif    for (i = 0; i < MAX_CONST_TOPLEVEL_DEPTH; i++) {      for (k = 0; k < MAX_CONST_TOPLEVEL_POS; k++) {	Scheme_Toplevel *v;	#ifndef USE_TAGGED_ALLOCATION	v = (all++);#else	v = (Scheme_Toplevel *)scheme_malloc_eternal_tagged(sizeof(Scheme_Toplevel));#endif	v->so.type = scheme_toplevel_type;	v->depth = i;	v->position = k;		toplevels[i][k] = (Scheme_Object *)v;      }    }  }#ifdef MZ_PRECISE_GC  scheme_register_traversers();  register_traversers();  scheme_init_hash_key_procs();#endif  scheme_init_true_false();  REGISTER_SO(toplevels_ht);  REGISTER_SO(locals_ht[0]);  REGISTER_SO(locals_ht[1]);  {    Scheme_Hash_Table *ht;    toplevels_ht = scheme_make_hash_table_equal();    ht = scheme_make_hash_table(SCHEME_hash_ptr);    locals_ht[0] = ht;    ht = scheme_make_hash_table(SCHEME_hash_ptr);    locals_ht[1] = ht;  }#ifdef TIME_STARTUP_PROCESS  printf("pre-process @ %ld\n", scheme_get_process_milliseconds());#endif#ifdef WINDOWS_PROCESSES  /* Must be called before first scheme_make_thread() */  scheme_init_thread_memory();#endif      scheme_make_thread();#ifdef TIME_STARTUP_PROCESS  printf("process @ %ld\n", scheme_get_process_milliseconds());#endif  make_init_env();  env = scheme_make_empty_env();  scheme_require_from_original_env(env, 1); /* Need kernel syntax... */  scheme_set_param(scheme_current_config(), MZCONFIG_ENV, 		   (Scheme_Object *)env);   scheme_init_memtrace(env);  scheme_init_parameterization(env);#ifndef DONT_USE_FOREIGN  scheme_init_foreign(env);#endif  scheme_add_embedded_builtins(env);  scheme_save_initial_module_set(env);  scheme_init_error_escape_proc(NULL);  scheme_starting_up = 0;  scheme_init_getenv();#ifdef TIME_STARTUP_PROCESS  printf("done @ %ld\n#endif\n", scheme_get_process_milliseconds());#endif  return env;}