Custom Video Modes Test Thread
Re: Custom Video Modes Test Thread
Does the MiSTer output these forced video modes over the VGA out only with vga_scaler set to 1?
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
- atrac17
- Core Developer
- Posts: 162
- Joined: Sun May 24, 2020 10:51 pm
- Has thanked: 32 times
- Been thanked: 385 times
Re: Custom Video Modes Test Thread
Here's what I use with my LG UM7300PUA and ViewSonic P95f+.
1920x1200@60Hz
1600x1200@60Hz
1280x960@60Hz
1440x960@60Hz
320x240@60Hz
320x240@120Hz
640x240@60Hz
Code: Select all
video_mode=1920,48,32,80,1200,3,6,26,154128
Code: Select all
video_mode=1600,64,192,304,1200,1,3,46,162000
Code: Select all
video_mode=1280,80,136,216,960,1,3,30,102100
Code: Select all
video_mode=1440,80,152,232,960,3,10,23,113750
Code: Select all
video_mode=320,8,32,24,240,4,3,16,6048
Code: Select all
video_mode=320,8,32,40,240,1,3,14,12380
Code: Select all
video_mode=640,16,64,80,240,1,3,14,12380
Re: Custom Video Modes Test Thread
Hi, I've compiled all the video modes that appear in the vga-timing website translated to mister.ini video mode format:
https://github.com/glopgar/MISTer_video ... _modes.ini
https://github.com/glopgar/MISTer_video ... _modes.ini
- Newsdee
- Top Contributor
- Posts: 873
- Joined: Mon May 25, 2020 1:07 am
- Has thanked: 104 times
- Been thanked: 239 times
Re: Custom Video Modes Test Thread
This one doesn't work with my 1200p display ("Out of range"):
Code: Select all
; 1920x1200@60Hz
; video_mode=1920,128,208,336,1200,1,3,38,193160
Re: Custom Video Modes Test Thread
So for say a Sony Wega kv-24fs120 what would be a suitable [Menu] video_mode setting.
Thanks in advance.
- Sorgelig
- Site Admin
- Posts: 890
- Joined: Thu May 21, 2020 9:49 pm
- Has thanked: 2 times
- Been thanked: 214 times
Re: Custom Video Modes Test Thread
Last CRT i've used with computer was about 15-16 years ago.. TV with computer may be about 20 years ago. So i can't suggest any settings for such ancient devices
Re: Custom Video Modes Test Thread
Rise from your grave, thread.
I've been trying to get Component output from my MiSTer through an IO Board v6.1 to a consumer CRT that has component video inputs. I'm using YPBPR=1 and video_mode=6.
The Menu displays fine enough and the NES core works perfectly, but the Genesis, SNES, and GBA cores (at least) show a rolling image. If you load a game and the screen gets bright enough, it will sync. What I mean is that, for instance, if you start the Genesis Core and can load Zombies Ate My Neighbors, but you hit start to skip the Konami intro, the image keeps rolling. However, if you let the Konami intro play, *that* causes the screen to sync properly. This happens with Super Mario World on the SNES, too -- rolling video until the title screen is bright enough.
Here's a video of the problem
I'm not sure why this happens or how to fix it. A workaround feels like if I could set a white screen to display as the "background" to each Core, it might sync. Or if a white screen is displayed when the Core loads... or something, I don't know. But I also feel like that's not a great way to fix this issue.
Does anyone have any thoughts? Do I just need a different video_mode? I tried making one for 640x480@60 from NTSC timings, but that didn't change anything. I also tried video_mode=330,8,32,40,230,3,10,6,6095 and even tried specifying that under [Genesis] and it didn't do anything.
It feels like a bug to me, but it might just be my ignorance in video signaling...
I've been trying to get Component output from my MiSTer through an IO Board v6.1 to a consumer CRT that has component video inputs. I'm using YPBPR=1 and video_mode=6.
The Menu displays fine enough and the NES core works perfectly, but the Genesis, SNES, and GBA cores (at least) show a rolling image. If you load a game and the screen gets bright enough, it will sync. What I mean is that, for instance, if you start the Genesis Core and can load Zombies Ate My Neighbors, but you hit start to skip the Konami intro, the image keeps rolling. However, if you let the Konami intro play, *that* causes the screen to sync properly. This happens with Super Mario World on the SNES, too -- rolling video until the title screen is bright enough.
Here's a video of the problem
I'm not sure why this happens or how to fix it. A workaround feels like if I could set a white screen to display as the "background" to each Core, it might sync. Or if a white screen is displayed when the Core loads... or something, I don't know. But I also feel like that's not a great way to fix this issue.
Does anyone have any thoughts? Do I just need a different video_mode? I tried making one for 640x480@60 from NTSC timings, but that didn't change anything. I also tried video_mode=330,8,32,40,230,3,10,6,6095 and even tried specifying that under [Genesis] and it didn't do anything.
It feels like a bug to me, but it might just be my ignorance in video signaling...
-
- Top Contributor
- Posts: 1311
- Joined: Mon Jul 06, 2020 9:37 pm
- Has thanked: 634 times
- Been thanked: 308 times
Re: Custom Video Modes Test Thread
The "Region" affects this in the Genesis core, and maybe the others. Make sure it is on US if you are in the US. Also, are you using the vga scaler? You should not be. The video mode ini setting would have no effect when running the core and it should use native timings.jrronimo wrote: ↑Fri Nov 20, 2020 12:01 am The Menu displays fine enough and the NES core works perfectly, but the Genesis, SNES, and GBA cores (at least) show a rolling image. If you load a game and the screen gets bright enough, it will sync. What I mean is that, for instance, if you start the Genesis Core and can load Zombies Ate My Neighbors, but you hit start to skip the Konami intro, the image keeps rolling. However, if you let the Konami intro play, *that* causes the screen to sync properly. This happens with Super Mario World on the SNES, too -- rolling video until the title screen is bright enough.
Re: Custom Video Modes Test Thread
I'm not using the vga scaler, no. I've actually tried with and without just to grab at straws, but it is off. The Genesis core is set to the correct region, too.thorr wrote: ↑Sat Nov 28, 2020 9:10 amThe "Region" affects this in the Genesis core, and maybe the others. Make sure it is on US if you are in the US. Also, are you using the vga scaler? You should not be. The video mode ini setting would have no effect when running the core and it should use native timings.jrronimo wrote: ↑Fri Nov 20, 2020 12:01 am The Menu displays fine enough and the NES core works perfectly, but the Genesis, SNES, and GBA cores (at least) show a rolling image. If you load a game and the screen gets bright enough, it will sync. What I mean is that, for instance, if you start the Genesis Core and can load Zombies Ate My Neighbors, but you hit start to skip the Konami intro, the image keeps rolling. However, if you let the Konami intro play, *that* causes the screen to sync properly. This happens with Super Mario World on the SNES, too -- rolling video until the title screen is bright enough.
I ended up posting about this as an issue on GitHub and talking with Sorgelig about it. He said that the way MiSTer does component is kind of hacky and the levels it puts out aren't enough for my TV. He suggested I look for a different adapter for component.
I'm tempted to try a different VGA to Component cable or find some sort of Component booster... but I also have one of Antonia Villena's S-Video adapters that produces correct video for all cores every time. The picture quality isn't as good as it is over component, but it's the solution I've got right now.
Also, for what it's worth, I hacked up someone else's Genesis "hello world" project so that it just displays a pink screen and set that as my Genesis boot0.rom. The Menu core syncs 100% of the time over component now, but when you load a game and that game initializes video, the screen goes out of sync again... until there's a bright screen. At least I can interact with the Menu more easily now.
I'd been hoping there was an easy way to modify the Genesis core to match the NES core's video so that it has a light background and then displays a light background after you load a game, but that's *way* beyond what I can do. I suspect that's an innate difference between the hardware.
-
- Top Contributor
- Posts: 1311
- Joined: Mon Jul 06, 2020 9:37 pm
- Has thanked: 634 times
- Been thanked: 308 times
Re: Custom Video Modes Test Thread
You could try the HDMI to component adapter I am using: https://www.ebay.com/itm/HDMI-to-5RCA-R ... 4127034242
I also just bought this one: https://www.ebay.com/itm/J-Tech-Digital ... 4222036088 and am waiting for it to be shipped.
The first one works with native core timing at 240p and looks beautiful, but it requires an HDMI audio extractor, and I have to turn it off and on periodically, and it works some of the time with the scaler but not always and I have no idea why. I am hoping this new one will work better and it also has a VGA output on it so I can hook up my LCD also.
I also just bought this one: https://www.ebay.com/itm/J-Tech-Digital ... 4222036088 and am waiting for it to be shipped.
The first one works with native core timing at 240p and looks beautiful, but it requires an HDMI audio extractor, and I have to turn it off and on periodically, and it works some of the time with the scaler but not always and I have no idea why. I am hoping this new one will work better and it also has a VGA output on it so I can hook up my LCD also.
Re: Custom Video Modes Test Thread
I found 1920x1440@75 to be working on a sony multiscan 400 ps (pc crt in the trinitron range):
Another one this crt supports and which generates scanlines natively - 512x448:
Code: Select all
video_mode=1920,128,208,344,1440,1,3,56,234000
Code: Select all
video_mode=512,16,48,32,448,0,3,49,18240
Re: Custom Video Modes Test Thread
Your issue reminds me of a scenario where a monitor/TV input is "consuming" too much of your sync signal, causing the voltage to drop. Without appropriate voltage levels, monitor simply doesn't see the signals, and can't sync. With white video (pretty much full amplitude of VGA signal), monitor syncs up because the levels raise to at least minimum required.
Are you sure you're not syncing over Green (RGsB)? Described above is more predominant when sync signals are incorporated into the Green channel.
128Mb v2.5 @150MHz
USB Hub v2.1
IO Board v6.1
built, not bought
USB Hub v2.1
IO Board v6.1
built, not bought
- SegaSnatcher
- Posts: 163
- Joined: Sun May 24, 2020 9:18 pm
- Has thanked: 36 times
- Been thanked: 43 times
Re: Custom Video Modes Test Thread
I'm trying to get a native 960p mode working for NES and I don't know the forumula. I'm using a 1080p 16:9 monitor, thanks.
Nevermind, found it. Works great on NES core. Thanks to user yxkalle.
Nevermind, found it. Works great on NES core. Thanks to user yxkalle.
Code: Select all
video_mode=1704,96,184,280,960,1,3,30,135020
Re: Custom Video Modes Test Thread
Some more video_modes I found working on a Sony multiscan 400 ps (pc crt):
1792x1344
The above mode is interesting for integer scaling with arcades that require you to rotate your screen, it's 3x 448 which a lot of arcade cores use.
640x512
1280x960
1280x1024
736x890
1440x900
1600x1200
1792x1344
Code: Select all
video_mode=1792,128,200,328,1344,1,3,46,204800
640x512
Code: Select all
video_mode=640,8,72,124,512,0,2,19,67500
Code: Select all
video_mode=1280,96,112,312,960,1,3,36,108000
Code: Select all
video_mode=1280,48,112,248,1024,1,3,38,108000
Code: Select all
video_mode=736,40,80,120,890,1,3,27,53930
Code: Select all
video_mode=1440,32,408,32,900,18,9,19,108840
Code: Select all
video_mode = 1600,104,176,280,1200,1,3,38,160960
Re: Custom Video Modes Test Thread
Interesting. That could very well be... I've tried both with and without the SoG switch flipped, so I just don't know.Rikko wrote: ↑Thu Dec 31, 2020 8:40 pmYour issue reminds me of a scenario where a monitor/TV input is "consuming" too much of your sync signal, causing the voltage to drop. Without appropriate voltage levels, monitor simply doesn't see the signals, and can't sync. With white video (pretty much full amplitude of VGA signal), monitor syncs up because the levels raise to at least minimum required.
Are you sure you're not syncing over Green (RGsB)? Described above is more predominant when sync signals are incorporated into the Green channel.
There's also a note in the Wiki about adding a Sync-On-Green circuit for VGA connections, but I had assumed that was taken care of by the SOG switch on the IO board. (I would need to add such a circuit for my VGA to HDMI adapter, which I haven't.)
I chatted with Sorgelig in the text of an issue on github and he suggested that 1) MiSTer's component video support is a little hacky, unfortunately and 2) that I might need a different way to convert the video; some other sort of adapter.
I've imagined all sorts of scenarios on how I might fix this, but I know too little about video circuits at the moment. Having some sort of dongle that attaches to the IO Board's VGA plug and boosts or attenuates the signal properly sounds like it should be feasible, but I suspect that's a few years of circuit design I've yet to learn. Definitely a case of "Well that should be simple! (says the non-engineer)".
Re: Custom Video Modes Test Thread
I hardly call myself an expert, despite the degree in EE. Do you have a scope, to capture a few signals and share?
Perhaps you could build a circuit to "amplify" the sync signals, for an example with a simple 74 series logic circuit? Imagine two inverters in series. It could act as a buffer, between the IO board, and the monitor. Maybe even remove the SoG circuitry in the process. I'm not saying this will work 100%, but I tend to think so.
edit:
Having second thoughts, think about this.
If you remove R1, R2, Q1 and jump C6, effectively your SoG circuit will not work. You end up with two resistors that are current limiters, 100R each. I'm not sure how much current can DE10 sink on these particular pins, but if you reduce the resistors, in theory you should experience less voltage drop across your monitor's sync inputs (assuming my original theory is correct). But, you want to protect the DE10 from overloading on these pins, unfortunately I don't know enough about DE10 Nano, to give you a precise advice.
128Mb v2.5 @150MHz
USB Hub v2.1
IO Board v6.1
built, not bought
USB Hub v2.1
IO Board v6.1
built, not bought
-
- Posts: 221
- Joined: Sun May 24, 2020 7:59 pm
- Has thanked: 16 times
- Been thanked: 28 times
Re: Custom Video Modes Test Thread
I have a monitor which has 1600 x 900 resolution, but I cannot find MiSTer settings for this anywhere. Does anyone have them please?
Thanks!
Thanks!
Re: Custom Video Modes Test Thread
I found a site, that will parse the timings from a Xorg modeline. I found several (varying) modelines when running an internet search for modeline 1600x900. You could try some of those and plug the numbers into the video_mode parameters.Insert Disk Two wrote: ↑Tue Jan 05, 2021 4:38 pm I have a monitor which has 1600 x 900 resolution, but I cannot find MiSTer settings for this anywhere. Does anyone have them please?
Re: Custom Video Modes Test Thread
Hi, is there a resolution between this and 320x240 that could look good on a SD CRT?:
[Menu]
video_mode=512,42,62,64,224,11,21,6,10689
vga_scaler=1
My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
[Menu]
video_mode=512,42,62,64,224,11,21,6,10689
vga_scaler=1
My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
Re: Custom Video Modes Test Thread
This mode looks pretty good. Found it on redditcalle81 wrote: ↑Thu Jan 07, 2021 6:51 pm Hi, is there a resolution between this and 320x240 that could look good on a SD CRT?:
[Menu]
video_mode=512,42,62,64,224,11,21,6,10689
vga_scaler=1
My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
video_mode=640,6,56,66,224,14,8,18,12000
Re: Custom Video Modes Test Thread
You could try something a bit different with an "ultra-wide" resolution. I have heard of doing this from people using raspberry pi for some time now, but I have not tried it on mister yet.
A couple links where this concept is talked about:
https://forums.libretro.com/t/the-holy- ... ision/4945
http://filthypants.blogspot.com/2014/11 ... nitor.html
Re: Custom Video Modes Test Thread
Interesting, can you or anyone else help me convert this to a mister videomode?:ash2fpga wrote: ↑Thu Jan 07, 2021 9:06 pmYou could try something a bit different with an "ultra-wide" resolution. I have heard of doing this from people using raspberry pi for some time now, but I have not tried it on mister yet.
A couple links where this concept is talked about:
https://forums.libretro.com/t/the-holy- ... ision/4945
http://filthypants.blogspot.com/2014/11 ... nitor.html
Modeline "1920x240@60" 31.96 1920 1952 2072 2104 240 245 248 253 -HSync -VSync
Re: Custom Video Modes Test Thread
This site has a modeline parser: https://www.epanorama.net/faq/vga2rgb/calc.html
Paste the modeline into the textbox in §1 and click the import button. Values will show up in §2. Caveat: I have not actually tried video_mode settings in mister with timings from that calculator.
Re: Custom Video Modes Test Thread
There's a 'formula' for it here: Post from Atari-Forum:
I keep meaning to code that into a website, but usually just do it by hand, haha.-Modelines
The popular Xorg "Modeline" format can be converted to MiSTer video_mode strings :
Modeline "Name" Pixel_Clock HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL
Becomes:
video_mode=HDISP,HSYNCSTART-HDISP,HSYNCEND-HSYNCSTART,HTOTAL-HSYNCEND,VDISP,VSYNCSTART-VDISP,VSYNCEND-VSYNCSTART,VTOTAL-VSYNCEND,Pixel_Clock*1000
Hence :
Becomes :Code: Select all
ModeLine "1920x1200@60" 154.0 1920 1968 2000 2080 1200 1203 1209 1235 +hsync -vsync
The vertical frequency is Pixel_Clock / HTOTAL/ VTOTALCode: Select all
video_mode=1920,48,32,80,1200,3,6,26,154000
[BTW it would be great to autodetect and support the Modeline numbers format (raising H/V numbers). Any volunteer for a patch?]
-Frequencies
* 20MHz : Minimal frequency set by the MiSTer software
* 150MHz : This is the designed frequency target for the scaler, to support 1920x1080. The scaler was optimised to get [almost] no timing errors at that frequency.
* 165MHz : This is the maximum frequency supported by the ADV7513 HDMI encoder.
* 200MHz : This is the limit set by the MiSTer software.
Frequencies far beyond 150MHz are not guaranteed to work, may not work on all cores, or when the FPGA or HDMI encoder is too warm.
It is sometimes possible to lower pixel frequency by reducing blanking and synchro times.
In your case, it should be:
Code: Select all
video_mode=1920,32,120,32,240,5,3,5,31960
Re: Custom Video Modes Test Thread
For those getting fed up with doing this conversion manually, I quickly wrote this python script that does that conversion for you:
Example of usage:
Code: Select all
print("Convert modeline to video_mode script")
print("Expected format: PIXEL_CLOCK HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL")
try:
pixel_clock, hdisp, hsyncstart, hsyncend, htotal, vdisp, vsyncstart, vsyncend, vtotal = map(float,input("Please enter modeline values: ").split())
pixel_clock=float(pixel_clock)
hdisp = int(hdisp)
hsyncstart = int(hsyncstart)
hsyncend = int(hsyncend)
htotal = int(htotal)
vdisp = int(vdisp)
vsyncstart = int(vsyncstart)
vsyncend=int(vsyncend)
vtotal=int(vtotal)
clock=pixel_clock*1000
print("video_mode="+str(hdisp)+","+str(hsyncstart-hdisp)+","+str(hsyncend-hsyncstart)+","+str(htotal-hsyncend)+","+str(vdisp)+","+str(vsyncstart-vdisp)+","+str(vsyncend-vsyncstart)+","+str(vtotal-vsyncend)+","+str(int(clock)))
except:
print("Invalid input check expected format.")
Edit: now available as an online calculator https://morf77.pythonanywhere.com/Convert modeline to video_mode script
Expected input: PIXEL_CLOCK HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL
Please enter modeline values: 154.0 1920 1968 2000 2080 1200 1203 1209 1235
video_mode=1920,48,32,80,1200,3,6,26,154000
Re: Custom Video Modes Test Thread
One for the Genesis and MegaCD core fans 640x448
Working on a Sony GDM-400PS
Code: Select all
video_mode=640,16,96,48,448,26,2,49,25200