Archive for April, 2008

LSDLDOOM-PS2 : Update 5

April 27, 2008

Time for an update.

I fixed some issues preventing the configuration loading at startup and saving at exit, so at last you can permanently backup your Doom configuration. The config file is saved at memory card 1 (mc0:DOOM/boom.cfg) when exiting using the Quit option from de menu.

I also added the option to force a specific display mode (PAL or NTSC) for whom needs it – So just rename the DOOM.ELF to something ending with PAL or NTSC at the name (for example : DOOM_PAL.ELF or DOOM_NTSC.ELF).

Get here the shareware WAD embedded ELF (recommended) :
sdldoom-ps2_v005ROMFS.rar

or the you-supply-the-wad version (more unstable) :
sdldoom-ps2_v005.rar

Now source is included in all releases.
Hope you like it.

LSDLDOOM-PS2 : Building instructions

April 19, 2008

I updated the sources in the SVN include to include the building instructions and also to describe my gsKit and SDL modifications/hacks.
http://svn2.assembla.com/svn/pedroduarteps2dev_public/lsdldoom_PS2

“Instructions to build the PS2 version :

You must already have a working ps2sdk building environment prior to build this PS2 port of lsdldoom. You also need the SDL and SDL_mixer port to the PS2.

My modifications include a patch to gsKit so we can get a non-interlaced screen which is not available when I’m typing this. Since SDL depends on gsKit, we going also to make a minor change to it also to impose a 0.625 aspect ratio like seen on a PC version of Doom. Note that these changes are optional.

gsKit and SDL changes :
———————–
Apply patches or copy the supplied modified sources.

PS2lsdldoom :
————-

Embedded version (containing the sharewad WAD) :
————————————————

You need to have the ROMFS package. Get it from svn://svn.ps2dev.org/ps2/trunk/ps2sdk-ports/romfs. Add the line “include Makefile.romfs” at the end of the Makefile, uncomment the “#include ” and “rioInit();” at l_main.c.

Create a folder called romdisk and place there the doom1.wad (use lower case for the filename!) along with the boomlump.wad (look at the data folder for this wad). Optionally, create a dummy file named strafeonrightjoy.dat if you want to strafe with the right analog joystick – clumsy hack). Build the image with “make -f Makefile.romfs romdisk.img” followed by a “make -f Makefile.romfs romdisk.o”. Finally do a “make” and the DOOM.ELF should buid.

You supply the wad version :
—————————-

Remove the line “include Makefile.romfs” at the end of the Makefile, comment the “#include ” and “rioInit();” at l_main.c. Type make. You should now have your DOOM.ELF. Please note this flavour is more prone to crash than the embedded version.”

 

LSDLDOOM-PS2 : Update 4

April 11, 2008

The (I believe) long waited game saving/loading ability is now working.

So now you can save and load your games at any moment to memory card. The typical save sizes is as small as 30KBytes so I see no reason to save to other devices, like USB media storage (besides, accordingly to the USB driver author, USB saving is not enough tested).

Just go the the save/load menu, hit cross button to start entering a filename. At this point, the only possible character that can be typed in is the “Y” letter by hiting the L2 button. I might add some more characters latter, but remember that you’re only typing a description for the save file, not the filename itself, so it really itsn’t that important.

In the source, only minor changes were needed to fix the saving and loading functions. I had to use the IO fio* functions instead of the f* which are overwritten by the ROMFS, so the MC0 wasn’t accessible earlier. I also needed to code the equivalente of the offending expression “*(long*)save_p” where save_p is a pointer to a char buffer. It simply results in an exception, maybe because of the PS2 memory architecture (you tell me in the comments section, please)

I must also investigate if the LONG and SHORT macros are bad or not for the PS2’s sanity… Could this be the origin of the freezings?

Get it here :

(with shareware WAD inside)
lsdldoom-ps2_v004ROMFS.rar

(you supply the WAD version)
lsdldoom-ps2_v004.rar

As usual, the source is available here :
http://svn2.assembla.com/svn/pedroduarteps2dev_public/lsdldoom_PS2

(look for the 0.0.4 tag)

Public sources

April 5, 2008

I’ve set up a svn repository for my public sources. At the moment, only the sources for lsdldom are there.

Use your favourite SVN client to get those from :
http://svn2.assembla.com/svn/pedroduarteps2dev_public

From now then, it’s the only way you’ll get the lsdldoom PS2 port sources I’m improving.

If you’re new to SVN, I recommend this client if you use Windows :
http://tortoisesvn.net/downloads

 

LSDLDOOM-PS2 : Update 3

April 5, 2008

So time to new features :

I added support for picking the previous/next weapon. You can use “circle” to select the next weapon and “square” to select the previous. This time, I did it properly 🙂 so you can use another bindings to these features going to the options/setup/key bindings/weapons section and define whatever you want for the “next” and “previous”.

Get it here for the shareware embedded ELF :
lsdldoom-ps2_v003ROMFS.rar

or for the “you-supply-the-WAD” version :
lsdldoom-ps2_v003.rar

Please note the freezing bug still plagues specially the non-embedded version…