RetroArch - Native CRT Support

thanks for such a quick reply!

I’ve only got the default superres modelines that came with crtemudriver. I stupidly just assumed that these are all i would need with RA. I’ll make sure i install all the ones listed on your post in the CRT 15khz wiki page. I’ll give bsnes a go as well.

I’ll let you know my results later.

Make sure when you install the modes you choose static and not dynamic.

for most of the part, snes9x is running at 256x224, when overscan is used, it runs at 256x240.

@Alphanu @wertz

Thanks for your responses guys. Adding those additional modelines and running in static solved most of my issues, so thanks again Alphanu.

Fuse is still squashed on the vertical. I gather that the spectrum output 256x192, which i have installed as a modeline, so not quite sure what happening there. Any further suggestions?

Also, not entirely sure that ScummVM is displaying quite correctly - I vaguely remember something about these dos games running a vertically stretched 320x200 not a straightforward 320x240. I’ll have a fiddle around with it but for now its much better than what i had before.

I still can’t get over how epic playing all this old stuff is. As a kid, I never had RGB cables, and possibly not an RGB capable TV either, and so running all this stuff now via RGB is a real treat. Playing Castlevania SOTN nearly brought a tear to my eye it look so damn good!

1 Like

@hunterk sorry and thanks for dealing with that post. It can be completely deleted if that’s more tidy.

1 Like

I haven’t checked out the latest Linux build yet, but can it work with 120hz modes (VGA CRT)?

It’s 15 khz only at the moment. I’d throw in on a bounty to get 31 khz working, though.

@ilitirit @hunterk

If some one wants to create an issue and maybe a bounty :heart_eyes: I will start working on modifying my source!

Here we go:

I got us started with $15 :slight_smile:

I’ll start porting my 15kz code base over to 31khz. I’ll need some testers to help me out here.

4 Likes

Linux bug! Depending on your distro resolutions below 320x200 will not switch. For example snes 256x244 or genesis pal 284x288. I have located the issue and I’ll get this fixed ASAP.

@hunterk how’s the code conversion going for Linux?

2 Likes

I don’t think anyone has even started on it yet. I guess we’ll just stick with the xrandr method unless/until someone decides to tackle it :stuck_out_tongue:

@Alphanu: I’m not an expert, but I managed to get 244p resolutions and below working on Linux with some custom constants:

h_active	= 0.8
h_sync = 0.0800000000000001
h_front = 0.0199999999999999
v_active = 0.848484848484849
v_sync = 0.0113636363636364
v_front = 0.0416666666666666

I can’t remember where/how I came by those values, it’s been a long time.

The caveat is, they won’t work for 200p (or below) at 120Hz, but MS-DOS ran at 70Hz(?) anyway. They will work for 200p at 140Hz.

I remember I used to push them to 200p (minimum) @120Hz with some other values/tweaking, but I freaked out one time I got some crazy shit on my screen and I never tried that again :cold_sweat:.

I hope that it helped.

@RiskyJumps thanks for the input. With windows you can get 200p at 60hz.

The limitation here is with Linux, youinv the merged set size limits you to the minimum size set in X11 by the driver. Normally 320x200, this means that you cannot set below 320 on the horizontal. Example 256x200, 256x224. This is only a Linux issue but tgere is a way around it.

I already have it working here but I’ll need to make it available for different outputs. Also I need to include HDMI, this will be for people using HDMI to component for American TVs as I know they don’t have RGB SCART.

I’m actually really excited about 31khz, having height resolutions with switching will look OK but with the addition of a scanline filter I think it will look really good.

I do need to source a 31khz monitor however. Does anyone know where I can get a cheap one?

1 Like

I take it you’re not in the U.S., but I’ve had good luck just watching craigslist, so if there’s anything similar where you live, that’s where I would start. People usually give them away for free. Any old crappy CRT computer monitor should do it.

I found this will browsing the web. Maybe this will be of some help?

Hey @Rion

Thanks man. This is for patching initial boot for Linux. This is because initial boot runs in KMS mode. It’s used so you can see any boot information or images without having 3 or more tiny horizontal images. Once Linux has booted it will the switch over to it’s display server. X11 or Weyland.

This is a good idea to use though.

I have already sorted it. However, I need to incorporate it into the output device loop.

2 Likes

Lakka/RetroArch OS uses KMS mode for everything if I understand correctly.

Edit: I am not suggesting that KMS mode is within the scope of any of these projects or bounties.

@markwkidd Yeah you are correct there. If this patch works for standard Linux it could work for Lakka. This will help open the doors for RPi too. Currently I’m looking into a full implementation of X on RPi.

Would the Lakka devs be interested in add X support?

I think Lakka is trying to move away from X as a long-term dependency. That doesn’t mean a patch from you wouldn’t be welcome in the short term.