Recalbox sur TV CRT en RGB
-
Yes, of course, i also resize horizontally to have 4/3 screen.
If not, the horizontal overscan is big and the game isn't 4/3.
In snes, i have approximately the same resolution.For a games of 256x224, 320x224 or 384x224, it's the same viewport.
If viewport is setup for a 224p 4/3 game, it can accept all 224p games.I have an arcade database of over 8000 games with many games informations. i'm writing severls small batabases of games, by vertical resolution and refresh rate.
I think also, databases are the only way to handle games specs.
(i do it since a year with games lists for severals Fba.libretro versions)We must do for MAME and FBA :
Databases of :- 190p at 50Hz
- 190p at 60Hz
- 200p at 50Hz
- 200p at 55Hz
- 200p at 60Hz
...
240p at 60Hz
...
256p at 55Hz
...
-
@ironic mame can generate .dat files with resolution info. I've been using that for some time, but take care to take an old mame version because the format changed on latter versions. As I've worked pretty much with advancemame which is based on Mame 0.106 i have the XML file.
-
Hi,
I follow this thread for some time trying to keep up with all the work/solutions when i will have time to do this.
There is one thing which is not clear for me : who is setting the correct resolution? Is it done by script before launching the emu (libretro core,...) or are you setting the timings and then when the emu ask for a particular resolution, the system changes accordingly (like emu, i.e. mame with autoswitch res, on a PC with soft15khz for example)?
If this is the first solution, how is the resolution modification during game execution is taken into account?
Of course, imho, the second solution seems to be the best one, but perhaps there is some limitation from the emu themselves.
Anyway, keep up the good work, it will be amazing to have a simple 15khz RGB output on the PI!
-
@Substring
Is it this type of database ?
8000 arcade games@onaryc
RGP-Pi (Recalbox 4.0)
For this time, there is one resolution by libreto core.
All resolutions can be found in config.txt file.
It's ready to play. emulator resolution is launched before emulator and emulationstation resolution is restored before back to emulationstation .I think changing resolution on the fly in game is impossible.
-
@ironic it's just from a mame .dat file find a mame exe, check its command line switches and you will see
-
@Substring
Ok, the MAME XMLLet see how i handle multiple resolutions by emulator.
Sorry, i don't use Configgen.Emulator :
- MAME
Few games :
- R-Type (rtype.zip) : 384x256x55Hz
- After Burner II (aburner2.zip) : 320x224x60Hz
- Golden Axe (goldnaxe.zip) : 320x224x60Hz
- Caveman Ninja (cninja.zip) : 320x240x60Hz
I use 4 resolutions (more come soon) :
1920 1 48 192 240 248 1 3 10 6 0 0 0 60 0 38400000 1 For fullscreen 224p at 60Hz games.
1888 1 48 184 232 278 1 3 10 6 0 0 0 55 0 38400000 1 For fullscreen 256p at 55Hz games.
960 1 24 96 120 248 1 3 10 6 0 0 0 60 0 19200000 1 For all others games which are not in databases (just for try games).
480 1 14 45 56 300 1 10 5 5 0 0 0 60 0 9600000 1 For EmulationStation.In datadases, i have referenced 2 games :
[aburner2.zip] to use 224p x 60Hz
[rtype.zip] to use 256p x 55HzFrom emulationstation/MAME, i have :
After Burner II
Caveman Ninja
Golden Axe
R-TypeIf i choose After Burner, the game is launching in fullscreen 224p 60Hz with "retroarchcustom.cfg" AND 224-60.cfg (for adapted viewport of all 240p games)
If i choose R-Type, the game is launching in fullscreen 256p 55Hz with "retroarchcustom.cfg" AND 256-55.cfg (for adapted viewport of all 256p games)
If i choose Golden Axe, the game is launching in a 960x240x60Hs screen with "retroarchcustom.cfg" AND standart.cfg (small viewport to try games) because is not in database
If i choose Caveman Ninja, the game is launching in a 960x240x60Hs screen with "retroarchcustom.cfg" AND standart.cfg (small viewport to try games) because is not in databaseI think is the perfect way to handle multiple resolutions per core.
It works greatThe databases is a file named "resolution.cfg" in recalbox/share/roms/mame/ folder
In this file there's :declare -A mame_games
#320x224x60Hz
mame_games[aburner2.zip]="224-60"
mame_games[goldnaxe.zip]="224-60"
mame_games[shinobi.zip]="224-60
...
#384x256x55Hz
mame_games[rtype.zip]="256-55"
...It's very easy to add game to resolution.
CODE :
. /recalbox/share/roms/mame/resolutions.cfg if [[ "$emulator" == "mame" ]]; then if [[ -n ${mame_games[$filename]} ]]; then if [[ ${mame_games[$filename]} == "224-60" ]]; then vcgencmd hdmi_timings 1920 1 48 192 240 248 1 3 10 6 0 0 0 60 0 38400000 1 tvservice -e "DMT 87" fbset -depth 8 && fbset -depth 16 retroarch -L /usr/lib/libretro/mame078_libretro.so --config /recalbox/share/system/configs/retroarch/retroarchcustom.cfg --appendconfig /recalbox/share/system/configs/retroarch/resolutions/${mame_games[$filename]}.cfg $1 elif [[ ${mame_games[$filename]} == "256-55" ]]; then vcgencmd hdmi_timings 1888 1 48 184 232 278 1 3 10 6 0 0 0 55 0 38400000 1 tvservice -e "DMT 87" fbset -depth 8 && fbset -depth 16 retroarch -L /usr/lib/libretro/mame078_libretro.so --config /recalbox/share/system/configs/retroarch/retroarchcustom.cfg --appendconfig /recalbox/share/system/configs/retroarch/resolutions/${mame_games[$filename]}.cfg $1 fi else vcgencmd hdmi_timings 960 1 24 96 120 248 1 3 10 6 0 0 0 60 0 19200000 1 tvservice -e "DMT 87" fbset -depth 8 && fbset -depth 16 retroarch -L /usr/lib/libretro/mame078_libretro.so --config /recalbox/share/system/configs/retroarch/retroarchcustom.cfg --appendconfig /recalbox/share/system/configs/retroarch/resolutions/standart.cfg $1 fi vcgencmd hdmi_timings 480 1 14 45 56 300 1 10 5 5 0 0 0 60 0 9600000 1 tvservice -e "DMT 87" fbset -depth 8 && fbset -depth 16 fi
Of course, it can (will) be optimised...
-
@ironic As 4.1 is coming closer and closer (have you seen the blog is back ?) this will be a little different as you can :
- add per system .cfg (well, you can already do it, that's something we made quite early in this topic)
- add per rom .cfg (not much different in fact)
- have configgen use hdmi_cvt or hdmi_timings resolutions. What is truly missing is to handle a per game resolution. Haven't found yet an elegant way to do it, except having a massive file saying which resolution for which game (that needs to be written. I wanted to have, for each arcade rom : resolution + screen rotation angle)
-
A per game resolution ins'nt needed, need resolutions/frequency for games...
Arcade games must be separate :- Mame or FBA.
- Honrizontal or vertical.
- Resolutions.
- Frequency
I have 350 MAME roms and 340 FBA.
I need more 30 resolutions/frames rate files.To handle all Mame/Fba games, there is need more files.
-
@ironic How to change the CRT overscan? A menu in the tv OSD? or need to tune potentiometers inside the TV?
-
If your CRT isn't too old, there's pehaps a hidden menu. On my 33cm WALTHAM (11AK57 chassis), i must :
- Open the menu : MENU KEY
- Hit : 4, 7, 2, 5
And the hidden config menu appear.
I can't tell you if your CRT have this menu and how open it.
On most CRT, you must : Open menu and enter a code (as me 4725).
Be carefoul, it's hard to understand all parameters.You must looking for on line for code and/or try all codes you can find.
--
I sorted all my MAME games by resolutions and by frequency.
You can see, i must use a lot (more 40) of resolution/frequancy.
And remember, here there no vertical games.
1st ligne, 224p is vertical resolution (no need honrizontal resolution).
And 60 is frequency (60Hz).We can bring together some frequency.
60.096154 is near 60.
But there is some specific resolutions as : 57.444853Hz.Is it near 55Hz or 60Hz ?
I think, games up to 240p must be 60Hz and over 240p, 55Hz.
And this : 27.407585Hz and 76.293945Hz ?And FBA ??!!
Work begin...
-
@ironic thanks for the reply... i don't have the remote control of the TV... so no luck tu test if there is a hidden menu Will try that on another one. Thanks
-
@ironic that's why there is AdvanceMame, it's supposed to handle arcade without a hitch.
The real deal for now would rather be consoles
-
@ironic @substring http://www.advancemame.it/doc-install : advmame uses programmable modelines for DPI and HDMI. All seems to be automatic now
"Whatever hdmi_mode you select, the Advance programs will use mode 87 group 2, restoring your selected original mode when finished."
-
@ian57 because DMT 87 is the only way to specify hdmi_timngs, you have no choice but :
- set hdmi_timings
- switch to DMT 87
-
The problem is that we still do not know how exactly the custom hdmi_timings of AdvMAME works to carry it to the other emulators, the Ironic method can be used with all the emulators already.
Does Recalbox plan to introduce these changes officially? Or is it going to have to be another mod?
-
@aTg as I said, advmame can do the job for now, and that's why i added it. For the retroarch part, this will come later, but for now, it looks like anything linked to arcade is not yet ready, so i can't implement anything yet. The subject is complicated and has not yet reached maturity, i will spend some time on it once the tries and conclusions seem definitive.
If I'm not mistaken, so far we're just trying to reach a DAR of 4:3, but not a PAR of 1:1 ... @ironic do you agree with that ?
For emulator, advancemess will also be included, so once again, the same story goes : rely on the emulator. But I didn't even have a single second to test advmess yet. But for now, i have definitely no time to spend on that. Holidays are coming, 4.1 is on the go as said on the blog.
-
How advmame timings works ?
Is it possible to setup all timings for all resolution/frame rate ?
With manually timings, we can move up, down, left, right, the viewport screen and adjust overscan. It's perfect for people who can't adjust viewport.What about 38.4Mhz pixel clocks in advmame ? i use it and advmame doesn't refer. But i think it works.
DAR, PAR, SAR, 1:1, 4/3, 16/9...
I think (sorry, it's strange), using a virtually (1920 pixels, can be more) infinite honrizontal pixels line and a fixed vertical resolution (as game scanlines) isn't DAR or something else.We must reach fullscreen with very small overscan and 4/3 ratio.
Many years ago, when i was young, my first arcade experience was black&white arcade screen cabinet with no sound. Since, i played a lot of arcade games.
I was ungry when a new arcade cabinet had very poor screen setup.
Big overscan, too bright/less bright, blurry, very bad colors... and a f*****g aspect ratio.And i had a dream...
My work will be arcade cabinet technician....And .. when dreams come true...
I was arcade cabinet technician for 3 years and it was very difficult to respect game aspect ratio with new JAMMA PCB. Where are parameters ? not with JAMMA PCB !!.
All this to say, what is correct aspect ratio ?
How do we must setup the viewport ?In my mind, it's as i want.
I think, it's when all seems "real" (no honrizontal/vertical aberation) with small overscan. -
Advmame handles everything but i think you must setup your screen in advcfg so that it knows how to handle your screen and generate timings accordingly.
The question for the overall aspect ratio we wish is what will determine everything. Should we focus on getting 4:3 fuscreen for any game ? Which may probably mean not square pixels ? Or do we want the exact original resolution with square pixels ? But in such case, eventually have black borders either vertically either horizontally ...
-
Et bah voila, dimanche soir, et j'ai passé le weekend à lire ce post et à faire fonctionner mon Rpi sur une Sony PVM 2950QM
Je vous passe les galères, et celles à venir pour le calage de chaque émulateur, mais le résultat est juste dingue :
https://www.youtube.com/watch?v=6psLAeodsZAMe reste à calibrer l'écran, définir les bonnes résolutions pour les émulateurs manquants.
Résultat, le plaisir de jouer est juste décuplé, ça en valait la chandelle.
Merci encore a tout le monde, notamment @Substring, @ironic , @archimage et tous ceux que j'ai oublié
-
C'est claire que c'est le jour et la nuit avec les LCD.
Faut pas oublier de bien configurer ça TV CRT coté lumiere/contraste/couleurs...
J'ai eu une surprise en passant de mon 36cm a un 63cm, c’était crade. Quelques réglages et hop.
La je viens de faire mes essais avec l’émulation Amiga, pas évident de taper dans du pixel perfect avec cette émulateur. Le résultat est ... oh la la.....
Reste encore et toujours a trouver les HDMI Timings parfait.J’espère que la contrainte du pixel clock pourra être levée, ça serait dément.
Bon, le seul probleme pas trop abordé sur ce post est que pour les jeux d'Arcade verticaux il faut tourner ça TV de 90°.
On peut éventuellement faire tourner certain jeux verticaux, horizontalement si ils n’ont pas une grosse résolution. Dans ce cas, on ne respect pas le sens du scanline et la surface de jeu est réduite. On peut quand même faire tourner 100% des jeux verticaux en horizontal mais on va perdre du pixel...