Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Switchres: modeline generator engine  (Read 345516 times)

0 Members and 1 Guest are viewing this topic.

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #680 on: January 24, 2011, 06:13:29 am »
Thank you very much for your explaination and thank you very much for CRT_Emudriver - VMMaker and the outstanding Arcade_OSD!

Years ago I was a very happy AdvanceMame+DOS user so for me this is great stuff!

I would appreciate you tested this and tell us if you still have input lag or not, as I'm not the best one for determining that for the reasons I explained above.
Sure!
Is there a compiled windows mame version with these fixes?

To test lag I use a little "trick": my spinner! With arkanoid the lag is easily noticeable :)

EDIT: I'm Kernel at ArcadeItalia forum :)
« Last Edit: January 24, 2011, 06:25:57 am by Haggar »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #681 on: January 24, 2011, 06:26:13 am »
Try the one here:

http://sourceforge.net/projects/groovyarcade/files/Mame_Windows_Builds/

Please tell us if you notice input lag with it.
Thanks!
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #682 on: January 24, 2011, 06:51:47 am »
Mame settings I'll use (I hope to try it this evening at home): ddraw, nohwstretch, triplebuffer, nothrottle, soundsync
Thanks.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #683 on: January 24, 2011, 06:58:17 am »
Mame settings I'll use (I hope to try it this evening at home): ddraw, nohwstretch, triplebuffer, nothrottle, soundsync
Thanks.

ddraw, nohwstretch, syncrefresh, notriplebuffer, nothrottle, soundsync

Try syncrefresh instead of triplebuffer, the purpose is to check if syncrefresh actually removes input lag compared to triplebuffer or if it's a myth:


Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

dapsaille

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 92
  • Last login:July 13, 2019, 01:31:26 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #684 on: January 24, 2011, 09:10:36 am »
I'm not good as i wish at shmups so i cannot confirm if this works really, but ... it seems that it is better (really subjective).

 I've noticed a general "problem" ..
if i launch "stock" mame (configuration by default) without switchres and only frameskip set to 0 my games works perfectly, no sound or fps fluctuation .. always at 100%, but with switchres and modified mame.ini, i got lots of fluctuations in sound, even un old cps1 titles ... do you know where it can come, may it be related to cpu power ?

 It is really disturbing ...  ???

EDIT = with switchres  i can see Sound: buffer overflows=27 underflows=4 and in mame overflows=4 underflows=0 for the same game/gameplay ...
« Last Edit: January 24, 2011, 09:22:39 am by dapsaille »

ves

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 225
  • Last login:April 11, 2020, 02:57:49 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #685 on: January 24, 2011, 09:34:50 am »
Hello, yesterday I can test the LiveCD32-Mini-NMO-1283-1fd9849.iso, I really liked how everything works properly, but I have seen problems when the installation / configuration, which will be very difficult to solve by inexperienced in linux, I comment with what I found.

Installation following steps are done well, but leaves to configure or set up some things wrong (I did the process 2 or 3 times, I think I did well but if not, then be my fault) I begin to enumerate.

1 The grub parameters are not correct, do not indicate where is the vmlinuz and the initrd have to put the correct path is / boot, remove the options you have the grub in the livecd etc ..

2 When it starts and ends the process I saw that I mounted / en / home / arcade, I have looked at fstab and actually do 2 times the mounting / as / root and / home / arcade, once removed this option and load without problems.

3 º corrected the fstab, and does not charge directly wahcade, because it is waiting in the Xorg with a terminal, this is solved by copying in / home / arcade / file. Xclients do not know if this problem is derived from the assembly / in / home / arcade or because no copy.

4 º missing symlinks in the folder / data that points to other configuration subcarpestas mame, also in / as many configuration files. Xinitrc. Config. Fvwm etc. .. that should be just in / home / arcade, this can cause the error mounting / en / home / arcade?

5 º acpi does not work to stop the machine from the button poweroff the pc.

6 º Wanting to stop the machine from wahcade faulted and restarted the X loading gdm waiting username and password, I think you should not use gdm, but directly launch X with startx (not if you have it so or not, I have not had time to see much)

7 The mame sound changes from one game to another one you hear very strong and in others much lower, it should normalize with alsa, no? but alsamixer does not work gives error can not find directory.

8 º As information as it is not really a problem when loading some games I've seen errors on screen graphics information, but then the game works fine and without errors.

I see it is a great job (not like mine), but I think you should do as I did with Retrovicio, put all the mame config files etc. .. in / home / arcade, even the samba network etc. .. (After you pass a list as I have in retrovicio, that clear if it is implemented as well) and set up samba to share that folder, so people who do not have EXPERIENCE in linux atrabes network may keep the snap roms etc. .. from windows with no problems.

I think you should also introduce advmenu so you can choose, and they did not like at all wahcade, I personally do not like much, especially when games go past the images are not updated as advmenu, no configuration in the very front-end etc. ..

I hope this does not take it as a destructive criticism, but to be able to help or give ideas to improve your work and make it reach many more people, and you do not run on deaf ears, since it will be one heck anyone can be maintained to GroovyArcade.

And now a question rather silly "?? with all the work you've done with mame and I had not been geentoo easier advmame update to the newest version of mame?

One more thing, you could make a kernel over league, which puts less stuff? such as ubuntu, which is not what you charge and takes less time to boot?


Sorry for my English.

Spanish version for Calamity.

Code: [Select]
Hola , ayer ya puede probar la LiveCD32-Mini-NMO-1.283-1fd9849.iso , me ha gustado mucho como funciona  todo correctamente, pero he visto problemas a la hora de la instalacion/configuracion,los cuales seran muy complicado de resolver por inexpertos en linux, os comento con lo que me he encontrado.

Instalacion siguiendo los pasos se hace bien, pero deja por configurar o mal configuradas algunas cosas (hice el proceso 2 o 3 veces, creo que lo hice bien pero si no es asi, sera culpa mia) empiezo a enumerar.

1º Los parametros de grub no son correctos, no les indica donde esta el vmlinuz ni el initrd hay que ponerle la ruta correcta que esta en /boot, hay que quitar las opciones que tiene el grub en el livecd etc..

2º Cuando arranca y termina el proceso  he visto que me monta / en /home/arcade, he mirado en el fstab y efectivamente hace 2 veces el montaje del / , como / raiz, y en /home/arcade , una vez que se quita esa opcion ya carga sin problemas.

3º Al corregir el fstab, ya no carga directamente wahcade , ya que se queda esperando en las Xorg con un terminal, esto se soluciona copiando en /home/arcade/ el fichero .Xclients, no se si este problema es derivado del montaje de / en /home/arcade o porque no se copia.

4º Faltan enlaces simbolicos en la carpeta /data que apunta a otras subcarpestas de configuracion de mame, tambien hay en / muchos ficheros de configuracion como .xinitrc .config .fvwm etc.. que deberian de estar solo en /home/arcade, esto lo puede ocasionar el error de montaje de / en /home/arcade ??

5º No funciona el acpi para poder apagar la maquina desde el boton de poweroff del pc.

6º Al querer apagar la maquina desde wahcade da un fallo y se reinician las X cargando gdm esperando nombre de usuario y contraseña, creo que no deberias de usar gdm, sino lanzar directamente las X con startx (no se si lo tienes asi o no, no me ha dado tiempo de ver mucho)

7º El sonido con mame cambia de un juego para otro en uno se escucha muy fuerte y en otros mucho mas bajo, se deberia de normalizar con alsa,no? pero alsamixer no funciona da error de no encuentra directorio.

8º Como informacion ya que no es realmente un problema, al cargar algunos juegos he visto que hay errores graficos en las pantallas de informacion , pero despues el juego funciona bien y sin errores.

Veo que es un trabajo estupendo (y no como el mio), pero creo que deberias de hacer como hice yo con Retrovicio , poner todos los ficheros de configuracion de mame etc.. en el /home/arcade , incluso los de red samba etc.. (luego te paso un listado de como lo tengo en retrovicio, eso claro si no esta ya implementado asi) y configurar samba para que comparta esa carpeta , asi la gente que no tenga esperiencia en linux podra atrabes de la red mantener las roms snap etc.. desde windows sin problemas.

Creo que tambien deberias de introducir advmenu para que se pueda elegir, ya que no les gustara a todos wahcade, a mi personalmente no me gusta mucho , sobre todo a la hora de ir pasando de juegos las imagenes no se actualizan como advmenu , no tiene configuracion en el propio front-end etc..

Espero que esto no te lo tomes como una critica destructiva sino para poder ayudarte o darte ideas para mejorar tu trabajo y hacerlo llegar a mucha mas gente, y que no se quede en saco roto, ya que sino sera una puñeta que nadie pueda ir manteniendo a GroovyArcade.

Y ahora una pregunta algo tonta¿?¿? con todo el trabajo que has echo con el mame y con geentoo no te hubiese sido mas facil actualizar advmame a la nueva version de mame?

Una cosa mas, se podria hacer un kernel mas liguero , el cual carge menos cosas ? como el de ubuntu , que no se ve todo lo que carga y tarda menos en arrancar?


Thank.
« Last Edit: January 24, 2011, 09:45:48 am by ves »

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #686 on: January 24, 2011, 10:37:24 am »
Hello, yesterday I can test the LiveCD32-Mini-NMO-1283-1fd9849.iso, I really liked how everything works properly, but I have seen problems when the installation / configuration, which will be very difficult to solve by inexperienced in linux, I comment with what I found.

Installation following steps are done well, but leaves to configure or set up some things wrong (I did the process 2 or 3 times, I think I did well but if not, then be my fault) I begin to enumerate.

1 The grub parameters are not correct, do not indicate where is the vmlinuz and the initrd have to put the correct path is / boot, remove the options you have the grub in the livecd etc ..

2 When it starts and ends the process I saw that I mounted / en / home / arcade, I have looked at fstab and actually do 2 times the mounting / as / root and / home / arcade, once removed this option and load without problems.

3 º corrected the fstab, and does not charge directly wahcade, because it is waiting in the Xorg with a terminal, this is solved by copying in / home / arcade / file. Xclients do not know if this problem is derived from the assembly / in / home / arcade or because no copy.

4 º missing symlinks in the folder / data that points to other configuration subcarpestas mame, also in / as many configuration files. Xinitrc. Config. Fvwm etc. .. that should be just in / home / arcade, this can cause the error mounting / en / home / arcade?

5 º acpi does not work to stop the machine from the button poweroff the pc.

6 º Wanting to stop the machine from wahcade faulted and restarted the X loading gdm waiting username and password, I think you should not use gdm, but directly launch X with startx (not if you have it so or not, I have not had time to see much)

7 The mame sound changes from one game to another one you hear very strong and in others much lower, it should normalize with alsa, no? but alsamixer does not work gives error can not find directory.

8 º As information as it is not really a problem when loading some games I've seen errors on screen graphics information, but then the game works fine and without errors.

I see it is a great job (not like mine), but I think you should do as I did with Retrovicio, put all the mame config files etc. .. in / home / arcade, even the samba network etc. .. (After you pass a list as I have in retrovicio, that clear if it is implemented as well) and set up samba to share that folder, so people who do not have EXPERIENCE in linux atrabes network may keep the snap roms etc. .. from windows with no problems.

