Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | GPU: Fix buffer overrun in Display Transfers | Yuri Kunde Schlesner | 2015-01-14 | 1 | -9/+12 |
| | | | | | | | | | | | | Display transfers with the horizontal downscaling flag were calculating the wrong output size, causing them to write double the amount of data intended. It is likely that this was perceived as correct due to a separate bug in calculating source indices which caused the image to be padded unless the previous bug was present. This fixes both issues, correcting flickering issues in 3dscraft, blargSnes and more (caused by the transfer overwriting the back buffer which followed) as well as potentially fixing other crashes. | ||||
* | GPU: Do periodic VBlank updates using CoreTiming | Yuri Kunde Schlesner | 2015-01-14 | 3 | -51/+44 |
| | |||||
* | GPU: Correct wrong default framebuffer address for sub-screen. | Yuri Kunde Schlesner | 2015-01-14 | 1 | -2/+2 |
| | | | | | It appears this is a mistake, since the sub-screen has no right framebuffer. | ||||
* | GPU: Fire GPU interrupts at the correct places. | Yuri Kunde Schlesner | 2015-01-14 | 1 | -15/+18 |
| | | | | | | | | | | | | 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. | ||||
* | Move ThreadContext to core/core.h and deal with the fallout | Yuri Kunde Schlesner | 2015-01-09 | 1 | -0/+2 |
| | |||||
* | DSP: Signal (faked) interrupt on every frame. | bunnei | 2015-01-05 | 1 | -1/+7 |
| | | | | - Hack to work around games checking that the DSP event has been signaled by a real DSP interrupt. | ||||
* | GPU: Pseudo-implement horizontal scaling. | Tony Wasserka | 2014-12-31 | 2 | -1/+8 |
| | | | | | It's not really known how this actually works. Some testing has shown that this probably performs no filtering, and common usage in games suggests it's not actually resizing the image at all. However, this patch does seem to fix some homebrew showing quasi-duplicated images while still keeping other applications in a working state. | ||||
* | GPU: Implement frameskip and remove forced framebuffer swap hack. | bunnei | 2014-12-29 | 2 | -27/+37 |
| | |||||
* | GPU: Further improve synchronization. | bunnei | 2014-12-26 | 1 | -22/+20 |
| | |||||
* | License change | purpasmart96 | 2014-12-21 | 4 | -4/+4 |
| | |||||
* | Convert old logging calls to new logging macros | Yuri Kunde Schlesner | 2014-12-13 | 2 | -12/+12 |
| | |||||
* | GPU: Fixed bug in command list size decoding. | bunnei | 2014-12-10 | 2 | -3/+2 |
| | |||||
* | Remove unused NDMA module | Yuri Kunde Schlesner | 2014-12-09 | 3 | -86/+0 |
| | |||||
* | Fixed formatting and switch statement warnings | vaguilar | 2014-11-27 | 3 | -5/+5 |
| | |||||
* | Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated | Emmanuel Gil Peyrot | 2014-11-19 | 1 | -3/+3 |
| | |||||
* | Merge pull request #162 from SeannyM/warning-fixes | bunnei | 2014-10-30 | 3 | -6/+6 |
|\ | | | | | Fix some warnings | ||||
| * | Fix some warnings | Sean | 2014-10-30 | 3 | -6/+6 |
| | | |||||
* | | Renamed souce files of services to match port names | Gareth Poole | 2014-10-29 | 1 | -1/+1 |
|/ | |||||
* | Added `gpu_refresh_rate` config setting for the new interpreter speed hack. | archshift | 2014-10-28 | 1 | -10/+1 |
| | |||||
* | Use configuration files to enable or disable the new dyncom interpreter. | archshift | 2014-10-28 | 2 | -3/+16 |
| | |||||
* | Rename GPU::Regs::FramebufferFormat to PixelFormat | Yuri Kunde Schlesner | 2014-10-12 | 2 | -14/+10 |
| | | | | | | This name better represents what the enum does, and is less overloaded in the context. (The whole register the enum is part of is also called 'format'.) | ||||
* | Fix warnings in video_core | Lioncash | 2014-10-08 | 2 | -3/+3 |
| | |||||
* | Core: Fix warnings in gpu.cpp | Lioncash | 2014-09-14 | 1 | -6/+6 |
| | |||||
* | core: Prune redundant includes | archshift | 2014-09-09 | 3 | -4/+0 |
| | |||||
* | GPU: Improve frame synchronization, increases compatibility with both homebrew and retail applications. | bunnei | 2014-08-31 | 1 | -13/+31 |
| | |||||
* | VideoCore: Fixes rendering issues on Qt and corrects framebuffer output size. | bunnei | 2014-08-26 | 1 | -9/+8 |
| | |||||
* | GPU: Fix a compiler warning about redundant semicolons. | Tony Wasserka | 2014-08-25 | 1 | -2/+2 |
| | |||||
* | Pica: Add command processor. | Tony Wasserka | 2014-08-12 | 1 | -3/+5 |
| | |||||
* | Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones. | Tony Wasserka | 2014-08-12 | 2 | -150/+18 |
| | | | | | This cleans up the mess that address reading/writing had become and makes the code a *lot* more sensible. This adds a physical<->virtual address converter to mem_map.h. For further accuracy, we will want to properly extend this to support a wider range of address regions. For now, this makes simply homebrew applications work in a good manner though. | ||||
* | Remove the fancy RegisterSet class introduced in 4c2bff61e. | Tony Wasserka | 2014-08-12 | 2 | -132/+212 |
| | | | | | While it was some nice and fancy template usage, it ultimately had many practical issues regarding length of involved expressions under regular usage as well as common code completion tools not being able to handle the structures. Instead, we now use a more conventional approach which is a lot more clean to use. | ||||
* | GPU: Updated g_last_ticks variable to be more descriptive (represents CPU tick count of last vertical line). | bunnei | 2014-08-07 | 1 | -5/+5 |
| | |||||
* | GPU: Updated horizontal sync line counter to use framebuffer height. | bunnei | 2014-08-07 | 1 | -2/+3 |
| | |||||
* | GSP: Removed dumb GX prefixes to functions/structs in GSP namespace. | bunnei | 2014-08-06 | 1 | -2/+2 |
| | | | | - Various other cleanups. | ||||
* | GSP: Implements preliminary command synchronization via GPU interrupts. | bunnei | 2014-08-06 | 1 | -3/+19 |
| | | | | Core: Added a comment to explain the logic for the RunLoop iterations. | ||||
* | Use uniform formatting when printing hexadecimal numbers. | Tony Wasserka | 2014-07-23 | 1 | -3/+3 |
| | |||||
* | Fix a few warnings. | Tony Wasserka | 2014-07-23 | 2 | -4/+4 |
| | | | | Templates shouldn't be marked as inline if they aren't defined in the header. | ||||
* | GPU: Clarify display transfer code. | Tony Wasserka | 2014-07-23 | 1 | -12/+15 |
| | | | | Also makes the illogical component order more obvious. | ||||
* | GPU: Add documentation. | Tony Wasserka | 2014-07-23 | 1 | -2/+14 |
| | |||||
* | RegisterSet: Simplify code by using structs for register definition instead of unions. | Tony Wasserka | 2014-07-23 | 2 | -133/+123 |
| | |||||
* | GPU: Make use of RegisterSet. | Tony Wasserka | 2014-07-23 | 2 | -306/+172 |
| | |||||
* | GPU: Make framebuffer code format-aware. | Tony Wasserka | 2014-07-23 | 1 | -6/+47 |
| | |||||
* | GPU: Interface cleanup. | Tony Wasserka | 2014-07-23 | 2 | -13/+20 |
| | |||||
* | GPU: Initialize GPU registers to some sensible default state. | Tony Wasserka | 2014-07-23 | 1 | -1/+16 |
| | |||||
* | GPU: Emulate memory fills. | Tony Wasserka | 2014-07-23 | 2 | -2/+80 |
| | |||||
* | GPU: Add proper framebuffer register handling. | Tony Wasserka | 2014-07-23 | 2 | -11/+105 |
| | |||||
* | GPU: Properly implement display transfers. | Tony Wasserka | 2014-07-23 | 1 | -1/+19 |
| | |||||
* | GPU: Add display transfer configuration. | Tony Wasserka | 2014-07-23 | 2 | -0/+92 |
| | |||||
* | GSP: HLE GXCommandId::SET_DISPLAY_TRANSFER and GXCommandId::SET_TEXTURE_COPY. | Tony Wasserka | 2014-07-23 | 1 | -0/+8 |
| | |||||
* | Use a more compatible choice of initial framebuffer addresses. | Tony Wasserka | 2014-07-22 | 1 | -10/+22 |
| | |||||
* | Merge branch 'threading' of https://github.com/bunnei/citra | bunnei | 2014-06-14 | 2 | -2/+3 |
|\ | | | | | | | | | | | Conflicts: src/core/hle/function_wrappers.h src/core/hle/service/gsp.cpp | ||||
| * | Core: Cleaned up SingleStep(), updated default LCD refresh to assume each instruction is ~3 cycles | bunnei | 2014-06-13 | 1 | -1/+2 |
| | | |||||
| * | lcd: moved kFrameTicks to lcd.h for use in other modules | bunnei | 2014-05-29 | 2 | -2/+2 |
| | | |||||
* | | GPU: Cleanup register definitions. | Tony Wasserka | 2014-06-12 | 2 | -28/+28 |
| | | |||||
* | | Rename LCD to GPU. | Tony Wasserka | 2014-06-12 | 4 | -20/+20 |
| | | |||||
* | | Pica: Add command list registers. | Tony Wasserka | 2014-06-12 | 2 | -5/+52 |
|/ | |||||
* | lcd: added thread wait after (faked) vblank interrupt (would have) occurred | bunnei | 2014-05-23 | 1 | -0/+4 |
| | |||||
* | added code to LCD modules keep track of framebuffer location in FCRAM or VRAM | bunnei | 2014-04-27 | 2 | -15/+153 |
| | |||||
* | - changed HW IO map to use virtual addresses | bunnei | 2014-04-26 | 2 | -39/+51 |
| | | | | - added hooks to catch LCD IO read/writes | ||||
* | added (fake) physical addresses for where to put framebuffer in VRAM | bunnei | 2014-04-26 | 1 | -0/+10 |
| | |||||
* | renamed hw_lcd module to just lcd | bunnei | 2014-04-18 | 3 | -2/+2 |
| | |||||
* | added NDMA hardware interface | bunnei | 2014-04-18 | 3 | -2/+133 |
| | |||||
* | fixed hw write declarations to not be const | bunnei | 2014-04-13 | 1 | -4/+4 |
| | |||||
* | updated logging message | bunnei | 2014-04-11 | 1 | -2/+2 |
| | |||||
* | cleaned up some logging messages | bunnei | 2014-04-11 | 1 | -4/+4 |
| | |||||
* | fixed project includes to use new directory structure | bunnei | 2014-04-09 | 4 | -9/+14 |
| | |||||
* | got rid of 'src' folders in each sub-project | bunnei | 2014-04-09 | 4 | -0/+164 |