CRT Switchres on PC Monitor

What connections to you have on the 15khz CRT?

Only has a composite, I was trying to do a RGB mod on it but, that did not worked. I will try to connect from VGA to composite, at least is something.

You wonā€™t get composite forest from RGB, youā€™ll need a video converter to encode the signal from RGB to composite. As you canā€™t video data on the centre pin and sync on the outside.

If you have tried a RGB mod did you tie vertical and horizontal sync together. This will create composite sync. Youā€™ll need to use diodes to protect each one.

There not to expensive. Have a look here.

https://www.lindy.co.uk/audio-video-c2/extenders-c181/vga-to-tv-converter-lite-p9902/s10060?utm_source=google&utm_medium=cpc&utm_term=vga-to-tv-converter-lite&utm_campaign=product%2Blisting%2Bads&gclid=Cj0KCQjwpvzZBRCbARIsACe8vyLsBSXP5gqErUFbPu0l3AiQd0ke5zhoKs7EA6L3PiLoN7RzRP2d_H4aAvfnEALw_wcB

I tried running it without declaring the Modelines, but I still get the same error, I throught the problem was because im running dual screens in the Xorg setup, but I still get the same problem, either If I declare the Modelines or not.

Here is a copy of my Xorg.conf.

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 396.24  (builduser@felixonmars2)  Wed May  9 20:37:28 CST 2018

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "InputDevice"
    # generated from data in "/etc/conf.d/gpm"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung SyncMaster"
    HorizSync       30.0 - 71.0
    VertRefresh     50.0 - 160.0    
    Option         "DPMS"
    #Modeline       "2560x192_138.00"   93.00  2560 2632 2880 3200  192 195 205 212 -hsync +vsync
    #Modeline       "2560x200_138.00"   97.00  2560 2632 2880 3200  200 203 213 220 -hsync +vsync
    #Modeline       "2560x224_138.00"  109.50  2560 2640 2896 3232  224 227 237 246 -hsync +vsync
    #Modeline       "2560x237_138.00"  116.75  2560 2656 2912 3264  237 240 250 260 -hsync +vsync
    #Modeline       "2560x240_138.00"  118.25  2560 2656 2912 3264  240 243 253 263 -hsync +vsync
    #Modeline       "2560x254_138.00"  125.75  2560 2664 2920 3280  254 257 267 279 -hsync +vsync
    #Modeline       "2560x256_138.00"  126.75  2560 2664 2920 3280  256 259 269 281 -hsync +vsync
    #Modeline       "2560x448_138.00"  230.50  2560 2720 2992 3424  448 451 461 489 -hsync +vsync
    #Modeline       "2560x480_138.00"  248.00  2560 2728 3000 3440  480 483 493 523 -hsync +vsync    
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 660"
    Option         "AllowDDCCI" "true"
    Option         "UseEdidFreqs" "false"
    #Option        "IncludeImplicitMetaModes" "true"
    Option         "UseEDID" "false"
    Option         "NoBandWidthTest" "true"
    Option         "ModeValidation" "AllowNon60hzmodesDFPModes, NoEDIDDFPMaxSizeCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoDFPNativeResolutionCheck, NoWidthAlignmentCheck, AllowInterlacedModes, NoMaxSizeCheck, NoMaxPClkCheck, NoEdidMaxPClkCheck, AllowNonEdidModes, NoEdidMaxPClkCheck, NoVirtualSizeCheck" 
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "nvidia-auto-select +0+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Do you have any idea of what I am missing?, could you help me?.

Well Iā€™ve just started working on 31khz switching.

Check out the video.

@hunterk I need some help with menu options. I have no issues adding them but I canā€™t seem to figure out how to have them change E.g. the superresultion option. I need to have it change when pressing left and right. There needs too be a few more options for swithing now especially with this 31khz mod.

3 Likes

Great.

Did you got it working on 480p?, What are all the resolutions you made?, Which options you used in Xorg?, What files you modified for the compilation?.

In the video sonic 2 switches to 480i. Why would you want 480p? However, 480p would output fine.

I have not changed anything in Xorg! Also I have no pre-installed resolution. Retroarch does all the hard work for you.

There are still some bugs that need sorting and a few menu options that need to be added. However, I donā€™t foresee this taking to much longer to complete. Maybe two weeks to a month.

1 Like

