The primary motivation here is to make sure we submit samples from the
CPU thread. This makes sure the timing of related interrupts accurate,
and generally keeps the different kinds of audio synchronized. This will also
allow improvements to audio dumping functionality.
The new code is also more concise because it gets rid of some duplicated
audio mixing code.
This change attempts to make calls to WII_IPC_HLE_Interface::Update()
more consistent. We should be calling it whenever there is something we
can pop from a queue, and this patch does that.
DeviceUpdate() now works independently of Update(): it's now just a periodic
timer for devices which need to regularly update state.
With this change, we need a non-zero default delay for IPC replies because
replies are popped off the queue much more aggressively.
This fixes launching channels from the the System Menu.
When I dropped ARM from a generic target, this caused the vertexloader to try using the JIT path.
Instead of !_M_GENERIC, check for _M_X86 instead. Since it is only for the x86 target
The register cache can be filled to the point that when dumping them the FixupBranch goes over the maximum size of 0x80.
Force them to use the "5byte" variant of the jump.
If we were able to determine if the length we had to jump was <0x80 in the future this could be a slight optimization.
This has to be done in bcctrx, bclrx, and twx. It was already done in bcx before.
This fixes issue 7378.
The clean theme was a little rushed. There was barely over a week between it's start date and the 4.0 release, and there was school and other crazy going on at the time. Having lived with the clean theme for a while, the weaknesses of the theme was really beginning to irritate me. So I've taken my time and worked on them over the past few months, and used them day to day to get the feel of them. The result is much better overall - everything has been tweaked from the ground up!
While there is a "full" changelog below, the primary change is a transitions from a gradient + dropshadow (and sometimes etch, don't think about it too hard) to a gradient + etch style. It's the same icons and the same style just, dare I say, cleaner? It's also much more variation friendly, allowing consistant results across all the colors and sizes. It pays off big time; everything that isn't default is drastically improved. For those that just use default, it's still better, thanks to the higher quality.
In my view, this is the completed clean theme.
Changlog:
*No dropshadow - gives the theme a even cleaner look and greatly improves the colored and @2x versions
*Improved etch effect with subtle variations as needed to each icon for best results
*New GameCube Icon - accurate to hardware, matches the accurate wiimote-nunchuk
*Tweaked gradients for a slightly flatter look
*Redone Lite theme. Still weird on light chrome, but awesome on dark chrome. Has a sort of white iPod look.
*@2x icons take better advantage of the higher resolution while still matching
*Improved the open icon's "disc", with precise angles on the reflection and mouseover awesome
*Removed slight curve from the Play icon
*Graphics icon now has a "power light" that no one will ever notice if they don't read this.
*And an obscene amount of tweaks way too small to include here
Sometimes (in particular when using non-typesafe functions) it can be convenient to have a getter method rather than performing a potentially lengthy explicit cast.
Update that adds NES and SNES (U) Virtual Console games to the database.
Fixes issue 7349 (More Aggressive Twilight Princess Hack), issue 7337
(Def Jam Vendetta No Cutscenes?) and issue 7258 (Madden NFL 2003
requires RealXFB for videos).
Workaround for issue 7322 (Slow audio ingame in various gamecube games
when using HLE, LLE audio works fine.) by enforcing LLE audio for the
affected games for the time being.
This PR depends upon pr #466 "Allow progressive scan to be set by game
ini".