I think you should also introduce advmenu so you can choose, and they did not like at all wahcade, I personally do not like much, especially when games go past the images are not updated as advmenu, no configuration in the very front-end etc. ..

I hope this does not take it as a destructive criticism, but to be able to help or give ideas to improve your work and make it reach many more people, and you do not run on deaf ears, since it will be one heck anyone can be maintained to GroovyArcade.

And now a question rather silly "?? with all the work you've done with mame and I had not been geentoo easier advmame update to the newest version of mame?

One more thing, you could make a kernel over league, which puts less stuff? such as ubuntu, which is not what you charge and takes less time to boot?


Sorry for my English.

Spanish version for Calamity.

Code: [Select]
Hola , ayer ya puede probar la LiveCD32-Mini-NMO-1.283-1fd9849.iso , me ha gustado mucho como funciona  todo correctamente, pero he visto problemas a la hora de la instalacion/configuracion,los cuales seran muy complicado de resolver por inexpertos en linux, os comento con lo que me he encontrado.

Instalacion siguiendo los pasos se hace bien, pero deja por configurar o mal configuradas algunas cosas (hice el proceso 2 o 3 veces, creo que lo hice bien pero si no es asi, sera culpa mia) empiezo a enumerar.

1º Los parametros de grub no son correctos, no les indica donde esta el vmlinuz ni el initrd hay que ponerle la ruta correcta que esta en /boot, hay que quitar las opciones que tiene el grub en el livecd etc..

2º Cuando arranca y termina el proceso  he visto que me monta / en /home/arcade, he mirado en el fstab y efectivamente hace 2 veces el montaje del / , como / raiz, y en /home/arcade , una vez que se quita esa opcion ya carga sin problemas.

3º Al corregir el fstab, ya no carga directamente wahcade , ya que se queda esperando en las Xorg con un terminal, esto se soluciona copiando en /home/arcade/ el fichero .Xclients, no se si este problema es derivado del montaje de / en /home/arcade o porque no se copia.

4º Faltan enlaces simbolicos en la carpeta /data que apunta a otras subcarpestas de configuracion de mame, tambien hay en / muchos ficheros de configuracion como .xinitrc .config .fvwm etc.. que deberian de estar solo en /home/arcade, esto lo puede ocasionar el error de montaje de / en /home/arcade ??

5º No funciona el acpi para poder apagar la maquina desde el boton de poweroff del pc.

6º Al querer apagar la maquina desde wahcade da un fallo y se reinician las X cargando gdm esperando nombre de usuario y contraseña, creo que no deberias de usar gdm, sino lanzar directamente las X con startx (no se si lo tienes asi o no, no me ha dado tiempo de ver mucho)

7º El sonido con mame cambia de un juego para otro en uno se escucha muy fuerte y en otros mucho mas bajo, se deberia de normalizar con alsa,no? pero alsamixer no funciona da error de no encuentra directorio.

8º Como informacion ya que no es realmente un problema, al cargar algunos juegos he visto que hay errores graficos en las pantallas de informacion , pero despues el juego funciona bien y sin errores.

Veo que es un trabajo estupendo (y no como el mio), pero creo que deberias de hacer como hice yo con Retrovicio , poner todos los ficheros de configuracion de mame etc.. en el /home/arcade , incluso los de red samba etc.. (luego te paso un listado de como lo tengo en retrovicio, eso claro si no esta ya implementado asi) y configurar samba para que comparta esa carpeta , asi la gente que no tenga esperiencia en linux podra atrabes de la red mantener las roms snap etc.. desde windows sin problemas.

Creo que tambien deberias de introducir advmenu para que se pueda elegir, ya que no les gustara a todos wahcade, a mi personalmente no me gusta mucho , sobre todo a la hora de ir pasando de juegos las imagenes no se actualizan como advmenu , no tiene configuracion en el propio front-end etc..

Espero que esto no te lo tomes como una critica destructiva sino para poder ayudarte o darte ideas para mejorar tu trabajo y hacerlo llegar a mucha mas gente, y que no se quede en saco roto, ya que sino sera una puñeta que nadie pueda ir manteniendo a GroovyArcade.

Y ahora una pregunta algo tonta¿?¿? con todo el trabajo que has echo con el mame y con geentoo no te hubiese sido mas facil actualizar advmame a la nueva version de mame?

Una cosa mas, se podria hacer un kernel mas liguero , el cual carge menos cosas ? como el de ubuntu , que no se ve todo lo que carga y tarda menos en arrancar?


Thank.

It's good information, there's definitely a ton of things to get fixed up like these.  I agree on many of them, some of them are things I haven't had time to look closer at though or others stuff I am not sure are easily done. 

I like the idea of advancemenu, but I just have never seen it actually work, for some reason it's always failed to load for me and complains about my video card not being compatible.  Wahcade works for me, but I don't like the configuration of it either, wish it was more automated like advancemenu sounds.  Any help in how to get advancemenu working would be great.

I'm not sure how the grub.conf and fstab could be improved, but I'm open to fixes to them, they basically work for me on basic installs but may have issues I am guessing.  Really the system is meant as a basic liveCD just to run, for now, and hopefully these things can over time get more user friendly to being a generalized Linux system and arcade machine more for an installation.

The directory structures for the ROM locations is definitely a pain, I need to fix that somehow to be a lot better, it works for my setup here I have but am sure it's not perfect but of course haven't had too much closer detailed looking into what to do to fix it.

Actually gdm is used because of issues with the liveCD boot and how it is a root user, and setup when you first boot up.  Basically everything was really difficult to setup and get running smoothly then go into X Windows without gdm, plus it logs in the normal user automatically which seemed like a good bonus.  I seemed right because it's what most distributions do, it could launch wahcade (or another frontend in the future) instead of a window manager, right now has the choice of wahcade in setup but of course you have to set it up first and it's a pain.  So that does need work.

Actually the kernel config I use is from ubuntu, it is large but also should cover anybodys hardware.  I'd of course always be looking to remove extra stuff, like all the iptables/filtering stuff I have removed, it really should be smaller than Ubuntu's kernel.  The actual kernel itself might be slightly larger, the vmlinuz file, because it contains the radeon/drm layer and drivers plus the radeon firmware is compiled into it.  That is how you get 15khz right at boot after grub, you won't get that in any other Linux setup right now without an arcadeVGA card.

I probably need to fix acpi, I know on some machines it seems to not like rebooting smoothly.  For now I've left it at that because it's a liveCD mostly, and doesn't really matter if the user just switches the machine off.  It does seem to reboot fine though after you install to disk a lot of the time, at least the machines I've tested on.  I'm not sure why that is.

It uses OSS4 actually, Alsa is disabled, try the ossmix or ossxmix programs instead of alsamixer.  We use OSS4 now because it works better than Alsa, at least is more compatible with more cards and it doesn't have issues with sharing inputs.  It at least works it seems with mame, and that is the important part, and overall has acted better for me than Alsa did. 

I'm not sure why the audio is doing that, I've never seen that here.

Advancemame is really a complete rewrite of a large part of Mame from what I can tell, I don't think anybody can maintain it and update it.  Also I think we are doing better than Advance mame in a lot of ways, by separating things that we do  from Mame for the most part we are going to be able to run other emulators besides mame, we won't die like advance mame has from not being maintainable, and can somewhat do more stuff than it could and follow the operating systems procedures/API too.  I would love to explore advance mame more and find any information on how it was doing stuff, something on my todo list.

There is the GIT repository, so you can build and explore the actual distribution creating to for the ISO images, and can help fix things too.  Or you can even take the things this Groovy Arcade does and put them into yours your working on too.  It'd be great for the things I'm doing to be able to get used in your ISO too, because this in a lot of ways is a demonstration of how to use switchres but not the only possible linux system to use it on.  You could even take the GIT repository and completely use it for yours, or parts of it, which would be great too.  It's sort of a 'research project' in utilizing the most bleeding edge linux kernel and X Windows/Mesa/DRI/DRM code available to get the best arcade monitor output.  The actual full user friendly part may be more because it mostly is limited in function to work on arcade monitors, boot up and run mame, but mostly just a quick way to test hardware and see how switchres can work in Linux and show a baseline of which kernel with my patches and versions of X Windows and system setup are needed too.

It's great to hear the feedback about it, I'll be reading deeper into your feedback over time and hopefully this is just another todo list for me to follow and help make the ISO image even better.  Definitely check out the git repository too and see if you can build the ISO setup/build, and/or patch things, submit patches, would be great to have more help at fixing things up and figuring things out.




SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #687 on: January 24, 2011, 11:12:38 am »
Looks like Mame 0141u1 has the -mt fix in it for vsync, looks interesting...

Code: [Select]
Added "-syncrefresh" option to osd/sdl. This will *limit* the game
speed to the video refresh rate and works in -mt mode as well. The
option has an effect only if "-waitsync" is specified.
[Couriersud, Chris Kennedy]

Which seems to be mainly this change...
Code: [Select]
diff -Nru src-old/osd/sdl/window.c src/osd/sdl/window.c
--- src-old/osd/sdl/window.c    2010-12-02 09:26:38.000000000 -0800
+++ src/osd/sdl/window.c        2011-01-22 04:51:52.000000000 -0800
@@ -949,6 +949,7 @@
 void sdlwindow_video_window_update(running_machine *machine, sdl_window_info *window)
 {
 
+       osd_ticks_t             event_wait_ticks;
        ASSERT_MAIN_THREAD();
 
        // adjust the cursor state
@@ -977,8 +978,12 @@
                        }
                }
 
