Subv
8a9a4e2c42
GPU/Warnings: Explicitly cast the screen refresh ticks to u64.
8 years ago
wwylele
85a448d405
gpu: add comments for TextureCopy
9 years ago
wwylele
bf16c73260
gpu: fix edge cases for TextureCopy
9 years ago
Yuri Kunde Schlesner
fb1979d7e2
Core: Re-write frame limiter
Now based on std::chrono, and also works in terms of emulated time
instead of frames, so we can in the future frame-limit even when the
display is disabled, etc.
The frame limiter can also be enabled along with v-sync now, which
should be useful for those with displays running at more than 60 Hz.
9 years ago
Yuri Kunde Schlesner
c75ae6c585
Add performance statistics to status bar
9 years ago
wwylele
47960b0659
CoreTiming: use named constant for ARM11 clock rate
9 years ago
wwylele
3c333c53f1
HID: manages updating itself using correct ticks
9 years ago
Lioncash
963aedd8cc
Add all services to the Service namespace
Previously there was a split where some of the services were in the
Service namespace and others were not.
9 years ago
Subv
5719467add
Fixed the gpu command list size when creating CiTraces.
9 years ago
emmauss
c4e4fa53d9
Implement Frame rate limiter ( #2223 )
* implement frame limiter
* fixes
9 years ago
Emmanuel Gil Peyrot
0820c99462
GPU: Remove the broken frame_skip option.
Fixes #1960 .
9 years ago
wwylele
58ae94af4c
gpu: DisplayTransfer: a less amazing algorithm for flip
the old implementation modifies the loop variable in the loop. Though it actually works, it is really confusing. Makes it morereadable now.
9 years ago
wwylele
30ab0fa45d
gpu: keep the old signal strategy for null pointer
previous commits changes the behaviour of interrupt when meeting invalid params. Regresses to the same behaviour as before
needs more hwtest
9 years ago
wwylele
48470e57fc
gpu: add validity check for TextureCopy, DisplayTransfer and FillMemory
prevent further operation with invalid values which may cause assertion failure or divided by zero.
needs more hwtest
9 years ago
wwylele
c88cdc9a2b
gpu: move MemoryFill, TextureCopy and DisplayTransfer into functions
The old code indented too much to read. Split into functions and do general cleanup.
9 years ago
Yuri Kunde Schlesner
84fbbe2629
Use negative priorities to avoid special-casing the self-include
9 years ago
Emmanuel Gil Peyrot
ebdae19fd2
Remove empty newlines in #include blocks.
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
9 years ago
Emmanuel Gil Peyrot
dc8479928c
Sources: Run clang-format on everything.
9 years ago
Alexander Laties
0a31e373f1
fixup simple type conversions where possible
10 years ago
tfarley
22f3a7e94c
HWRasterizer: Texture forwarding
10 years ago
Lioncash
bf76afc68d
renderer_base: Don't directly expose the rasterizer unique_ptr
There's no reason to allow direct access to the unique_ptr instance. Only
its contained pointer.
10 years ago
MerryMage
8b00954ec7
AudioCore: Skeleton Implementation
This commit:
* Adds a new subproject, audio_core.
* Defines structures that exist in DSP shared memory.
* Hooks up various other parts of the emulator into audio core.
This sets the foundation for a later HLE DSP implementation.
10 years ago
MerryMage
6c71858c5c
BitField: Make trivially copyable and remove assignment operator
10 years ago
Yuri Kunde Schlesner
195fedccf0
VideoCore: Unify interface to OpenGL and SW rasterizers
This removes explicit checks sprinkled all over the codebase to instead
just have the SW rasterizer expose an implementation with no-ops for
most operations.
10 years ago
Yuri Kunde Schlesner
03835d04f4
VideoCore: Rename HWRasterizer methods to be less confusing
10 years ago
Yuri Kunde Schlesner
0fcabd2b11
Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
11 years ago
Yuri Kunde Schlesner
9ae5a09655
GPU: Implement TextureCopy-mode display transfers
Fixes glitchy garbage in Fire Emblem 3D scenes.
11 years ago
Subv
6c0ea5f5e8
Qt/GPU Breakpoints: Added three more breakpoint types:
* IncomingDisplayTransfer: Triggered just before a display transfer is performed.
* GSPCommandProcessed: Triggered right after a GSP command is processed.
* BufferSwapped: Triggered when the frames flip
11 years ago
Subv
63dbff9b1f
GPU/DisplayTransfer: Implemented bit 5 in the transfer flags.
It tells the GPU to not swizzle/de-swizzle the input during the transfer.
11 years ago
Tony Wasserka
902fa4da52
Add CiTrace recording support.
This is exposed in the GUI as a new "CiTrace Recording" widget.
Playback is implemented by a standalone 3DS homebrew application (which only runs reliably within Citra currently; on an actual 3DS it will often crash still).
11 years ago
Tony Wasserka
93d66475d4
GPU: Be robust against nullptr addresses; properly reset busy bits in the trigger registers.
11 years ago
Emmanuel Gil Peyrot
641e78bccf
GPU: Implement blended downscaling for display transfers.
11 years ago
Emmanuel Gil Peyrot
8ee814ec27
GPU: Use shifts instead of multiplications to calculate the actual size of the output.
11 years ago
Emmanuel Gil Peyrot
4964a359e1
Core: Cleanup hw includes.
11 years ago
Emmanuel Gil Peyrot
45c4781544
CitraQt: Cleanup includes.
11 years ago
archshift
76690392bf
Move video_core/color.h to common/color.h
11 years ago
Yuri Kunde Schlesner
d65b42a69a
Remove gpu_refresh_rate configuration option
Changing it makes emulation inherently inaccurate. It also had a wrong
default value (30, whereas the real system has a refresh rate of 60 Hz)
which, even if changed, would continue to be used unless people manually
removed it from their config files.
11 years ago
Emmanuel Gil Peyrot
b1503b2020
Remove every trailing whitespace from the project (but externals).
11 years ago
tfarley
05dc633a8c
OpenGL renderer
11 years ago
Yuri Kunde Schlesner
7ada357b2d
Memmap: Re-organize memory function in two files
memory.cpp/h contains definitions related to acessing memory and
configuring the address space
mem_map.cpp/h contains higher-level definitions related to configuring
the address space accoording to the kernel and allocating memory.
11 years ago
Yuri Kunde Schlesner
17a8cae003
Memory: Add GetPhysicalPointer helper function
11 years ago
bunnei
57aaaf92db
HW: Properly initialize and shutdown all modules.
11 years ago
Lioncash
7da90dee42
gpu: Fix a missing format specifier
11 years ago
purpasmart96
198c0ddc72
Services: Stubs and minor changes
11 years ago
Subv
23b401c3ac
GPU/DisplayTransfer: Made the scaling bits a single 2bit value
Rephrased some comments.
11 years ago
Subv
fb8f47060b
GPU: Implemented the flip_data (bit 0) bit in display transfers.
11 years ago
bunnei
d61b26b79f
HID: Complete refactor of pad/touch input to fix threading issues.
11 years ago
Subv
ae0dfcae1d
GPU: Fixed the bit 25 in the display transfer flags.
It is used to downscale the input image horizontally and vertically, previously we were only downscaling it vertically so this caused a hard-to-debug memory corruption problem.
11 years ago
Subv
1248e291f0
GPU: Added the stencil test structure to the Pica Regs struct.
11 years ago
Subv
414b0741c4
GPU: Implemented more depth buffer formats.
This fixes the horizontal lines in Picross E, Cubic Ninja, Cave Story 3D and possibly others
11 years ago