aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hw
Commit message (Collapse)AuthorAge
...
* | Asserts: break/crash program, fit to style guide; log.h->assert.hGravatar archshift2015-02-10
| | | | | | | | | | | | | | Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time) As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing) Also removed some GEKKO cruft.
* | core: Fix some warnings on OSXGravatar Lioncash2015-02-03
| |
* | GPU: Fix buffer overrun in Display TransfersGravatar Yuri Kunde Schlesner2015-01-14
| | | | | | | | | | | | | | | | | | | | | | | | 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 CoreTimingGravatar Yuri Kunde Schlesner2015-01-14
| |
* | GPU: Correct wrong default framebuffer address for sub-screen.Gravatar Yuri Kunde Schlesner2015-01-14
| | | | | | | | | | It appears this is a mistake, since the sub-screen has no right framebuffer.
* | GPU: Fire GPU interrupts at the correct places.Gravatar Yuri Kunde Schlesner2015-01-14
|/ | | | | | | | | | | | 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 falloutGravatar Yuri Kunde Schlesner2015-01-09
|
* DSP: Signal (faked) interrupt on every frame.Gravatar bunnei2015-01-05
| | | | - Hack to work around games checking that the DSP event has been signaled by a real DSP interrupt.
* GPU: Pseudo-implement horizontal scaling.Gravatar Tony Wasserka2014-12-31
| | | | | 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.Gravatar bunnei2014-12-28
|
* GPU: Further improve synchronization.Gravatar bunnei2014-12-25
|
* License changeGravatar purpasmart962014-12-20
|
* Convert old logging calls to new logging macrosGravatar Yuri Kunde Schlesner2014-12-13
|
* GPU: Fixed bug in command list size decoding.Gravatar bunnei2014-12-09
|
* Remove unused NDMA moduleGravatar Yuri Kunde Schlesner2014-12-09
|
* Fixed formatting and switch statement warningsGravatar vaguilar2014-11-27
|
* Remove trailing spaces in every file but the ones imported from SkyEye, AOSP ↵Gravatar Emmanuel Gil Peyrot2014-11-19
| | | | or generated
* Merge pull request #162 from SeannyM/warning-fixesGravatar bunnei2014-10-29
|\ | | | | Fix some warnings
| * Fix some warningsGravatar Sean2014-10-29
| |
* | Renamed souce files of services to match port namesGravatar Gareth Poole2014-10-29
|/
* Added `gpu_refresh_rate` config setting for the new interpreter speed hack.Gravatar archshift2014-10-27
|
* Use configuration files to enable or disable the new dyncom interpreter.Gravatar archshift2014-10-27
|
* Rename GPU::Regs::FramebufferFormat to PixelFormatGravatar Yuri Kunde Schlesner2014-10-12
| | | | | | 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_coreGravatar Lioncash2014-10-07
|
* Core: Fix warnings in gpu.cppGravatar Lioncash2014-09-13
|
* core: Prune redundant includesGravatar archshift2014-09-08
|
* GPU: Improve frame synchronization, increases compatibility with both ↵Gravatar bunnei2014-08-30
| | | | homebrew and retail applications.
* VideoCore: Fixes rendering issues on Qt and corrects framebuffer output size.Gravatar bunnei2014-08-26
|
* GPU: Fix a compiler warning about redundant semicolons.Gravatar Tony Wasserka2014-08-25
|
* Pica: Add command processor.Gravatar Tony Wasserka2014-08-12
|
* Pica/GPU: Change hardware registers to use physical addresses rather than ↵Gravatar Tony Wasserka2014-08-12
| | | | | | | virtual ones. 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.Gravatar Tony Wasserka2014-08-12
| | | | | 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 ↵Gravatar bunnei2014-08-06
| | | | tick count of last vertical line).
* GPU: Updated horizontal sync line counter to use framebuffer height.Gravatar bunnei2014-08-06
|
* GSP: Removed dumb GX prefixes to functions/structs in GSP namespace.Gravatar bunnei2014-08-05
| | | | - Various other cleanups.
* GSP: Implements preliminary command synchronization via GPU interrupts.Gravatar bunnei2014-08-05
| | | | Core: Added a comment to explain the logic for the RunLoop iterations.
* Use uniform formatting when printing hexadecimal numbers.Gravatar Tony Wasserka2014-07-23
|
* Fix a few warnings.Gravatar Tony Wasserka2014-07-23
| | | | Templates shouldn't be marked as inline if they aren't defined in the header.
* GPU: Clarify display transfer code.Gravatar Tony Wasserka2014-07-23
| | | | Also makes the illogical component order more obvious.
* GPU: Add documentation.Gravatar Tony Wasserka2014-07-23
|
* RegisterSet: Simplify code by using structs for register definition instead ↵Gravatar Tony Wasserka2014-07-23
| | | | of unions.
* GPU: Make use of RegisterSet.Gravatar Tony Wasserka2014-07-23
|
* GPU: Make framebuffer code format-aware.Gravatar Tony Wasserka2014-07-23
|
* GPU: Interface cleanup.Gravatar Tony Wasserka2014-07-23
|
* GPU: Initialize GPU registers to some sensible default state.Gravatar Tony Wasserka2014-07-23
|
* GPU: Emulate memory fills.Gravatar Tony Wasserka2014-07-23
|
* GPU: Add proper framebuffer register handling.Gravatar Tony Wasserka2014-07-23
|
* GPU: Properly implement display transfers.Gravatar Tony Wasserka2014-07-23
|
* GPU: Add display transfer configuration.Gravatar Tony Wasserka2014-07-23
|
* GSP: HLE GXCommandId::SET_DISPLAY_TRANSFER and GXCommandId::SET_TEXTURE_COPY.Gravatar Tony Wasserka2014-07-23
|