-               // only render if we have been signalled
-               if (osd_event_wait(window->rendered_event, 0))
+               if (video_config.waitvsync && video_config.syncrefresh)
+                       event_wait_ticks = osd_ticks_per_second(); // block at most a second
+               else
+                       event_wait_ticks = 0;
+
+               if (osd_event_wait(window->rendered_event, event_wait_ticks))
                {
                        worker_param wp;
                        render_primitive_list *primlist;


First glance tells me this is the same thing basically just done better and more interesting by splitting it out into two options.  I'll have to check though to see how accurate it runs, when testing it was really oddly picky about exactly where I waited and the patch I have currently is actually doing the wait slightly in a different spot in the drawing thread process.

Looks interesting, main thing though is that switchres and 0141u1 will definitely have to change some command line options to run correctly, and guessing the Windows side of this might be either not happening in Mame or waiting for more work by them to do it a different way.  So guess now in Linux the whole syncrefresh option and waitvsync option are there together, oddly now Linux in Mame uses -mt and -nothrottle and -waitvsync and -syncrefresh without problems most likely while Windows doesn't without the patch from Calamity.  From what I gathered the Windows OSD part of Mame is probably way harder to get changed at all since that's what the developers use most and there's only one or so that use the SDL stuff.

I'll have to give 0141u1 a test in Linux and see if it's the same or better than what I did in my patch originally.  Shouldn't be too hard in switchres to check for that options availability and setup the mame command line properly if it's available and add that -syncrefresh option.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

dapsaille

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 92
  • Last login:July 13, 2019, 01:31:26 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #688 on: January 24, 2011, 11:44:08 am »
simple stupid question ... what is the root password for GroovyArcade latest mini iso ? ^^

 (tired to chroot from a livecd, no vga monitor near cab)

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #689 on: January 24, 2011, 11:44:17 am »
Interesting. I'm not surprised they haven't consider the Windows patch yet for -mt as it's in the window.c osd core file and suppose that part needs to be controlled by the big boss, and after all that patch (SetEvent/WaitForSingleObject) was not the cleanest possible one. It turned out it was just necessary (equivalent) to do this:

/src/osd/windows/window.c

Code: [Select]
if (multithreading_enabled)
- PostMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
+ SendMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
else
SendMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
mtlog_add("winwindow_video_window_update: PostMessage end");

... in other words, to revert the behaviour that is there by design. So the PostMessage method is the one that Mame devs have actually designed for ordering the main window to update itself when in multithreading context, but... as that makes both threads asynchronous (PostMessage does not wait) it breaks triplebuffer/syncrefresh (probably Mame devs are not using vsync anymore so didn't check this).
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #690 on: January 24, 2011, 11:47:52 am »
simple stupid question ... what is the root password for GroovyArcade latest mini iso ? ^^

 (tired to chroot from a livecd, no vga monitor near cab)
It's arcade by default, but also you can just type 'sudo -s' too and that'll not require a password.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

dapsaille

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 92
  • Last login:July 13, 2019, 01:31:26 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #691 on: January 24, 2011, 11:49:57 am »
simple stupid question ... what is the root password for GroovyArcade latest mini iso ? ^^

 (tired to chroot from a livecd, no vga monitor near cab)
It's arcade by default, but also you can just type 'sudo -s' too and that'll not require a password.

 Thanks but i've selected wahcade at boot,

 i'm happy that your distro work fine on my other mamecab, it seems that my laptop doesn't like linux and will stay under windows.

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #692 on: January 24, 2011, 11:51:36 am »
Interesting. I'm not surprised they haven't consider the Windows patch yet for -mt as it's in the window.c osd core file and suppose that part needs to be controlled by the big boss, and after all that patch (SetEvent/WaitForSingleObject) was not the cleanest possible one. It turned out it was just necessary (equivalent) to do this:

/src/osd/windows/window.c

Code: [Select]
if (multithreading_enabled)
- PostMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
+ SendMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
else
SendMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
mtlog_add("winwindow_video_window_update: PostMessage end");

... in other words, to revert the behaviour that is there by design. So the PostMessage method is the one that Mame devs have actually designed for ordering the main window to update itself when in multithreading context, but... as that makes both threads asynchronous (PostMessage does not wait) it breaks triplebuffer/syncrefresh (probably Mame devs are not using vsync anymore so didn't check this).

Yeah, and from what I have gathered they really don't think of running on arcade monitors as something they need to adjust anything for.  So guessing on the Windows side we'll have to have a separate patch, since the general message seems to be that they are willing to let the SDL/Linux side be there for arcade monitors but in Windows they are focused on being able to test emulation themselves on modern monitors and that's it.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #693 on: January 24, 2011, 11:53:39 am »
simple stupid question ... what is the root password for GroovyArcade latest mini iso ? ^^

 (tired to chroot from a livecd, no vga monitor near cab)
It's arcade by default, but also you can just type 'sudo -s' too and that'll not require a password.

 Thanks but i've selected wahcade at boot,

 i'm happy that your distro work fine on my other mamecab, it seems that my laptop doesn't like linux and will stay under windows.

You should be able to do a Ctl+Alt+F1 and get to the console and do anything there needed.  Definitely is one of the issues with running the frontend by default instead of a window manager, sort of a tricky thing I haven't fully figured out a best way to deal with.  Hopefully the console works though and does the job.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

dapsaille

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 92
  • Last login:July 13, 2019, 01:31:26 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #694 on: January 24, 2011, 11:56:19 am »
simple stupid question ... what is the root password for GroovyArcade latest mini iso ? ^^

 (tired to chroot from a livecd, no vga monitor near cab)
It's arcade by default, but also you can just type 'sudo -s' too and that'll not require a password.

 Thanks but i've selected wahcade at boot,

 i'm happy that your distro work fine on my other mamecab, it seems that my laptop doesn't like linux and will stay under windows.

You should be able to do a Ctl+Alt+F1 and get to the console and do anything there needed.  Definitely is one of the issues with running the frontend by default instead of a window manager, sort of a tricky thing I haven't fully figured out a best way to deal with.  Hopefully the console works though and does the job.

 In the livecd environnement it is ok, i can get consoles already logged at root, but i've installed to my hdd and i get only prompt, no autologin for consoles .
 Problem is solved, password changed and dhcp activated ^^

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #695 on: January 24, 2011, 01:40:52 pm »
I'm not good as i wish at shmups so i cannot confirm if this works really, but ... it seems that it is better (really subjective).

 I've noticed a general "problem" ..
if i launch "stock" mame (configuration by default) without switchres and only frameskip set to 0 my games works perfectly, no sound or fps fluctuation .. always at 100%, but with switchres and modified mame.ini, i got lots of fluctuations in sound, even un old cps1 titles ... do you know where it can come, may it be related to cpu power ?

 It is really disturbing ...  ???

EDIT = with switchres  i can see Sound: buffer overflows=27 underflows=4 and in mame overflows=4 underflows=0 for the same game/gameplay ...

I'll check it hopefully this evening. But... do you notice those fluctuations in game action (scroll) or only in sound and fps (f11)? If scroll is fluent, then vsync is ok, as the videocard acts as an accurate clock, better that using the cpu clock indeed. So REAL fps must be a constant figure, but... measured fps (the one Mame prompts) can fluctuate around as it's measured using the cpu clock. As soundsync patch uses that measured fps as a factor to apply to sound frequency, then sound pitch can actually fluctuate slightly due to that badly calculated value. A workaround could be to precalculate the sound factor as a cocient of our_modeline_fps / target_fps and then use that as a constant to apply to the soundbuffer frequency.

Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #696 on: January 24, 2011, 02:56:29 pm »
Calamity, This uses your newest method of simplified fixing the Windows side of -mt and -waitvsync together and also the other fix for no triplebuffer and waitvsync.  See if this build works as well as the other builds...

In the Mame builds folder:
mame0141u1.7z
Code: [Select]
diff --git a/src/osd/windows/drawdd.c b/src/osd/windows/drawdd.c
index 0b8be96..56d28c1 100644
--- a/src/osd/windows/drawdd.c
+++ b/src/osd/windows/drawdd.c
@@ -457,7 +457,7 @@ static int drawdd_window_draw(win_window_info *window, HDC dc, int update)
        if (result != DD_OK) mame_printf_verbose("DirectDraw: Error %08X unlocking blit surface\n", (int)result);
 
        // sync to VBLANK
-       if ((video_config.waitvsync || video_config.syncrefresh) && window->machine->video().throttled() && (!window->fullscreen || dd->back == NULL))
+       if ((video_config.waitvsync || video_config.syncrefresh) && (!window->fullscreen || dd->back == NULL))
        {
                result = IDirectDraw7_WaitForVerticalBlank(dd->ddraw, DDWAITVB_BLOCKBEGIN, NULL);
                if (result != DD_OK) mame_printf_verbose("DirectDraw: Error %08X waiting for VBLANK\n", (int)result);
@@ -770,7 +780,7 @@ void winwindow_video_window_update(win_window_info *window)
                        // post a redraw request with the primitive list as a parameter
                        last_update_time = timeGetTime();
                        mtlog_add("winwindow_video_window_update: PostMessage start");
-                       if (multithreading_enabled)
+                       if (multithreading_enabled && !video_config.waitvsync && !video_config.syncrefresh)
                                PostMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);
                        else
                                SendMessage(window->hwnd, WM_USER_REDRAW, 0, (LPARAM)primlist);


Also it works well in Linux now with the official mame u1 patch, so looks that's in there and I can't see a difference between it and the last version with my previous patch.

Update:
Almost forgot, there'll be a new version 1.294-48d17ef of switchres to work properly too using -syncrefresh correctly outside of triplebuffer.  That'll be up in a few minutes, I was confining that option to -triplebuffer but now see it and waitvsync are needed together it seems.
« Last Edit: January 24, 2011, 02:59:33 pm by bitbytebit »
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #697 on: January 24, 2011, 03:52:20 pm »


I think you should also introduce advmenu so you can choose, and they did not like at all wahcade, I personally do not like much, especially when games go past the images are not updated as advmenu, no configuration in the very front-end etc. ..



Ves,  Do you have an example/good default advance menu config I could start from?  I am trying advance menu again and I now see it is working and definitely looks like it could be a lot better than wahcade when setup right.  I am having issues though figuring out how to do full screen mode, good default resolution for the 640x480 desktop, generally if there's some more optimal theme/colors and sound (or no default sound), just something more advanced than the basic config it comes with.  That would help me start using it on the ISO much quicker to get a jumpstart at a better setup.  Also is there a way to tell it to use the mame.ini file as being somewhere else besides /usr/local/bin/mame.ini ?  Seems odd it wants it there, and of course a user can't write to that location and it's way outside the home directory for /home/arcade/.  I definitely like the way it doesn't need some complicated steps to just get working, although also wondering how to do the artwork locations or where are they by default?   I've got it running switchres just fine and that looks good, was pretty simple to do that, but the config looks a bit difficult to quickly alter and mold to what would be better than wahcade.  Looks like I could configure it with all the different emulators too easier, and hopefully makes the interface issue better, I've actually been wanting to address this lately.

Also I figured out the acpid issue, thanks for seeing that, have been working on quite a few of the things you found, thanks again for the feedback.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #698 on: January 24, 2011, 05:55:32 pm »
I confirm the last patch works great. So actually that:

 if (multithreading_enabled && !video_config.waitvsync && !video_config.syncrefresh)

... seems a clever solution as it only changes the behaviour when syncrefresh/waitvsync is on (triplebuffer on the other hand still allows both threads run full speed).

I'm thinking triplebuffer could be modified to remove it's internal vsync and only perform page flipping, as it's a bit confusing as it's now, that could be done by not using the DDFLIP_WAIT flag, so vsync should be explicitly stated by -syncrefresh... don't know if it's a good idea... it could mislead people already used to the normal vsynced triplebuffer.

« Last Edit: January 24, 2011, 05:57:38 pm by Calamity »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

ves

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 225
  • Last login:April 11, 2020, 02:57:49 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #699 on: January 24, 2011, 05:59:19 pm »
Hi bitbytebit , I put the advmenu.rc here is the configuration file for advmenu this is created in /home/user/.advmenu, with respect to the omitted advmenu mame.ini file that file the only searches for the executable or generic emulator which has been set, which creates in its folder .advmenu the mame.xml etc. ..

With respect to the easy user configuration you want to refer to my livecd that has passed away (which lasted little) is totally minimal, no desktop or gdm or anything else just carries on startx. Xinitrc is the advmenu to run that way which you can see that is fast, I think you should remove the sales managers as fwm etc .. and remove all gdm to not reload when an error.

Please try it and get all the items or files that you are utilies. (So if the music advmenu not remember where the service but do not think it a problem)

http://www.retrovicio.com/foro/showthread.php?t=9258

As you can see from my livecd my settings are more or less so.

Samba shares /home/retrovicio with full permissions to read/write so you can manage the roms from windows, and even go switchres updated suckle and just copying the executable.

/Home/retrovicio/mame symbolic link to .Mame
/ Home/retrovicio/advmame symbolic link to .Advmame
/ Home/samba/smb.conf This is the actual file, and in /etc/samba/smb.conf is the symbolic link to smb.conf
/Home/retrovicio/.mame/mame (actual executable) and a symbolic link to /usr/game/mame
And so, etc. ..

 I'm thinking it would not make sense to put on or Xorg Red Samba home as these parameters would not be changed, especially Xorg, maybe the only thing left would be Red because if we need to change the ip is as easy as editing with notepad, Samba and would remove him because I do not share anything else that is home / arcade, and if so I think I would know the user.

You could also put an image loading plymounth or something.

With regard to your live update, this function now? I mean I have it installed the update as I can in debian with apt-get update, and I cojeria your improvements?

As for what the git I have not understood what you wanted to say.

I will keep this tournament very closely to be able to help as much as possible.


Thanks.
« Last Edit: January 24, 2011, 06:00:53 pm by ves »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #700 on: January 24, 2011, 06:21:54 pm »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #701 on: January 25, 2011, 05:42:06 am »
Mame settings I'll use (I hope to try it this evening at home): ddraw, nohwstretch, triplebuffer, nothrottle, soundsync
Thanks.

ddraw, nohwstretch, syncrefresh, notriplebuffer, nothrottle, soundsync

Try syncrefresh instead of triplebuffer, the purpose is to check if syncrefresh actually removes input lag compared to triplebuffer or if it's a myth:
I've tried it quickly and it seems very good! No lag and no audio hiccups!

To activate soundsync I have to add "soundsync   1" into mame.ini, right?

This evening I'll try it in depth.
Is there any other useful test I can do?

Thanks
« Last Edit: January 25, 2011, 05:43:40 am by Haggar »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #702 on: January 25, 2011, 07:14:01 am »
Mame settings I'll use (I hope to try it this evening at home): ddraw, nohwstretch, triplebuffer, nothrottle, soundsync
Thanks.

ddraw, nohwstretch, syncrefresh, notriplebuffer, nothrottle, soundsync

Try syncrefresh instead of triplebuffer, the purpose is to check if syncrefresh actually removes input lag compared to triplebuffer or if it's a myth:
I've tried it quickly and it seems very good! No lag and no audio hiccups!

To activate soundsync I have to add "soundsync   1" into mame.ini, right?

This evening I'll try it in depth.
Is there any other useful test I can do?

Thanks

Oh that's great! So you mean it's better that way (notriplebuffer) than with triplebuffer on, less lag, isn't it? You could test with/without triplebuffer to see if you actually notice a difference with your spinner, so we make sure triplebuffer (page flipping) is actually the problem.
For what I've seen, soundsync is automatically set on, you shouldn't need to add it in Mame.ini
« Last Edit: January 25, 2011, 07:15:46 am by Calamity »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #703 on: January 25, 2011, 09:02:41 am »
Ok.
I'll test it this evening and let you know  :)

ves

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 225
  • Last login:April 11, 2020, 02:57:49 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #704 on: January 25, 2011, 09:40:06 am »
Hello, here I put the configuration advmenu.rc
To select the video mode you can play with this option will change to 640 1024 etc. ..
device_video_overlaysize 320

I can not remember if mame runs either directly or through switchres if so you'll have to configure emulator advmenu.rc as generic and remove the lines suck, remember to protect the file so you will not reinstate the configuration of mame, and that mame default if found includes it.

http://advancemame.sourceforge.net/doc-advmenu.html#4.1

If I can watch tonight, if I have created advmenu.rc switchres configuradon with another hd.


Code: [Select]
config save_at_exit

device_color_bgr15 yes

device_color_bgr16 yes

device_color_bgr24 yes

device_color_bgr32 yes

device_color_bgr8 yes

device_color_palette8 yes

device_color_yuy2 yes

device_joystick none

device_keyboard auto

device_mouse none

device_sound sdl

device_video sdl

device_video_cursor auto

device_video_doublescan yes

device_video_fastchange no

device_video_interlace yes

device_video_output fullscreen

device_video_overlaysize 320

device_video_singlescan yes

difficulty none
display_brightness 1

display_gamma 1

display_orientation
display_restoreatexit yes

display_restoreatgame no

display_size 320

emulator "MAME" mame "/usr/games/mame"

emulator_roms "MAME" "/home/retro/mame/roms:/media/usb/roms"

emulator_flyers "MAME" "/home/retro/mame/flyers"

emulator_altss "MAME" "/home/retro/mame/snap"

emulator_cabinets "MAME" "/home/retro/mame/cabinets"

emulator_titles "MAME" "/home/retro/mame/titles"

emulator "ADvMAME" advmame "/usr/local/bin/advmame"

emulator_roms "ADvMAME" "/home/retro/mame/roms"

emulator_flyers "ADvMAME" "/home/retro/mame/flyers"

emulator_altss "ADvMAME" "/home/retro/mame/snap"

emulator_cabinets "ADvMAME" "/home/retro/mame/cabinets"

emulator_titles "ADvMAME" "/home/retro/mame/titles"

event_alpha no

event_assign up up or 8_pad

event_assign down down or 2_pad

event_assign left left or 4_pad

event_assign right right or 6_pad

event_assign enter enter or enter_pad or 1

event_assign esc esc or w

event_assign space space

event_assign home home

event_assign end end

event_assign pgup pgup

event_assign pgdn pgdn

event_assign del del

event_assign ins insert

event_assign shutdown 2 or lcontrol esc

event_assign mode tab or z

event_assign help f1

event_assign group f2

event_assign type f3

event_assign exclude f4

event_assign sort f5

event_assign setgroup f9

event_assign settype f10

event_assign runclone f12 or a

event_assign command f8

event_assign menu backquote or backslash

event_assign emulator f6 or s

event_assign rotate 0_pad

event_assign lock scrlock

event_assign preview space

event_mode fast

event_repeat 500 50

icon_space 43

idle_screensaver 60 10

idle_screensaver_preview snap

idle_start 0 0

include
input_hotkey yes

#Para no poder salir a consola

lock no

menu_base 3199
menu_rel 5
merge differential

misc_exit all

misc_quiet no

mode list_mixed
mode_skip
mouse_delta 100

preview snap
preview_default none

preview_default_cabinet yes

preview_default_flyer yes

preview_default_icon none

preview_default_marquee yes

preview_default_snap none

preview_default_title yes

preview_expand 1.15

sort parent
sound_background_begin none

sound_background_end none

sound_background_loop sloop.mp3

sound_background_loop_dir "mp3"

sound_background_start none

sound_background_stop none

sound_buffer 0.1

sound_foreground_begin default

sound_foreground_end default

sound_foreground_key default

sound_foreground_start sstart.mp3

sound_foreground_stop default

sound_latency 0.1

sound_samplerate 44100

sound_volume -3

ui_background
ui_bottombar yes

ui_clip single

ui_color help 000000 ffffff

ui_color help_tag 247ef0 ffffff

ui_color submenu_bar 247ef0 ffffff

ui_color submenu_item 000000 ffffff

ui_color submenu_item_select 000000 afffff

ui_color submenu_hidden 808080 ffffff

ui_color submenu_hidden_select 808080 afffff

ui_color menu_item 000000 ffffff

ui_color menu_hidden 808080 ffffff

ui_color menu_tag 247ef0 ffffff

ui_color menu_item_select 000000 afffff

ui_color menu_hidden_select 808080 afffff

ui_color menu_tag_select 247ef0 afffff

ui_color bar 000000 ffffff

ui_color bar_tag 247ef0 ffffff

ui_color bar_hidden 808080 ffffff

ui_color grid 247ef0 ffffff

ui_color backdrop 000000 808080

ui_color icon ffffff ffffff

ui_color cursor 808080 ffffff

ui_command_error Error running the command

ui_command_menu Command...

ui_console no

ui_exit none

ui_font auto

ui_fontsize auto

ui_game snap

ui_gamemsg "Cargando Juego.."

ui_help none

ui_menukey yes

ui_skipbottom 0

ui_skipleft 0

ui_skipright 0

ui_skiptop 0

ui_startup none

ui_topbar yes

ui_translucency 0.6

MAME/mode list_mixed

MAME/preview snap

mame/preview snap
mame/mode list_mixed
group_include "<undefined>"
group_include "Bad"
group_include "Good"
group_include "Very Good"
type_include "<undefined>"
type_include "Application"
type_include "Arcade"
type_include "Bet 'em Up"
type_include "Breakout"
type_include "Computer"
type_include "Console"
type_include "Fight"
type_include "Filler"
type_include "Flipper"
type_include "Gun"
type_include "Puzzle"
type_include "RPG"
type_include "Racing"
type_include "Shot 'em Up"
type_include "Sport"
emulator_include "MAME"
group "<undefined>"
group "Bad"
group "Good"
group "Very Good"
type "<undefined>"
type "Application"
type "Arcade"
type "Bet 'em Up"
type "Breakout"
type "Computer"
type "Console"
type "Fight"
type "Filler"
type "Flipper"
type "Gun"
type "Puzzle"
type "Racing"
type "RPG"
type "Shot 'em Up"
type "Sport"
emulator_attrib "MAME" missing exclude
emulator_attrib "MAME" clone exclude
emulator_attrib "MAME" bad exclude
emulator_attrib "MAME" vector include
emulator_attrib "MAME" vertical include
emulator_attrib "MAME" neogeo include
emulator_attrib "MAME" deco exclude
emulator_attrib "MAME" playchoice exclude
emulator_attrib "ADvMAME" missing exclude
emulator_attrib "ADvMAME" clone exclude
emulator_attrib "ADvMAME" bad exclude
emulator_attrib "ADvMAME" vector include
emulator_attrib "ADvMAME" vertical include
emulator_attrib "ADvMAME" neogeo include
emulator_attrib "ADvMAME" deco exclude
emulator_attrib "ADvMAME" playchoice exclude


Also I put here the smb.conf file if it's more like you


Code: [Select]
#
# Sample configuration file for the Samba suite for Debian GNU/Linux.
#
#
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options most of which
# are not shown in this example
#
# Some options that are often worth tuning have been included as
# commented-out examples in this file.
#  - When such options are commented with ";", the proposed setting
#    differs from the default Samba behaviour
#  - When commented with "#", the proposed setting is the default
#    behaviour of Samba but the option is considered important
#    enough to be mentioned here
#
# NOTE: Whenever you modify this file you should run the command
# "testparm" to check that you have not made any basic syntactic
# errors.
# A well-established practice is to name the original file
# "smb.conf.master" and create the "real" config file with
# testparm -s smb.conf.master >smb.conf
# This minimizes the size of the really used smb.conf file
# which, according to the Samba Team, impacts performance
# However, use this with caution if your smb.conf file contains nested
# "include" statements. See Debian bug #483187 for a case
# where using a master file is not a good idea.
#

#======================= Global Settings =======================

[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP

# server string is the equivalent of the NT Description field
   server string = %h server (Samba, Ubuntu)

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
#   wins support = no

# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
;   wins server = w.x.y.z

# This will prevent nmbd to search for NetBIOS names through DNS.
   dns proxy = no

# What naming service and in what order should we use to resolve host names
# to IP addresses
;   name resolve order = lmhosts host wins bcast

#### Networking ####

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 eth0

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself.  However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
;   bind interfaces only = yes



#### Debugging/Accounting ####

# This tells Samba to use a separate log file for each machine
# that connects
   log file = /var/log/samba/log.%m

# Cap the size of the individual log files (in KiB).
   max log size = 1000

# If you want Samba to only log through syslog then set the following
# parameter to 'yes'.
#   syslog only = no

# We want Samba to log a minimum amount of information to syslog. Everything
# should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
# through syslog you should set the following parameter to something higher.
   syslog = 0

# Do something sensible when Samba crashes: mail the admin a backtrace
   panic action = /usr/share/samba/panic-action %d


####### Authentication #######

# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# in the samba-doc package for details.
#   security = user

# You may wish to use password encryption.  See the section on
# 'encrypt passwords' in the smb.conf(5) manpage before enabling.
   encrypt passwords = true

# If you are using encrypted passwords, Samba will need to know what
# password database type you are using.  
   passdb backend = tdbsam

   obey pam restrictions = yes

# This boolean parameter controls whether Samba attempts to sync the Unix
# password with the SMB password when the encrypted SMB password in the
# passdb is changed.
   unix password sync = yes

# For Unix password sync to work on a Debian GNU/Linux system, the following
# parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen.de> for
# sending the correct chat script for the passwd program in Debian Sarge).
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .

# This boolean controls whether PAM will be used for password changes
# when requested by an SMB client instead of the program listed in
# 'passwd program'. The default is 'no'.
   pam password change = yes

# This option controls how unsuccessful authentication attempts are mapped
# to anonymous connections
   map to guest = bad user

########## Domains ###########

# Is this machine able to authenticate users. Both PDC and BDC
# must have this setting enabled. If you are the BDC you must
# change the 'domain master' setting to no
#
;   domain logons = yes
#
# The following setting only takes effect if 'domain logons' is set
# It specifies the location of the user's profile directory
# from the client point of view)
# The following required a [profiles] share to be setup on the
# samba server (see below)
;   logon path = \\%N\profiles\%U
# Another common choice is storing the profile in the user's home directory
# (this is Samba's default)
#   logon path = \\%N\%U\profile

# The following setting only takes effect if 'domain logons' is set
# It specifies the location of a user's home directory (from the client
# point of view)
;   logon drive = H:
#   logon home = \\%N\%U

# The following setting only takes effect if 'domain logons' is set
# It specifies the script to run during logon. The script must be stored
# in the [netlogon] share
# NOTE: Must be store in 'DOS' file format convention
;   logon script = logon.cmd

# This allows Unix users to be created on the domain controller via the SAMR
# RPC pipe.  The example command creates a user account with a disabled Unix
# password; please adapt to your needs
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u

# This allows machine accounts to be created on the domain controller via the
# SAMR RPC pipe.  
# The following assumes a "machines" group exists on the system
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u

# This allows Unix groups to be created on the domain controller via the SAMR
# RPC pipe.  
; add group script = /usr/sbin/addgroup --force-badname %g

########## Printing ##########

# If you want to automatically load your printer list rather
# than setting them up individually then you'll need this
#   load printers = yes

# lpr(ng) printing. You may wish to override the location of the
# printcap file
;   printing = bsd
;   printcap name = /etc/printcap

# CUPS printing.  See also the cupsaddsmb(8) manpage in the
# cupsys-client package.
;   printing = cups
;   printcap name = cups

############ Misc ############

# Using the following line enables you to customise your configuration
# on a per machine basis. The %m gets replaced with the netbios name
# of the machine that is connecting
;   include = /home/samba/etc/smb.conf.%m

# Most people will find that this option gives better performance.
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
# for details
# You may want to add the following on a Linux system:
#         SO_RCVBUF=8192 SO_SNDBUF=8192
#   socket options = TCP_NODELAY

# The following parameter is useful only if you have the linpopup package
# installed. The samba maintainer and the linpopup maintainer are
# working to ease installation and configuration of linpopup and samba.
;   message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &

# Domain Master specifies Samba to be the Domain Master Browser. If this
# machine will be configured as a BDC (a secondary logon server), you
# must set this to 'no'; otherwise, the default behavior is recommended.
#   domain master = auto

# Some defaults for winbind (make sure you're not using the ranges
# for something else.)
;   idmap uid = 10000-20000
;   idmap gid = 10000-20000
;   template shell = /bin/bash

# The following was the default behaviour in sarge,
# but samba upstream reverted the default because it might induce
# performance issues in large organizations.
# See Debian bug #368251 for some of the consequences of *not*
# having this setting and smb.conf(5) for details.
;   winbind enum groups = yes
;   winbind enum users = yes

# Setup usershare options to enable non-root users to share folders
# with the net usershare command.

# Maximum number of usershare. 0 (default) means that usershare is disabled.
;   usershare max shares = 100

# Allow users who've been granted usershare privileges to create
# public shares, not just authenticated ones
   usershare allow guests = yes

#======================= Share Definitions =======================

# Un-comment the following (and tweak the other settings below to suit)
# to enable the default home directory shares.  This will share each
# user's home directory as \\server\username
;[homes]
;   comment = Home Directories
;   browseable = no

# By default, the home directories are exported read-only. Change the
# next parameter to 'no' if you want to be able to write to them.
;   read only = yes

# File creation mask is set to 0700 for security reasons. If you want to
# create files with group=rw permissions, set next parameter to 0775.
;   create mask = 0700

# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
;   directory mask = 0700

# By default, \\server\username shares can be connected to by anyone
# with access to the samba server.  Un-comment the following parameter
# to make sure that only "username" can connect to \\server\username
# This might need tweaking when using external authentication schemes
#   valid users = %S

# Un-comment the following and create the netlogon directory for Domain Logons
# (you need to configure Samba to act as a domain controller too.)
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
;   share modes = no

# Un-comment the following and create the profiles directory to store
# users profiles (see the "logon path" option above)
# (you need to configure Samba to act as a domain controller too.)
# The path below should be writable by all users so that their
# profile directory may be created the first time they log on
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700

#[printers]
 #  comment = All Printers
 #  browseable = no
 #  path = /var/spool/samba
 #  printable = yes
 #  guest ok = no
 #  read only = yes
 #  create mask = 0700

# Windows clients look for this share name as a source of downloadable
# printer drivers
#[print$]
 #  comment = Printer Drivers
 #  path = /var/lib/samba/printers
 #  browseable = yes
 #  read only = yes
 #  guest ok = no
# Uncomment to allow remote administration of Windows print drivers.
# You may need to replace 'lpadmin' with the name of the group your
# admin users are members of.
# Please note that you also need to set appropriate Unix permissions
# to the drivers directory for these users to have write rights in it
;   write list = root, @lpadmin

# A sample share for sharing your CD-ROM with others.
[RetroVicio]
   comment = Samba server's RetroVicio
   read only = no
   locking = no
   path = /home/retro
   guest ok = yes
   create mask = 0777
   browseable = yes
   #hide dot files = yes
# The next two parameters show how to auto-mount a CD-ROM when the
# cdrom share is accesed. For this to work /etc/fstab must contain
# an entry like this:
#
#       /dev/scd0   /cdrom  iso9660 defaults,noauto,ro,user   0 0
#
# The CD-ROM gets unmounted automatically after the connection to the
#
# If you don't want to use auto-mounting/unmounting make sure the CD
# is mounted on /cdrom
#
;   preexec = /bin/mount /cdrom
;   postexec = /bin/umount /cdrom

I think this enough, do not remember if something else changed

Code: [Select]
[RetroVicio]
   comment = Samba server's RetroVicio
   read only = no
   locking = no
   path = /home/retro
   guest ok = yes
   create mask = 0777
   browseable = yes
   #hide dot files = yes


Quote
Hi VeS, it's nice to see you here! Smiley

Thanks Calamity when I have time to pour me some day everything you are doing, which in English I can hardly catch a few things.
Because you do not know what bitbytebit to do with git, no really it is, seems a sort of svn, right?

Thanks.
« Last Edit: January 25, 2011, 09:43:05 am by ves »

ves

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 225
  • Last login:April 11, 2020, 02:57:49 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #705 on: January 25, 2011, 09:55:00 am »
Hello, here I put the configuration advmenu.rc
To select the video mode you can play with this option will change to 640 1024 etc. ..
device_video_overlaysize 320

I can not remember if mame runs either directly or through switchres if so you'll have to configure emulator advmenu.rc as generic and remove the lines suck, remember to protect the file so you will not reinstate the configuration of mame, and that mame default if found includes it.

http://advancemame.sourceforge.net/doc-advmenu.html#4.1

If I can watch tonight, if I have created advmenu.rc switchres configuradon with another hd.


Code: [Select]
config save_at_exit

device_color_bgr15 yes

device_color_bgr16 yes

device_color_bgr24 yes

device_color_bgr32 yes

device_color_bgr8 yes

device_color_palette8 yes

device_color_yuy2 yes

device_joystick none

device_keyboard auto

device_mouse none

device_sound sdl

device_video sdl

device_video_cursor auto

device_video_doublescan yes

device_video_fastchange no

device_video_interlace yes

device_video_output fullscreen

device_video_overlaysize 320

device_video_singlescan yes

difficulty none
display_brightness 1

display_gamma 1

display_orientation
display_restoreatexit yes

display_restoreatgame no

display_size 320

emulator "MAME" mame "/usr/games/mame"

emulator_roms "MAME" "/home/retro/mame/roms:/media/usb/roms"

emulator_flyers "MAME" "/home/retro/mame/flyers"

emulator_altss "MAME" "/home/retro/mame/snap"

emulator_cabinets "MAME" "/home/retro/mame/cabinets"

emulator_titles "MAME" "/home/retro/mame/titles"

emulator "ADvMAME" advmame "/usr/local/bin/advmame"

emulator_roms "ADvMAME" "/home/retro/mame/roms"

emulator_flyers "ADvMAME" "/home/retro/mame/flyers"

emulator_altss "ADvMAME" "/home/retro/mame/snap"

emulator_cabinets "ADvMAME" "/home/retro/mame/cabinets"

emulator_titles "ADvMAME" "/home/retro/mame/titles"

event_alpha no

event_assign up up or 8_pad

event_assign down down or 2_pad

event_assign left left or 4_pad

event_assign right right or 6_pad

event_assign enter enter or enter_pad or 1

event_assign esc esc or w

event_assign space space

event_assign home home

event_assign end end

event_assign pgup pgup

event_assign pgdn pgdn

event_assign del del

event_assign ins insert

event_assign shutdown 2 or lcontrol esc

event_assign mode tab or z

event_assign help f1

event_assign group f2

event_assign type f3

event_assign exclude f4

event_assign sort f5

event_assign setgroup f9

event_assign settype f10

event_assign runclone f12 or a

event_assign command f8

event_assign menu backquote or backslash

event_assign emulator f6 or s

event_assign rotate 0_pad

event_assign lock scrlock

event_assign preview space

event_mode fast

event_repeat 500 50

icon_space 43

idle_screensaver 60 10

idle_screensaver_preview snap

idle_start 0 0

include
input_hotkey yes

#Para no poder salir a consola

lock no

menu_base 3199
menu_rel 5
merge differential

misc_exit all

misc_quiet no

mode list_mixed
mode_skip
mouse_delta 100

preview snap
preview_default none

preview_default_cabinet yes

preview_default_flyer yes

preview_default_icon none

preview_default_marquee yes

preview_default_snap none

preview_default_title yes

preview_expand 1.15

sort parent
sound_background_begin none

sound_background_end none

sound_background_loop sloop.mp3

sound_background_loop_dir "mp3"

sound_background_start none

sound_background_stop none

sound_buffer 0.1

sound_foreground_begin default

sound_foreground_end default

sound_foreground_key default

sound_foreground_start sstart.mp3

sound_foreground_stop default

sound_latency 0.1

sound_samplerate 44100

sound_volume -3

ui_background
ui_bottombar yes

ui_clip single

ui_color help 000000 ffffff

ui_color help_tag 247ef0 ffffff

ui_color submenu_bar 247ef0 ffffff

ui_color submenu_item 000000 ffffff

ui_color submenu_item_select 000000 afffff

ui_color submenu_hidden 808080 ffffff

ui_color submenu_hidden_select 808080 afffff

ui_color menu_item 000000 ffffff

ui_color menu_hidden 808080 ffffff

ui_color menu_tag 247ef0 ffffff

ui_color menu_item_select 000000 afffff

ui_color menu_hidden_select 808080 afffff

ui_color menu_tag_select 247ef0 afffff

ui_color bar 000000 ffffff

ui_color bar_tag 247ef0 ffffff

ui_color bar_hidden 808080 ffffff

ui_color grid 247ef0 ffffff

ui_color backdrop 000000 808080

ui_color icon ffffff ffffff

ui_color cursor 808080 ffffff

ui_command_error Error running the command

ui_command_menu Command...

ui_console no

ui_exit none

ui_font auto

ui_fontsize auto

ui_game snap

ui_gamemsg "Cargando Juego.."

ui_help none

ui_menukey yes

ui_skipbottom 0

ui_skipleft 0

ui_skipright 0

ui_skiptop 0

ui_startup none

ui_topbar yes

ui_translucency 0.6

MAME/mode list_mixed

MAME/preview snap

mame/preview snap
mame/mode list_mixed
group_include "<undefined>"
group_include "Bad"
group_include "Good"
group_include "Very Good"
type_include "<undefined>"
type_include "Application"
type_include "Arcade"
type_include "Bet 'em Up"
type_include "Breakout"
type_include "Computer"
type_include "Console"
type_include "Fight"
type_include "Filler"
type_include "Flipper"
type_include "Gun"
type_include "Puzzle"
type_include "RPG"
type_include "Racing"
type_include "Shot 'em Up"
type_include "Sport"
emulator_include "MAME"
group "<undefined>"
group "Bad"
group "Good"
group "Very Good"
type "<undefined>"
type "Application"
type "Arcade"
type "Bet 'em Up"
type "Breakout"
type "Computer"
type "Console"
type "Fight"
type "Filler"
type "Flipper"
type "Gun"
type "Puzzle"
type "Racing"
type "RPG"
type "Shot 'em Up"
type "Sport"
emulator_attrib "MAME" missing exclude
emulator_attrib "MAME" clone exclude
emulator_attrib "MAME" bad exclude
emulator_attrib "MAME" vector include
emulator_attrib "MAME" vertical include
emulator_attrib "MAME" neogeo include
emulator_attrib "MAME" deco exclude
emulator_attrib "MAME" playchoice exclude
emulator_attrib "ADvMAME" missing exclude
emulator_attrib "ADvMAME" clone exclude
emulator_attrib "ADvMAME" bad exclude
emulator_attrib "ADvMAME" vector include
emulator_attrib "ADvMAME" vertical include
emulator_attrib "ADvMAME" neogeo include
emulator_attrib "ADvMAME" deco exclude
emulator_attrib "ADvMAME" playchoice exclude


Also I put here the smb.conf file if it's more like you


Code: [Select]
#
# Sample configuration file for the Samba suite for Debian GNU/Linux.
#
#
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options most of which
# are not shown in this example
#
# Some options that are often worth tuning have been included as
# commented-out examples in this file.
#  - When such options are commented with ";", the proposed setting
#    differs from the default Samba behaviour
#  - When commented with "#", the proposed setting is the default
#    behaviour of Samba but the option is considered important
#    enough to be mentioned here
#
# NOTE: Whenever you modify this file you should run the command
# "testparm" to check that you have not made any basic syntactic
# errors.
# A well-established practice is to name the original file
# "smb.conf.master" and create the "real" config file with
# testparm -s smb.conf.master >smb.conf
# This minimizes the size of the really used smb.conf file
# which, according to the Samba Team, impacts performance
# However, use this with caution if your smb.conf file contains nested
# "include" statements. See Debian bug #483187 for a case
# where using a master file is not a good idea.
#

#======================= Global Settings =======================

[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP

# server string is the equivalent of the NT Description field
   server string = %h server (Samba, Ubuntu)

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
#   wins support = no

# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
;   wins server = w.x.y.z

# This will prevent nmbd to search for NetBIOS names through DNS.
   dns proxy = no

# What naming service and in what order should we use to resolve host names
# to IP addresses
;   name resolve order = lmhosts host wins bcast

#### Networking ####

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 eth0

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself.  However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
;   bind interfaces only = yes



#### Debugging/Accounting ####

# This tells Samba to use a separate log file for each machine
# that connects
   log file = /var/log/samba/log.%m

# Cap the size of the individual log files (in KiB).
   max log size = 1000

# If you want Samba to only log through syslog then set the following
# parameter to 'yes'.
#   syslog only = no

# We want Samba to log a minimum amount of information to syslog. Everything
# should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
# through syslog you should set the following parameter to something higher.
   syslog = 0

# Do something sensible when Samba crashes: mail the admin a backtrace
   panic action = /usr/share/samba/panic-action %d


####### Authentication #######

# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# in the samba-doc package for details.
#   security = user

# You may wish to use password encryption.  See the section on
# 'encrypt passwords' in the smb.conf(5) manpage before enabling.
   encrypt passwords = true

# If you are using encrypted passwords, Samba will need to know what
# password database type you are using.  
   passdb backend = tdbsam

   obey pam restrictions = yes

# This boolean parameter controls whether Samba attempts to sync the Unix
# password with the SMB password when the encrypted SMB password in the
# passdb is changed.
   unix password sync = yes

# For Unix password sync to work on a Debian GNU/Linux system, the following
# parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen.de> for
# sending the correct chat script for the passwd program in Debian Sarge).
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .

# This boolean controls whether PAM will be used for password changes
# when requested by an SMB client instead of the program listed in
# 'passwd program'. The default is 'no'.
   pam password change = yes

# This option controls how unsuccessful authentication attempts are mapped
# to anonymous connections
   map to guest = bad user

########## Domains ###########

# Is this machine able to authenticate users. Both PDC and BDC
# must have this setting enabled. If you are the BDC you must
# change the 'domain master' setting to no
#
;   domain logons = yes
#
# The following setting only takes effect if 'domain logons' is set
# It specifies the location of the user's profile directory
# from the client point of view)
# The following required a [profiles] share to be setup on the
# samba server (see below)
;   logon path = \\%N\profiles\%U
# Another common choice is storing the profile in the user's home directory
# (this is Samba's default)
#   logon path = \\%N\%U\profile

# The following setting only takes effect if 'domain logons' is set
# It specifies the location of a user's home directory (from the client
# point of view)
;   logon drive = H:
#   logon home = \\%N\%U

# The following setting only takes effect if 'domain logons' is set
# It specifies the script to run during logon. The script must be stored
# in the [netlogon] share
# NOTE: Must be store in 'DOS' file format convention
;   logon script = logon.cmd

# This allows Unix users to be created on the domain controller via the SAMR
# RPC pipe.  The example command creates a user account with a disabled Unix
# password; please adapt to your needs
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u

# This allows machine accounts to be created on the domain controller via the
# SAMR RPC pipe.  
# The following assumes a "machines" group exists on the system
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u

# This allows Unix groups to be created on the domain controller via the SAMR
# RPC pipe.  
; add group script = /usr/sbin/addgroup --force-badname %g

########## Printing ##########

# If you want to automatically load your printer list rather
# than setting them up individually then you'll need this
#   load printers = yes

# lpr(ng) printing. You may wish to override the location of the
# printcap file
;   printing = bsd
;   printcap name = /etc/printcap

# CUPS printing.  See also the cupsaddsmb(8) manpage in the
# cupsys-client package.
;   printing = cups
;   printcap name = cups

############ Misc ############

# Using the following line enables you to customise your configuration
# on a per machine basis. The %m gets replaced with the netbios name
# of the machine that is connecting
;   include = /home/samba/etc/smb.conf.%m

# Most people will find that this option gives better performance.
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
# for details
# You may want to add the following on a Linux system:
#         SO_RCVBUF=8192 SO_SNDBUF=8192
#   socket options = TCP_NODELAY

# The following parameter is useful only if you have the linpopup package
# installed. The samba maintainer and the linpopup maintainer are
# working to ease installation and configuration of linpopup and samba.
;   message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &

# Domain Master specifies Samba to be the Domain Master Browser. If this
# machine will be configured as a BDC (a secondary logon server), you
# must set this to 'no'; otherwise, the default behavior is recommended.
#   domain master = auto

# Some defaults for winbind (make sure you're not using the ranges
# for something else.)
;   idmap uid = 10000-20000
;   idmap gid = 10000-20000
;   template shell = /bin/bash

# The following was the default behaviour in sarge,
# but samba upstream reverted the default because it might induce
# performance issues in large organizations.
# See Debian bug #368251 for some of the consequences of *not*
# having this setting and smb.conf(5) for details.
;   winbind enum groups = yes
;   winbind enum users = yes

# Setup usershare options to enable non-root users to share folders
# with the net usershare command.

# Maximum number of usershare. 0 (default) means that usershare is disabled.
;   usershare max shares = 100

# Allow users who've been granted usershare privileges to create
# public shares, not just authenticated ones
   usershare allow guests = yes

#======================= Share Definitions =======================

# Un-comment the following (and tweak the other settings below to suit)
# to enable the default home directory shares.  This will share each
# user's home directory as \\server\username
;[homes]
;   comment = Home Directories
;   browseable = no

# By default, the home directories are exported read-only. Change the
# next parameter to 'no' if you want to be able to write to them.
;   read only = yes

# File creation mask is set to 0700 for security reasons. If you want to
# create files with group=rw permissions, set next parameter to 0775.
;   create mask = 0700

# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
;   directory mask = 0700

# By default, \\server\username shares can be connected to by anyone
# with access to the samba server.  Un-comment the following parameter
# to make sure that only "username" can connect to \\server\username
# This might need tweaking when using external authentication schemes
#   valid users = %S

# Un-comment the following and create the netlogon directory for Domain Logons
# (you need to configure Samba to act as a domain controller too.)
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
;   share modes = no

# Un-comment the following and create the profiles directory to store
# users profiles (see the "logon path" option above)
# (you need to configure Samba to act as a domain controller too.)
# The path below should be writable by all users so that their
# profile directory may be created the first time they log on
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700

#[printers]
 #  comment = All Printers
 #  browseable = no
 #  path = /var/spool/samba
 #  printable = yes
 #  guest ok = no
 #  read only = yes
 #  create mask = 0700

# Windows clients look for this share name as a source of downloadable
# printer drivers
#[print$]
 #  comment = Printer Drivers
 #  path = /var/lib/samba/printers
 #  browseable = yes
 #  read only = yes
 #  guest ok = no
# Uncomment to allow remote administration of Windows print drivers.
# You may need to replace 'lpadmin' with the name of the group your
# admin users are members of.
# Please note that you also need to set appropriate Unix permissions
# to the drivers directory for these users to have write rights in it
;   write list = root, @lpadmin

# A sample share for sharing your CD-ROM with others.
[RetroVicio]
   comment = Samba server's RetroVicio
   read only = no
   locking = no
   path = /home/retro
   guest ok = yes
   create mask = 0777
   browseable = yes
   #hide dot files = yes
# The next two parameters show how to auto-mount a CD-ROM when the
# cdrom share is accesed. For this to work /etc/fstab must contain
# an entry like this:
#
#       /dev/scd0   /cdrom  iso9660 defaults,noauto,ro,user   0 0
#
# The CD-ROM gets unmounted automatically after the connection to the
#
# If you don't want to use auto-mounting/unmounting make sure the CD
# is mounted on /cdrom
#
;   preexec = /bin/mount /cdrom
;   postexec = /bin/umount /cdrom

I think this enough, do not remember if something else changed

Code: [Select]
[RetroVicio]
   comment = Samba server's RetroVicio
   read only = no
   locking = no
   path = /home/retro
   guest ok = yes
   create mask = 0777
   browseable = yes
   #hide dot files = yes


Quote
Hi VeS, it's nice to see you here! Smiley

Thanks Calamity when I have time to pour me some day everything you are doing, which in English I can hardly catch a few things.
Because you do not know what bitbytebit to do with git, no really it is, seems a sort of svn, right?

I just remembered that you could create advmenu skin to make it more beautiful as this in this picture.

http://img402.imageshack.us/img402/3152/encabezadoa4e.jpg

http://img338.imageshack.us/img338/6136/skinplus.png

If like me get in touch with the creator for what we pass or create a new one



Thanks.
« Last Edit: January 25, 2011, 09:59:55 am by ves »

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #706 on: January 25, 2011, 10:20:01 am »
Thanks Ves, those will help a lot.  Good news is I have gotten a pretty basic but good setup of AdvanceMenu running last night that I already like better than wahcade :).  So that's good, it's quite amazing how simple yet nice it is, and very easy to setup.  I can use those configs of yours to help improve it even more now.  Also I have started working on getting samba enabled, it's on there so I'm just going to have it broadcast out shares for the home directory and /data/ or roms/snaps locations for now.  Will customize it more when I do some testing to allow it to hopefully let a person access it remotely to put roms on the system.  I'm still focusing on having the gdm run things but I'm having the config setup option with fvwm startup advmenu or run advmenu itself if a person chooses on startup/config.  Mainly because this new Linux DRM framebuffer isn't always stable and it's best to stay inside of X Windows since on some cards/systems the framebuffer actually breaks after X is started once.  Also hopefully it allows booting straight into advmenu, yet they can if using fvwm exit out of advmenu and then be able to do system administration from there easier (unless they choose to just use advmenu itself alone). 

I'm working on a new ISO image, updated quite a few things, new kernel version which I'm testing and these changes with advmenu.  Will hopefully have it up today or tomorrow.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

dapsaille

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 92
  • Last login:July 13, 2019, 01:31:26 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #707 on: January 25, 2011, 11:31:56 am »
Thanks Ves, those will help a lot.  Good news is I have gotten a pretty basic but good setup of AdvanceMenu running last night that I already like better than wahcade :).  So that's good, it's quite amazing how simple yet nice it is, and very easy to setup.  I can use those configs of yours to help improve it even more now.  Also I have started working on getting samba enabled, it's on there so I'm just going to have it broadcast out shares for the home directory and /data/ or roms/snaps locations for now.  Will customize it more when I do some testing to allow it to hopefully let a person access it remotely to put roms on the system.  I'm still focusing on having the gdm run things but I'm having the config setup option with fvwm startup advmenu or run advmenu itself if a person chooses on startup/config.  Mainly because this new Linux DRM framebuffer isn't always stable and it's best to stay inside of X Windows since on some cards/systems the framebuffer actually breaks after X is started once.  Also hopefully it allows booting straight into advmenu, yet they can if using fvwm exit out of advmenu and then be able to do system administration from there easier (unless they choose to just use advmenu itself alone).  

I'm working on a new ISO image, updated quite a few things, new kernel version which I'm testing and these changes with advmenu.  Will hopefully have it up today or tomorrow.

 Nice, i like advancemame options, much simple as wahcade setup ..

 Regarding to rom directory, why not put them directly on $home of arcade user ?

 Correct me if i'm wrong but this distribution is mainly intended to be installed on arcade cabs so by definition only one user will be used.

 And in the setup process i've only seen a partition choice for $home and /root ..
so if you want to keep the current rom directory layout, it may be cool to ask for a /rom partition instead of using /root or $HOME who may be reinstalled.

 For exemple here is my smb.conf (NO authentification at all, rights are for user arcade, mame stuff is IN home directory)
Code: [Select]
[global]
workgroup = ARCADE
server string = %h server
dns proxy = no
security=share

[ARCADE]
create mask = 0770
writable = yes
directory mode = 0770
path = /home/arcade
public = yes
force user = arcade
« Last Edit: January 25, 2011, 11:34:15 am by dapsaille »

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #708 on: January 25, 2011, 11:44:05 am »
Thanks Ves, those will help a lot.  Good news is I have gotten a pretty basic but good setup of AdvanceMenu running last night that I already like better than wahcade :).  So that's good, it's quite amazing how simple yet nice it is, and very easy to setup.  I can use those configs of yours to help improve it even more now.  Also I have started working on getting samba enabled, it's on there so I'm just going to have it broadcast out shares for the home directory and /data/ or roms/snaps locations for now.  Will customize it more when I do some testing to allow it to hopefully let a person access it remotely to put roms on the system.  I'm still focusing on having the gdm run things but I'm having the config setup option with fvwm startup advmenu or run advmenu itself if a person chooses on startup/config.  Mainly because this new Linux DRM framebuffer isn't always stable and it's best to stay inside of X Windows since on some cards/systems the framebuffer actually breaks after X is started once.  Also hopefully it allows booting straight into advmenu, yet they can if using fvwm exit out of advmenu and then be able to do system administration from there easier (unless they choose to just use advmenu itself alone).  

I'm working on a new ISO image, updated quite a few things, new kernel version which I'm testing and these changes with advmenu.  Will hopefully have it up today or tomorrow.

 Nice, i like advancemame options, much simple as wahcade setup ..

 Regarding to rom directory, why not put them directly on $home of arcade user ?

 Correct me if i'm wrong but this distribution is mainly intended to be installed on arcade cabs so by definition only one user will be used.

 And in the setup process i've only seen a partition choice for $home and /root ..
so if you want to keep the current rom directory layout, it may be cool to ask for a /rom partition instead of using /root or $HOME who may be reinstalled.

 For exemple here is my smb.conf (NO authentification at all, rights are for user arcade, mame stuff is IN home directory)
Code: [Select]
[global]
workgroup = ARCADE
server string = %h server
dns proxy = no
security=share

[ARCADE]
create mask = 0770
writable = yes
directory mode = 0770
path = /home/arcade
public = yes
force user = arcade

Thanks, I'm actually just about done having it so that the home directory and /data/ or roms/snaps directory are now pretty much like that, actually the force user part above helped complete the allowance to login with out passwords. 

Basically it'll be just like your saying, except it'll have the roms/snaps in /data/ by default although now it'll be possible for a user to just edit the advance menu config and choose anywhere they want.  They should be able to do all that from the Samba sharing now too, so it's looking quite nice and seems to work really well now in testing.  There's probably going to be plenty of extra things to smooth the edges of it with, but overall it's very much like you and Ves have setup.  I'm looking at the /data/ drive as being possible to be removable usb media so that's why it's separate from /home and /home to of course be possibly the same way, so it give the most flexible options hopefully, and /data/ and /home/ can be the same drive or with a little advance menu changing /data/ can be totally ignored and just use /home/  for stuff.

Yeah I'm amazed I didn't realize Advanced Menu was so great, I've been living in the dark it seems with WahCade :/.  WahCade is nice, but of course anything in C is going to be much more efficient and it's just amazing how flexible and easy to run the Advance Menu is, the Python programming of WahCade really scares me :) (surprisingly I can do about anything in C, and absolutely *nothing* in Python, go figure).
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #709 on: January 25, 2011, 11:59:36 am »
bitbytebit,

Have you managed to setup AdvMenu for launching Switchres while still showing the rom's full name on the left column? I can only see the bare zip name, not the real long name here.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #710 on: January 25, 2011, 12:06:53 pm »
bitbytebit,

Have you managed to setup AdvMenu for launching Switchres while still showing the rom's full name on the left column? I can only see the bare zip name, not the real long name here.

Yep, mine shows the full rom name.  My config for switchres looks like this...
Code: [Select]
emulator "mame" sdlmame "switchres" ""

That seems to do it for me, was amazed actually on how painless that was to setup and seems to like switchres just fine as a replacement for mame. 

I'll have this new ISO image of the LiveCD hopefully later today, so that'll have advmenu able to be used.



SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #711 on: January 25, 2011, 12:37:04 pm »
bitbytebit,

Have you managed to setup AdvMenu for launching Switchres while still showing the rom's full name on the left column? I can only see the bare zip name, not the real long name here.

Yep, mine shows the full rom name.  My config for switchres looks like this...
Code: [Select]
emulator "mame" sdlmame "switchres" ""

That seems to do it for me, was amazed actually on how painless that was to setup and seems to like switchres just fine as a replacement for mame. 

I'll have this new ISO image of the LiveCD hopefully later today, so that'll have advmenu able to be used.


Ah that's great!

Just one thing, AdvMenu tries tro retrieve mame.xml from Mame executable, so it would be nice to have Switchres accepting the -listxml param so AdvMenu is happy with it (don't know if it's already done).



Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #712 on: January 25, 2011, 12:46:24 pm »
bitbytebit,

Have you managed to setup AdvMenu for launching Switchres while still showing the rom's full name on the left column? I can only see the bare zip name, not the real long name here.

Yep, mine shows the full rom name.  My config for switchres looks like this...
Code: [Select]
emulator "mame" sdlmame "switchres" ""

That seems to do it for me, was amazed actually on how painless that was to setup and seems to like switchres just fine as a replacement for mame. 

I'll have this new ISO image of the LiveCD hopefully later today, so that'll have advmenu able to be used.


Ah that's great!

Just one thing, AdvMenu tries tro retrieve mame.xml from Mame executable, so it would be nice to have Switchres accepting the -listxml param so AdvMenu is happy with it (don't know if it's already done).





Yep :) WahCade did the same thing and basically if switchres is given only arguments that fit mame, it passes them straight to mame instead.  So it should work for frontends that think it is mame that way.  I have it creating the xml file and seems to be really nice.  Next step is to figure out how to fit all the different emulators into the config using switchres, right now switchres does that with...

