612 lines
19 KiB
Plaintext
612 lines
19 KiB
Plaintext
##############################################################################
|
|
# WARNING: THIS FILE IS NOT USED BY DEFAULT. ADJUST dosemu.users OR USE -F.
|
|
#
|
|
# This file is global.conf. By default a compiled-in copy is used. If you
|
|
# make custom changes to the settings in this file, then you need to use
|
|
# the -F switch or change dosemu.users; the custom file is then parsed
|
|
# after the built-in copy.
|
|
#
|
|
# Linux dosemu configuration for parser versions >= 3 (dosemu-0.97.0.1)
|
|
#
|
|
# ./doc/README-tech.txt (chapter 2.) contains a description of the syntax
|
|
# and the usage. However, you normally won't edit this file !!
|
|
#
|
|
# NOTES:
|
|
#
|
|
# 1. The file dosemu.conf (and optionally ~/.dosemurc) contains variable
|
|
# settings, that are included by global.conf for doing the
|
|
# most reasonable configuration.
|
|
# The file dosemu.conf (and optionally ~/.dosemurc) is what gets
|
|
# updated by the menu driven 'setup-dosemu' tool.
|
|
#
|
|
# 2. We strongly recommend you to edit ONLY dosemu.conf.
|
|
# If you change global.conf, you are at your own and could break
|
|
# 'setup-dosemu'. You really need to know a lot of DOSEMU
|
|
# internals before you fiddle with editing global.conf.
|
|
# However, some very special cases can only be handled in global.conf.
|
|
#
|
|
# 3. The file global.conf (this one) is either
|
|
# - the one compiled into dosemu.bin.
|
|
# - specified by the config_script option in dosemu.users ("builtin"
|
|
# by default)
|
|
# - or given via the -F option (from root login, else only on
|
|
# non-suid-root DOSEMU)
|
|
#
|
|
# 4. The only compiled-in path is /etc/dosemu.users (or if not found
|
|
# /etc/dosemu/dosemu.users), however, this can be overridden by
|
|
# --Fusers, if not running suid-root. All other paths are configurable
|
|
# and the dosemu binaries can reside everywhere in the system.
|
|
#
|
|
# This file (global.conf) may also serve as an example file for
|
|
# .dosrc ( old style user configuration file )
|
|
# option -I ( configuration via commandline, see man/dos.1 )
|
|
#
|
|
# Access rights for suid-root running DOSEMU sessions are defined in
|
|
#
|
|
# /etc/dosemu.users or /etc/dosemu/dosemu.users
|
|
#
|
|
##############################################################################
|
|
|
|
ifdef u_forceold
|
|
undef parser_version_3
|
|
define version_3_style_used
|
|
endif
|
|
|
|
ifndef parser_version_3
|
|
# normally won't come here, because older DOSEMUs don't use this file
|
|
# ... but if using -F option ...
|
|
include "/etc/dosemu.conf"
|
|
else
|
|
# we are on version 3 parser
|
|
|
|
## we set some vital variable
|
|
|
|
if (!strlen($DOSEMU_LIB_DIR))
|
|
abort "DOSEMU_LIB_DIR not set";
|
|
endif
|
|
if (!strlen($DOSEMU_IMAGE_DIR))
|
|
$DOSEMU_IMAGE_DIR = $DOSEMU_LIB_DIR;
|
|
endif
|
|
# make sure we have absolute paths
|
|
shell("test -d ", $DOSEMU_IMAGE_DIR)
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
abort "DOSEMU_IMAGE_DIR does not exist ", $DOSEMU_IMAGE_DIR;
|
|
endif
|
|
$DOSEMU_IMAGE_DIR = shell("cd ", $DOSEMU_IMAGE_DIR, "; pwd -P");
|
|
$DOSEMU_IMAGE_DIR = strdel($DOSEMU_IMAGE_DIR, strlen($DOSEMU_IMAGE_DIR)-1, 1);
|
|
shell("test -d ", $DOSEMU_LIB_DIR)
|
|
if (!$DOSEMU_SHELL_RETURN)
|
|
$DOSEMU_LIB_DIR = shell("cd ", $DOSEMU_LIB_DIR, "; pwd -P");
|
|
$DOSEMU_LIB_DIR = strdel($DOSEMU_LIB_DIR, strlen($DOSEMU_LIB_DIR)-1, 1);
|
|
endif
|
|
|
|
$CONFIG_VERSION = ( (1 << 24) | (1 << 16) | (4 << 8) | 0)
|
|
# ^ ^ ^ ^
|
|
if ( $DOSEMU_VERSION_CODE < $CONFIG_VERSION )
|
|
abort "
|
|
*** sorry, your ", $DOSEMU_LIB_DIR, "/global.conf doesn't match this dosemu version
|
|
"
|
|
endif
|
|
|
|
$LIST_DELIM = " , " #delimiters for lists <tab>, blank, comma
|
|
|
|
# for non-suid-root we can switch off restricted checking.
|
|
if (strlen($DOSEMU_LAX_CHECKING))
|
|
undef restricted
|
|
undef guest
|
|
endif
|
|
|
|
if (strlen($_mapping)) $xxx = $_mapping else $xxx = "auto" endif
|
|
mappingdriver $xxx;
|
|
|
|
if (strlen($_debug))
|
|
debug $_debug ;
|
|
else
|
|
debug { off }
|
|
endif
|
|
if (strlen($_trace_ports)) trace ports { $$_trace_ports } endif
|
|
if (strlen($_trace_mmio)) trace_mmio { $$_trace_mmio } endif
|
|
|
|
cpuspeed $_cpuspeed
|
|
rdtsc $_rdtsc
|
|
|
|
timer 0
|
|
mathco $_mathco
|
|
$xxx = "cpu ", $_cpu;
|
|
$$xxx
|
|
cpuemu $$_cpuemu
|
|
$xxx = "cpu_vm ", $_cpu_vm;
|
|
$$xxx
|
|
$xxx = "cpu_vm_dpmi ", $_cpu_vm_dpmi;
|
|
$$xxx
|
|
if ($_ems)
|
|
ems {
|
|
ems_size $_ems
|
|
ems_frame $_ems_frame
|
|
ems_uma_pages $_ems_uma_pages
|
|
ems_conv_pages $_ems_conv_pages
|
|
}
|
|
else
|
|
ems off
|
|
endif
|
|
umb_a0 $_umb_a0
|
|
umb_b0 $_umb_b0
|
|
umb_f0 $_umb_f0
|
|
dpmi $_dpmi
|
|
dpmi_lin_rsv_base $_dpmi_lin_rsv_base
|
|
dpmi_lin_rsv_size $_dpmi_lin_rsv_size
|
|
pm_dos_api 1
|
|
ignore_djgpp_null_derefs $_ignore_djgpp_null_derefs
|
|
dosmem $_dosmem
|
|
if ($_ext_mem)
|
|
ext_mem $_ext_mem
|
|
else
|
|
ext_mem $_xms
|
|
endif
|
|
|
|
if ($_emusys ne "") emusys $_emusys endif
|
|
|
|
## terminal stuff, we check a lot to insure proper operation
|
|
|
|
terminal { color $_term_color escchar $_escchar size $_fixed_term_size }
|
|
xterm_title $_xterm_title
|
|
video { vga }
|
|
if ($_external_char_set ne "")
|
|
charset { external $$_external_char_set }
|
|
endif
|
|
if ($_internal_char_set ne "")
|
|
charset { internal $$_internal_char_set }
|
|
endif
|
|
|
|
## X param settings
|
|
$xxx = ""
|
|
if ($_X_sharecmap) $xxx = $xxx, " sharecmap" endif
|
|
if ($_X_aspect_43) $xxx = $xxx, " aspect_43" endif
|
|
if ($_X_lin_filt) $xxx = $xxx, " lin_filt" endif
|
|
if ($_X_bilin_filt) $xxx = $xxx, " bilin_filt" endif
|
|
$xxx = $xxx, " mode13fact ", $_X_mode13fact
|
|
$xxx = $xxx, " gamma ", (int($_X_gamma * 100))
|
|
$xxx = $xxx, " font '", $_X_font, "'"
|
|
if (strlen($_X_winsize))
|
|
$yyy = (strstr($_X_winsize,","))
|
|
$yyy = " winsize (", strdel($_X_winsize,$yyy,999), ") , (",
|
|
strsplit($_X_winsize,$yyy+1,999), ")"
|
|
$xxx = $xxx, $yyy
|
|
endif
|
|
|
|
if (strlen($_X_vesamode))
|
|
foreach $yyy (" ", $_X_vesamode)
|
|
$zzz = (strchr($yyy,","))
|
|
$xxx = $xxx, " vesamode (", strdel($yyy,$zzz,999), "),(",
|
|
strsplit($yyy,$zzz+1,999), ") "
|
|
done
|
|
endif
|
|
$xxx = $xxx, ' mgrab_key "', $_X_mgrab_key, '"'
|
|
X {
|
|
title $_X_title title_show_appname $_X_title_show_appname
|
|
icon_name $_X_icon_name
|
|
blinkrate $_X_blinkrate
|
|
fixed_aspect $_X_fixed_aspect vgaemu_memsize $_X_vgaemu_memsize
|
|
lfb $_X_lfb pm_interface $_X_pm_interface mitshm $_X_mitshm
|
|
background_pause $_X_background_pause fullscreen $_X_fullscreen
|
|
$$xxx
|
|
}
|
|
|
|
## SDL settings
|
|
SDL { sdl_hwrend $_SDL_hwrend sdl_fonts $_SDL_fonts }
|
|
|
|
# video settings
|
|
vga_fonts $$_force_vga_fonts
|
|
if ($DOSEMU_STDIN_IS_CONSOLE eq "1")
|
|
warn "dosemu running on console"
|
|
$xxx = $_video
|
|
if ($_console) $xxx = $xxx, " console"
|
|
if ($_console == auto) $xxx = $xxx, " auto" endif
|
|
endif
|
|
if ($_graphics) $xxx = $xxx, " graphics"
|
|
if ($_graphics == auto) $xxx = $xxx, " auto" endif
|
|
endif
|
|
$xxx = $xxx, " vbios_seg ", $_vbios_seg, " vbios_size ",
|
|
$_vbios_size, " memsize ", $_vmemsize
|
|
if (strlen($_chipset)) $yyy = $_chipset else $yyy = "plainvga" endif
|
|
$xxx = $xxx, " chipset ", $yyy
|
|
if ($_vbios_post) $xxx = $xxx, " vbios_post " endif
|
|
if ($_dualmon) $xxx = $xxx, " dualmon" endif
|
|
if (strlen($_vbios_file)) $xxx = $xxx, " vgaemubios_file ", $_vbios_file endif
|
|
video { $$xxx }
|
|
else
|
|
warn "dosemu not running on console"
|
|
$xxx = $_video
|
|
if (strlen($_vbios_file)) $xxx = $xxx, " vgaemubios_file ", $_vbios_file endif
|
|
if ($_dualmon) $xxx = $xxx, " dualmon " endif
|
|
if (strlen($xxx)) video { $$xxx } endif
|
|
endif
|
|
|
|
## sound settings
|
|
sound $_sound
|
|
if ($_sound)
|
|
sound_emu { sb_base $_sb_base
|
|
sb_irq $_sb_irq
|
|
sb_dma $_sb_dma
|
|
sb_hdma $_sb_hdma
|
|
mpu_base $_mpu_base
|
|
midi_synth $_midi_synth
|
|
mpu_irq $_mpu_irq
|
|
mpu_irq_mt32 $_mpu_irq_mt32
|
|
sound_driver $_sound_driver
|
|
midi_driver $_midi_driver
|
|
munt_roms $_munt_roms
|
|
opl2lpt_dev $_opl2lpt_dev
|
|
opl2lpt_type $_opl2lpt_type
|
|
snd_plugin_params $_snd_plugin_params
|
|
pcm_hpf $_pcm_hpf
|
|
midi_file $_midi_file
|
|
wav_file $_wav_file
|
|
}
|
|
endif
|
|
|
|
## joystick settings
|
|
joystick_emu { joy_device $_joy_device joy_dos_min $_joy_dos_min
|
|
joy_dos_max $_joy_dos_max joy_granularity $_joy_granularity
|
|
joy_latency $_joy_latency }
|
|
|
|
## hacks
|
|
cli_timeout $_cli_timeout
|
|
timemode $_timemode
|
|
|
|
file_lock_limit $$_file_lock_limit
|
|
lfn_support $_lfn_support
|
|
force_int_revect $_force_int_revect
|
|
set_int_hooks $_set_int_hooks
|
|
trace_irets $_trace_irets
|
|
force_fs_redirect $_force_fs_redirect
|
|
|
|
## serial
|
|
$xxx = "'", $_ttylocks, "'"
|
|
ttylocks { directory $$xxx namestub LCK.. }
|
|
if (1) # no idea why but we need this...
|
|
foreach $xxx (" ", "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16")
|
|
$yyy = "com", $xxx
|
|
$zzz = "$_com", $xxx
|
|
$zzz = $$zzz
|
|
if (strlen($zzz))
|
|
if ($zzz eq "virtual")
|
|
serial { com $xxx virtual }
|
|
else if ($zzz eq "mouse")
|
|
serial { com $xxx mouse }
|
|
else if ($zzz eq "vmodem")
|
|
serial { com $xxx vmodem }
|
|
else
|
|
serial { com $xxx device $$zzz }
|
|
endif endif
|
|
endif
|
|
done
|
|
endif
|
|
|
|
## mouse settings
|
|
if ($_mouse_internal)
|
|
$xxx = ""
|
|
if ($_mouse_baud)
|
|
$xxx = "baudrate ", $_mouse_baud
|
|
endif
|
|
$xxx = $xxx, " device '", $_mouse_dev, "'"
|
|
mouse { $$_mouse $$_mouse_flags $$xxx internaldriver }
|
|
else
|
|
$xxx = "'", $_mouse_dev, "'"
|
|
mouse { $$_mouse device $$xxx }
|
|
endif
|
|
|
|
hogthreshold $_hogthreshold
|
|
|
|
## keyboard setting
|
|
if ($DOSEMU_STDIN_IS_CONSOLE ne "1") $_rawkeyboard = (off) endif
|
|
if ( strstr($_layout, "load") <0 )
|
|
# we use the builtin keytables
|
|
if (strlen($_layout)) $yyy = $_layout else $yyy = "us" endif
|
|
keyboard { layout $yyy rawkeyboard $_rawkeyboard }
|
|
else
|
|
# we have to load a keytable
|
|
$yyy = ""
|
|
if (1) # no idea why (see com as well) but we need this...
|
|
foreach $zzz ($LIST_DELIM, $_layout)
|
|
if ($zzz ne "load")
|
|
$yyy = $zzz
|
|
endif
|
|
done
|
|
endif
|
|
if (!strlen($yyy))
|
|
abort "no keytable name in $_layout"
|
|
endif
|
|
shell("test -f ", $DOSEMU_LIB_DIR, "/keymap/", $yyy)
|
|
if ( $DOSEMU_SHELL_RETURN)
|
|
abort "keytable ",$yyy, " not found in ", $DOSEMU_LIB_DIR, "/keymap/*"
|
|
endif
|
|
$_layout = 'include "keymap/', $yyy, '"' ;
|
|
$$_layout
|
|
keyboard { rawkeyboard $_rawkeyboard }
|
|
endif
|
|
|
|
bootdrive $_bootdrive
|
|
swap_bootdrive $_swap_bootdrive
|
|
|
|
if (strlen($_floppy_a))
|
|
$fpath = strsplit($_floppy_a, 0, strstr($_floppy_a, ":"))
|
|
if (strlen($fpath))
|
|
$ftype = strsplit($_floppy_a, strstr($_floppy_a, ":")+1, 999)
|
|
else
|
|
$fpath = $_floppy_a
|
|
$ftype = ""
|
|
endif
|
|
|
|
$zzz = $fpath
|
|
if (strlen($zzz))
|
|
if (strchr($zzz, "/") != 0)
|
|
$izzz = $DOSEMU_IMAGE_DIR, "/", $zzz
|
|
$xxx = shell("test -r ", $izzz);
|
|
if (!$DOSEMU_SHELL_RETURN)
|
|
$zzz = $izzz
|
|
endif
|
|
endif
|
|
$xxx = shell("test -r ", $zzz);
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
warn "**** Warning: floppy ", $zzz, " not accessible, disabled";
|
|
else
|
|
shell("test -d '", $zzz, "'")
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
floppy { device $$zzz $$ftype }
|
|
else
|
|
floppy { directory $$zzz $$ftype }
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
if (strlen($_floppy_b))
|
|
$fpath = strsplit($_floppy_b, 0, strstr($_floppy_b, ":"))
|
|
if (strlen($fpath))
|
|
$ftype = strsplit($_floppy_b, strstr($_floppy_b, ":")+1, 999)
|
|
else
|
|
$fpath = $_floppy_b
|
|
$ftype = ""
|
|
endif
|
|
|
|
$zzz = $fpath
|
|
if (strlen($zzz))
|
|
if (strchr($zzz, "/") != 0)
|
|
$izzz = $DOSEMU_IMAGE_DIR, "/", $zzz
|
|
$xxx = shell("test -r ", $izzz);
|
|
if (!$DOSEMU_SHELL_RETURN)
|
|
$zzz = $izzz
|
|
endif
|
|
endif
|
|
$xxx = shell("test -r ", $zzz);
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
warn "**** Warning: floppy ", $zzz, " not accessible, disabled";
|
|
else
|
|
shell("test -d '", $zzz, "'")
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
floppy { device $$zzz $$ftype }
|
|
else
|
|
floppy { directory $$zzz $$ftype }
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
fastfloppy 1
|
|
|
|
## setting up hdimages
|
|
$xxx = shell("ls ", $DOSEMU_IMAGE_DIR, "/drives/*.lnk 2>/dev/null")
|
|
if (strlen($xxx))
|
|
error "Compatibility warning: found deprecated setup of dosemu2 pre-alpha version."
|
|
error " If you do not intend to run such old dosemu2 versions "
|
|
error " (dosemu1 is fine), please do:"
|
|
error " rm ~/.dosemu/drives/*.lnk"
|
|
error " You may also do"
|
|
error " rm -rf ~/.dosemu/drives"
|
|
error " if you dont intend to run dosemu1."
|
|
endif
|
|
if (strlen($_hdimage))
|
|
foreach $xxxx ($LIST_DELIM, $_hdimage)
|
|
$xxx_pref = ""
|
|
$xxx_suff = ""
|
|
if (strchr($xxxx, "*") != -1)
|
|
$xxx_pref = strdel($xxxx, strchr($xxxx, "*"), 999);
|
|
$xxx_suff = strsplit($xxxx, strchr($xxxx, "*") + 1, 999);
|
|
if (strchr($xxx_pref, "/") == 0)
|
|
$xxxx = shell("cd '", $xxx_pref, "' 2>/dev/null && echo -n *")
|
|
else
|
|
$xxxx = shell("cd '", $DOSEMU_IMAGE_DIR, "/", $xxx_pref, "' 2>/dev/null && echo -n *")
|
|
endif
|
|
if ($DOSEMU_SHELL_RETURN)
|
|
abort "**** directory ", $xxx_pref, " not accessible";
|
|
endif
|
|
endif
|
|
if (strchr($xxxx, "+") == 0)
|
|
default_drives strtol(strdel($xxxx, 0, 1))
|
|
else if (strchr($xxxx, "-") == 0)
|
|
skip_drives strtol(strdel($xxxx, 0, 1))
|
|
else if (strlen($xxxx))
|
|
foreach $xxx ($LIST_DELIM, $xxxx)
|
|
$xxx = $xxx_pref, $xxx, $xxx_suff
|
|
if (!strncmp($xxx, "/dev/", 4))
|
|
$yyy = strdel($xxx, strstr($xxx, ":ro"), 999);
|
|
$zzz = strsplit($xxx, strstr($xxx, ":ro"), 999);
|
|
if (strtol(strdel($xxx,0,8)) > 0)
|
|
$yyy = "disk { partition ", $yyy;
|
|
else
|
|
$yyy = "disk { wholedisk ", $yyy;
|
|
endif
|
|
if (strlen($zzz))
|
|
$yyy = $yyy, " readonly"
|
|
endif
|
|
$yyy = $yyy, " }";
|
|
$$yyy;
|
|
else
|
|
$yyy3 = strdel($xxx, strstr($xxx, ":ro"), 999);
|
|
$yyy2 = strdel($yyy3, strstr($xxx, ":hdtype1"), 999);
|
|
$yyy1 = strdel($yyy2, strstr($xxx, ":hdtype2"), 999);
|
|
$yyy = strdel($yyy1, strstr($xxx, ":hdtype9"), 999);
|
|
$zzz = strsplit($xxx, strstr($xxx, ":ro"), 999);
|
|
$uuu = strsplit($xxx, strstr($xxx, ":hdtype1"), 999);
|
|
$vvv = strsplit($xxx, strstr($xxx, ":hdtype2"), 999);
|
|
$www = strsplit($xxx, strstr($xxx, ":hdtype9"), 999);
|
|
if (strchr($yyy, "/") != 0)
|
|
$yyyy = $DOSEMU_IMAGE_DIR, "/", $yyy
|
|
$yyy = $yyyy
|
|
endif
|
|
shell("test -d '", $yyy, "'")
|
|
if (!$DOSEMU_SHELL_RETURN)
|
|
if (strlen($zzz))
|
|
disk { directory $yyy readonly };
|
|
else if (strlen($uuu))
|
|
disk { directory $yyy hdtype1 };
|
|
else if (strlen($vvv))
|
|
disk { directory $yyy hdtype2 };
|
|
else if (strlen($www))
|
|
disk { directory $yyy hdtype9 };
|
|
else
|
|
disk { directory $yyy };
|
|
endif endif endif endif
|
|
else
|
|
shell("test -f '", $yyy, "'")
|
|
if (!$DOSEMU_SHELL_RETURN)
|
|
if (strlen($zzz))
|
|
disk { image $yyy readonly };
|
|
else if (strlen($uuu))
|
|
disk { image $yyy hdtype1 };
|
|
else if (strlen($vvv))
|
|
disk { image $yyy hdtype2 };
|
|
else if (strlen($www))
|
|
disk { image $yyy hdtype9 };
|
|
else
|
|
disk { image $yyy };
|
|
endif endif endif endif
|
|
else
|
|
abort "hdimage ", $yyy, " not found"
|
|
endif
|
|
endif
|
|
endif
|
|
done
|
|
endif endif endif
|
|
done
|
|
endif
|
|
|
|
## setting up CDROM devices
|
|
if (strlen($_cdrom))
|
|
foreach $xxx ($LIST_DELIM, $_cdrom)
|
|
cdrom { $xxx }
|
|
done
|
|
endif
|
|
|
|
## setting up ASPI devices
|
|
ifndef restricted
|
|
if (strlen($_aspi))
|
|
foreach $xxx ($LIST_DELIM, $_aspi)
|
|
$zz = (1);
|
|
$yy2 = ""; $yy3 = (-1);
|
|
if(strlen($xxx))
|
|
foreach $yyy (":", $xxx)
|
|
$zzz = "$yy", $zz, " = $yyy";
|
|
$zz = ($zz + 1);
|
|
$$zzz
|
|
done;
|
|
endif;
|
|
aspi { $yy1 devicetype $yy2 target $yy3 };
|
|
done
|
|
endif
|
|
endif
|
|
|
|
ipxsupport $_ipxsupport
|
|
ipx_network $_ipx_network
|
|
novell_hack $_novell_hack
|
|
if (1) # no idea why but we need this...
|
|
foreach $xxx (" ", "1 2 3 4 5 6 7 8 9")
|
|
$zzz = "$_lpt", $xxx
|
|
$zzz = $$zzz
|
|
if ((strstr($zzz, "direct") != -1) && (strchr($zzz, ' ') != -1))
|
|
$zzz = strdel($zzz, 0, strchr($zzz, ' ') + 1)
|
|
printer { lpt $xxx file $zzz timeout $_printer_timeout }
|
|
else if (strlen($zzz))
|
|
$zzz = "'", $zzz, "'"
|
|
printer { lpt $xxx command $$zzz timeout $_printer_timeout }
|
|
endif
|
|
done
|
|
endif
|
|
|
|
if (strlen($_speaker))
|
|
$xxx = "speaker ", $_speaker;
|
|
$$xxx
|
|
else
|
|
speaker off
|
|
endif
|
|
ifdef restricted
|
|
## /etc/dosemu.users defined 'restricted' for this login
|
|
define c_normal
|
|
undef c_all
|
|
if ($_vnet eq "vde" || !$_pktdriver)
|
|
vdeswitch $_vdeswitch
|
|
slirpargs $_slirpargs
|
|
vnet $_vnet
|
|
pktdriver $_pktdriver
|
|
endif
|
|
if ($_pci)
|
|
pci auto
|
|
endif
|
|
else
|
|
# here are the root requiring options
|
|
if (strlen($_irqpassing))
|
|
$yyy = "irqpassing { "
|
|
if (strlen($_irqpassing))
|
|
foreach $xxx (" ", $_irqpassing)
|
|
$yyy = $yyy, "use_sigio ", $xxx
|
|
done
|
|
endif
|
|
$yyy = $yyy, " }";
|
|
$$yyy
|
|
else
|
|
irqpassing off
|
|
endif
|
|
if (strlen($_hardware_ram))
|
|
hardware_ram { $$_hardware_ram }
|
|
endif
|
|
ethdev $_ethdev
|
|
tapdev $_tapdev
|
|
vdeswitch $_vdeswitch
|
|
slirpargs $_slirpargs
|
|
vnet $_vnet
|
|
pktdriver $_pktdriver
|
|
ne2k $_ne2k
|
|
if (strlen($_ports)) ports { $$_ports } endif
|
|
pci $_pci
|
|
endif
|
|
|
|
if (strlen($_unix_exec))
|
|
unix_exec $_unix_exec
|
|
endif
|
|
if (strlen($_lredir_paths))
|
|
lredir_paths $_lredir_paths
|
|
endif
|
|
if (strlen($_hostfs_drives))
|
|
hostfs_drives $_hostfs_drives
|
|
endif
|
|
|
|
## setting up the features list
|
|
if ( ( ($DOSEMU_VERSION_CODE >= ((98 << 16) | (3 << 8) | 3))
|
|
&& ($DOSEMU_VERSION_CODE < (99 << 16)) )
|
|
|| ($DOSEMU_VERSION_CODE > ((99 << 16) | (5 << 8))) )
|
|
if (strlen($_features))
|
|
foreach $xxx ($LIST_DELIM, $_features)
|
|
$yyy = strdel($xxx, strstr($xxx, ":"), 999);
|
|
$zzz = strsplit($xxx, strstr($xxx, ":"), 999);
|
|
if (strlen($zzz))
|
|
$zzz = strsplit($zzz, 1, 999);
|
|
else
|
|
$zzz = (0);
|
|
endif
|
|
feature { $yyy = $zzz };
|
|
done
|
|
endif
|
|
endif
|
|
|
|
endif
|
|
#############################################################################
|