Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - zpaolo11x

Pages: [1] 2 3
General / Attract Mode FPS in 2.5 and 2.6
« on: January 10, 2020, 05:20:42 AM »
When using Attract Mode 2.5 the fps of the layout were capping at 60, I mean that the redraw of the layout was never going over 60 hz. Now with Attract Mode 2.6 with a powerful PC I get refresh rates up to 200 and my themes get crazy fast when timers are related to ticks. Is there something different in AM or is it maybe monitor related?

Themes / Systems logos font
« on: October 23, 2019, 01:24:40 PM »
Attract Mode doesn't support SVG.. who cares, one can always build a gallery of monochrome svg system logos, and load them into a custom font, so each letter equals a system logo :D This is a preview and the first version of the font is attached :)

Scripting / Transition.ChangedTag when is this triggered?
« on: August 28, 2019, 08:42:09 AM »
I was trying to understand how this transition works: if I go into the tags menu and add or remove a tag I don't get any Transition.ChangedTag, only ShowOverlay, NewSelOverlay, HideOverlay... any idea?

Scripting / Regular expressions and word wrapping
« on: August 21, 2019, 05:39:53 AM »
In my experiments regarding word wrap I tried to use a regex. The simplest incarnation would be a regular expression that matches, say, 10 characters at a time. the code I used is:

Code: [Select]
local es = "(.{10})"
local cs = "Contrary to popular belief Lorem Ipsum is not simply random text"
local r = regexp(es)
local rs = r.capture(cs)

if (rs) {
    foreach (index, value in rs) {
        print(format("Match %02d: %s", index + 1, cs.slice(value.begin, value.end))+"\n")

but the output is just:

Code: [Select]
Match 01: Contrary t
Match 02: Contrary t

It seams that after the first match it doesn't create other matches... any idea?

Scripting / msg_wrapped... does it work?
« on: August 21, 2019, 04:16:29 AM »
I read from fe.text properties:

msg_wrapped - Get the text label's message after word wrapping

but in my experiments it doesn't seem to work, I get the error "the index msg_wrapped does not exist". Anyone had luck with this?

Scripting / Debugging a layout that crashes AM with no console output
« on: June 06, 2019, 12:16:04 AM »
I'm having a bit of troubles with my layout: for some reason the latest changes I made are breaking havoc on windows, and the layout often crashes when reloading. But instead of crashing leaving a nice console output (--loglevel debug) it just hangs, and when it's closed by windows there's no useful output on the console. Any idea on how to understand what happens? On MacOs I can see a debug log but I can't get much out of that :/

Scripting / Dispay size from mame xml list
« on: June 03, 2019, 08:27:52 AM »
In MAME listxml there's a field for each game like this:

<display tag="screen" type="raster" rotate="0" width="384" height="224" refresh="59.637405" pixclock="8000000" htotal="512" hbend="64" hbstart="448" vtotal="262" vbend="16" vbstart="240" />

I think the Info.Rotation data comes from this, but is there a way in AM to get also the width and height data from this tag? This is the "native" resolution of the machine and could be useful for CRT filters if your screenshots are not pixel perfect...

Scripting / Changing the source of an artwork
« on: May 24, 2019, 05:14:13 AM »
Let's say I have something like

testobject = fe.add_artwork("snap",0,0,200,200)

is it possible to change the "source" of the artwork data, for example from snap to flyer, on the fly?

Scripting / Displays Menu and layout reload...
« on: May 21, 2019, 06:26:53 AM »
When Displays Menu is not using a custom layout but is set to default, and you select a new display that shares the same layout as the old display, what exactly happens? My experience is that the list is updated like it was a "ToNewList" transition and nothing more. The trouble is that if the new displays uses a different emulator, the metadata is not updated so category etc are not consistent.

Is there a way to force a layout reload each time a display is updated?

Scripting / Foreach item oreder
« on: April 12, 2019, 04:57:24 AM »
I have this simple code:

Code: [Select]
local key_names = { "1": "A", "2": "B", "3": "C", "4": "D"}

foreach (key,val in key_names){
   print (key + " " + val +"\n")

Maybe I don't get it right but the console output of this code is

Code: [Select]
1 A
3 C
2 B
4 D

I would expect it to return

Code: [Select]
1 A
2 B
3 C
4 D

Also speaking of tables, what is the difference between something like this:

Code: [Select]
local aTable = { "first_key" : "Max Normal",
                 "second_key" : 42,
                 "third_key" : true};

and this:

Code: [Select]
local aTable = { "first_key" = "Max Normal",
                 "second_key" = 42,
                 "third_key" = true};

Scripting / CRT shaders and Intel 620 graphics adapter
« on: March 28, 2019, 11:34:28 AM »
I'm trying AM and my Arcadeflow layout on an HP spectre with Intel 620 integrated graphics. Performance is very good (it puts my Macbook Pro to shame :D ) but there's an issue with Lotte CRT shaders: they simply look transparent. Usually when a shader doesn't work I see the unmodified image, while here the image is simply absent. Is there a way to have a detailed log from GLSL shaders? Last but not least, I tried an old version of Arcadeflow with CGWG shader and it works :( suggetsions?

Scripting / zorder and performance
« on: March 21, 2019, 08:50:28 AM »
Excuse my complete ignorance... is there a performance hit if one "abuses" of zorder? Let's say my layout has a lot of zorder explicit declarations going on, is this worse than having everything layied out correctly in the first place?

Scripting / Changing filter vs changing search rule...
« on: February 12, 2019, 08:21:10 AM »
Is there a difference in the implementation of the response to those commands? In my theme when I bind a key to a command like

Code: [Select]
fe.list.filter_index = 2
I get the correct effect in any case, the list is updated, the layout responds as programmed and everything seems fine.
On the other hand if I bind a key to

Code: [Select]
fe.list.search_string = "Title contains Bubble"
I get weird results, sometimes it works, sometimes, especially if the current index is the first (the same as the filtered list), it updates everything but the first image. Generally it seems it updates all the metadata but not the artworks.

I know my theme is pretty complex and maybe I'm overlooking something but looking at the debug log it seems both method trigger the same transitions callbacks therefore I don't understand where the difference is :/

Scripting / Drop shadow layout, may be turned into something useful?
« on: January 20, 2019, 08:37:54 AM »
I've put together a simple layout to demonstrate my drop shadow code, here it works for wheel art but you can use it on any image. I'm not a good programmer but I'm sure someone might like the code and maybe build something useful with that (a class?) so that it can be used and re-used.

The parameters to play with to define the shadow are in the code, they are self explanatory except from shadow_downsample, this is a float parameter < 1.0 so that the shadow surface is built smaller than the original image and then enlarged. Since the shadow is smooth you won't loose detail and gain speed because the shader will be faster on a smaller image.

Have fun!

Scripting / Too many locals
« on: January 16, 2019, 08:35:28 AM »
Ok, I'm not a good programmer, I put everything in a single 3000 lines long layout file, the net result is that I sometimes get the "too many locals" error when running my layout. I have partially solved that consolidating variables into tables, but is it something that can be fixed?

Pages: [1] 2 3