switchres <system_name> --emulator <executable> --rom <romfile>

Basically taking mess system names, like n64, and so I need to figure out how to get the --rom <romfile> to work on that but still for some emulators pass --args <string of args> at the end?  Other option is maybe end the string of args with -- or --argend I guess and then the --rom at the end of the command line might pick up what advmenu passes it.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #713 on: January 25, 2011, 04:08:57 pm »
Yep :) WahCade did the same thing and basically if switchres is given only arguments that fit mame, it passes them straight to mame instead.  So it should work for frontends that think it is mame that way.  I have it creating the xml file and seems to be really nice.  Next step is to figure out how to fit all the different emulators into the config using switchres, right now switchres does that with...

switchres <system_name> --emulator <executable> --rom <romfile>

Basically taking mess system names, like n64, and so I need to figure out how to get the --rom <romfile> to work on that but still for some emulators pass --args <string of args> at the end?  Other option is maybe end the string of args with -- or --argend I guess and then the --rom at the end of the command line might pick up what advmenu passes it.

Good to know that, I'll test it in Windows.

These links are from Nixie, the creator of Winmodelines, have a lot of useful information for setting up different emulators:

http://geocities.ws/podernixie/htpc/modeline-en.html
http://geocities.ws/podernixie/htpc/modes-en.html

Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #714 on: January 25, 2011, 04:59:29 pm »
Yep :) WahCade did the same thing and basically if switchres is given only arguments that fit mame, it passes them straight to mame instead.  So it should work for frontends that think it is mame that way.  I have it creating the xml file and seems to be really nice.  Next step is to figure out how to fit all the different emulators into the config using switchres, right now switchres does that with...

