3. The Init group of Modules

These files are used for initialization and runtime configuration of DOSEMU

3.1. Functions in base/init/init.c

These are the functions defined in base/init/init.c.

3.1.1. dosemu_banner

Setup the call stack to draw the dosemu banner

3.1.2. stdio_init

Initialize stdio, open debugging output file if user specified one

3.1.4. timer_interrupt_init

Tells the OS to send us periodic timer messages

3.1.5. hardware_setup

Initialize any leftover hardware.

3.1.6. map_video_bios

Map the video bios into main memory

3.1.7. map_hardware_ram

Initialize the hardware direct-mapped pages

3.1.8. map_custom_bios

Setup the dosemu amazing custom BIOS, quietly overwriting anything was copied there before. Do not overwrite graphic fonts!

3.1.9. bios_mem_setup

Set up all memory areas as would be present on a typical i86 during the boot phase.

3.1.10. memory_init

Set up all memory areas as would be present on a typical i86 during the boot phase.

3.1.11. device_init

Calls all initialization routines for devices (keyboard, video, serial, disks, etc.)

3.1.12. low_mem_init

Initializes the lower 1Meg via mmap & sets up the HMA region

3.1.13. version_init

Find version of OS running and set necessary global parms.

3.2. Items for Fixing in base/init/init.c

config.timer is undocumented and probably obsolete

3.3. Functions in base/init/config.c

These are the functions defined in base/init/config.c.

3.3.1. cpu_override

Process user CPU override from the config file ('cpu xxx') or from the command line. Returns the selected CPU identifier or -1 on error. 'config.realcpu' should have already been defined.

3.3.2. config_defaults

Set all values in the `config` structure to their default value. These will be modified by the config parser.

3.3.3. register_config_scrub

register a function Enforce consistency upon the `config` structure after all values have been set to remove silly option combinations

3.3.4. unregister_config_scrub

Complement of register_config_scrub This removes a scrub function.

3.3.5. config_scrub

Enforce consistency upon the `config` structure after all values have been set to remove silly option combinations

3.3.6. config_init

This is called to parse the command-line arguments and config files.

3.4. Remarks in base/init/config.c

For simpler support of X, DOSEMU can be started by a symbolic link called `xdos` which DOSEMU will use to switch into X-mode.