FS#5316 - Rockdoom Dehacked/BEX support

Attached to Project: Rockbox
Opened by Karl Kurbjun (kkurbjun) - Sunday, 07 May 2006, 22:55 GMT
Task Type Patches
Category Games
Status Closed
Assigned To Karl Kurbjun (kkurbjun)
Operating System All players
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


Here's an initial patch for dehacked support in rockdoom. Right now it only supports dehacked files in a wad. I was testing this patch with wolfendoom's 2nd_end.wad by inserting the given dehacked patch into the wad titled DEHACKED. I'm not sure if this patch will fit on ipods. Also, it adds in compiling sscanf to rockbox's core and fixes some of it's functionality. Since I don't have a strnicmp or the other icmp functions the dehacked file has to match the string cases in d_deh.c. For wolfendoom this was already the case, so no modification was needed.

Finally, this patch is made to create a log at /dehlog.txt to keep track of everything the dehacked loader is doing if a DEHACKED lump is detected.
This task depends upon

Closed by  Karl Kurbjun (kkurbjun)
Wednesday, 13 December 2006, 05:17 GMT
Reason for closing:  Accepted
Additional comments about closing:  Accepted in CVS
Comment by Karl Kurbjun (kkurbjun) - Sunday, 07 May 2006, 23:01 GMT
Here's the modified 2nd_enc.wad to include the dehacked file. You can download the original file from:
Comment by Karl Kurbjun (kkurbjun) - Sunday, 07 May 2006, 23:06 GMT
I guess it didn't want to attach (didn't realize how large it was), here's a link:
Comment by Karl Kurbjun (kkurbjun) - Monday, 08 May 2006, 19:41 GMT
Here's a new patch that fits on the ipods also. To do this I changed the compiler flags for the ipods to -Os and added a few malloc tweaks. I'm not sure what the speed penalty is though for the ipods. Use d_deh.c and d_deh.h from the first post.
Comment by Karl Kurbjun (kkurbjun) - Monday, 08 May 2006, 19:47 GMT
As an added note, this patch will allow other language translations in doom through the BEX/DEH patches. I'm not sure if any already exist though.
Comment by Jens Arnold (amiconn) - Wednesday, 10 May 2006, 07:02 GMT
Rockbox does have strcasecmp() and strncasecmp() which are functionally identical to stricmp() and strnicmp(). They are even already available in the plugin api.
Comment by Karl Kurbjun (kkurbjun) - Wednesday, 10 May 2006, 14:41 GMT
: ), oops, thanks for the tip, I'll use those instead. What's your opinion on adding building sscanf with the core? Was there a reason it wasn't being built before?
Comment by Karl Kurbjun (kkurbjun) - Saturday, 03 June 2006, 17:49 GMT
Here's the latest version of the patch, fixes all the strncasecmp stuff.
Comment by fcuk (fcuk) - Thursday, 14 September 2006, 11:13 GMT
I was just asking if u can mod halflife.wad located in,0,0,0,24,331, and if your patch can solve the problem for rockdoom displaying "The wad does not follow standard doom graphics" error, if yes please tell me how I can apply it to rockbox.

Comment by Karl Kurbjun (kkurbjun) - Thursday, 14 September 2006, 16:04 GMT
This patch does not fix halflife or any of those GP32 wad files. These wad files do alot of nasty things to doom which is all explained in this forum post This patch allows wads that used some of dooms advanced modification features (that were not originally available to mod authors with ID's original doom release). An explanation of Dehacked is here: This patch is primarily for mods like wolfendoom, batman doom, aliens doom, etc. to all work properly. I plan on commiting this patch once I get my computer running with a development environment again.
Comment by fcuk (fcuk) - Thursday, 14 September 2006, 20:00 GMT
Karl, can u please tell me how can I run halflife without displaying the error I mentioned above, cuz I've seen a video of someone's 5G iPod running halflife wad on rockdoom there, how could he do it ?

The wad displays the errors and despite loads the first screen from half life and exits back to the rockbox's plugin menu.

Thanks Again,