switchres <system_name> --emulator <executable> --rom <romfile>

Basically taking mess system names, like n64, and so I need to figure out how to get the --rom <romfile> to work on that but still for some emulators pass --args <string of args> at the end?  Other option is maybe end the string of args with -- or --argend I guess and then the --rom at the end of the command line might pick up what advmenu passes it.

Good to know that, I'll test it in Windows.

These links are from Nixie, the creator of Winmodelines, have a lot of useful information for setting up different emulators:

http://geocities.ws/podernixie/htpc/modeline-en.html
http://geocities.ws/podernixie/htpc/modes-en.html



Ah I found a bug, or the bug, that was always giving me issues launching the other emulators with switchres.  Worked on most but wasn't perfect and some hung.  Turns out I wasn't checking and only running the emulator -h arg if it was mame, otherwise that explains why the NES ones would pop up GUI screens :).  I've gotten them all running now full screen from advance Menu and working pretty nice, amazing because in Wahcade that was hard and it always was hard to recreate.  Now I know I don't have to do all that work again because Advance Menu is a basic single config file setup.

I'm building the ISO's now, and will upload soon, and replace the switchres too in Windows to fix that bug. 

So basically now I've got it where you can access through the SMB shares from windows to the home and /data/ directories, all the emulators working from AdvanceMenu, plus it seems a lot more seamless now using fvwm since it will launch advmenu directly on startup (but still have a Window manager which is important to have the proper window managing functions of the application and also to exit out to for administration tasks).  Also I have the newest 2.6.38-rc2 Linux kernel release with my 15khz patch reworked so now it is probably better too for those people wanting to hook up an extra display LCD for setting things up, any other outputs should be normal again like they were originally before I hacked the patch more than it needed.  Of course with my upload speeds may be a day before the ISO's are up :/, so I'm making sure they are as best I can check before starting the upload so to keep the uploads at a minimum.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #715 on: January 25, 2011, 05:52:35 pm »
Good news! That new iso will be a big step forward for sure, at least will make things easier.

