MiSTer-devel / Main_MiSTer

Main MiSTer binary and Wiki
GNU General Public License v3.0
3.02k stars 325 forks source link

[BUG] Direct Video YPbPr Pink Tint After MiSTer_20221124 #734

Closed joshuaryoung closed 1 year ago

joshuaryoung commented 1 year ago

Previous to and including MiSTer_20221124, my direct video ypbpr to crt setup was displaying a perfect picture. On any build after that the picture has a pink tint and everything looks blow out (see included pic). This does not happen on the VGA output of the analog i/o board however.

Setup: Direct Video -> Moread HDMI to VGA converter (green line and C-Sync lines are combined with resistor and diode) -> Sony Trinitron CRT

MiSTer: 128mb SDRAM module, Digital I/O Board from MiSTer Addons

Untitled

MiSTer.ini

[MiSTer]
hdr=0
vga_sog=1
hdmi_game_mode=0
vrr_mode=0
controller_info=3
key_menu_as_rgui=0     ; set to 1 to make the MENU key map to RGUI in Minimig (e.g. for Right Amiga)
forced_scandoubler=0   ; set to 1 to run scandoubler on VGA output always (depends on core).
ypbpr=1                ; set to 1 for YPbPr on VGA output.
composite_sync=1       ; set to 1 for composite sync on HSync signal of VGA output.
vga_scaler=0           ; set to 1 to connect VGA to scaler output.
hdmi_audio_96k=0       ; set to 1 for 96khz/16bit HDMI audio (48khz/16bit otherwise)
keyrah_mode=0x18d80002 ; VIDPID of keyrah for special code translation (0x23418037 for Arduino Micro)
; volumectl=1          ; enable audio volume control by multimedia keys
vscale_mode=1          ; 0 - scale to fit the screen height.
                       ; 1 - use integer scale only.
                       ; 2 - use 0.5 steps of scale.
                       ; 3 - use 0.25 steps of scale.
vscale_border=0        ; set vertical border for TVs cutting the upper/bottom parts of screen (1-399)
bootscreen=1          ; uncomment to disable boot screen of some cores like Minimig.
;mouse_throttle=10     ; 1-100 mouse speed divider. Useful for very sensitive mice
rbf_hide_datecode=0    ; 1 - hides datecodes from rbf file names. Press F2 for quick temporary toggle
menu_pal=0             ; 1 - PAL mode for menu core
hdmi_limited=0         ; 1 - use limited (16..235) color range over HDMI
                       ; 2 - use limited (16..255) color range over HDMI, for VGA converters.
direct_video=1         ; 1 - enable core video timing over HDMI, use only with VGA converters.
fb_size=1              ; 0 - automatic, 1 - full size, 2 - 1/2 of resolution, 4 - 1/4 of resolution.
fb_terminal=1          ; 1 - enabled (default), 0 - disabled
osd_timeout=30         ; 5-3600 timeout (in seconds) for OSD to disappear in Menu core. 30 seconds if not set.
                       ; Background picture will get darker after double timeout

; 1 - enables the recent file loaded/mounted.
; WARNING: This option will enable write to SD card on every load/mount which may wear the SD card after many writes to the same place
;          There is also higher chance to corrupt the File System if MiSTer will be reset or powered off while writing.
recents=0

; lastcore - Autoboot the last loaded core (corename autosaved in CONFIG/lastcore.dat) first found on the SD/USB
; lastexactcore - Autoboot the last loaded exact core (corename_yyyymmdd.rbf autosaved in CONFIG/lastcore.dat) first found on the SD/USB        
; corename - Autoboot first corename_*.rbf found on the SD/USB
; corename_yyyymmdd.rbf - Autoboot first corename_yyyymmdd.rbf found on the SD/USB
;bootcore=lastcore    ; uncomment to autoboot a core, as the last loaded core.
bootcore_timeout=10  ; 10-30 timeout before autoboot, comment for autoboot without timeout.

; Option to load the custom font. Format is plain bitmap 8x8.
; Supported sizes of font:
;   768 bytes - chars 32-127 (only alpha + numeric)
;  1024 bytes - chars 0-127
;  1136 bytes - chars 0-141
;  up to 2048 - only chars 0-141 will be used.
; if first 32 chars are empty (for sizes 1024 bytes and more) then they are skipped.
font=font/font.pf

; USER button emulation by keybaord. Usually it's reset button.
; 0 - lctrl+lalt+ralt (lctrl+lgui+rgui on keyrah)
; 1 - lctrl+lgui+rgui
; 2 - lctrl+lalt+del
; 3 - same as 0 (lctrl+lalt+ralt on keyrah)
reset_combo=0

dvi_mode=0             ; set to 1 for DVI mode. Audio won't be transmitted through HDMI in DVI mode.

; 0 - 1280x720@60
; 1 - 1024x768@60
; 2 - 720x480@60
; 3 - 720x576@50
; 4 - 1280x1024@60
; 5 - 800x600@60
; 6 - 640x480@60
; 7 - 1280x720@50
; 8 - 1920x1080@60
; 9 - 1920x1080@50
;10 - 1366x768@60
;11 - 1024x600@60
;
; custom mode: hact,hfp,hs,hbp,vact,vfp,vs,vbp,Fpix_in_KHz
;   video_mode=1280,110,40,220,720,5,5,20,74250
video_mode=8

; set to 1-10 (seconds) to display video info on startup/change
;video_info=0

; Set to 1 for automatic HDMI VSync rate adjust to match original VSync.
; Set to 2 for low latency mode (single buffer).
; This option makes video butter smooth like on original emulated system.
; Adjusting is done by changing pixel clock. Not every display supports variable pixel clock.
; For proper adjusting and to reduce possible out of range pixel clock, use 60Hz HDMI video
; modes as a base even for 50Hz systems.
vsync_adjust=2

; These parameters have the same format as video_mode.
; You need to supply both PAL and NTSC modes if you want vsync_adjust to switch between
; predefined modes as a base. This will reduce the range of pixel clock.
video_mode_ntsc=8
video_mode_pal=9
naytai commented 1 year ago

I can confirm this issue after upgrading to MiSTer_20221124

Setup: Direct Video -> Unbranded HDMI to VGA converter (green line and C-Sync lines are combined with resistor and diode) -> Sony Trinitron CRT / Philips CRT

MiSTer: 128mb SDRAM module, Analog I/O Board

Natrox commented 1 year ago

I am on this, it might be in one of my recent additions. Since my changes have no meaning to direct video, I will take a look and isolate the relevant parts. I'll keep everyone posted, thank you for reporting the issue.

Natrox commented 1 year ago

Alright, I have a temporary binary people can use with a bugfix. I'll take this issue later for a PR so it can be fixed in release.

Thanks again for reporting the issue!

MiSTer_01_28_bugfix_ypbpr.zip

PR: https://github.com/MiSTer-devel/Main_MiSTer/pull/735