Man, thatā€™s really awesome. I never had any luck producing 31 khz 480i modelines, so thatā€™s really exciting to me.

I just asked Twinaphex if he could help out with adding the options. We need the super-res to be selectable, do we need a switch to choose between 31 and 15 khz? Are there any other options we need?

Iā€™m thinking that CRT Switch should now have itā€™s own submenu. I think in total there will be 5 or 6 options.

Superres.

15 - 31khz 240p toggle.

Ouput ID and number. E.g. HDMI-1 or DVI-1 *

31khz compatability mode. Two or three options for hz.**

Custom refresh is sync does not work. E.g. 138hz. ***

  • it will speed up swithing and fix a resolution switch bug. This will only be needed for Linux.

**A few pre-set porches to help centre and or sync the image

*** used if pc monitor needs a different sync. Also for windows users when installing modlines through CRTEmudriver.

There may even be a couple more towards the end.

Iā€™m trying to think of options that would help ease the process for the users.

2 Likes

Wow, but did you made a custom compilation?. I try to run at 3840 without any modeline added and it still dosenā€™t work, and the refresh rate runs at 60 Hz. I also tried to run at 480i but it has not worked for me, what is that CRT model you have?. I have no idea why It dosenā€™t work this way for me.

Ok, yeah, that probably necessitates its own submenu. Twinaphex has asked us to open an issue on github that explains all of the stuff we need and heā€™ll handle adding the options to the menu.

EDIT: I went ahead and opened an issue. Feel free to add whatever:

2 Likes

For some reason I canā€™t get to make it work correctly, I get this in the log when I try to run the emulator without adding the modelines.

Size 3840x254 not found in available modes
xrandr: --rmmode requires an argument
Try 'xrandr --help' for more information.
[INFO] [PulseAudio]: Unpausing.
[INFO] [GL]: VSync => on
[INFO] [GLX]: glXSwapIntervalEXT(1)
[INFO] [PulseAudio]: Pausing.
[INFO] [PulseAudio]: Unpausing.
[INFO] [PulseAudio]: Unpausing.
[INFO] [Config]: Saved new config to "/home/kui/.config/retroarch/retroarch.cfg".
[INFO] [PulseAudio]: Pausing.
[INFO] [XINERAMA]: Xinerama version: 1.1.
[INFO] [XINERAMA]: Xinerama screens: 1.
[INFO] [XINERAMA]: Saved monitor #0.
[INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
[INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
Size 704x480 not found in available modes

Iā€™m not shure if its something related to the nvidia driver, I will need to try with nouveau.

The same happens if I try to do it in my custom build compiled for 138hz, it fails with 2560 or 3840, It only works by adding the modelines at Xorg.conf and overriding any check from the nvidia settings, but, the same error of Retroarch trying to delete the resolution happens, probably the issue in Github will figure how to make it work, but I leave this for the record or if someone have an idea of what might be causing to not work in my case.

Go to terminal and type xrandr. What does the output say?

Most importantly what is/are the connected device/s?

I only have the CRT connected in the analog DVI port.

This is the ouput of xrandr:

DVI-I-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      85.00*+  86.96    75.03    70.07    60.00  
   3200x1800     59.94  
   2880x1620     59.97    59.96  
   2560x1600     59.99    59.97  
   2560x1440     59.96    59.95  
   2048x1536     85.00    75.00    60.00  
   2048x1152     59.91    59.90    59.98  
   1920x1440     85.00    75.00    60.00  
   1920x1200     59.95    59.88  
   1920x1080     59.96    59.93    60.01    59.97  
   1856x1392     75.00    60.01  
   1792x1344     75.00    60.01  
   1680x1050     59.95    59.88  
   1600x1200     85.00    75.00    70.00    65.00    60.00  
   1600x900      59.95    59.82    59.99    59.94  
   1440x810      60.00    59.97  
   1400x1050     74.76    59.98  
   1400x900      59.96    59.88  
   1368x768      59.88    59.85  
   1280x1024     85.02    75.02    60.02  
   1280x960      85.00    60.00  
   1280x800      59.91    59.81    59.99    59.97  
   1280x720      59.86    59.74    60.00    59.99  
   1152x864      75.00  
   1024x576      59.90    59.82    59.96    59.95  
   960x600       60.00    59.93  
   960x540       59.82    59.63    59.99    59.96  
   864x486       59.92    59.57  
   840x525       60.01    59.88  
   832x624       74.55  
   800x600       85.14    75.00    72.19    60.32    56.25  
   800x450       59.95    59.82  
   720x405       59.51    58.99  
   720x400       85.04  
   700x525       74.76    59.98  
   700x450       59.96    59.88  
   684x384       59.88    59.85  
   640x480       85.01    75.00    72.81    59.94  
   640x400       85.08    59.98    59.88  
   640x360       59.84    59.32    59.86    59.83  
   640x350       85.08  
   512x384       70.07    87.06    60.00  
   512x288       60.00    59.92  
   480x270       59.82    59.63  
   432x243       59.92    59.57  
   400x300       72.19  
   360x202       59.51    59.13  
   320x240       72.81    60.05  
   320x180       59.84    59.32  
   320x175       85.27  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)

This is without adding the modes in xorg.conf.

By adding the modelines in Xorg:

Screen 0: minimum 8 x 8, current 1024 x 768, maximum 16384 x 16384
DVI-I-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      85.00*+  86.96    75.03    70.07    60.00  
   3200x1800     59.94  
   2880x1620     59.97    59.96  
   2560x1600     59.99    59.97  
   2560x1440     59.96    59.95  
   2560x480     137.85  
   2560x448     137.67  
   2560x256     137.52  
   2560x254     137.41  
   2560x240     137.75  
   2560x237     137.57  
   2560x224     137.72  
   2560x200     137.78  
   2560x192     137.09  
   2048x1536     85.00    75.00    60.00  
   2048x1152     59.91    59.90    59.98  
   1920x1440     85.00    75.00    60.00  
   1920x1200     59.95    59.88  
   1920x1080     59.96    59.93    60.01    59.97  
   1856x1392     75.00    60.01  
   1792x1344     75.00    60.01  
   1680x1050     59.95    59.88  
   1600x1200     85.00    75.00    70.00    65.00    60.00  
   1600x900      59.95    59.82    59.99    59.94  
   1440x810      60.00    59.97  
   1400x1050     74.76    59.98  
   1400x900      59.96    59.88  
   1368x768      59.88    59.85  
   1280x1024     85.02    75.02    60.02  
   1280x960      85.00    60.00  
   1280x800      59.91    59.81    59.99    59.97  
   1280x720      59.86    59.74    60.00    59.99  
   1152x864      75.00  
   1024x576      59.90    59.82    59.96    59.95  
   960x600       60.00    59.93  
   960x540       59.82    59.63    59.99    59.96  
   864x486       59.92    59.57  
   840x525       60.01    59.88  
   832x624       74.55  
   800x600       85.14    75.00    72.19    60.32    56.25  
   800x450       59.95    59.82  
   720x405       59.51    58.99  
   720x400       85.04  
   700x525       74.76    59.98  
   700x450       59.96    59.88  
   684x384       59.88    59.85  
   640x480       85.01    75.00    72.81    59.94  
   640x400       85.08    59.98    59.88  
   640x360       59.84    59.32    59.86    59.83  
   640x350       85.08  
   512x384       70.07    87.06    60.00  
   512x288       60.00    59.92  
   480x270       59.82    59.63  
   432x243       59.92    59.57  
   400x300       72.19  
   360x202       59.51    59.13  
   320x240       72.81    60.05  
   320x180       59.84    59.32  
   320x175       85.27  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)

The 3840 resolutions donā€™t work on my monitor for some reason, they have a very low khz making them unable to display at 120hz.

Ok that answers it. Currently RA only switched DVIX or DVI-X. New code is being incorporated to include other IDs like DVI-I-X

You would need to edit the ID loop with the display server to include your ID. If you need it now. There is a bug within this loop which causes unessisary swithing. If you wait a few weeks Iā€™ll have all the new code ready to merge.

It should have those DVI-I-X or DVI-D-X to cover all cases.

Do you know any way to change the monitor ID?

I do this is the reason for the upcoming merge. DVI-I-x and DVI-D-x are rare IDs which is why they were not initially included.

1 Like

Excellent, I just saw it on the issue. I would be really good if every other possible ID is included, there is probably some other weird ID out there.

Standard IDs will be included in the menu and an option for config where odd IDs can be added manually by the user.

1 Like

Any new update on this?.