LeapFrog Pollux Platform: sdlDoom
sdl doom quick tutorial
I'd like to thank Nirvous, NullMoogleCable, PhillKll, Claude, JKent, Jburks, GrizzlyAdams and anyone I may have forgotten for their help :)
SDL http://elinux.org/Didj_and_Explorer_libSDL SDL needs to be installed on the didj/lx and also needs the lib/headers to be installed on your PC Framebuffer driver http://elinux.org/Leapster_Explorer_Framebuffer_Driver to get the framebuffer driver you will need to compile a custom kernel for the didj/lx from the Explorer kernel sources properly set environment vars (you will see a set of these when you compile your kernel)
Download sdldoom and the wad from http://www.libsdl.org/projects/doom/
You can now skip most of the steps below and just go and download my updated sources on github: http://github.com/Reggi3/ExplorerDoom
Just compile and install as per the instructions further down, now on with the now outdated tutorial.
wget http://www.libsdl.org/projects/doom/src/sdldoom-1.10.tar.gz tar -xvf sdldoom-1.10.tar.gz cd sdldoom-1-10 wget http://www.libsdl.org/projects/doom/data/doom1.wad.gz gunzip doom1.wad.gz ./configure make -j5
change -j5 to reflect the number of cores on your cpu +1
copy the doom file to /usr/bin on your didj/lx
copy the wad file to a folder on your didj/lx, somewhere like /LF/Bulk/doom on the lx or /Didj/doom on the didj
browse to the folder where you put the wad file
as it stands the buttons don't do anything (dpad up/down/left/right and l/r shoulder move stuff around in the menus but thats it)
fix this by editing doomdef.h
change 2 lines to look like the following:
#define KEY_ESCAPE 109 // 'home button' #define KEY_ENTER 120 // 'brightness button'
now we can get into the game, yay but we still can't shoot stuff :( boo
make a blank text file called doomconfig
save it in the same folder as your doom wad on the lx
run doom, using the following on the command line:
doom -config doomconfig
load a new game, run around and pick up something (not sure if this is entirely necessary), go to the menu and save the game, doomconfig should now be populated
Edit doomconfig, change these 2 lines to the following:
key_fire 97 key_use 98
Alternatively you can copy and paste the following into your doomconfig file replacing anything that's in there, A= fire, B=use, R should = strafe right, weapon switching doesn't currently work, nor does strafe left or backwards:
mouse_sensitivity 5 sfx_volume 15 music_volume 15 show_messages 1 key_right 174 key_left 172 key_up 173 key_down 175 key_strafeleft 99 key_straferight 114 key_fire 97 key_use 98 key_strafe 184 key_speed 999 use_mouse 1 mouseb_fire 0 mouseb_strafe 1 mouseb_forward 2 use_joystick 0 joyb_fire 0 joyb_strafe 1 joyb_use 3 joyb_speed 2 screenblocks 10 detaillevel 0 snd_channels 3 usegamma 0 chatmacro0 "No" chatmacro1 "I'm ready to kick butt!" chatmacro2 "I'm OK." chatmacro3 "I'm not looking too good!" chatmacro4 "Help!" chatmacro5 "You suck!" chatmacro6 "Next time, scumbag..." chatmacro7 "Come here!" chatmacro8 "I'll take care of it." chatmacro9 "Yes"
this will give you 'fire' on the A button and 'use' on the B button
Other buttons either don't work or don't work as expected if you try and change them via doomconfig, doomdef.h or m_misc.c (defaults get defined here if the config file isn't found), not sure why its behaving like this.
Sound sort of works, looks like it gets the samplerate wrong when doom/sdl opens it :/
To get sound working a bit better, edit i_sound.c and change line 56 #define SAMPLERATE to:
#define SAMPLERATE 44100
recompile doom and copy it to your didj/lx