Doom64 DS

elhobbs
Posts: 358
Joined: Thu Jul 02, 2009 1:19 pm

Re: Doom64 DS

Post by elhobbs » Wed May 09, 2012 1:25 pm

Kaiser wrote:Been thinking though, it would be nice to be able to leverage all VRAM banks. There has to be a way to use them and at the same time, wait for the frame to finish drawing before using the banks again.
another option would be to use the hardware display capture. you would need to use one vram bank for the display capture then switch the display mode to 2d. this would allow the use of 3 vram banks for textures, but it would drop the max frame rate to 30 fps.

Kaiser
Posts: 38
Joined: Wed Apr 25, 2012 4:44 am

Re: Doom64 DS

Post by Kaiser » Wed May 09, 2012 4:17 pm

If I were to use all four banks, would it help if I waited for REG_VCOUNT being >= 192 or <= 215 in between DMA'ing each bank?

elhobbs
Posts: 358
Joined: Thu Jul 02, 2009 1:19 pm

Re: Doom64 DS

Post by elhobbs » Wed May 09, 2012 4:52 pm

Kaiser wrote:If I were to use all four banks, would it help if I waited for REG_VCOUNT being >= 192 or <= 215 in between DMA'ing each bank?
yes, you can load during this window without issue. but you can only move so much data during that time. if you tried to wait for vblank multiple times then you would need to be careful not to remove something that is in use as it would get used during the next render. I want to say that you can load about 64k of data during 3d vblank.

there is this. it says that you can write to VCOUNT. it might be possible to copy a little and set VCOUNT repeatedly until everything is moved... maybe... no idea if it is worth trying.

Kaiser
Posts: 38
Joined: Wed Apr 25, 2012 4:44 am

Re: Doom64 DS

Post by Kaiser » Thu May 10, 2012 8:10 pm

Tried both waiting for the right VCOUNT value as well as setting REG_VCOUNT to 192 for each 64k of data I dma to the VRAM. Still got flickering unfortunately but at this point now, I can live with just 256kb of data to work with. The only real issue I am getting now is the final level due to the large amounts of sprites present on the screen though I am still going to add some sort of sprite tiling/breakup to minimize the padding just to see how much it'll help.

For the most part, it's playing out pretty well now (except for the last level that is...).

mtheall
Posts: 211
Joined: Thu Feb 03, 2011 10:47 pm

Re: Doom64 DS

Post by mtheall » Fri May 11, 2012 8:42 pm

With some modifications, I was able to build wadgen on my Linux box. I was able (apparently) successfully to create the iwad. I was able to compile the Doom64.nds, however, it doesn't appear to be working.

This is the output I get:

Code: Select all

Z_Init
W_Init
R_Init
P_Init
ST_Init
S_Init
And then nothing happens (the top screen is black). If I press any of the following buttons, I get this output:

Code: Select all

Start: W_GetNumForName: MAP00 not found!
A: nomonsters on/off
B: lockmonsters on/off
Up/Down: Map: #
Start after Up/Down: Loading level... (resets console) P_GroupLines: miscounted
Maybe I set up something wrong. Any ideas?

Kaiser
Posts: 38
Joined: Wed Apr 25, 2012 4:44 am

Re: Doom64 DS

Post by Kaiser » Fri May 11, 2012 10:10 pm

You're getting the P_Grouplines error each time you select a map? Sounds like wadgen isn't properly generating the game data. Are you using the Wadgen version from the DS branch?

mtheall
Posts: 211
Joined: Thu Feb 03, 2011 10:47 pm

Re: Doom64 DS

Post by mtheall » Fri May 11, 2012 10:11 pm

Yes it is the wadgen from the DS branch. I had to modify it to compile on Linux though.

Kaiser
Posts: 38
Joined: Wed Apr 25, 2012 4:44 am

Re: Doom64 DS

Post by Kaiser » Sat May 12, 2012 12:49 am

Very odd. I'll need to add some sort of checksum comparison then. Not sure what went wrong with the IWAD output.

elhobbs
Posts: 358
Joined: Thu Jul 02, 2009 1:19 pm

Re: Doom64 DS

Post by elhobbs » Sat May 12, 2012 12:57 am

Does map00 even exist? I think yOu have to press up(or down) to change it to 1 then press start.

mtheall
Posts: 211
Joined: Thu Feb 03, 2011 10:47 pm

Re: Doom64 DS

Post by mtheall » Sat May 12, 2012 1:57 am

I don't think there's a map 0, because pressing up/down stops at 1 for minimum. But the other maps I get that other error about miscount. I'll grab the md5sum of the iwad and post it later.

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests