Next Generation Emulation banner

1 - 20 of 70 Posts

·
Registered
Joined
·
423 Posts
Discussion Starter #1
Some of you might have noticed I didn't commit much the past two weeks, while I normally commit about 3 to 5 changes per day. There's a reason for that, and I'm going to do a complete write-up about it soon.

I can tell you already that this is going to be one hell of a commit; I take snapshots regularly (using SVN patch, just to safeguard against hardware failure & loss of work). This patch has been growing the past few days to 283 KB already!

As for the work that's going on : I'm actually working on removing most of the D3D patches! What? Yeah, really! I just took the bull by the horns & started on the new form of emulation that I wrote about earlier (at least partly).

I'm sure you'll understand that a change like this is a major piece of work, and there are lots of regressions that I'm slowly working through.
The good news is, that I'm already quite far with this - most XDK samples work just like before, and some that never worked before are now actually running smoothly!

I'm slowly starting to look at the games we previously supported, as those are all broken too with the new code. There are a few issues left, like that I have to re-implement overlays, I need to redo the support for older XDK's (as those seem to use different GPU memory addresses), etc.

So just sit tight and you might be in for a surprise!

PS: In it's current state I just don't want to commit it yet to the SVN (and I loath SVN branches), so anyone wanting to have a look at my current sourcecode is free to ask, I'll just mail the patch and you can take a look yourself.

Cheers,
PatrickvL
 

·
Linux's worst nightmare..
Joined
·
1,510 Posts
<--- Noticed! After about the 3rd day without a commit
but I had guessed its because you were doing something
major. Then last night your commit was only a small change and
i was worried i was wrong :p

looking foward to testing! :D
 

·
Registered
Joined
·
175 Posts
I noticed too. Altough Patrick did gave us a hint of what he is doing. I too belive that this is goning to be major. Keeps my fingers crossed.
 

·
Registered
Joined
·
423 Posts
Discussion Starter #6
LOL! I never owned an Xbox! Actually, to be honest, I don't really care for any of the games. For me it's the intellectual challenge that's driving me - I saw a niche and decided I was up to the task; That's all, really. But thanks for cheering me up!
 

·
Registered
Joined
·
423 Posts
Discussion Starter #7
Appetizer

Here a small appetizer, showing a (positive) side-effect of the code I'm currently working on : Dxbx can now unswizzle volume textures! I'm sure you can tell the difference between the old code and the new code.

To get a little technical :
The Xbox1 NV2A GPU can access textures in a so-called 'swizzled' format (this improves data locality which gives a performance boost).
Alas, Direct3D8 lacks support for this format. So we have to convert all swizzled textures to an unswizzled format, to get a correct rendering. Normal 2D and CubeMap textures where already unswizzled - although, that is most of the time (as some titles, like Eggo Mania, wheren't handled correctly).
Anyway, now that I postpone the creation of a 'mirroring' resource up until drawing time, I have the opportunity to do this right once and for all, as you can see by comparing the two screenshots!

I'll be back with more appetizers shortly :D
 

·
Linux's worst nightmare..
Joined
·
1,510 Posts
improved quality and higher fps! :)
cant wait to see more :thumb:

any luck resolving pesky regressions so far?
 

·
Registered
Joined
·
71 Posts
I don`t post much, but I am always following and all I can say is `the DXBX team is doing the best work in xbox emulation that we have see in along time. Nice to see all of you guys taking what caustic started so many years ago and turning it into what it is today.` I hope you all continue to enjoy your hobbies for years to come.

Thanks for your great inspirations to all future other programmers out there & keep it up `n coming!
 

·
Registered
Joined
·
376 Posts

·
Linux's worst nightmare..
Joined
·
1,510 Posts
Chef patrick will DirectSound fixes be on the menu? :p
 

·
Registered
Joined
·
423 Posts
Discussion Starter #14
DirectSound is not on the menu right now, sorry - I'm much too involved with Direct3D.

About that : Here a little teaser again - showing improved visuals in the XDK sample 'Lensflare'.

This might not seem impressive, but this sample is now running without patches on any of the CreateDevice, D3DInit, CreateTexture, CreateIndexBuffer, CreateVertexBuffer (and many, many other) API's (!)

I'm currently working to restore support for all XDK versions that we previously had samples running in. After that, I also have to redo overlay support, and try to fix some problematic texture formats on ATI - especially surfaces. (Oh, and some samples show small regressions, like an incidental help texture not being drawn and such.)

I'll be back with more screenshots later. Cheers!
 

·
Registered
Joined
·
8 Posts
Here a little teaser again - showing improved visuals in the XDK sample 'Lensflare'.

[...]this sample is now running without patches on any of the CreateDevice, D3DInit, CreateTexture, CreateIndexBuffer, CreateVertexBuffer (and many, many other) API's (!)
Great. This seems to become a stable basis for further developments.

But the effect on your last screenshot is different from the one including the patches, you posted in the screenshot thread:


The new one contains much more lensflare effects. They are like a lensflare corona around the sun. Is this correct?
 

·
Registered
Joined
·
423 Posts
Discussion Starter #16
Yeah, the new rendering is much closer to what the original Xbox produces (I actually took photo's of my TV while I ran a few XDK samples, just so that I know what it ultimately should look like).
 

·
Registered
Joined
·
75 Posts
This might not seem impressive, but this sample is now running without patches on any of the CreateDevice, D3DInit, CreateTexture, CreateIndexBuffer, CreateVertexBuffer (and many, many other) API's (!)
Wow, after looking at the difference in those comparison screenshots of the Lensflare XDK sample, it's stunning. The improvements in the Xbox emulation continues to impress me.

Looking at the above quote, does that in any way make it easier to port the DXBX (Aside from the CXBX, whereas Blueshogun is developing an OpenGL pixel shader) over to any OS that doesn't feature DirectX support on either desktop computer, or any handheld gaming device?
 

·
Registered
Joined
·
423 Posts
Discussion Starter #19
No, all my current work does, is to let more of the D3D code run unmodified, which actually improves emulation, as the behaviour of the code is closer to what it's supposed to be doing on the original Xbox.
This makes us a bit less depend on symbol detection (although only for the D3D part, so symbol detection is still an important aspect that I'll work on again later). Another side-effect is, that I'm slowly moving most D3D emulation code into a somewhat smaller, more contained block of code, that's less complex than what we had before.

I'll do a complete writeup on this when I'm finished with it, but it will take some time still. Just know that I'm still very busy with it, making slow but steady progress (oh, and some trusted developers I'm in contact with do have a copy of this bulky patch, so it's not just something I keep to myself - in case you where wondering.)
 
1 - 20 of 70 Posts
Top