Commit Graph

21570 Commits

Author SHA1 Message Date
Jannik Vogel f9ba5b9c8c psh: Final combiner G input is a scalar 2019-02-18 11:43:20 -07:00
Jannik Vogel 52f897aa17 psh: Use vec4 for all registers 2019-02-18 11:43:20 -07:00
Jannik Vogel d225ff7a98 psh: Use float for alpha, vec3 for rgb 2019-02-18 11:43:20 -07:00
Jannik Vogel f21c2d7ddb psh: Use output clamping from NV_register_combiners GL extension 2019-02-16 12:43:08 -07:00
Jannik Vogel c1494de8d3 psh: Use input mapping from NV_register_combiners GL extension 2019-02-16 12:42:49 -07:00
DaveX 65cd1cf9ae chihiro: Use hyphens in machine object prop names 2019-02-15 15:12:48 -07:00
Stefan Schmidt 960698a24e nv2a: Set content of disabled register combiner stages to zero 2019-02-06 23:32:22 -07:00
Jannik Vogel f3d7e72a5c nv2a: Fix A8Y8 texture formats 2019-02-06 23:28:43 -07:00
Matt Borgerson 7a59bf14d3 nv2a: Use linear addressing for LU_IMAGE_A4R4G4B4 2019-02-06 20:05:12 +01:00
Jannik Vogel e7bd7bf228 dsp: Support FIFO output in DMA 2019-01-28 12:01:58 -07:00
Jannik Vogel 2e660193a0 apu: Add support for DSP FIFOs 2019-01-28 12:01:58 -07:00
Jannik Vogel 423b6f57bc apu: Fix off-by-one in scatter gather page entry check 2019-01-28 12:01:58 -07:00
Lucas Eriksson 929954e713 smbus: Fix wordwrite bug 2019-01-27 13:24:50 +01:00
CakeLancelot ebb1052278 xid: Fix trigger range in xid-sdl 2019-01-27 12:39:34 +01:00
Matt Borgerson 47452495c0 nv2a: Fix NV097_SET_VERTEX_DATA2S scaling
Vertex attribute values provided via NV097_SET_VERTEX_DATA2S are
apparently two 16-bit signed integers, packed into 32 bits, which are
then to be directly mapped to floating point values in the range
[-32768.0, 32767.0].

Halo:CE uses this format to provide texture (u,v) coordinates for
render-to-texture techniques, including weapon scope, dynamic shadows,
and radar beacon--all of which are now working as expected with this
patch.
2019-01-22 16:12:11 -07:00
Matt Borgerson fc995f154c xid: Port fixes made to xid.c to xid-sdl.c
The recent fixes to xid.c (32bf810) didn't make it to xid-sdl.c. This
patch ports over those changes. In the future, the parts common to both
xid.c and xid-sdl.c should be factored out so this doesn't happen again.

Original work done by Jannik Vogel (aka JayFoxRox) on Jul 5th, 2018.
2019-01-15 14:44:54 -07:00
Jannik Vogel 01be8ef6b8 dsp: Improve DMA debug message 2018-12-29 12:07:38 +01:00
Jannik Vogel 4513ab50da dsp: Decode all DMA control bits 2018-12-29 12:07:38 +01:00
Jannik Vogel e3a93c48fb apu: Access system memory directly 2018-12-27 15:00:35 -07:00
Jannik Vogel 9cac29fe07 apu: Activate voice on VOICE_ON, regardless of list position 2018-12-26 15:44:15 -07:00
Jannik Vogel 7c43feded0 apu: Fix offset of scratch space PRD control word 2018-12-26 15:44:15 -07:00
Jannik Vogel 8579e23ecb apu: Use NV1BA0_PIO_VOICE_OFF_HANDLE mask 2018-12-26 15:44:15 -07:00
Jannik Vogel f94bcbacfa dsp: Support 'dec d' 2018-12-26 14:58:32 -07:00
Jannik Vogel fae1e33622 dsp: Support 'inc d' 2018-12-26 14:58:32 -07:00
Matt Borgerson 02f3b701d0 nv2a: Replace texture cache with a simpler implementation 2018-12-13 11:42:14 -07:00
Jannik Vogel 910dadc5ab nv2a: Fix window-clip region off-by-one error 2018-11-08 12:00:12 -07:00
Jannik Vogel e3d0803843 nv2a: Force GL surface transfer on surface address or pitch changes 2018-11-06 12:05:15 -07:00
Jannik Vogel 781a73e118 nv2a: Debug log GL surface transfers in GL 2018-11-06 12:05:15 -07:00
Jannik Vogel b42d49498c psh: Cleanup and dead code removal 2018-11-06 11:56:01 -07:00
Jannik Vogel 5db1694f88 psh: Rename c0 and c1 uniforms 2018-11-06 11:56:01 -07:00
Matt Borgerson d7dbfce2bc nv2a: re-enable texture caching
Texture caching (enabled via `USE_TEXTURE_CACHE` macro) got turned off
in a cleanup commit. Turn it back on for performance.
2018-11-03 15:53:02 -07:00
Matt Borgerson 2ddd605c10 rtc: Turn off debug messages
Debug messages got turned on when porting over XBOX RTC changes. It's
quite noisy during startup, so keep them turned off by default.
2018-11-02 17:43:26 +01:00
Lucas Eriksson 6ecac32cff eeprom: Read EEPROM from file 2018-10-10 11:40:18 -07:00
espes e12aa122cf relicense xbox components as LGPL
(with permission)
2018-10-10 13:38:16 +10:00
Stefan Schmidt 1c6bb37bec Replace ffs() calls with ctz32() 2018-10-08 11:34:23 -07:00
espes 022d50f600 the rebase forgot the rtc fixes 2018-09-26 18:31:16 +08:00
espes 3d33d8101b cleanup nv2a 2018-09-26 17:42:41 +08:00
espes 3ee213e59a cleanup xbox.c 2018-09-26 17:03:42 +08:00
Matt 316967c441 nv2a FIFO Refactoring (#76)
* Port espes's fifo work to the split up nv2a code

This patch ports over the following commits from the XQEMU 1.x tree
(available via tag archive-xqemu-1.x) to the refactored nv2a code:

- 4d9107e8 (HEAD -> xbox, upstream/xbox) Merge branch 'fix-fifo' into xbox
- c33f4ab2 cleanups
- d3f83d93 cleanups
- faca5dd0 fix
- 7c62d7c1 fixes
- 8ad239b0 wip
- 45ed3c31 wip
- c006d5e8 wip

However, in its current form, this patch causes some regressions and
needs further investigation.

* nv2a: basic pattern object
2018-09-26 16:10:07 +08:00
Lucas 7960ffe466 nv2a: Ptimer fixes (#113)
Set NV2A_CRYSTAL_FREQ to Retail speed
Fix ptimer_get_clock() behaviour
2018-09-26 16:01:28 +08:00
Matt Borgerson 6b21948bcc Merge branch 'master' into merge_3_0_0_sync 2018-09-05 20:07:50 -07:00
Matt Borgerson 5246cad0c1 nvnet: don't trigger interrupt if no packets are sent 2018-09-04 01:20:16 +02:00
Lucas Eriksson c01c27d968 nv2a: Fix EXP and LOG
According to the NV_vertex_program specification, our implementations of
these functions were wrong.
spec:
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_vertex_program.txt
2018-09-04 01:14:55 +02:00
Matt Borgerson aa32236d5a smbus: Replace smbus_eeprom_init_single with new upstream equivalent 2018-09-02 14:14:34 -07:00
Matt Borgerson a0dad83029 nv2a: Replace QINC/DECREF macros with new inlines 2018-09-02 13:49:53 -07:00
Matt Borgerson 12401cd500 nv2a: remove global_vmstate arg in vga_common_init 2018-09-02 13:49:24 -07:00
Matt Borgerson 9c96d7bc08 sio: Use serial_hd(i) instead of serial_hds[i] 2018-09-02 13:48:02 -07:00
Matt Borgerson a0ed8d9c8b smbus: Use DeviceClass::realize instead of init
I2CSlaveClass::init removed in c8c9e10, use DeviceClass::realize
instead.
2018-09-02 13:44:07 -07:00
Matt Borgerson 95503c6608 v3.0.0 release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJbcveDAAoJEDwlJe0UNgzen9QP/jEa9I1aN6ylYJHF7R9NI8Yh
 06k+dXCIK51ETRVXbWDnNa5KHxa1pYdBOVlBt/TtHq1sqJL0B3eAaNyeoRkuehvk
 LE+72CxEm4M+D+cw8Mnq3NEND1dCu3PVXykHUWaoLck3hLwS4gvD/J0veht72GId
 Ifv+wlAObtCijnJ9z5/K54bliPMt/c3HWXQegJ5Z6/aBiha+fYTairu9x3qBht56
 yHHc0cPnqMOR710vzB93u8HGP5jbtbqYmQZGyFXheUFLpEdQhzXfGlNeZsE3FRPb
 4CCRhSDp0a7sfhNQ29eYI4kTmpadnXLFtrDYeoKnzcrfe6VXwhAZotU1iAmAUCVA
 86Z3UI96PeGNwmyuFRAxomtKD5fdilG+IBSrv9WPFHbUzT4OsdldobjAaabGjtvk
 Lt+MG758/GWgRRldNjozi7YfGukctryMYoJcqv6v8o3sXlahId2CffDCGOxUQgWJ
 C4u4zgWDMrZVR7Iqcnn044Q4DCb7pSLnaGd7mpG1sW5MDCEhJKbDBBKzwjsuzGRZ
 YFjAzZ3pCaYrJ2foFteobc43Y0wdugR1AyDNoRY+aaK2qn0EG4gv+NCtlF9ZJlm3
 UCYdAFQuevXFJQ5ZO2nHYNkWUMw0xGUG7CXYMXAxRePk8urLY/tC3g0CySJYnBe1
 BBEbaX+pR3eT5xnEWPL0
 =rchV
 -----END PGP SIGNATURE-----

Merge tag 'v3.0.0' into merge_3_0_0

v3.0.0 release
2018-09-02 13:17:13 -07:00
Marc-André Lureau 93f874fe9d virtio-gpu: fix crashes upon warm reboot with vga mode
With vga=775 on the Linux command line a first boot of the VM running
Linux works fine. After a warm reboot it crashes during Linux boot.

Before that, valgrind points out bad memory write to console
surface. The VGA code is not aware that virtio-gpu got a message
surface scanout when the display is disabled. Let's reset VGA graphic
mode when it is the case, so that a new display surface is created
when doing further VGA operations.

https://bugs.launchpad.net/qemu/+bug/1784900/

Reported-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Tested-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Message-id: 20180803153235.4134-1-marcandre.lureau@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2018-08-07 15:03:58 +01:00