Attract-Mode Support Forum

Attract-Mode Project => Announcements => Topic started by: raygun on September 25, 2015, 09:26:21 PM

Title: Version 1.6 Released!
Post by: raygun on September 25, 2015, 09:26:21 PM
Attract-Mode version 1.6 has arrived!

Noteworthy changes with this release:

* SWF file support (experimental)
* Layouts and plugins can now be contained in zip files
* OS X packaging improvements
* Added ability to set filter exceptions
* Added intro mode to optionally show intro video
* Added German, Japanese and Korean translations
* Added mame video scraping (progettosnaps.net)
* Many many bug fixes (including FLV videos not playing, resolution dependent pinch/skew effects, and multimonitor not working on 64-bit windows).

Download it here: http://attractmode.org/download.html (http://attractmode.org/download.html)
Title: Re: Version 1.6 Released!
Post by: raygun on September 25, 2015, 09:30:11 PM
Here is the full Changelog:

# Changelog #

## Commits from v1.5.3 to v1.6.0

### Andrew Mickelson (55 commits)

* Update language template with missing strings
* Fixed artwork detection when video disabled in the layout script
* Added module for animated listboxes (animlist)
* Fixed regression in saving of filter settings
* Added windows native compile instruction (thanks liquid8d)
* Bumped to version 1.6.0
* Fixed loading artwork images and fonts from zipped layouts
* Added create-windows-package script to repository
* Issue #151: shaders can now be specified as an absolute path
* New system for handling languages
* Added Filter exceptions
* Don't run an emulator multiple times if the user repeatedly mashes 'select'
* Further improvement of scummvm import
* Added scummvm specific "info source"
* Fixed compile when no audio resampler is used
* Fixed error message when a layout path can't be found
* Initial addition of automatic loading for mamewah and attractmode xml layouts
* Added liquid8d's scrollingtext, file-format, file-layout and updated animate modules
* Fix font loading break from last commit
* Added loading of fonts from a layout/plugin zip file
* Added FeMediaImp
* Collection of misc. minor changes
* Added German language (thanks Onkel_Tom)
* Improvements to the initial language selection menu (for Japanese & Korean)
* Added Japanese and Korean translations (thanks checkist)
* Updated French translation (thanks JMD)
* Issue #121 - Added fe.nv table to squirrel, for persistent storage
* Cache function objects for the script callbacks
* Added "reload" signal
* Fixed raspberry pi compile
* [OS X] don't try hiding the mouse on OS X, it's not worth the hassle
* Fixed compile for versions of SFML before 2.3
* Added header
* Issue #137 - fix for resolution independent pinch/skew effects
* Issue #145 - Fixed crash on bare config
* Added mame video scraping
* Better looking scaling for videos
* Issue #126: layouts and plugins can now be contained in a .zip file
* Various small fixes
* Add glyph provider
* Fixes for OS X compile
* Initial implementation of swf support
* Fixed whitespace and some compile issues
* gameswf tu-testbed-code-1714-trunk
* [OS X] Try to regain focus after running emulator
* Added intro mode to allow easy playing of an intro video
* Issue #136: added key repeat for next/prev letters and next/prev favourites
* Fixed .visible attribute on surfaces (Issue #138) and a couple of seg faults
* Issue #129 - fix for FLV videos not working
* Fix add_sound() to load sounds from the layout directory appropriately
* Issue #130 - added "Magic Token" support to image names
* MultiMon plugin now clears any spillover of main layout onto other screens
* Strip symbols from the release version
* [Linux] use case insensitive name matching when looking for artwork
* Scraper tweaks

### Jeffrey Clark (13 commits)

* Remove hard coded build options Conditional pandoc support, otherwise just rename .md to .txt Add error messages if cross-packaging commands missing
* osx app: override default data_path to use bundled config
* osx package, style finder window and volume icon
* Fix clang 3.5 abs warnings
* Minor fix in expatlib in makefile
* create-pkg for osx
* generate simple changelog.md for packaging and minor tweak
* osx support sfml 2.3.1+ and cross compile support
* Use TOOLCHAIN to prefix tools and CROSS=1 to hint support tools (strip, pkg-config).
* change all CPP (preprocessor) to CXX (c++ compiler)
* osx: support static sfml 2.3.1+, allow setting FE_MACOSX_COMPILE for cross compiling, fix linking with NO_SWF
* Minor build changes for compling with clang on OSX.
* Fix x86_64 compilation with MingW
Title: Re: Version 1.6 Released!
Post by: tipoto on September 25, 2015, 10:06:05 PM
Awesome !!! :D
Thank you very much for the hard work.
Title: Re: Version 1.6 Released!
Post by: ArcadeBliss on September 25, 2015, 10:27:57 PM
Cool! downloading now
Title: Re: Version 1.6 Released!
Post by: omegaman on September 26, 2015, 06:44:31 AM
*Break out the bubbly*  :P :P :P
Title: Re: Version 1.6 Released!
Post by: DudeRegular on September 26, 2015, 09:54:27 AM
Is there a way to ignore the second monitor altogether? I have two monitors on my desktop. I have tried full screen, fill screen, and window. Even window mode still leaves a big black box on the right side as that is where my second monitor lives via windows. The multimon plugin seems to be for the marquee on a secondary display.
Title: Re: Version 1.6 Released!
Post by: tipoto on September 26, 2015, 10:17:57 AM
It seems that when you have 2 monitors and chose fullscreen, your workspace is extended to the 2 monitors, but the layout won't be stretch over them, you just have a whole new space to put more graphics and information. I don't know if it's a good thing or not, but it's interesting anyway and it opens a lot of possibilities.
It becomes a problem when you have a layout which uses animated graphics that go out  of your frame, because instead of being hidden out of the monitor, it's still visible on the other one ;)
Title: Re: Version 1.6 Released!
Post by: DudeRegular on September 26, 2015, 10:29:12 AM
I think that is not a bad feature, but may be better as an option rather than the default behavior.
Title: Re: Version 1.6 Released!
Post by: tipoto on September 26, 2015, 11:36:43 AM
Also now, when we have 2 monitors, if we chose to be in window, the entire workspace is squashed, the content of the 2 monitors tries to fit a window that has a 16/9 aspect ratio, so basically half of the monitor is black, unless you use this space to extend your layout.
I didn't try to tweak the fe.layout.width and fe.layout.height values to see how it behaves, I'll do some tests tonight.
Title: Re: Version 1.6 Released!
Post by: verion on September 26, 2015, 01:09:58 PM

Thank's a lot!

---

And what about that bug with skewing/pinching/etc (wrongly) related to original artwork size? (see here - http://forum.attractmode.org/index.php?topic=198.msg1636#msg1636)
Did you managed to fix this?
Title: Re: Version 1.6 Released!
Post by: tipoto on September 30, 2015, 10:29:29 AM
I tried to modify fe.layout.width and height, but it doesn't affect the aspect ratio, which I guess is normal... When we have 2 monitors, this version is not very comfortable to work on the layouts. I used to have AM open on one monitor (window mode), while I have all my tools on the other monitor (like notepad++, PS etc...), that way I have a very efficient work-flow. Now, the window mode doesn't work properly since the image is squished, and if I use the fullscreen mode, the 2 monitors are used to display AM, so I can't access my tools easily (only by using ALT+TAB), the aspect ratio is correct though, the workspace is extended with an additional full HD surface available, which can be nice if we want to create an arcade cabinet with one monitor displaying the games while the 2nd monitor displays the flyers, marquee or whatever we want.

Fortunately, my main retro-gaming system is on a Raspberry Pi 2, and it seems that v1.6.0 works like a charm on it.
One thing I noticed on v1.5.3 and I don't know if it's still the case with v1.6.0, if we use the animation module with a layout that uses videosnaps, then the video frame rate drops a lot (on Windows there is no problem, only on Raspberry), and if we use the extended module, then the videos play in slow motion. Because of that I did my own way to animate all the objects, without using any specific module, so it's not a problem for me anymore, but I just wanted to mention it in case, somehow, it can be fixed in the future. ;)

Thanks!
Title: Re: Version 1.6 Released!
Post by: cools on October 01, 2015, 06:55:02 AM
Wow, excellent release :)

One tiny little issue with the grid and filter-grid layouts. When horizontal scrolling the column being scrolled off screen vanishes instead of moving off.
Title: Re: Version 1.6 Released!
Post by: xbs on October 06, 2015, 01:24:43 AM
Thank you for another release of AM  :D

  • AM stopped crashing when idling in background (maybe my system specific error, but it is fixed with 1.6 - yay!)

1.5.2 crashed frequently after suspend/hibernate on my system (winxp32) need to check that now with 1.6.0.  :o
Title: Re: Version 1.6 Released!
Post by: Obiwantje on November 11, 2015, 08:37:42 AM
Thank you so much guys for your hard work on this AWESOME frontend!
Title: Re: Version 1.6 Released!
Post by: Bgoulette on December 01, 2015, 04:07:26 PM
Is there any elaboration on "swf support"? Specifically, I'd like to know if it's possible to pass data from AM to a SWF (and back, potentially). I'm comfortable with the Actionscript side of things: just wondering if AM includes an implementation of the Flash player or something that responds to ExternalInterface arguments.
Title: Re: Version 1.6 Released!
Post by: hermine.potter on December 01, 2015, 11:41:21 PM
@Bgoulette
There is a way playing swf-files / flash-files in AM:
1) Download and install firefox and adobe flashplayer
2) set firefox as default to open swf-files (navigate to firefox.exe)
3) install the addon customizable shortcuts (https://addons.mozilla.org/de/firefox/addon/customizable-shortcuts/) and set ESC-button as 'Close Tab'
4) set fullscreen-button in firefox too
5) now close firefox and create a emulator in AM:
Code: [Select]
executable           C:\attract\EMU\flash\Firefox\firefox.exe
args                 "[romfilename]"
rompath              C:\attract\EMU\flash\roms\
romext               .swf
Title: Re: Version 1.6 Released!
Post by: raygun on December 03, 2015, 10:45:54 PM
Is there any elaboration on "swf support"? Specifically, I'd like to know if it's possible to pass data from AM to a SWF (and back, potentially). I'm comfortable with the Actionscript side of things: just wondering if AM includes an implementation of the Flash player or something that responds to ExternalInterface arguments.


