James Benton
33b14b8ace
opengl: Fix implicit cast size_t -> uint32_t warning.
2016-09-04 22:26:27 +01:00
James Benton
c017a9ff81
gpu: Update all registers to use BITFIELD.
...
Some were still union.
2016-09-04 22:26:21 +01:00
James Benton
9581475be9
common: Fix float bitfield values.
2016-09-04 22:26:15 +01:00
James Benton
e7bab189c8
loader: Handle elf special section indexes.
...
For now let's only let SHN_ABS through as it is simple and just uses
symbol value, no special section relocation or anything required.
Seen in Mario Tennis - Ultra Smash.
2016-09-04 17:47:02 +01:00
James Benton
fb34983160
coreinit: Allocate memory heap pointers passed to __preinit_user from heap.
...
Apparently games can store these pointers and use them later in the game,
Yoshi's Wooly World exhibits this behaviour.
This means we cannot use a stack object like previously, because the stack
object was being freed and is no longer valid. We could move the stack
object up one scope and it would persist as long as the game's main thread
did, but it feels safer to just have it on the system heap.
2016-09-04 17:33:14 +01:00
James Benton
f5843f4bfb
gx2: Having no active buffer is valid.
...
Happens if GX2GetActiveDisplayList is called before anything sets up a buffer.
Star Fox Zero calls GX2GetActiveDisplayList before even GX2Init.
2016-09-04 16:54:25 +01:00
James Benton
de922e47eb
erreula: Add missing return type for ErrEulaCreate.
2016-09-04 16:51:32 +01:00
James Benton
df858d9c59
coreinit: Allow fast mutex to be locked before being initialised.
2016-09-04 15:20:17 +01:00
James Benton
2a1e54e984
gx2: Only warn when pointer passed to end display list and begin display list differ.
...
FAST Racing Neo seems to do this, the pointer passed to GX2EndDisplayList
isn't really used for anything in gx2.rpl (other than something related to
pm4 capture, which has no affect on how the game renders).
I think this is likely to be an application bug rather than one of ours.
2016-09-04 15:07:24 +01:00
Andrew Church
ecced575ac
Fix OpenGL locking errors detected by -Wshadow.
...
Also fix other shadowing warnings throughout the codebase, and
enable shadowing warnings flag by default for CMake builds (using
-Werror=shadow except in decaf-cli and decaf-sdl, where excmd.h
triggers shadowing warnings).
2016-09-04 13:20:35 +01:00
Brett Lawson
e581da48b3
ax: Implement stub for AXVoiceIsProtected.
2016-09-03 18:31:18 -07:00
Brett Lawson
915c60a1b1
ax: Update voice sampling to better match Dolphin.
...
Dolphin's implementation overall looks more accurate than
our old version. Especially since it was directly
converted from the Wii's UCodes.
2016-09-03 17:17:55 -07:00
Brett Lawson
e38a3bfb1c
ax: Fix bug cause AXGetVoiceOffsets to return garbage.
2016-09-03 16:42:32 -07:00
Brett Lawson
a7c2a03d85
ax: Ensure voices are clean for each acquisition.
2016-09-03 16:42:26 -07:00
Brett Lawson
1c2ee67378
ax: Fix FinalMixCallback to be invoked once for all devices.
2016-09-02 22:17:54 -07:00
Andrew Church
6b12762852
nn_act: Fix endianness of GetMiiName[Ex]() return strings.
2016-09-04 01:03:24 +09:00
James Benton
95cb19189e
padscore: Fix KPADReadEx to return "No Controller Connected" error code.
2016-09-03 11:50:33 +01:00
James Benton
c56a7a578c
padscore: Add more decaf_warn_stub messages.
2016-09-03 11:50:33 +01:00
Brett Lawson
959a512ae3
ax: Fix incorrect audio channel mixing.
...
This caused us to output only 1 channel audio.
2016-09-02 21:03:59 -07:00
Brett Lawson
593d1af73c
Properly initialise all thread state data.
...
This fixes the blockers on all first-party games as far
as I can tell. NSMBU gets to its menu now, and MK8 gets
far enough to initiate the state-change to the race track
(but does it then decides napping is fun and goes sleep).
2016-09-02 20:47:38 -07:00
Brett Lawson
632afb098a
Added support for logging kernel call results.
2016-09-01 20:37:05 -07:00
Brett Lawson
809a42d354
ax: Implement audio mixing for all device types.
...
Previously we only mixed for TV device 0 (which meant we
only invoked callbacks for a single one of the devices).
2016-09-01 20:36:58 -07:00
Brett Lawson
6818e70fa9
Fix odd logic in removeOpenFile.
2016-09-01 20:36:52 -07:00
Brett Lawson
b5bc72361b
ax: Fix bug with non-ADPCM sounds being header-skipped.
2016-09-02 11:24:32 -07:00
James Benton
0930753255
gx2: Minor formatting.
2016-09-02 02:01:45 +01:00
James Benton
e6617410fe
nn_act: Implement GetMiiName{Ex}.
2016-09-02 02:01:40 +01:00
James Benton
06b088a0f3
gx2: Implement GX2PatchDisplayList.
2016-09-02 02:01:35 +01:00
James Benton
2f6d38fb9b
coreinit: Add overlay arena functions.
...
This is an extra 448MB memory region which probably comes from system memory,
this is seen being used in Splatoon. We make it manual commit so we do not
waste memory on games which do not use it.
2016-09-02 02:01:30 +01:00
James Benton
b2edd86bac
Allow manual commit & uncommit of memory.
...
Additionally make Aperture memory a ManualCommit region, this means it does
not allocate 512mb for no reason on games which do not use tiling apertures.
2016-09-02 02:01:24 +01:00
James Benton
6abc8ffd38
gx2: Implement GX2DrawEx2.
...
Haven't seen a game use it yet, but might aswell since I did GX2DrawIndexedEx2...
2016-09-02 02:01:19 +01:00
James Benton
c84e19cd53
gx2: Implement GX2DrawIndexedEx2.
2016-09-02 02:01:14 +01:00
Brett Lawson
ce00304aa5
ax: Handle voice addresses properly.
2016-09-02 03:01:06 -07:00
James
cdc0aea770
Merge pull request #376 from achurch/axfx-stubs
...
snd_core: Add a few more AXFX stubs.
2016-09-02 10:44:25 +01:00
James
1632df3678
Merge pull request #375 from achurch/override
...
filesystem: Add missing "override" keywords.
2016-09-02 10:43:08 +01:00
Andrew Church
5c2099bda6
snd_core: Add a few more AXFX stubs.
2016-09-02 16:11:37 +09:00
Andrew Church
1bfb9116f5
filesystem: Add missing "override" keywords.
2016-09-02 11:22:44 +09:00
Brett Lawson
0ca14ca9b5
Add audio data format to debugger voices view.
2016-09-01 19:20:32 -07:00
James Benton
483479dd04
filesystem: Add missing file filesystem_posix_host_filehandle.cpp
2016-09-02 02:08:05 +01:00
James Benton
1e3502f827
kernel: Fix some permission shenanigans preventing default folder creation.
2016-09-02 01:58:18 +01:00
James Benton
921603aa7a
kernel: Create the Mii database folder.
...
It's either this, or we make FSWriteFile create all directories it needs.
2016-09-02 01:49:30 +01:00
James Benton
53116baa0c
kernel: Set mlc/usr path to ReadWrite permissions.
2016-09-02 01:49:03 +01:00
James Benton
6ca9168561
nn_save: Fix save directory.
2016-09-02 01:48:38 +01:00
James Benton
bb3bdb29e1
nn_save: Handle account CurrentUserSlot.
2016-09-02 01:35:01 +01:00
James Benton
47f9b36514
sysapp: Implement SYSGetSystemApplicationTitleId{ByProdArea}.
2016-09-02 01:35:01 +01:00
James Benton
34cd5982da
decaf: Rewrite filesystem.
...
Adds support for writing files to host file system.
Adds file permissions to prevent corruption of game files.
2016-09-02 01:34:22 +01:00
Brett Lawson
3b4f8b90be
Add check to prevent double-registering AX callbacks.
2016-09-01 13:29:46 -07:00
Brett Lawson
e0b892a543
Added missing register for AXDeregisterAppFrameCallback.
2016-09-01 13:29:46 -07:00
Brett Lawson
cd376777b9
Return a SystemApplicationTitleId that is likely more accurate.
2016-09-01 13:29:45 -07:00
Brett Lawson
bf7fbde9ba
Improve some log message levels.
2016-09-01 13:29:45 -07:00
Brett Lawson
b9e1253d07
Implement WPADControlMotor function to do nothing.
2016-09-01 13:29:44 -07:00