#
# Build
#
set build_components {
core init
drivers/timer
drivers/audio
drivers/framebuffer drivers/input
app/dosbox
}
source ${genode_dir}/repos/base/run/platform_drv.inc
# override default platform driver policy
proc platform_drv_policy {} {
return {
}
}
append_platform_drv_build_components
build $build_components
create_boot_directory
#
# Generate config
#
append config {
}
append_if [have_spec sdl] config {
}
append_platform_drv_config
append_if [have_spec vesa] config {
}
append_if [have_spec pl11x] config {
}
append_if [have_spec ps2] config {
}
append config {
}
install_config $config
if {![file exists bin/dosbox.tar]} {
puts ""
puts "You need to provide 'bin/dosbox.tar' that contains the DOS game you want to"
puts "play. Mount the directory from within DosBox by entering 'mount C:
',"
puts "change CWD to C: and play the game!"
puts ""
exit 1
}
#
# Boot modules
#
# generic modules
append boot_modules {
core init timer } [audio_drv_binary] {
ld.lib.so
libc.lib.so
libm.lib.so lwip.lib.so libpng.lib.so
stdcxx.lib.so sdl.lib.so sdl_net.lib.so pthread.lib.so zlib.lib.so
dosbox dosbox.tar
}
# platform-specific modules
lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec vesa] boot_modules fb_drv
lappend_if [have_spec ps2] boot_modules ps2_drv
lappend_if [have_spec pl11x] boot_modules fb_drv
append_platform_drv_boot_modules
build_boot_image $boot_modules
append qemu_args " -m 256 -soundhw es1370 "
run_genode_until forever