Commit graph

1618 commits

Author SHA1 Message Date
Yuri Kunde Schlesner 5961a2852d GSP: Update framebuffer info on all interrupts
Hardware testing determined that the GSP processes shared memory
framebuffer update info even when no memory transfer or filling GX
commands are used. They are now updated on every interrupt, which isn't
confirmed correct but matches hardware behaviour more closely.

This also reverts the hack introduced in #404. It made a few games
behave better, but I believe it's incorrect and also breaks other games.
2015-01-14 05:20:12 -02:00
Yuri Kunde Schlesner 98e3274935 GPU: Fire GPU interrupts at the correct places.
PDC0 and PDC1 are both VBlank interrupts. PDC0 was being treated as a
HBlank interrupt and fired many more times than it should. They now both
fire together at 60 Hz. This puzzlingly *improves* apparent framerate on
many applications.

A few other interrupts were being fired inside the GSP command
processing instead of on the actual GPU register writes, so they were
moved there, which should cover direct writes tho those registers not
going through the GX command queue.
2015-01-14 05:07:35 -02:00
bunnei 93f36c49f7 Merge pull request #473 from archshift/pp3ports
Pica/Rasterizer: Add ETC1 texture decompression support.
2015-01-13 18:11:18 -05:00
Tony Wasserka f2b74b4fb3 Pica/Rasterizer: Add ETC1 texture decompression support. 2015-01-13 14:42:40 -08:00
bunnei 7bbd027660 Merge pull request #479 from Subv/hm
Services: Added some missing services.
2015-01-13 17:39:33 -05:00
Subv cf071cd897 Services: Added some missing services.
cfg:s, ptm:sysm, apt:s.
apt:s is almost exactly the same as apt:u as per 3dbrew
2015-01-13 14:43:30 -05:00
bunnei 682e6bc8d9 Merge pull request #477 from lioncash/vfp
vfp: Remove dead code
2015-01-12 21:56:49 -05:00
bunnei 99c0716d4d Merge pull request #478 from archshift/pp3ports4
Pica/VertexShader: Implement the MAD instruction.
2015-01-12 21:55:35 -05:00
bunnei 65c12d2430 Merge pull request #470 from archshift/master
Pica/VertexShader: Implement JMPC/JMPU/CALLC/CALLU.
2015-01-12 21:45:38 -05:00
Tony Wasserka 2b9a9a45b7 Pica/VertexShader: Implement JMPC/JMPU/CALLC/CALLU. 2015-01-12 15:47:21 -08:00
Tony Wasserka e02db3904b Pica/VertexShader: Implement the MAD instruction. 2015-01-12 15:34:36 -08:00
Lioncash 9288893d29 vfp: Remove dead code 2015-01-12 15:24:57 -05:00
bunnei 86e8ff85c9 Merge pull request #476 from lioncash/asr
dyncom: Fix 32-bit ASR shifts for immediates
2015-01-12 14:52:01 -05:00
Lioncash f7770b83d4 dyncom: Fix 32-bit ASR shifts for immediates 2015-01-12 14:15:24 -05:00
bunnei ac05c4acb0 Merge pull request #475 from lioncash/cleanup
dyncom: Remove unused flag macros
2015-01-12 13:57:32 -05:00
Lioncash e16b35eb53 dyncom: Remove unused flag macros 2015-01-12 12:57:15 -05:00
bunnei 3683369500 Merge pull request #461 from archshift/callstack
Qt Callstack: Clear the callstack every time it's updated
2015-01-12 10:35:45 -05:00
bunnei f3a7b66267 Merge pull request #472 from lioncash/overflow
dyncom: Fix some more V-flag setting ops. Plus some cleanup.
2015-01-12 10:35:19 -05:00
Lioncash 2843d1b98b dyncom: Get rid of unnecessary outer-scope variables in InterpreterMainLoop 2015-01-12 01:11:46 -05:00
Lioncash 3ace75a49f dyncom: Fix overflow flag setting for ADD/RSB/RSC/SUB/SBC
Also cleans up CMN, and CMP.
2015-01-12 01:03:58 -05:00
archshift d670b7e522 Qt Callstack: Clear the callstack every time it's updated
This fixes the issue that old members of the callstack would stick around, even when the callstack shortened.
2015-01-11 21:47:28 -08:00
bunnei 2f7069f9bd Merge pull request #452 from darkf/mingwagain
Fix MinGW build, again
2015-01-12 00:44:45 -05:00
Lioncash 9c2c89b7e1 dyncom: Add a helper function for addition with a carry 2015-01-12 00:44:28 -05:00
darkf 67c644e317 Fix building on MinGW 2015-01-11 20:22:08 -08:00
bunnei eacc2a501b Merge pull request #468 from lioncash/adc
dyncom: Fix ADC overflow flag setting
2015-01-11 22:43:03 -05:00
bunnei 03080ee3f6 Added AppVeyor build status 2015-01-11 22:35:32 -05:00
Lioncash d2a05bbbc6 dyncom: Fix ADC overflow flag setting 2015-01-11 22:27:09 -05:00
bunnei b33380ca59 Merge pull request #456 from Subv/waitsync1
SVC: Wake up the thread after the delay in WaitSync1
2015-01-11 18:52:09 -05:00
bunnei 1da04a72a2 Merge pull request #467 from lioncash/msr
dyncom: Fix conditional execution of MSR
2015-01-11 18:51:03 -05:00
Lioncash eabfa5cf43 dyncom: Fix conditional execution of MSR 2015-01-11 18:45:45 -05:00
Tony Wasserka f1080de47d Merge pull request #437 from Kingcom/DebugMode
Replace OnCpuStepped signal
2015-01-11 21:28:18 +01:00
Kingcom 2bbc12e6c3 citra-qt: Replace OnCpuStepped signal by new signals DebugModeEntered and DebugModeLeft 2015-01-11 21:22:51 +01:00
bunnei b42386413f Merge pull request #465 from chinhodado/appveyor
Add appveyor.yml for AppVeyor support
2015-01-11 15:20:14 -05:00
bunnei 542b0b0057 Merge pull request #466 from Subv/wake
Thread: Prevent waking a thread multiple times.
2015-01-11 13:39:23 -05:00
chinhodado 8437aff16b AppVeyor: Use shallow clone 2015-01-11 13:29:39 -05:00
Subv b68d51ed30 Thread: Prevent waking a thread multiple times.
If a thread was woken up by something, cancel the wakeup timeout.
2015-01-11 13:18:52 -05:00
Chin 7091b7b518 Add appveyor.yml 2015-01-11 12:33:44 -05:00
bunnei 63d05fca36 Merge pull request #457 from Subv/qt
citra-qt: Fixed some Qt errors on initialization
2015-01-11 10:59:53 -05:00
Subv 38da198aa1 SVC: Wake up the thread after the delay in WaitSync1 2015-01-11 10:42:59 -05:00
bunnei 7de1b02bc1 Merge pull request #462 from archshift/isbusy
Stubbed y2r:u IsBusyConversion
2015-01-11 10:18:16 -05:00
archshift 3b555e2512 Stubbed y2r:u IsBusyConversion
There is no documentation available on this function, but we set the result to false as a stub.
This allows Super Little Acorns to move all the way in game with pp3c.
2015-01-10 22:47:31 -08:00
bunnei c6906319f3 Merge pull request #459 from archshift/logs
Small additions and fixes to logging
2015-01-11 00:57:48 -05:00
bunnei 463d0a373b Merge pull request #460 from chinhodado/revert-319-travis-apt-cache
Revert "Travis: Enable caching of dependencies"
2015-01-11 00:19:10 -05:00
chinhodado b8801a8e4e Revert "Travis: Enable caching of dependencies" 2015-01-10 21:22:03 -05:00
archshift 95be6ad7ae Added Archive ID to fs:USER debug logs involving opening the archive. 2015-01-10 14:32:11 -08:00
archshift 228843c43e Logging: Log all called service functions (under trace). Compile out all trace logs under release for performance. 2015-01-10 14:32:10 -08:00
bunnei 083072de56 Merge pull request #458 from yuriks/cmake-debug
CMake: Consistently set _DEBUG and NDEBUG in all platforms
2015-01-10 16:04:56 -05:00
Subv 115a4bfc9e citra-qt: Add explicit casts to prevent some warnings. 2015-01-10 15:55:52 -05:00
Yuri Kunde Schlesner 57503df97f CMake: Consistently set _DEBUG and NDEBUG in all platforms 2015-01-10 18:42:24 -02:00
Subv 1b01938767 citra-qt: Fixed some Qt errors on initialization 2015-01-10 15:35:26 -05:00