Commit Graph

197 Commits

Author SHA1 Message Date
twinaphex d36941b81d (CTR) Buildfix 2020-02-19 00:23:45 +01:00
twinaphex 3a94c52426 (gfx drivers) Start reducing settings pointer usage 2020-02-18 14:51:40 +01:00
twinaphex ec302bc4fc video_set_nonblock_state - remove settings dependency 2020-02-16 22:26:07 +01:00
twinaphex 47af95469a (font_driver.c) Remove configuration.h dependency 2020-02-16 21:59:03 +01:00
twinaphex f0e889b552 Change prototype of video_driver_set_size 2020-01-31 15:06:50 +01:00
twinaphex f92a507a9b Change function signature of font_driver_render_msg 2020-01-04 16:24:14 +01:00
Justin Weiss 64dc3dde40 Fix 3DS screen flickering when OSD is enabled
On the 3DS, for some cores, the screen will flicker if OSD is enabled,
and sometimes when going in and out of the menu.

As far as I can tell, this happens when a frame is dup'd, and we send
0x0 as the frame to the gfx driver. When that happens, we still draw
the OSD, using a vertex shader to transform and render it at the right
size.

When the frame is 0x0, though, the vertex shader uniforms are never
_reset_ to redraw the previous frame, so it's drawn with different
params, and gets drawn the wrong size. It will draw as the correct
size when the correct vertex shader uniforms are set, and the
incorrect size when the incorrect uniforms are set, causing
flickering.

At least, that's what I think is happening. Forcing the vertex shader
to be set regardless of whether the frame data is set fixes it, at
least during some light testing with PCSX.
2019-10-05 14:21:42 -07:00
twinaphex a45c9b6eb4 Duplicate aspect ratio code that was being ran twice 2019-08-12 12:52:40 +02:00
twinaphex 65b4c2595e Update set keyboard mapping code for input driver 2019-07-27 02:21:24 +02:00
twinaphex 6aed230930 Reimplement 'Take Screenshot' - if GPU-accelerated viewport screenshots
are not available, resort to raw screenshots instead
2019-05-22 07:08:11 +02:00
Huw Pascoe 2c56011f84 video_layout interface 2019-05-11 09:58:48 +01:00
twinaphex f349410082 (CTR/3DS) hide 'Take Screenshot' since screenshots are not implemented
anyway
2019-05-05 14:14:14 +02:00
twinaphex a0b2d97ca3 Hide 'Take Screenshot' for video drivers that don't support
taking screenshots yet
2019-05-05 13:46:26 +02:00
jdgleaver a9a5782cc0 (3DS) Fix screen tearing when running 50Hz content 2019-04-16 15:44:47 +01:00
jdgleaver 54e1711f9a (3DS) Sanitise/Improve display mode selection 2019-04-15 17:05:55 +01:00
twinaphex f67bfa24ef Get rid of video_poke_interface set_mvp 2019-03-18 15:19:11 +01:00
twinaphex fe1255094f Get rid of now unused set_coords in video_driver_poke_interface 2019-03-18 05:04:23 +01:00
orbea bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
jdgleaver ca13805937 (3DS) Add 'bottom screen' enable to User Interface menu 2018-11-14 16:41:19 +00:00
twinaphex c4c8699ee3 Only show max swapchain images if supported by video driver and/or
context driver
2018-04-23 13:34:30 +02:00
Brandon Wright 7a00534378 Add poke interface for get_refresh_rate. 2018-04-15 17:56:11 -05:00
twinaphex 9b8713aebd Fix Coverity defects 2018-03-24 11:59:01 +01:00
twinaphex 4d1b4f905f Start adding OSD statistics - doesn't work yet for SDL2/SDL 2018-03-23 17:43:49 +01:00
twinaphex 08e61230e9 Update video_poke_interface 2018-01-30 22:29:57 +01:00
twinaphex 82d44e9ad3 Cut down on more HAVE_MENU ifdefs 2017-12-31 18:02:14 +01:00
twinaphex cf3a010ead Remove some HAVE_MENU ifdefs 2017-12-31 17:42:07 +01:00
aliaspider 1f143927ca (CTR) build fix. 2017-12-25 08:51:50 +01:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex 683c437941 Updates 2017-11-14 21:34:03 +01:00
twinaphex b11620e1eb Add retro_timers.h/retro_math.h 2017-06-28 04:41:38 +02:00
Daniel Jimenez 22fc07a839 Fix mirrored images in vertical games on 3DS (bug #4817)
On branch master
 Your branch is up-to-date with 'origin/master'.
 Changes to be committed:
	modified:   ctr_gfx.c
2017-06-11 18:12:37 -07:00
twinaphex 80d9d1f143 Rewrite task_queue 2017-05-14 20:43:48 +02:00
twinaphex d4756f83e5 Stop calling video_driver_context_has_windowed from within video
drivers
2017-05-13 19:11:32 +02:00
twinaphex e84adb504f Don't try to call video_driver_is_threaded from outside
gfx/video_driver.c - only exception right now - menu_display.c
2017-04-29 16:52:52 +02:00
twinaphex c8bf28842f Get rid of some calls to video_driver_viewport_get_custom 2017-04-29 16:11:31 +02:00
twinaphex 6930262ec2 Update/buildfixes 2017-04-29 12:44:45 +02:00
twinaphex 552845a94d Buildfixes 2017-04-29 02:39:32 +02:00
twinaphex 87106b03c1 (3DS) Buildfix 2017-04-28 22:14:34 +02:00
twinaphex cc095e56fc Start refactoring bool variables 2017-04-28 00:53:20 +02:00
twinaphex 2a13af52fc Revert "video_init function - video_info_t should not be const -"
This reverts commit c8bcbad4a7.
2017-04-24 12:25:14 +02:00
twinaphex e5b38315fe Revert "Add real_width and real_height to video_info struct - let"
This reverts commit 831ea1a507.
2017-04-24 12:25:07 +02:00
twinaphex 831ea1a507 Add real_width and real_height to video_info struct - let
the drivers set this depending on the video width/height they
get back from the video context driver
2017-04-24 12:18:28 +02:00
twinaphex c8bcbad4a7 video_init function - video_info_t should not be const -
try to set video_driver_width/video_driver_height outside
of video driver init function
2017-04-24 12:03:21 +02:00
twinaphex 5a3b78bad3 Get rid of more performance counters 2017-04-24 11:24:16 +02:00
twinaphex 34852e159a Cut down on amount of times video_driver_build_info is called 2017-04-23 22:20:11 +02:00
twinaphex a9164b7124 Try to use performance counter plus functions in most cases 2017-01-25 17:12:43 +01:00
twinaphex 6661c0fb94 Rewrite performance counter stop/start/init into macros 2017-01-25 16:53:06 +01:00
twinaphex e0a560f60a Turn C++ comments into C comments 2017-01-23 01:37:19 +01:00
twinaphex 2f504b4057 (gfx/drivers) Get rid of remaining runloop.h / runloop_ctl
references inside gfx/drivers
2017-01-22 18:17:48 +01:00
twinaphex 96c8ca5a09 Header update #1 2017-01-22 13:40:32 +01:00
twinaphex 27ae782a8e (CTR) Add this header 2017-01-19 17:17:20 +01:00
twinaphex e0ff0541a2 Pass video_info pointer to font drivers 2017-01-19 16:30:40 +01:00
twinaphex d010a852e4 Call menu_driver_frame once per video_frame call 2017-01-18 22:20:47 +01:00
twinaphex bf511b72e6 Create menu_driver_frame 2017-01-18 21:23:18 +01:00
twinaphex a6a4808e94 Refactor frame monitor code 2017-01-18 17:41:27 +01:00
twinaphex c1c35c5120 More platform build fixes 2017-01-10 21:15:52 +01:00
twinaphex 76ae7ac4a0 Cleanup some of the video drivers - add some members to
video_info_t to reduce the need for accessing the settings
struct
2017-01-10 18:16:22 +01:00
twinaphex be2f921ee2 Don't use settings pointer inside video_frame function 2017-01-09 14:25:59 +01:00
twinaphex 5fc1b0c88e Remove obsolete font_driver_has_render_msg 2016-11-20 17:51:16 +01:00
Higor Eurípedes 6f2cb9742d (font) Create font_data_t and update font_driver_init_first() 2016-10-18 20:07:00 -03:00
aliaspider f9e7d4dc3f (3DS) fix gfx corruption when closing content. 2016-10-13 12:16:07 +01:00
aliaspider d48445fc1e (3DS) video driver:
- texture handling improvement.
- flush pending tasks while waiting for vsync.
2016-10-10 22:25:25 +01:00
aliaspider 4edbb48f34 (3DS) missing return value. 2016-10-08 01:17:48 +01:00
aliaspider d87adcd226 (3DS) fix texture combiner stages in 32bit mode. 2016-10-04 20:38:00 +01:00
aliaspider 23eef2c6ee (3DS) video driver: (cont.) 2016-10-04 15:55:30 +01:00
aliaspider c4daa087d4 (3DS) video driver: add some checks for the validty of incoming data. 2016-10-04 15:49:55 +01:00
twinaphex 23ed63f33a move device_aspect variable 2016-10-02 20:37:14 +02:00
aliaspider 056224bf50 (3DS) avoid using ctrGuCopyImage during font init for now. (fixes freeze
on cia builds)
2016-09-30 16:16:18 +01:00
aliaspider afd5e85a31 (3DS) add experimental font and menu_display drivers. 2016-09-29 20:14:12 +01:00
aliaspider 5db13323f6 (3DS) create gfx/common/ctr_common.h.
remove depthbuffer.
use vramalloc.
2016-09-28 20:59:54 +01:00
aliaspider dc16477c46 (3DS) fix tearing, the displayed framebuffer was being set to the
currently selected drawbuffer.
2016-09-28 18:34:38 +01:00
aliaspider 8266a423cd (3DS) update for latest ctrulib. 2016-09-28 18:09:17 +01:00
twinaphex 3cf24afc44 (CTR) Buildfix 2016-09-11 16:43:56 +02:00
twinaphex 51b0e61712 Cleanups 2016-09-11 16:24:02 +02:00
twinaphex 202e3e796e Get rid of more general.h includes 2016-09-11 14:46:53 +02:00
twinaphex acd4dd527b Header include cleanups 2016-09-05 18:31:32 +02:00
twinaphex 281a33d61f Rename function to performance_counter_init 2016-05-16 09:58:45 +02:00
twinaphex f5bc75c640 Rename retro_perf_start/retro_perf_stop 2016-05-16 09:53:54 +02:00
twinaphex 18355d4748 Rename retro_perf_stop 2016-05-16 09:48:14 +02:00
twinaphex b79b2dca13 Create performance_counters 2016-05-10 08:53:14 +02:00
twinaphex 2691ab0c7d Rename command_event enums 2016-05-09 20:51:53 +02:00
twinaphex 523ebed112 Combine command_event.c and command.c 2016-05-09 20:30:47 +02:00
twinaphex a98ef36d36 Rename event_cmd_ctl to command_event 2016-05-09 20:20:50 +02:00
Hans-Kristian Arntzen 66c4f608e6 Clear out rest of video_driver_ctl use. 2016-05-08 14:10:28 +02:00
aliaspider 0ffba39280 (3DS) restore state correctly when suspending/exiting app. (fixes #2207) 2016-04-18 16:38:32 +01:00
aliaspider 4f54025a50 (3DS) 3D slider display mode selection tweaks. 2016-04-18 15:55:34 +01:00
aliaspider 4994de806a (3DS) add more display modes for the top screen that can be controlled
by the 3D slider.
2016-04-17 20:10:21 +01:00
aliaspider 1465cf1ffc (3DS) allow setting a start offset in the texture 2016-04-17 15:30:44 +01:00
aliaspider ad0d73d8f0 (3DS) refactor shaders. simplify texture combiner usage. 2016-04-16 22:38:13 +01:00
aliaspider c370afd861 (3DS) start porting shaders to the picasso format. 2016-04-16 20:26:05 +01:00
twinaphex 372d673a26 Rename event_command to event_cmd_ctl - add second parameter 2016-01-22 15:34:43 +01:00
twinaphex 54f46f4ee3 Update headers 2016-01-10 04:41:52 +01:00
thedax 0565a92486 Update CTR (3DS) driver for the latest ctrulib SDK, fix a typo, and fix compilation errors. 2015-12-21 13:43:05 -05:00
twinaphex aa488dda25 Create video driver poke load_texture / unload_texture 2015-12-20 20:52:23 +01:00
twinaphex 1b768f7dcd Create RARCH_DRIVER_CTL_SET_REFRESH_RATE 2015-12-11 11:00:12 +01:00
twinaphex e8a3bd99d8 (3DS/CTR) Buildfix 2015-12-07 09:32:58 +01:00
aliaspider be5755fe59 (3DS) build fix. 2015-11-24 12:02:02 +01:00
Twinaphex 0958acd0b1 Merge pull request #2455 from aliaspider/master
(3DS) update.
2015-11-24 11:36:00 +01:00
aliaspider 38579e56ff (3DS) gfx driver: add missing d-cache flush. 2015-11-24 11:25:28 +01:00
twinaphex 85dbeeb8f9 No more video_monitor.h 2015-11-22 13:32:46 +01:00