Lioncash
d04e1ad75c
core/video_core: Don't cast away const in subscript operators
Not to say these subscript operators aren't totally ugly as is.
10 years ago
Yuri Kunde Schlesner
209113743f
GPU: Implement TextureCopy-mode display transfers
Fixes glitchy garbage in Fire Emblem 3D scenes.
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
Emmanuel Gil Peyrot
4964a359e1
Core: Cleanup hw includes.
11 years ago
Yuri Kunde Schlesner
e1fbac3ca1
Common: Remove common.h
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
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
archshift
041e99b613
Added LCD registers, and implementation for color filling in OGL code.
11 years ago
Subv
0abba5874c
GPU: Use the correct position for the finished bit in memory fills
11 years ago
Subv
a762f9c176
GPU: Corrected the 24 bit memory fills component order
11 years ago
archshift
7f9ee69a2b
Added RGBA5551 compatibility in the rasterizer
This allows Virtual Console games to display properly.
11 years ago
Subv
c564c21668
GPU: Implemented bits 3 and 1 from the display transfer flags.
Bit 3 is used to specify a raw copy, where no processing is done to the data, seems to behave exactly as a DMA.
Bit 1 is used to specify whether to convert from a tiled format to a linear format or viceversa.
11 years ago
archshift
302f0b32f5
Remove duplication of INSERT_PADDING_WORDS between pica.h and gpu.h
11 years ago
Tony Wasserka
0da6a7e234
GPU: Properly implement memory fills.
11 years ago
Emmanuel Gil Peyrot
c439b3074d
video_core: Implement the remaining framebuffer formats in the OpenGL renderer.
11 years ago
Yuri Kunde Schlesner
9e084826b8
GPU: Do periodic VBlank updates using CoreTiming
11 years ago
Tony Wasserka
18a5e888bb
GPU: Pseudo-implement horizontal scaling.
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.
11 years ago
bunnei
3b9d181b8e
GPU: Implement frameskip and remove forced framebuffer swap hack.
11 years ago
purpasmart96
ebfd831ccb
License change
11 years ago
bunnei
170123982d
GPU: Fixed bug in command list size decoding.
11 years ago
archshift
0783498f57
Use configuration files to enable or disable the new dyncom interpreter.
11 years ago
Yuri Kunde Schlesner
fec7f6b035
Rename GPU::Regs::FramebufferFormat to PixelFormat
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'.)
11 years ago
Lioncash
eb5054e6eb
Fix warnings in video_core
11 years ago
Tony Wasserka
941762a573
GPU: Fix a compiler warning about redundant semicolons.
12 years ago
Tony Wasserka
7b6a7d7dfb
Pica/GPU: Change hardware registers to use physical addresses rather than 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.
12 years ago
Tony Wasserka
9c781a6c76
Remove the fancy RegisterSet class introduced in 4c2bff61e.
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.
12 years ago
Tony Wasserka
afcb250b31
Fix a few warnings.
Templates shouldn't be marked as inline if they aren't defined in the header.
12 years ago
Tony Wasserka
61e2ffd448
GPU: Add documentation.
12 years ago
Tony Wasserka
246cb75584
RegisterSet: Simplify code by using structs for register definition instead of unions.
12 years ago
Tony Wasserka
75775e9ef4
GPU: Make use of RegisterSet.
12 years ago
Tony Wasserka
9d618d0b70
GPU: Interface cleanup.
12 years ago
Tony Wasserka
baf0aa04f5
GPU: Emulate memory fills.
12 years ago
Tony Wasserka
0b4055c152
GPU: Add proper framebuffer register handling.
12 years ago
Tony Wasserka
16bbc4f81b
GPU: Add display transfer configuration.
12 years ago
Tony Wasserka
ec9511e1db
GSP: HLE GXCommandId::SET_DISPLAY_TRANSFER and GXCommandId::SET_TEXTURE_COPY.
12 years ago
Tony Wasserka
994d29f416
Use a more compatible choice of initial framebuffer addresses.
12 years ago
Tony Wasserka
d4530765ce
GPU: Cleanup register definitions.
12 years ago
Tony Wasserka
1dfa392824
Rename LCD to GPU.
12 years ago
Tony Wasserka
b1c8bad9a6
Pica: Add command list registers.
12 years ago
bunnei
46aef01d04
lcd: moved kFrameTicks to lcd.h for use in other modules
12 years ago
bunnei
f0525a1eb4
added code to LCD modules keep track of framebuffer location in FCRAM or VRAM
12 years ago
bunnei
25d595d869
added (fake) physical addresses for where to put framebuffer in VRAM
12 years ago
bunnei
70c2cce963
renamed hw_lcd module to just lcd
12 years ago
bunnei
de0a034a84
fixed project includes to use new directory structure
12 years ago
bunnei
63e46abdb8
got rid of 'src' folders in each sub-project
12 years ago
bunnei
c0796cf762
fixed all license file headers in core
12 years ago
bunnei
9c2355ba4f
added a module for interfacing to hardware LCD
12 years ago