fafling Posted June 11 On 3/6/2022 at 4:13 PM, Mattfrie1 said: Messed around with this a little bit more to see if I could determine how the behavior of this works. It seems like replacing the texture name referenced in 0.bin with another one that is elsewhere in the level will have that one display instead. One can also put WMSWALL back into this spot as well, showing that it is loaded into memory but not displayed normally on NTSC versions of the game. Reveal hidden contents There's a function only called when loading level 59 Club Doom that replaces the texture name WMSWALL by WALL20 in the sidedefs that have just been loaded. WMSWALL is hard coded in the function's character comparison instructions, that's why you can't find it as a string in the binary. The fix patch will restore it by skipping that function calls. The Williams logo deserves to be in the game since it uses a good part of the PSX version's code. 1 Quote Share this post Link to post
taufan99 Posted June 12 1 hour ago, fafling said: There's a function only called when loading level 59 Club Doom that replaces the texture name WMSWALL by WALL20 in the sidedefs that have just been loaded. WMSWALL is hard coded in the function's character comparison instructions, that's why you can't find it as a string in the binary. The fix patch will restore it by skipping that function calls. The Williams logo deserves to be in the game since it uses a good part of the PSX version's code. I'm sure this will be pretty much far-fetched at the current point, but what about the colored lighting? All I know is that JIMSDOOM.wad is entirely identical to the PSX port's PSXDOOM.wad, only with a larger file size for unknown reason(s). 0 Quote Share this post Link to post
fafling Posted June 14 The lighting informations is indeed present, and loaded in memory. There's even bits of code that are using it, but I have yet to figure out for what exactly. Possibly for the light level calculations as colored lighting can be used to darken rooms. But could also be useless remnants of the PSX code for that. The problem with the colored lighting on Saturn is that Doom uses 8 bpp textures. That color depth prevents using directly the colored lighting information as Gouraud shading parameter. That's because when applied to 8bpp textures, VDP1's Gouraud shading shifts palette indexes instead of colors. When applied to Doom's palette, which isn't engineered for that, you'd get funky colors all around. A possibility to implement colored lighting is to rework all the textures involved to convert them to a format where VDP1's Gouraud applies to pixel's colors instead of palette indexes. But that's a lot of work and those texture formats are either 16 bpp direct color (twice as big as 8 bpp), or 4 bpp color lookup table (only 16 colors). So that would result in memory/performance issues or color downgrade, and I'm definitely not going that way. With 8bpp textures, the only way to get different color shades is to use different palettes. The radiation suit palette is an example of that. The thing is that the color palettes are stored in VDP2 color ram which is 4 KB. So that limits to 8 different 256 color palettes simultaneously on screen, one of which must be the base color palette. So you have maximum 7 other palettes to play with, one for each colored lighting on screen, supposing the whole color ram can be used for that. The PSX version has 256 different possible colored lighting, and I don't think there's a restriction on the number of different colored lighting used simultaneously other than the max number of sectors that can be on screen. And it's definitely not 7. Another hurdle is that currently 2 palettes other than the base one are present at all time in VDP2 color ram : the radiation suit palette and the invincibility one. Those 2 could be evicted, the radiation one by using a VDP2 color offset effect instead, and the invincibility one could be stored externally and only swapped in color ram when needed. So on Saturn, only a very simple approximation of the colored lighting is possible with the 8 bpp textures. And that will require a quite extensive hack and a better knowledge of the rendering part of Doom than I currently have. So if I ever get around to do that, it's not anytime soon. 4 Quote Share this post Link to post
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.