don't click here

DOOM 32X IWAD Converter

Discussion in 'Technical Discussion' started by saxman, Dec 15, 2009.

  1. Chilly Willy

    Chilly Willy

    Tech Member
    751
    11
    18
    Doom 32X
    It's probably going to run out of memory. The whole reason they simplified the maps was to fit the levels into the memory available. Too many sectors, too many segments, too many textures, too much for too little ram. :(
     
  2. Trasher

    Trasher

    SOMEBODY STOP IT Oldbie
    13
    0
    0
    You.
    This is very cool.

    On the same subject, a hacker called Kaiser has done some similar work with other ports of Doom. Lemme dig up his work... ah, here we go.

    Here's some old documents on Jaguar, GBA, PSX and N64 Doom. You might find them interesting. The screenshots are all long since broken, though.
    And here's a PC port he's been doing of N64 Doom, using the ROM's data. It hasn't got full documentation, but it's open source so you might be able to figure out how he's doing things from there.

    Hope this is helpful!
     
  3. Vendettagainst

    Vendettagainst

    Apparently shooting kills things Member
    <a href="http://www.doom2.net/~doomdepot/abs-about.html" target="_blank">It already happened.</a>

    Anyways, very interesting! Maybe this could cause more hacking to make a better port of Doom to the 32X. I know the 32x can handle more.
     
  4. Sintendo

    Sintendo

    Member
    249
    0
    16
    It a pretty well done replica of Doom64, but the problem is that it is... well, a replica. It a recreation of the game, while Doom64EX is a recreation of the Doom64 engine and can run from the original files. This means that in the end, it'll be much more accurate.
     
  5. Trasher

    Trasher

    SOMEBODY STOP IT Oldbie
    13
    0
    0
    You.
    Yeah, Kaiser worked on that too. It's just a by-hand replica, using plugin-ripped graphics and carefully remade levels. Doom 64 EX actually uses the N64 WAD data for maximum accuracy.
     
  6. saxman

    saxman

    Oldbie Tech Member
    http://www.4shared.com/file/178474333/ec05465c/entryway.html

    Entryway (MAP01) from DOOM II has been ported to the 32X version of DOOM. It replaces the Hangar level (first level.)


    [​IMG]


    A few notes:

    - I had to manually replace floor/ceiling textures because it yells at you if it can't find a flat.

    - I did NOT have to replace any wall textures though, because any it can't find it automatically replaces it with the very first texture listed in the TEXTURE1 file. In this case, that texture was "ASH01."

    - The sky doesn't seem to work, and that may be because of something the 32X version doesn't support, or it may be a problem in one of the data files such as SSECTORS.

    - If you go outside where the shotgun is, you will not be able to go back inside. The reason is that the 32X version of DOOM has collision detection that is simplified in comparison to the PC version. It detects the the walls closest to the player, but it doesn't see where the wall ends, so it won't allow you to fit through the gap. The solution would be for me to widen the doorway, but I didn't do that. So, just don't go outside if you don't want to get stuck out there!



    I am not releasing the latest version of the program just yet because there's some things I have to do to it to make it usable and friendly to the average person. I had to insert some data using a hex editor -- I'm sure nobody wants to do that. So, let me do a few things to the program first so that that isn't needed.

    Well anyhow, have fun =)
     
  7. shana

    shana

    balls Member
    221
    0
    0
    Financial Hell
    Recording Sonic Music on live guitar/bass.
    That





    is





    awesome.
     
  8. ICEknight

    ICEknight

    Researcher Researcher
    Indeed, great work dude.
     
  9. Black Squirrel

    Black Squirrel

    no reverse gear Wiki Sysop
    8,493
    2,427
    93
    Northumberland, UK
    steamboat wiki
    Correct me if I'm wrong but this doesn't seem to work in Kega Fusion 3.63. It'll run in older versions, but not the latest for some reason.

    But nevertheless it's pretty damn cool.
     
  10. Chilly Willy

    Chilly Willy

    Tech Member
    751
    11
    18
    Doom 32X
    Totally awesome! Even with the issues, it shows there's promise to the idea.
     
  11. Is there anyway to modify the music in the game right now? That was the thing everyone made out to be the "reason" 32X doom sucked.
     
  12. saxman

    saxman

    Oldbie Tech Member
    I have uploaded the latest version of my utility. It now converts WAD files both ways. I also fixed a ton of bugs.

    http://www.4shared.com/file/180143907/ada7db41/WAD32X.html

    Run the utility from the command prompt. To export a WAD from a DOOM ROM, type "wad32x romname.bin outputname.wad".

    Importing is different. I haven't finished the utility, so right now there's two steps. Step one is to type "wad32x wadfilename.wad 32xwadfilename.wad". That converts the WAD to the 32X DOOM WAD format, but you still need it in the ROM. For step two, you can use another little tool I made by typing "copyxy 32xwadfilename.wad 0 FFFFFF romname.bin BB000".

    Obviously, you replace the file names I gave there with the correct file names.



    As a bonus, I uploaded the WAD file I used for the Entryway port. It's in the PC format, so you'll still need to convert it over to the 32X format before you can run it in the ROM.

    http://www.4shared.com/file/180143928/f2ea...DOOM2PC32X.html



    Let me know of any bugs or issues anyone comes across. If you decide to port any other levels or make you own, post your screen shots!







    Oh, and let me answer to a few things I read. The thing about the hack not running in the latest version of Kega... I "think" I have the latest version, and it runs fine. I have to double check on that, but I really don't see any reason it wouldn't.

    In regards to hacking music, I'm not all that interested in that aspect of it to be honest. I'm sure someone will want to do it somewhere along the way. Maybe this little venture of mine will encourage someone to try their hand at it. Right now though, there's no way known to us to modify the music. Maybe ChillyWilly would be interested in this since he's pretty smart with all of this stuff.

    And thanks for the kind feedback I've been getting! I didn't expect this topic to make it to page 2, much less page 3, so I appreciate it =)
     
  13. Conan Kudo

    Conan Kudo

    「真実はいつも一つ!」工藤新一 Member
    478
    1
    18
    @saxman: Your links that you posted don't work. They loop over and over appending "&nowww=90" to the URL until the browser finally snaps the connection with 4shared.
     
  14. Download works for me: However, I can't get the importer to work properly: the game appears to use vanilla 32x data even after the full conversion process.
     
  15. Chilly Willy

    Chilly Willy

    Tech Member
    751
    11
    18
    Doom 32X
    Is the music still embedded in the WAD, or did they use SEGA specific music outside the WAD? I haven't looked at the 32X Doom that closely. If the music is still in the WAD, then clearly to change the music, you change the WAD.

    EDIT: A quick check of the WAD directory in DOOM shows no sign of the music, so they must be using music embedded in the game code. I'll pop the rom into IDA and take a quick peek.
     
  16. Sintendo

    Sintendo

    Member
    249
    0
    16
    I think the original PC version used MIDI music, which I highly doubt the Genesis/32X could handle properly, so they probably converted the music to something else and put it elsewhere in the ROM instead of in the IWAD itself.
     
  17. saxman

    saxman

    Oldbie Tech Member
    All I can say is it must be something with your browser, or maybe Java, or something. It works fine on this end. I've never heard about anyone else having this issue. If anyone would be willing to mirror the two files, maybe that would help out.


    I'd like to see the WAD file you're trying to import. So far, I haven't had any issues like that. I would suspect you're grabbing the wrong file name somewhere along the way. I tested it over and over and over, and I haven't had this happen yet. I'm not ruling anything out, but definitely check to make sure you're using the right files and loading the correct ROM. I've beaten my head over a desk before over silly mistakes like that!


    Yep, they put the music inside the game itself. I don't know where it is exactly, but I'd certainly be curious to know where it is if you happen to find it.


    Oh I think the Genesis could handle General MIDI, it's just that it's a complicated format that really isn't suitable for Genesis games considering the monophony nature of the Genesis audio hardware. I would suspect either SMPS or GEMS since they're all too common.
     
  18. Chilly Willy

    Chilly Willy

    Tech Member
    751
    11
    18
    Doom 32X
    Doom uses a format called MUS. It's like MIDI, but simpler. There are converters you can get on the net to convert back and forth between MUS and MIDI. Most Doom ports convert the MUS data into MIDI on the fly, then use timidity to play the MIDI. The exceptions are my own ports - the older ones have a MUS player, and the latest I did for the Dreamcast converted the MUS to MIDI, then played that via WildMidi. WildMidi has much lower resource usage than timidity.

    By the way, the menu sounds are at about 70,670 to 93,077 as 8b unsigned PCM at 11,025 Hz. The other sounds must be compressed as they certainly aren't uncompressed in the rom.
     
  19. shana

    shana

    balls Member
    221
    0
    0
    Financial Hell
    Recording Sonic Music on live guitar/bass.
    I've made a small (crappy) 2 map test to see how much can the 32x take (in MAP02). Download
    The tools are working very well. For people converting the wad very often due to wanting to test the changes I recommend making a tiny batch file which saves a ton of time. If using default filenames
    Code (Text):
    1. wad32x.exe -import doompc.wad doom32x.wad
    2. copyxy.exe doom32x.wad 0 FFFFFF doom32x.32x BB000
    If you trigger a lot of sounds, sounds won't play anymore, but awkwardly the pause menu SFX still works. Maybe because they are uncompressed as mentioned in the post above? If you awaken too many monsters the game hangs. I've reduced some of the stuff in MAP02 so that it doesn't hang, but there's always a chance.
     
  20. Initially I was trying to import nuts.wad (because I felt like being cruel to the engine) but I've also tried using the sample Doom 2 conversion WAD and it still didn't work. Dumping the WAD from the edited ROM works fine and, bizarrely, even overwriting the IWAD data in the ROM doesn't work. The only thing I think could be an issue is the fact I'm using a European ROM.

    EDIT: I'm a fucking idiot. I just realised that the port doesn't have Doom 2 things defined in it.

    EDIT2: And having converted it properly now, I've found it's Kega Fusion being whiny and refusing to accept the modded binary

    EDIT3:


    Not quite: The final Doom EXE has a bug in the teleportation code that doesn't set the Z-coordinate

    EDIT4: Further experimenting has shown results, though I want to kill whoever programmed the WAD loader in this port for having everything load in a specific order:

    [​IMG]