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.

Messages - rand0m

Pages: [1] 2 3 ... 19
Themes / Re: MatteCleanHD (WIP) Preview
« on: January 13, 2020, 12:02:49 AM »
Awesome design asahendrix, really like the plain style of images.

Themes / Re: RetroDiction Theme v1.0 Released
« on: January 11, 2020, 06:07:21 AM »
i have been wondering, on this  how cool ...cant wait to dig in to it

amazing work...thanks

Thanks :)

Hi rand0m, very amazing theme! Looks great.  :)

Thanks :)

The theme beta has been released. Check this thread for further updates:

Themes / Re: RetroDiction Theme V1.0 Released
« on: January 03, 2020, 11:35:29 PM »
reserved for further info

Themes / Re: RetroDiction Theme V1.0 Released
« on: January 03, 2020, 11:35:20 PM »
reserved for further info

Themes / Re: RetroDiction Theme V1.0 Released
« on: January 03, 2020, 11:35:12 PM »
reserved for further info

Themes / Re: RetroDiction Theme V1.0 Released
« on: January 03, 2020, 11:35:02 PM »
Attract-Mode Romlists

A romlist is simply a collect or list of roms (games or other items) to show. these lists are in plain text. Attract-Mode romlists mimic the functionality and structure of MAME.

This layout utilizes some fields in a different way then originally intended. Reason being that it is very easy in Attract-Mode to call information from a romlist secondly MAME's very detailed information is not needed for any other system. So we are utlizing some fields in a different manner like DisplayCount for number of discs. This unfortunately makes the layout less uniform and requires tweaking of romlists.

Understanding Romlists
As mentioned above Attract-Mode mimics MAME when it comes to romlists. The fields are MAME specific. The semicolon ( ; ) in romlist should be considered as the start of next column. While generating romlists Attract-Mode will fill all the fields or columns it can find information for and leave the rest empty.

In Attract-Mode using hash (#) in the very start of line will hide it in display. Attract-Mode probably treats the line as a comment which is the norm in squirrel language. We can use this handy function to hide rom, or systems by opening platform romlists.

Romlist fields are hard-coded and can't be changed neither can we add additional fields. Every romlist field is a Magic Token and can be called directly in a layout. This makes romlists very good for fast access of information.

Opening the romlist file through Excel will make it very easy to see how the information is stored in the romlist, this is discussed in a later section below.

Romlist Fields
Following table lists all the fields in romlists and how they are being used in this layout. Top line is for the default use and actual romlist fields while bottom field is how the fields are utilized in this layout. Please beware we don't actually chnage the names of fields just add different data in those fields and call them in layout through their actual name.

#Name   Title    Emulator          CloneOf   Year   Manufacturer   Category   Players   Rotation   Control   Status    DisplayCount   DisplayType   AltRomname     AltTitle      Extra      Buttons     Series     Language     Region      Rating
Name     Title    Emulator (cfg)   Unused   Year   Manufacturer   Category   Players   Unused     Control  Status    # of Discs        Emulator       Ports/ Clones   Unused    Database     Media      Series     Language     Region    Content-Rating

Following are the descriptions for romlist fields:

Used for rom's actual file name i.e. the name with which rom is present in storage. Extensions are not included, this field is auto-filled when generating a new list without scraping any offline or online sources. As a rule of thumb the name should always tally to the database (if one is being used) as it allows for easier import of items like artworks and overviews. The hash (#) sign before name is used in Attract-Mode to ignore a line, since these are field names hash is used to hide this in actual display of roms. #Name can be called in layout via [Name].

Used for rom's title. Titles allows users to tailor the names according to their own preferences e.g. move "The" from start to end of title, add serial info in a game series etc. This field is also auto-generated when generating a list without scraping and is same as #Name. Title can be called in a layout via [Title].

Used for rom's emulator name i.e. the name of emulator file which exists in /emulators. Emulator can be called in a layout via [Emulator].

Not being used at the moment. CloneOf can be called in a layout via [CloneOf].

Used for rom's year of release. This would require scraping from a source. Year can be called in a layout via [Year].

Used for rom's manufacturer/ producer. This would require scraping from a source. Manufacturer can be called in a layout via [Manufacturer].

Used for rom's category/ genre. This would require scraping from a source. Category can be called in a layout via [Category].

Used for rom's number of players. This would require scraping from a source. Player can be called in a layout via [Players].

Not being used at the moment. Rotation can be called in a layout via [Rotation].

Used for rom's control peripherals like gamepad, mouse or keyboard. This will require manual input. Control can be called in a layout via [Control].

Used for rom's current status i.e. completed (archive), playing (current) or shortlisted (queue). This would require manual input. Status can be called in a layout via [Status].

Used for rom's # of storage media like floppies or cds. This would require manual input. DisplayCount can be called in a layout via [DisplayCount].

Used for rom's actual emulator. This would require manual input. DisplayType can be called in a layout via [DisplayType].

Used for rom's ports and clones. This would require manual input. AltRomName can be called in a layout via [AltRomName].

Not being used at the moment. AltTitle can be called in a layout via [AltTitle].

Used for rom's Database like No-Intro, Redump or MAME. This would require manual input. Extra can be called in a layout via [Extra].

Used for rom's disk media type like CD, floppy etc. This would require manual input. Buttons can be called in a layout via [Buttons].

Used for rom's game series. This would require manual input for cases other then MAME. MAME has a support file called series.ini which can be used for importing this. Series can be called in a layout via [Series].

Used for rom's language(s). This would require scraping from a source, MAME has a support file language.ini which can be used to import this for MAME roms. Language can be called in a layout via [Language].

Used for rom's region of release. Region can be called in a layout via [Region].

Used for rom's content rating. This would require scraping from a source which supports it. Rating can be called in a layout via [Rating].

Creating Romlists
Create the emulator.cfg in /emulators, this .cfg file includes the extension(s) and rompath(s). Now open Attract-Mode go to Configure > Emulators > Emulator-Name > Generate Romlist. If no additional import files are added and no online sources are used for scraping, simple romlist generation will create a romlist populated only with rom names and titles. Titles will be same as names.
Info source/ Scraper

You can use an online database (gamesdb) or listxml (xml files) for scraping information. If you use online scraper please make sure to scrape the information only as downloading artwork will take a long time and if the list is too long probably get stuck. So go to configure > Scraper and select No to every Artwork. Now go to Configure > Emulators > Emulator-Name > > Generate Collection/ Romlist and it will create a romlist scraping information from gamesdb.

Additional Import Files
For the moment only MAME supports these additional files. You can get Category field from catver.ini, Language field from language.ini, and Series field from series.ini. To use these files, open Attract-Mode go to Configure > Emulators > Emulator-Name > Additional import file(s) and add the full path to the file i.e. if catver.ini is in D:\games add D:\games\catver.ini. Use semicolon (;) before adding another file. You will have to regenerate the whole romlist so overwrite when asked.

Editing Romlists Through MS Excel
Added later

Themes / RetroDiction Theme v1.0 Released
« on: January 03, 2020, 11:34:38 PM »
Hi I have just released the first beta for RetroDiction. This theme is a fork of RetroMode theme.  Retrodiction's dictionary meaning is "using present information to make an assertion about the past; an instance of such an assertion" and it can also be thought of as a word play on retro addiction.

This theme aims to be light-weight and extremely thorough including most systems (Console, Arcade or Computers) even those not emulated at the moment.

The theme utilizes viking's excellent Nostalgia Platforms set and Clear-Logo Silver Ring set. Filters are applied on Nostalgia set to get a more grunge look + original is video while I am using snaps.

Link to Viking's Original Work
Nostalgia Platforms Set:
Clear-Logo Silver Ring Set:

Video Showcase
Video I: Showcasing Arcades & Computers >
Video II: Showcasing Consoles & Handhelds >
VideoIII: Showcasing Control Module and Game Launcher:

Download from GitHub:
Currently no release candidate, use "Clone or Download" to download the zip file. The file will be around 700 mb as it will include all the system flyers and logos.

1. Download and extract the latest version of Attract-Mode from this thread (first Porst):
2. Download Leap plugin and extract it in /plugins:
3. Download this layout, unzip it and place in Attract-Mode folder, overwriting as needed. Overwriting is safe in most cases but take a look at contents just in case.

Note: The current size of download will be around 1.2 GB

Experienced Attract-Mode User
1. Run Attract-Mode and turn on the Leap plugin.
2. Link the displays to appropriate layout nut file.
        layout.nut: The main/ start display
        layout_platforms.nut: Used in platforms i.e. Arcades, Computers, Collections, Consoles and Handhelds
        layout_system.nut: Used in system e.g. Atari 2600, Sega Game Gear, MAME etc
        Note: You can use the and attract.cfg in /extras either directly or in case of later as a template

New Attract-Mode User
1. Copy attract.cfg and from /extras to Attract-Mode folder root. This will setup all displays and controls.

Note: Some controls are xbox 360 controller based and may require mapping to keyboard or any other device in use

I'll update the thread with relevant information soon.

General / Videos on Win Platforms
« on: December 19, 2019, 08:25:11 PM »
I have just tested and AM is noticeably faster when I am using avi or wmv format videos. It stutters and slows down while fast scrolling when using .mp4 format vids. I am on win platform (8.1) and using dxva2 video decoder. Does anyone else have the same issue?

Other tests which might be useful for comm:

  • At my end best to worst (scrolling speed) video formats: wmv > avi > mp4
  • Size (resolution) makes no difference whatsoever, I thought that decreasing video resolution in display was causing stutter but tested with increasing/ decreasing vid res and it made absolutely no difference.
  • Vids in background also don't make any difference i.e. other items like text or list on top of video (didn't check with surfaces!)
  • Video location does matter, if vids are on another HD (not partition) then AM, there is a slight slow-down which goes away within a minute.

