Good old rPi 1 + Lakka appreciation thread, and a couple of questions

It may be outdated, it may be slow and underpowered, but the good old rPi 1 is still able to offer a very good emulation experience for some platforms with Lakka. It only takes a few small tweaks (and a bit 'of “philosophy”) to have an almost-perfect emulation of NES, Genesis, PC Engine etc.

The two fundamental aspects IMHO are resolution and refresh rate. Surely rPi 1 is extremely slow if left with the “out of the box” 1080p resolution, but on the other hand it is able to run almost all the Genesis library in full speed (no frameskip, 60fps) in 480p. And that does not even need an extreme overclock! Another key aspect is to set a refresh rate equal to that of the monitor in order to allow the 60fps (as documented elsewhere).

Since for obvious reasons we’ll not going to use shaders (although one or two appear not to impact too much on performance) I connected the rPi 1 to an old 14" CRT TV via composite cable. I know, it is a poor quality video signal, but think for a moment about it: 80’s and 90’s era gaming consoles had this same video quality, and thus, ironically, the gaming experience is much closer to the original than any artificial image degradation induced by shader (this is the “philosophical” aspect mentioned above). Another positive aspect is the that you will avoid any lag caused by HDMI and Led TV.

To be clear: of course, nowadays I would not recommend buying an RPI 1 anyone, but if by chance, like me, you already have one lying in a forgotten drawer of the house, this could be a good reason to resume it.

Now a couple of questions for the Lakka masters:

  1. It is possibile to set a 240p (or similar) resolution via composite output?
  2. It is possibile to set Lakka and Retroarch cores with different resolutions? (e.g. Lakka menu at 1080p, Picodrive at 480p)?
  3. There is a way to reduce that small flickering on CRT TV with composite?

Thanks!

Hi,

1 & 3. Please read this documentation. (Source) 2. Not sure how to do it.

[QUOTE=gouchi;45394]Hi, 1 & 3. Please read this documentation. (Source) [/QUOTE]

Hi and thank you for your feedback. I already know that linked page, and as far as I know it is not possible (or at least it is not officially documented) in composite to set a resolution different from PAL or NTSC standards. It is definitively true, or maybe there is a way to bypass this? Setting the framebuffer in config.txt to 320x240 will just “scale” pixels to actual real resolution, it is right?

Thanks

Yes you are right I read to quickly you are not using hdmi but composite output.

Maybe you can try to setup it with kernel mode setting ?

To get the connector :

 for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done

And then use video=XXXX parameters.

Actually in my config.txt:


sdtv_mode=0
framebuffer_width=320
framebuffer_height=240
scaling_kernel=8

I had to enable HW Bilinear Filtering in Lakka to avoid some flickering.

[QUOTE=gouchi;45404] Maybe you can try to setup it with kernel mode setting ?

To get the connector :

 for p in /sys/class/drm/*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done

And then use video=XXXX parameters.[/QUOTE]

Do you mean native custom resolution via composite is possible? Where should I put these lines of code?

Thank you very much.

From what I understand, rpi will always put out 480i (or the equivalent PAL resolution) via composite. The only way to get 240p is via HDMI.

The same for me… but what this KMS can really do?

The KMS this is for generic PC systems. The Pi will only output interlaced signals on it’s composite output.

If your TV has an RGB input (e.g. SCART), you can get program the Pi to output 240p (or 288p for PAL) but you need a converter to get an analogue signal. You can either use a HDMI to VGA converter or, if your Pi has 40 GPIO pins, use GERT’s VGA adapter. The latter has the advantage that you can avoid the latency of a HDMI to VGA converter but the disadvantage that you can’t use the GPIO pins for anything else. VGA also has separate vertical and horizontal sync signals and SCART needs a composite sync. The circuit is pretty simple and people sell ready made conversion leads.

People have described using Gert’s VGA adapter to output 240p in this thread.

The KMS this is for generic PC systems. Right DRM/KMS is not available with the current RPi driver :wink:

By the way, anybody has made a test with VC4 driver ?

Thank you very much for all your support. I have still a couple of questions:

  1. I’m not able to set audio sample rate lower than 44100 and I really can’t understand why. Since this seems not possible via UI, I connect to LAKKA via FTP and I edit /storage/.config/retroarch/retroarch.cfg file, but at reboot I always get 44100. What I’m doing wrong?
  2. In retroarch.cfg there are some “flicker filter” options that seems undocumented. I’ve enabled via UI “HW Bilinear Filtering” (that in .cfg should be “video_smooth”) so I’d like to know in there are (quality/performance) differences between these options.
  3. What is the “input polling” option in .cfg about?

Thank you!