Hi Bgoulette, the built-in SWF support is very much alpha quality at this time (rough, buggy, entire features missing).  I'm not even sure if it was a good idea to merge it in for version 1.6.  However it is there now and hopefully someone will be interested in playing around with it and trying to get it working.  The passing of data between AM and SWF has not been implemented at this point, but I recall that the library that is being used (gameswf) has an API for such things available...

more info on gameswf: http://tulrich.com/textweb.pl?path=geekstuff/gameswf.txt (http://tulrich.com/textweb.pl?path=geekstuff/gameswf.txt)
Title: Re: Version 1.6 Released!
Post by: rsn8887 on December 04, 2015, 03:14:29 PM
I tried to modify fe.layout.width and height, but it doesn't affect the aspect ratio, which I guess is normal...

To fix the aspect ratio of your layout on any screen:
- set your layout size to the screensize
- draw everything on a surface of the size you want, set keep_aspect_ratio of the surface to true.

In the following example, the aspect ratio is determined by surfaceWidth and surfaceHeight, and I set those using the height of the display as a reference.

//top of your layout:
fe.layout.width=ScreenWidth;
fe.layout.height=ScreenHeight;

local screenAspect=(1.0*ScreenWidth)/ScreenHeight;

local layoutAspect=4.0/3.0;
local surfaceWidth=layoutAspect*ScreenHeight;
local surfaceHeight=ScreenHeight;

local fs=fe.add_surface(surfaceWidth,surfaceHeight)
fs.preserve_aspect_ratio=true;
fs.set_pos(0,0,ScreenWidth,ScreenHeight);

//now draw all your stuff using fs.xxx instead of fe.xxx