You can check this by simple conversion of mp4 to avi via ffmpeg. If you have added ffmpeg in env/ path following commands will work as it is. If not then download ffmpeg and place them in the folder with vids. Run the commands in command-line opened at video location.

Single Video Conversion
Code: [Select]
ffmpeg -i "Vid-Name.mp4" -c:v copy -c:a copy "Vid-Name.avi"
Bulk Video Conversion (folder)
Code: [Select]
for %%a in ("*.mp4") do ffmpeg -i "%%a" -c:v copy -c:a copy "newfiles\%%~na.avi"
(for second command create a newfiles folder first at location)

General / Re: Joy2Key
« on: December 18, 2019, 07:48:00 PM »
I'm using only attractmode and mame, daphne, and daphne singe on my cabinet. Is there any way to launch joy2key when i launch daphne then close it when i exit daphne using attractmode?

I am using AntiMicro, a similar app, for some systems. If you are on Win you can use something like this in emulator.cfg:
Code: [Select]
args                /c cd "D:\Antimicro" & start "" antimicro.exe --hidden --profile "D:\Antimicro\Antimicro Profiles\[name].amgp" & start "" /wait "[romfilename]" & call "D\Antimicro\exit_antimicro.bat"
This will start the app when you start a game and end it when quitting, the exit_antimicro.bat is simply "taskkill /IM /F antimicro.exe" to end the process. Arguments for joy2key will differ.

If used properly (meaning the master romlist is the only romlist used and everything else is a filter) the romlist and filters are only loaded once when AM boots. Yes, if you have a ton of roms this can take a few seconds (especially if on lowend hardware like a Pi) but once the romlist is loaded it never needs to be reloaded because it's never switched.

Other things to consider
- not everyone has a huge rom collection
- people that do have huge rom collections don't always have every rom they own setup/showing in AM
- the concepts of this thread are helpful in making any combined romlist (it doesn't need to be a master romlist)
- the concepts of tagging, favorites, searching, etc. are helpful for anyone that has interest in AM

PS - You can make copies of your system romlists and edit them (remove extra data, rename and placed in corresponding folder) to be tag romlists to be used as filters for the master romlist. Then you can remove/hide all system romlists from being displayed only using the master romlist.

PPS - The master romlist concept isn't going to be everyone's preference.

You are right, since the list is simple text even a very huge list will be around 7 to 8 mb so should work ok after first (boot) processing (or somehow creating a cache - which will only require regeneration when we make changes) but each filter would require AM to search and create a list on fly which matches the rule-set, I think this might be slow on very big lists.

i love the idea, 
but how would you lode different systems with different emulators ?
under one romlist.

You will make all the emulators cfg files as you normally do. In master/all systems romlist a rom entry will mention the emulator so by pressing select AM will boot the game according to details given in emulator.cfg.

You can then make filters like genesis_all, genesis_action etc by making a rule-set Emulator equals to genesis or in case of category filters two rules like Emulator equals to genesis and Category equals to action.

One way of doing things might be to create only a masterlist rather then different system lists and access the different lists data from masterlist e.g. for sega genesis create a rule [Magic Token] equals to sega_genesis. This would auto create single fav/ played time etc since we are following a single masterlist. Filters for system can be made by two or more rules so shouldn't be difficult.

The only issue is if AM will take more time processing the masterlist. MAME has around 6500 entries, Amiga has around 5000 so masterlist could potentially contain tens of thousands entries.

You are welcome. For Art of Fighting Cd are there any errors being registered? check last_run in attract mode folder. Also open the .cue file with note pad and check if the
 bin file name is exactly same as that of .cue file.

try putting a "\" at end of rom path i.e your rompath becomes:
Code: [Select]
rompath              D:\attract mode\emulators\RetroArch\NEOGEO ROMS\roms\
Try that with MAME too.

Also %file in not needed in arguments try:
Code: [Select]
args    -L "D:\attract mode\emulators\RetroArch\cores\fbneo_libretro.dll" "[romfilename]"

General / Re: Query.
« on: November 29, 2019, 08:35:37 AM »

Pages: [1] 2 3 ... 19