Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Strange horizontal lines on Raspberry Pi in 240p #49

Closed
alessioscand opened this issue Mar 3, 2017 · 16 comments
Closed

Strange horizontal lines on Raspberry Pi in 240p #49

alessioscand opened this issue Mar 3, 2017 · 16 comments

Comments

@alessioscand
Copy link

alessioscand commented Mar 3, 2017

Hello,
it's now possible on Raspberry Pi to set a 240p screen resolution on composite out.
This is a great feature for Lakka, but I am having a strange issue in Picodrive core: the picture is affected by strange horizontal lines that are much more evident on sprites with vertical scrolling.
Here there are a couple of videos from Bare Knuckle III on Lakka's Picodrive core.

Look at the kanji text that rolls vertically, it is "cut off" by some horizontal lines that seem fixed in the same position:
VIDEO 1

Please look also at the mouth of Axel (main character of the game):
VIDEO 2

Now please take a look at his eye:
VIDEO 3

This only occurs in Picodrive core, not in other cores of Lakka like FCEUMM.
I also suspect that this issue has always been there, and now with 240p has become more evident.

Since Picodrive runs very well even on an old Raspberry Pi 1, and in 240p is a much better experience, I really hope in a fix. :)

Thank you very much!

@starquake
Copy link

Some cores have this because they don't output 240 lines but less. For example 224. Those 224 lines will be distributed over 240 lines so some will get repeated twice. That's the weird effect you are seeing.

Even if you disable cropping overscan some cores will still not output 240p. A temporary fix is to set a custom height of the viewport to for example 224. It takes some guesswork to get the right values. Using the 240p test suite with the horizontal stripes test helps a lot.

Thanks for reporting this, I was going to do it myself. Will follow this issue to see what happens.

BTW. The same happens with NEOGEO and SNES. The Sega Master System is even harder to get right. I think it's outputting 192 lines.

@alessioscand
Copy link
Author

alessioscand commented Mar 3, 2017

Hi Jan and thank you for your kind feedback.
You are right: setting a custom viewport of 640x448 fix the issue!

But I don't have any issue with NES (FCEUMM) and SNES (can't remember the name) cores, only with Picodrive. Event GenPlusGX it's OK (but it is too slow for my good old Raspberry 1).

Since it's a bit cumbersome to set different viewports for different cores, I really hope there is a way to fix Picodrive core!

BTW: I'm in 240p but if I set a 320x224 custom viewport it is too small for my TV screen... strange?

@starquake
Copy link

Stuff PAR and DAR still baffles me and I don't understand what it means. What I do think is needed is that the overscran cropping setting in main is honoured by the cores. The lines above and below the 224p are black or garbage but are needed to get the 240p so scaling is correct.

@starquake
Copy link

BTW. I prefer Lakka but you can make Retropie use different viewports based on the core you use which negates the issue.

@alessioscand
Copy link
Author

Stuff PAR and DAR still baffles me and I don't understand what it means. What I do think is needed is that the overscran cropping setting in main is honoured by the cores. The lines above and below the 224p are black or garbage but are needed to get the 240p so scaling is correct

I agree, but I can't even find PAR and DAR options in Picodrive core menu.

Nevertheless, I don't want to switch to Retropie 'cause of this... I really hope it will be fixed somehow...

@hizzlekizzle
Copy link

You have to load content with the core and then go into the quick menu > options. Core-provided aspect-ratio is what you want to mess with. Make sure you're using core-provided aspect in settings > video, as well. Make sure you have integer scaling enabled, as well.

@alessioscand
Copy link
Author

@hizzlekizzle thank you but in the Quick Menu > Options I can't find the "Core-provided aspect-ratio" setting (I only have Input device, Mega CD RAM cart, Region, Region FPS etc.). Maybe the Picodrive core is not updated? I'm on the Christmas (2016) release of Lakka for Rpi1.

Thanks again

@starquake
Copy link

You can't disable overscan in this core. I read somewhere that the option per core is deprecated anyway and it should obey the main setting.

Will have to look it up...

@hizzlekizzle
Copy link

@fr500 doesn't like having each core act differently with overscan and would prefer we have better, more flexible frontend options for dealing with it, which I totally agree with, but until that actually happens, the core-option method is the only real way to handle it. The blunt ON/OFF toggle simply doesn't have enough nuance to cover the various edge-behaviors.

@antiriad
That PR was merged back in May, so I would expect Lakka to have it unless there is/was some problem that's causing the updated code not to build successfully. I'll try to follow up with kivutar about it.

@alessioscand
Copy link
Author

@hizzlekizzle thank you very much, really, for your kind interest.
If you can, please, write here kivutar's feedback. Thanks! :)

@hizzlekizzle
Copy link

@antiriad
Ok, it looks like the OpenElec build of Lakka hasn't been updated in quite a while. Would you be able to test a LibreElec-based image that has been updated more recently? http://www.lakka.tv/articles/2017/02/28/lakka-20-rc1-available-for-testing

@alessioscand
Copy link
Author

@hizzlekizzle sure, I'll test it ASAP, thank you.

An "off-topic" question, if I can: resolution of RPi in 240p via composite out should be something like 720x240.
But why, if I set a custom viewport of 320x240, it is only a quarter of the TV screen?
I noticed this doing a 640x448 custom viewport as workaround for the Picodrive core issue.
Thanks

@hizzlekizzle
Copy link

I'm pretty sure the RPi 240p setting isn't really 240p but rather 640x480 where it only shows half of the lines. Ultimately, it's better this way, I think, because it enables the possibility for programs to switch between interlaced and non-interlaced on the fly (not that RetroArch/Lakka supports this, but whatever).

@starquake
Copy link

It's 720x480

@alessioscand
Copy link
Author

alessioscand commented Mar 5, 2017

@hizzlekizzle it's me or http://le.builds.lakka.tv/ seems unreachable ATM?

EDIT: finally I downloaded LAKKA 2.0 RC for Raspberry Pi 1 and I can confirm that Picodrive issue is fixed!

I think I can close this issue now, but first I'd like to thank you again for your great support and for keeping the good old Rpi 1 alive! (I hope also Kivutar will read this).

Thank you!

@starquake
Copy link

I don't know if this issue is related but the steps provided in this issue did not fix my problems:
#50

Just wanted to let you know I did try the steps outlined in this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants