DosBox:Commander Keen 4

From wiki.gp2x.org

Download Game See DosBox for installation instructions

Contents

Status

Too slow with sound, or even more with music to be playable. But playable for some levels in mute As you advance in the game, each time takes longer to load the next level.

The best option would be to make a complete port of this awesome game. The good code for a start would not be that difficult, a couple of hard day nights, however, the extraction of the music, graphics and sounds of the game will be a very tedious work!

So far, I leave you here a good mapper configuration file.

Controls

Special

dosbox.conf

[sdl]
# fulldouble -- Use double buffering.
# output -- Can only be Surface for the gp2x.
# sensitivity -- Mouse sensitivity.
# mapperfile -- File used to load/save the key/event mappings from.

fulldouble=false
output=surface
sensitivity=100
mapperfile=mapper.txt

[dosbox]

# machine -- The type of machine tries to emulate:hercules,cga,tandy,pcjr,vga.
# memsize -- Amount of memory dosbox has in megabytes.

machine=vga
memsize=2

[cpu]
# core -- CPU Core used in emulation: simple,normal,full,dynamic.
#             Try simple first as this is the fastest, then normal and last full
# cycles -- Amount of instructions dosbox tries to emulate each millisecond.
#             Too low and the game will crash randomly
#            Too high and expect slowness
# cycleup   -- Amount of cycles to increase/decrease with keycombo.
# cycledown    Setting it lower than 100 will be a percentage.

core=simple
cycles=500

[mixer]
# nosound -- Enable silent mode, sound is still emulated though.
# rate -- Mixer sample rate, setting any devices higher than this will
#         probably lower their sound quality.
# blocksize -- Mixer block size, larger blocks might help sound stuttering
#              but sound will also be more lagged.
# prebuffer -- How many milliseconds of data to keep on top of the blocksize.

nosound=false
rate=22050
blocksize=4096
prebuffer=500

[sblaster]
# sbtype -- Type of sblaster to emulate:none,sb1,sb2,sbpro1,sbpro2,sb16.
# sbbase,irq,dma,hdma -- The IO/IRQ/DMA/High DMA address of the soundblaster.
# mixer -- Allow the soundblaster mixer to modify the dosbox mixer.
# oplmode -- Type of OPL emulation: auto,cms,opl2,dualopl2,opl3.
#            On auto the mode is determined by sblaster type.
#            All OPL modes are 'Adlib', except for CMS.
# oplrate -- Sample rate of OPL music emulation.

sbtype=none
sbbase=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
oplrate=22050

[gus]
# gus -- Enable the Gravis Ultrasound emulation.
# gusbase,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the
#            Gravis Ultrasound. (Same IRQ's and DMA's are OK.)
# gusrate -- Sample rate of Ultrasound emulation.
# ultradir -- Path to Ultrasound directory.  In this directory
#             there should be a MIDI directory that contains
#             the patch files for GUS playback.  Patch sets used
#             with Timidity should work fine.

gus=false
gusrate=22050
gusbase=240
irq1=5
irq2=5
dma1=3
dma2=3
ultradir=C:\ULTRASND

[speaker]
# pcspeaker -- Enable PC-Speaker emulation.
# pcrate -- Sample rate of the PC-Speaker sound generation.
# tandy -- Enable Tandy Sound System emulation (off,on,auto).
#          For auto Tandysound emulation is present only if machine is set to tandy.
# tandyrate -- Sample rate of the Tandy 3-Voice generation.
# disney -- Enable Disney Sound Source emulation.

pcspeaker=true
pcrate=22050
tandy=auto
tandyrate=22050
disney=true

[dos]
# xms -- Enable XMS support.
# ems -- Enable EMS support.
# umb -- Enable UMB support (false,true,max).

xms=true
ems=true
umb=true

[autoexec]
mount C "/mnt/sd/dosbox/8088_cor"
c:
KEEN4E.EXE

mapper.txt

hand_decfskip "key 107"   (increase frameskip with Left shoulder)
hand_incfskip "key 108"   (decrease frameskip with right shoulder)
hand_cycledown "key 114"  (decrease cycles emulated per second with volume -)
hand_cycleup "key 113"    (increase cycles emulated per second with volume +)
key_esc "key 106"         (Esc = Select) 
key_lctrl "key 109"       (ctrl = A)
key_lalt "key 110"        (alt  = B) 
key_space "key 112"       (space= X)
key_enter "key 105"       (enter= Start)
key_up "key 97"           (key up - Joystick up)
key_left "key 99"         ()  
key_down "key 101"        ()
key_right "key 103"       ()
key_y "key 115"           (Key Y = Joystick button, necesary for quitting the game)
  • Don't write in yout file the notes on the parenthesis, nor the parenthesis themselves

You can edit this file with the notepad.

keen4.gpe

#! /bin/sh
DIRROOT=/mnt/sd/dosbox
DIRGAME=${DIRROOT}/keen4 ${DIRGAME}
${DIRROOT}/dosbox -conf ${DIRGAME}/dosbox.conf
cd /usr/gp2x
exec /usr/gp2x/gp2xmenu
Personal tools