[DOSEMU Logo]
DOSEMU.org

| Home | | Developer Releases | | Stable Releases | | Documentation |

Home
README
Technical README
HOWTO
DANG  - 0.99
EMUfailure
Misc
Next Previous Contents

3. The Init group of Modules

These files are used for initialization and runtime configuration of DOSEMU

3.1 base/init/init.c Information

3.2 Functions in base/init/init.c

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

dosemu_banner

Setup the call stack to draw the dosemu banner

stdio_init

Initialize stdio, open debugging output file if user specified one

time_setting_init

Beats me

timer_interrupt_init

Tells the OS to send us periodic timer messages

hardware_setup

Initialize any leftover hardware.

map_video_bios

Map the video bios into main memory

map_hardware_ram

Initialize the hardware direct-mapped pages

map_custom_bios

Setup the dosemu amazing custom BIOS

bios_mem_setup

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

memory_init

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

device_init

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

low_mem_init

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

version_init

Find version of OS running and set necessary global parms.

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

config.timer is undocumented and probably obsolete

3.4 base/init/config.c Information

3.5 Functions in base/init/config.c

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

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.

config_defaults

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

config_init

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

parse_debugflags

Arguments are:

  • s - string of options.
This part is fairly flexible...you specify the debugging flags you wish with -D string. The string consists of the following characters: + turns the following options on (initial state) - turns the following options off a turns all the options on/off, depending on whether +/- is set 0-9 sets debug levels (0 is off, 9 is most verbose) # where # is a letter from the valid option list (see docs), turns that option off/on depending on the +/- state.

Any option letter can occur in any place. Even meaningless combinations, such as "01-a-1+0vk" will be parsed without error, so be careful. Some options are set by default, some are clear. This is subject to my whim. You can ensure which are set by explicitly specifying.

3.6 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.

3.7 base/init/dev_list.c Information

Description: Manages a list of the available I/O devices. It will automatically call their initialization and termination routines. The current I/O device list includes:

     Fully emulated:      pit, pic, cmos, serial
     Partially emulated:  rtc, keyb, lpt
     Unemulated:          dma, hdisk, floppy, pos

Next Previous Contents
 
The DOSEMU team