I'm thinking is some cases we are going to need more info than the one provided by Mess. For instance, many console emulators use more than a resolution. Sometimes both PAL/NTSC modes are needed. One possibility could be grabbing some info from the rom name itself "(J)" "(U)" "(E)" to make decisions. Anyway it seems it could be useful at some moment to be able to create more than one video mode before launching a game, for some emulators that are capable of switching modes or even CabMame with -changeres on. In fact I think I've found the issue with some Mame games (segac2.c), Mame is trying to switch from 256x224 to 320x224 (the actual machine should switch modes) but as the first  is the only one reported by Mame, we use it as the -resolution param, and that seems to be preventing -changeres to work. If run without params, it's actually switching modes and the game is not chopped any more. I need to have a look. So for these cases where Mame/Mess info is incomplete, I can't figure out how to deal with unless we have some kind of help from an external file with patches/info.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

bitbytebit

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 896
  • Last login:August 02, 2019, 11:07:16 am
    • The Groovy Organization
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #716 on: January 25, 2011, 10:59:44 pm »
The 32bit ISO is uploaded, and the 64bit one should be there in a few hours...
 
Version 1.311-e925891
http://sourceforge.net/projects/groovyarcade/files/LiveCD/

If you have a previous created home directory, you may want to let it redo that, since there's a lot of config files for advmenu and also the emulators which have changed.  I still need to figure out the way I had setup the input options for a few of the emulators before to match mame, mainly mupen64plus and gens.  Also gens probably can't do true resolution full screen, it seems to be one of those emulators either lacking that or it's really a trick to setup.  I also see tearing on the SNES zsnes emulator, but otherwise it seems to be  good.  Everything should be accessible by samba now too in the GROOVY workgroup as GroovyArcade with ROM and HOME shares.  picking fvwm as the window manager is probably your best bet at really having it just go straight into the frontend for advmenu.
SwitchRes / GroovyMame - http://arcade.groovy.org
Modeline Generator and Mame Wrapper for Windows or Linux
LiveCD of Groovy Arcade Linux for Arcade Monitors
GroovyMame - generate arcade resolutions like advancemame
--
The Groovy Organization

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #717 on: January 26, 2011, 04:49:21 am »
Mame settings I'll use (I hope to try it this evening at home): ddraw, nohwstretch, triplebuffer, nothrottle, soundsync
Thanks.

