Jump to content


  • Content count

  • Joined

  • Last visited


About Mattfrie1

  • Rank

Recent Profile Visitors

458 profile views
  1. Dissecting Sega Saturn Doom

    I'll just post a screen grab of what I'm seeing in the hex editor, I'm pretty sure this is what you're looking for. https://imgur.com/68uuEbx Aside from that, I did another comparison of the source WAD files (PSXDOOM.WAD and JIMSDOOM.WAD) between the two ports in Slade. Both of these files are ALMOST identical, but there are several entries which appear to be corrupted in JIMSDOOM.WAD. BSPIC2C8 (an arachnotron walking sprite) is only 5.52 kb in JIMSDOOM, whereas it's 7.02 kb in PSXDOOM. SKELG2 (A revenant punching sprite) also doesn't display in JIMSDOOM, but is the same file size as PSXDOOM. Both of these sprites still display correctly in game however. Just for the hell of it, I put both PSXDOOM.WAD and JIMSDOOM.WAD through the hex editor, even though I already know that JIMSDOOM is a lot bigger in file size than PSXDOOM. I've attached screen grabs of the end of both WADS in hex below. https://imgur.com/pYzAzZS https://imgur.com/7a1LWHp
  2. Dissecting Sega Saturn Doom

    So I've decided to do a little digging into Saturn Doom again to see if I can uncover any other fascinating things about this flawed port. Here's a few more interesting things that I missed on my first examination: - The DOOMTONE.BIN file is indeed the file that houses all of the game's sound effects. Opening the file as raw data in Audacity under the correct settings reveal all the sound effects laid out in one long "chain". Sounds are also sampled at the extremely small sample rate of 2500 hZ. I'm assuming that the DOOMMAP.BIN file serves as an indexing file, telling the system where each specific sound effect starts and ends in the DOOMTONE file, as well as each sound's duration. This is yet another way that this port inefficiently utilizes system memory, since the game most likely has EVERY in game sound stored in memory at all times. - I also feel the need to point out that since the Saturn uses an entirely different sound engine from the PSX version, there was no possible way that this port could have supported sound reverberation effects, especially since the reverberation effect was a feature of the PSX's sound processor. As far as I know, the Sega Saturn's sound processor had no equivalent feature. - Right after P_LoadSectors is mentioned in 0.BIN (the game's main program file), the code makes mention of F_Sky immediately followed by %s.CHR and %s.MAP. This shows how the Saturn port has extra code added in for the "new" skies utilized by the Saturn's VDP2 chip that appear in the SKYS folder. This of course means that the sky textures included in JIMSDOOM.WAD are redundant since they appear to be coded to never appear in game, and are overridden by the new sky files. - All of the .CHR files are in the tile format of 8BPP, which is common for tiling backgrounds and such. Sadly not many tile editors currently support 8BPP, but the tile editor in the Windhex program can display a garbled view of the file. I still can't tell what SKY20 and SKY21 are supposed to be, but the STATS.CHR file is where all the tile data exists for the new status bar, the status bar face, the font for all in game text and the loading graphic. INTERPIC.CHR (in the disc's main directory) is used for the the game's main menu and intermission screen, and is scaled slightly differently from the very similar image used for the PSX's main menu. - All of the map files for the Saturn port are the same exact file size as the map files for the PSX port, and examining the files in a hex editor reveals absolutely NO difference between the files as well. Since the files are an exact match, I wonder if all the information about colored lighting and sound reverberation are still included in the Saturn files... - All of the files on the Saturn Doom disc contain the date of 1/29/97. GameFAQs states that Saturn Doom was released in the US on 3/31/97, only a 2 month period from the game being compiled to it being out in the stores. - In a previous post I made specific mention to the NIN secret in Hell Beneath and how the walls after the secret is activated are almost always buggy. Ultimately, I believe I've discovered a reason and a pattern to this phenomena. First off, the walls to this secret are NEVER drawn correctly in this version. Instead, the game seems to texture the wall with what ever texture data was last "occupying" the area of memory that the correct texture is supposed to be in. Curiously enough, loading the level from scratch after you start the system via password yields the game to draw a blank wall that is completely see-through. Otherwise, the game will draw a texture from the previous level that was loaded. - I've compiled a video sampling what this bug looks like. The first clip shows what the blank wall looks like, and the second clip shows what the wall looks like after warping to the level from Club Doom. After that shows some of the "highlights" that I found messing around with this bug, enjoy:
  3. Flaws in official DOOM ports.

    Many of those same issues with software rendering are also in the PSX port of Hexen as well. The PSX port of Hexen also utilizes the LEAFS map lump in all of it's levels as well, so that might have something to do with it. The imp alert sound is due to how the sound is "recorded" in the .LCD file for certain levels. Each level has a .LCD file associated with it which includes all the sound effects that the level will use as a way to better utilize system RAM. One can listen to all the sounds in these .LCD files by using a program like PSound, and you can hear how the sound is "cut off" in the source file as well, it probably has something to due with how it was compiled into the file. On a similar note to this, all the Lost Souls that the lone Pain Elemental in E1M1 on UV spawns are silent when attacking you. This is due to their attack sound being mistakenly not included in the level's .LCD file. Lastly, the music track for Minos also only plays once. A similar error also occurs on several levels in Doom 64 as well.
  4. would you like to see PSX Doom ported to PC?

    MAP60.LCD is actually the sound file for the end screen that goes through the entire cast of enemies in the game, thus the reason why it contains all the sounds. The same MAP60.LCD file is also retained on the PSX Final Doom disc (Even though that game has only 30 levels) for that game's ending screen as well. The Saturn port also contains files for a MAP60 as well, but those files appear to be for all the monster sprites for the ending screen instead.
  5. would you like to see PSX Doom ported to PC?

    The Sega Saturn port also has all the same error screens as the PSX version coded into it, although there seems to be no way to actually trigger them in game. I've tried numerous times to get the "Texture Cache Overflow" error to trigger on The Citadel but the game simply won't do it.
  6. I attempted to look into the workings of the PSX port of Hexen last year in this thread. Ultimately, I believe that the port is crippled because of the combination of using the LEAFS lump to render levels and Hexen's own ACS. The game notably slows to a crawl whenever any large scripting event takes place while a lot is being rendered on screen, yet opening the automap or turning to face a wall will speed up the scripting process to it's regular speed. The fact that the developers used the retail beta version as the source to work from instead of the finished retail version could be a factor as well.
  7. PSX Doom/Final Doom TC (Version 2.135 now released!)

    I know I'm a bit late in responding to this, but I don't come around these parts as often as I used to. I just edited the OP to remove the broken link and to clean it up a bit. Anybody can feel free to message me if any more links become broken or to add any project updates to the post, I'll try my best to add them as soon as possible.
  8. I feel like streaming some glitchy SNES Mortal Kombat over on Mixer, come check it out if you are bored: https://mixer.com/Mattfrie1

  9. PSX Doom HD cover art?

    Wow, nice find! I was extremely surprised to see that he was also responsible for the cover art to "Powerslave", another rather obscure FPS for the PS1/Saturn:
  10. Doom Streams

    I'm gonna be streaming some SNES Doom from the actual hardware: https://mixer.com/Mattfrie1
  11. I consider myself extremely fortunate to have gotten a legit copy of GBA Doom II off of eBay about 5 years ago or so. It was in a lot along with Duke Nukem Advance and 007: Nightfire, and I ended up paying about 20 bucks for the entire lot. I also managed to get the original Doom and Wolf 3D for GBA around the same time for pretty reasonable prices, so I'm guessing this is before the prices on them really skyrocketed. I thought all the ports were really enjoyable. They aren't really my go-to versions to play, but they are very good nonetheless. That being said, even though I own my original Game Boy Advance I find that I get more enjoyment by playing all my Game Boy games through the Game Boy Player add-on for the Gamecube. I've never been too big a fan of portable gaming, so the Game Boy Player gives me a chance to play these games without having to strain my eyes.
  12. Hmm, that's pretty interesting since MacWolf was coded by Burger Becky and was released AFTER both SNES and Jaguar Wolf 3D. It pretty much seems like Carmack back-ported the game behavior of Wolf 3D into the Doom engine to make this version work from what I can tell so far. The GBA version of Wolf 3D was actually handled by ONE programmer. Pretty crazy that it's the most accurate of all the ports as well...
  13. Did you also have Cybermorph and Kasumi Ninja by any chance? Those were the other two games with the listing. I bought it on eBay earlier this month, and was primarily interested because the listing included Doom, Wolf 3D and the composite cable (most other listings only had the RF cable, which mine also came with).
  14. Looking into the "IWAD" data at the end of the ROM a little bit more, I've also managed to figure out that the definitions for each of the midi "instruments" appear to be stored right at the end after the music. Along with that, there also appears to be several color palettes scattered about around as well, including RGBPALS, CRYPALS, PALMAP, and BRIEFPAL. I also see what looks like the info for BJ's face in the status bar (FACE 1-25, plus FACEL and FACER as well), and also the definition for the logo screen at the start of the game (called BALLMAP).
  15. So I've recently bought an Atari Jaguar, and with it both the ports of Doom and Wolfenstein 3D. The source code of Jag Doom has obviously been available for a long time now, but the Jag port of Wolfenstein 3D has been a little bit harder to get information on. As we know, the Jaguar port of Wolfenstein 3D came before the port of Doom, and was ported by id as a way to test the abilities of the Jaguar to see if it would be able to handle Doom. The Jaguar port of Wolfenstein 3D is noted for having numerous similarities with Doom. The sprites for the pistol, chaingun and rocket launcher are all borrowed from Doom, the lives/treasure system is completely removed and those items now act like the health potions and soul spheres from Doom, and higher difficulties randomly have treasure pieces removed and replaced with enemies. Like I've done with previous games in the past, I figured to open up the ROM of my copy of Jaguar Wolfenstein 3D in a hex editor just to poke around and see if there was anything unusual in there. I'm not sure if any of this has been documented any where else on the web, I've done a quick google search about the Jaguar port of Wolf 3D, and I haven't really found all that much info about the port. Perhaps if someone has some knowledge about this they can come forward about it. Anyway, the first thing that I noticed right away towards the beginning of the ROM were some of the same "error messages" that I've been seeing in pretty much every Doom console port that I've viewed in a hex editor. Upon also looking at the Jaguar port of Doom and the SNES port of Wolf 3D in a hex editor, here is how Jag Wolf 3D is broken down: Starting at memory address 00011310 in the ROM of Jag Wolf 3D are the same set of info/error messages that also appear in Jag Doom, these messages are: -NuIWAD.Wad file doesn't have IWAD id -NuW GetNumForName -NuILumpLength -NuIReadLump -NuiCacheLump Then, several error messages (I'm leaving out some of the descriptions here): -NuZFree -NuZMalloc -NuZCheckHeap -NuZChangeTag Following these are several error messages that have been brought over from SNES Wolf 3D, and generally relate to both actor and door behavior ingame, as well as a message for static overload, actor overload, door overload, etc. In Kaiser's extremely old thread about Console Doom Hacking, he stated that the IWAD address of Jaguar Doom was at 0X4000 in the ROM. Upon doing a search in Jaguar Wolf 3D, this port ALSO has an IWAD, and it starts at 0X2000 in the ROM. The difference in values is likely due to Jag Doom being a 4 meg cartridge, whereas Jag Wolf 3D was only a 2 meg cartridge. The rest of the ROM is rather uneventful, but the end of it reveals another curiosity. Starting at Address 001ED670 is what looks very much like how a Doom IWAD file is laid out: The first "category" features a list of all the maps in game (numbered from 0-29). The second category lists out all the sprites (1-154). The third category lists out wall textures (1-36). Following that is what looks like the information for the intermission screen, followed by information for the main menu(?). Other stuff that I'm able to distinguish here include what look like the references for the 3 demos (listed as DEMO1, DEMO2, DEMO3), a list of all ingame sound effects (ex. D BONUS, D OPENDR, D FTHROW, D KNIFE) and a list of all the songs ingame. For comparison, Jaguar Doom has the list of all it's data at the end of the ROM as well, and it's arranged in a very similar way (Sprites, then textures, and ending with sound effects and music). To wrap this up, I think it can be said that Jaguar Wolfenstein 3D is a hybrid which uses elements from both the Jaguar Doom engine and SNES Wolf 3D engine. Again, I'm not sure if any of this information is common knowledge, but it is fascinating none-the-less. Any thoughts? EDIT: Fixed some grammatical errors, guess that's what happens when you post while half-asleep. :)