ddraw, nohwstretch, syncrefresh, notriplebuffer, nothrottle, soundsync

Try syncrefresh instead of triplebuffer, the purpose is to check if syncrefresh actually removes input lag compared to triplebuffer or if it's a myth:
I've tried it quickly and it seems very good! No lag and no audio hiccups!

To activate soundsync I have to add "soundsync   1" into mame.ini, right?

This evening I'll try it in depth.
Is there any other useful test I can do?

Thanks

Oh that's great! So you mean it's better that way (notriplebuffer) than with triplebuffer on, less lag, isn't it? You could test with/without triplebuffer to see if you actually notice a difference with your spinner, so we make sure triplebuffer (page flipping) is actually the problem.
For what I've seen, soundsync is automatically set on, you shouldn't need to add it in Mame.ini


Test done.

NO Syncrefresh + Triple buffer => heavy lag
Syncrefresh + Triple buffer => little lag
Syncrefresh + NO Triple buffer => little lag
Throttle + NO Triple buffer + NO Syncrefresh  => NO lag but scrolling problems

Little lag => same lag I get with "normal" mame versions with "NO Triplebuffer & syncrefresh".

Using v-sync instead of syncrefresh I get same results.

The great thing is that I can run games at 108% with perfect sound (I've tryed r-type @60Hz).

To amplify lag problems you can use a 50Hz resolution with Arkanoid. Lag it's noticeable also with a mouse.
« Last Edit: January 26, 2011, 05:44:47 am by Haggar »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7411
  • Last login:March 14, 2024, 05:26:05 am
  • Quote me with care
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #718 on: January 26, 2011, 05:28:54 am »
Test done.

NO Syncrefresh + Triple buffer => heavy lag
Syncrefresh + Triple buffer => little lag
Syncrefresh + NO Triple buffer => little lag
Throttle + NO Triple buffer + NO Syncrefresh  => NO lag but scrolling problems

Using v-sync instead of syncrefresh I get same results.

The great thing is that I can run games at 108% with perfect sound (I've tryed r-type @60Hz).

To amplify lag problems you can use a 50Hz resolution with Arkanoid. Lag it's noticeable also with a mouse.

Haggar, thank you very much for the tests! So the myth is confirmed, triple buffer produces more lag than syncrefresh. But there's still a residual lag there that is missing with normal throttle without syncrefresh, very interesting.

This is interesting for this reason: both methods (syncrefresh and throttle) need to wait, but it seems that throttle allows the input events to be processed while waiting, and syncrefresh somehow blocks the input for an instant, so input events are queued until we exit wait. One would think it would be imposible to notice that but it seems it actually affects gameplay.

Good news are that after all, both methods are simple wait loops so we could manage to get the same lagless behaviour for syncrefresh at least in theory. Thanks for pointing that Arkanoid 50Hz test, I'll try it.

Quote
Little lag => same lag I get with "normal" mame versions with "NO Triplebuffer & syncrefresh".

Yes, actually must be the same as the only change is that now you can disable throttle and still allow syncrefresh (to avois hiccups), while with "normal" Mame that would make it run fullspeed.
« Last Edit: January 26, 2011, 06:01:32 am by Calamity »
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

Haggar

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 146
  • Last login:February 13, 2017, 05:12:32 am
Re: Switchres arcade monitor modeline generator and mame wrapper
« Reply #719 on: January 26, 2011, 06:24:35 am »
Good news are that after all, both methods are simple wait loops so we could manage to get the same lagless behaviour for syncrefresh at least in theory.
This would be great!

Thanks for pointing that Arkanoid 50Hz test, I'll try it.
You are welcome. If you want to try the same method (without spinner), i've noticed heavy lag also on Galaga @50Hz. I hope that you can confirm my feels.

Quote
Little lag => same lag I get with "normal" mame versions with "NO Triplebuffer & syncrefresh".

Yes, actually must be the same as the only change is that now you can disable throttle and still allow syncrefresh (to avois hiccups), while with "normal" Mame that would make it run fullspeed.
Yeah, this is a wonderful thing.
Thank you!! :)