Difference between revisions of "Rom Mapping"

From RocketLauncher Wiki
Jump to navigation Jump to search
Line 252: Line 252:
  
 
<font size="3">'''No-Intro filter Options:'''</font>
 
<font size="3">'''No-Intro filter Options:'''</font>
<pre style="color:green;white-space: pre-wrap;">[Filter]
+
<pre style="color:green;">[Filter]
 
Bad_or_Hacked_Dump = false
 
Bad_or_Hacked_Dump = false
 
#options are true - include bad dumps - or false - exclude bad dumps
 
#options are true - include bad dumps - or false - exclude bad dumps

Revision as of 19:37, 9 June 2015

Description

  • This feature allows you to use alternate rom and/or archive filenames, different than what's defined in your database (xml).
  • Main use of this is so you can use an official HyperList xml and match it up with your, using Tosec as an example, tosec-named ISOs
  • With the Launch Menu enabled, you can present the user with a choice of slightly different versions of roms to choose from. For example, USA, Spanish, Translated-Japanese, hacked, etc.
  • Backgrounds for the menu are pulled from your "Media\Backgrounds" folders.

Rom Mapping ini(s)

  • Found at ".\Settings\SystemName\Rom Mapping\*.ini". Ini(s) can be named whatever you want.
  • You need to create the ini file(s) if you want to use this feature. HyperLaunch will not create these for you. I suggest one ini file for each naming schema (tosec, trurip, redump, custom, etc..)
  • Rom_Extension still needs to include the extension of the rom inside the archive (ex. iso) and the extension of the archive (ex. 7z)
  • For each rom you want to remap, create a [Section] in this ini. The name of the section must match the game name sent to HyperLaunch (your rom name in your xml).
  • The Alternate_Archive_Name should point to the filename (w/o the extension) of the rom you want to load instead.
  • If you only want to define one alternate rom to look for, create a key Alternate_Rom_Name
  • If you need to define multiple rom names to look for, create multiple keys like this: Alternate_Rom_Name_1, Alternate_Rom_Name_2, Alternate_Rom_Name_3, etc.
  • Be careful, the more inis you have in your folder, the longer it will take to create the table as it has to scan each one and verify any matching sections and every alternate name will have an I/O check if it exists on your drive.


Scenario 1:

You simply want to use another rom's naming schema that doesn't match HyperList's No-Intro style and that naming schema uses the same exact filename inside and out of the archive.

[Sega Rally 2 (USA)]
Alternate_Archive_Name=Sega Rally 2 v1.003 (1999)(Sega)(NTSC)(US)[!]


Scenario 2:

You want to use another rom's naming schema that doesn't match HyperList's No-Intro style and that naming schema uses a different filename inside the archive than what the archive filename uses.

[Sega Rally 2 (USA)]
Alternate_Archive_Name=Sega Rally 2 v1.003 (1999)(Sega)(NTSC)(US)[!]
Alternate_Rom_Name=Sega Rally 2 (Sega)(NTSC)(US)[!]


Scenario 3:

Remap your database name to an uncompressed rom name. You do not need to define an Alternate_Archive_Name, simply define an Alternate_Rom_Name instead:

[Sega Rally 2 (USA)]
Alternate_Rom_Name=Sega Rally 2 (Sega)(NTSC)(US)[!]


Scenario 4:

You want to build a specific list of roms for the launch menu. Set Show_All_Roms_In_Archive to false and create a detailed section like this:

[Super Mario World (USA)]
Alternate_Archive_Name=Super Mario World
Alternate_Rom_Name_1=Super Mario World (1991)(Nintendo)(US)[b]
Alternate_Rom_Name_2=Super Mario World (1991)(Nintendo)(US)
Alternate_Rom_Name_3=Super Mario World (1991)(Nintendo)(US)[h]
Alternate_Rom_Name_4=Super Mario World (1991)(Nintendo)(US)[h2]
Alternate_Rom_Name_5=Super Mario World (1991)(Nintendo)(US)[t]
Alternate_Rom_Name_6=Super Mario World (1991)(Nintendo)(US)[tr de]
Alternate_Rom_Name_7=Super Mario World (1991)(Nintendo)(US)[tr el]


Scenario 5:

You want to show a list of all roms available inside the Alternate_Archive_Name for the launch menu. Set Show_All_Roms_In_Archive to true and create a simple section like this:

[Super Mario World (USA)]
Alternate_Archive_Name=Super Mario World


Scenario 6:

You want to show a list of all MAME Clone roms that don't actually exist in a folder or their names are not known in the launch menu and your front end is only showing parents. Set 7z_Enabled to false, SkipChecks to Rom Only, Rom Mapping to true, and Launch Menu to true. Now for each Parent game, list all the alternate roms as the clones. This method also allows you to show a list of alternate roms along with the rom listed in your database.

[puckman]
Alternate_Rom_Name_1=pacmanbl
Alternate_Rom_Name_2=pacmanbla
Alternate_Rom_Name_3=pacheart
Alternate_Rom_Name_4=pacman
Alternate_Rom_Name_5=pacmod

Note: The romExtension that gets sent to the module is the same one sent to HyperLaunch at launch. If your rom was a zip, the clone extension will be zip. It is impossible to look for an extension when this method does not look for another rom file. If you need to assign a different extension, it needs to be done in the module.


Bonus Scenario (same as 1):

Use normal artwork and database names for ZiNc while still launching the emu correctly. Roms must still be named with numbers:

[Aqua Rush]
Alternate_Archive_Name=63


Ini Keys

(These keys can be found in the Global HyperLaunch.ini and the system's HyperLaunch.ini)

Key Default Value Description
Rom_Mapping_Enabled false If true, will look in your Settings\SYSTEM\Rom Mapping folder for inis containing mapping information on what your actual rom files are called.
  • Will add a small lag to launch depending on your PC Hardware because it has to scan your ini files and create the table that contains your roms.
Rom_Mapping_Launch_Menu_Enabled false If true, will show a Menu with choices of roms to load upon selecting your game in your Frontend.
  • The choices in the menu are determined by what you have in your Rom Mapping inis.
  • Choices in menu can be further filtered by applying filters. To see filtered mode by default, change Default_Menu_List to filtered.
First_Matching_Ext false If true, and an exact match is not found inside the mapped Alternate_Archive_Name, the first found rom matching the Rom_Extension will be loaded.
  • Rom_Extensions get scanned from left to right, so the order of what rom is chosen is based on your extension order.
  • This allows you to only define an Alternate_Archive_Name and no Alternate_Rom_Name(s) and even if the rom inside the archive does not match, it will still find and load it.
  • Makes it easy so you do not have to worry about renaming roms inside archives and 7z will still find your rom.
  • This disregards the rom's actual name, so do not have multiple files of the same extension inside an archive otherwise it may choose the wrong file.
Show_All_Roms_In_Archive false If true, all roms inside each Alternate_Archive_Name will be added to the launch menu, disregarding any Alternate_Rom_Names set in rom map ini
Default_Menu_List FullList There are two options for this key:
  • If FullList, it will show by default the full rom mapping alternatives list in the rom mapping launch menu.
  • If FilteredList, it will show by default the filtered rom mapping alternatives list in the rom mapping launch menu. This list will only be showed when it differs from the full rom mapping alternative lists. When the Filtered List is show you can change between lists by pressing the navigation left and right keys.
Single_Filtered_Rom_Automatic_Launch false If true, and a single rom mapped alternative is found it will directly launch the game found, skipping the rom mapping launch menu.
Number_of_Games_by_Screen 7 The number of games show on the rom mapping launch menu column
Menu_Width 300 The width of the rom mapping launch menu column.
Menu_Margin 50 The margin from the screen right edge that the rom mapping launch menu column will be drawn.
Text_Font Bebas Neue Specify the Font to use for rom mapping alternatives.
Text_Options cFFFFFFFF r4 s40 Bold Text formatting options to apply to the rom mapping alternatives texts.
Disabled_Text_Color ff888888 Specify the Font Color to use for the non selected rom mapping alternatives.
Text_Size_Difference 5 Specify the size difference of the font from the selected rom mapping option to the disabled ones.
Text_Margin 10 Specify the size between the rom mapping text and the edge of the buttons that surrounds it.
Title_Text_Font Bebas Neue Specify the Font to use for the "CHOOSE YOUR GAME!!!" text.
Title_Text_Options cFFFFFFFF r4 s60 Bold Text formatting options to apply to the "CHOOSE YOUR GAME!!!" text.
Title2_Text_Font Bebas Neue Specify the Font to use for the current selected game number and lists section help text below the "CHOOSE YOUR GAME!!!" text.
Title2_Text_Options cFFFFFFFF r4 s15 Bold Text formatting options to apply to the current selected game number and lists section help text below the "CHOOSE YOUR GAME!!!" text.
Game_Info_Text_Font Bebas Neue Specify the Font to use for the current selected game info on the top left of the screen.
Game_Info_Text_Options cFFFFFFFF r4 s15 Regular Text formatting options to apply to the current selected game info on the top left of the screen.
Background_Brush aa000000 Background color of the rom mapping launch menu. In ARGB format, first two characters denote the opacity. Here are some examples.
Column_Brush 33000000 Rom mapping launch menu column color. In ARGB format, first two characters denote the opacity. Here are some examples.
Button_Brush1 6f000000 Rom mapping launch menu first button color. In ARGB format, first two characters denote the opacity. Here are some examples.
Button_Brush2 33000000 Rom mapping launch menu second button color. In ARGB format, first two characters denote the opacity. Here are some examples.
Background_Align Stretch and Lose Aspect Aligns the Background picture. Choices are:
  • Stretch and Lose Aspect = Image is stretched to fill the screen, disregarding Aspect Ratio
  • Center = Centering image keeping its size and Aspect Ratio
  • Center Width = Image is stretched to Center screen's width, keeping Aspect Ratio
  • Center Height = Image is stretched to Center screen's height, keeping Aspect Ratio
  • Align to Bottom Left = Place the image so the bottom left corner matches the screen's bottom left corner, keeping Aspect Ratio
  • Align to Bottom Right = Place the image so the bottom right corner matches the screen's bottom right corner, keeping Aspect Ratio
  • Align to Top Right = Place the image so the top right corner matches the screen's top right corner
  • Align to Top Left = Place the image so the top left corner matches the screen's top left corner
Language_Flag_Width 40 Width of the image that represents the game language, whenever this info is possible to obtain from the archive file names.
Language_Flag_Separation 5 Separation between language images whenever a game has more than one language.


The Rom Mapping Filter

  • Whenever your rom mapping files follow a know naming convention, you can enable filters in order to easily choose only the desired games to be shown in the filtered list from a huge list of alternative roms.
  • There are currently two built-in filters in the HyperLaunch rom mapping Launch menu:
ο Tosec filter
ο NoIntro filter
  • For example, in order to enable the Tosec filter to just show on the filtered list menu the english and portuguese language roms from a large alternative rom mapping lists (based on the Tosec naming conventions), you just need to add the following lines to your rom mapping ini files:
[General]
Name_Schema = Tosec

[Filter]
Language = en,pt


  • You can do the same for a NoIntro naming convention just by adding to the ini file these lines:
[General]
Name_Schema = NoIntro

[Filter]
Language = en,pt


  • You can include/exclude bad dumps, demo roms, language or region specific games, and much with the filters feature.
  • The full list of filters options defined to NoIntro and Tosec naming conventions are described below:


No-Intro filter Options:

[Filter]
Bad_or_Hacked_Dump = false
#options are true - include bad dumps - or false - exclude bad dumps

Unlicensed_Game = 
#options are true - include unlicensed games - or false - exclude unlicensed games

Bios = 
#options are true - include bios files - or false - exclude bios files 

Development_Status = 
#options are: beta|proto|sample
#for a description of the development status compare the list above with this: Feature complete test build|Unreleased, prototype software|Sample

Region =
#options are: World|Europe|Asia|USA|United Arab Emirates|Albania|Asia|Austria|Australia|Bosnia and Herzegovina|Belgium|Bulgaria|Brazil|Canada|Switzerland|Chile|China|Serbia and Montenegro|Cyprus|Czech Republic|Germany|Denmark|Estonia|Egypt|Spain|Europe|Finland|France|United Kingdom|Greece|Hong Kong|Croatia|Hungary|Indonesia|Ireland|Israel|India|Iran|Iceland|Italy|Jordan|Japan|South Korea|Lithuania|Luxembourg|Latvia|Mongolia|Mexico|Malaysia|Netherlands|Norway|Nepal|New Zealand|Oman|Peru|Philippines|Poland|Portugal|Qatar|Romania|Russia|Sweden|Singapore|Slovenia|Slovakia|Thailand|Turkey|Taiwan|United States|Vietnam|Yugoslavia|South Africa

Language = 
#options are: ab|aa|af|ak|sq|am|ar|an|hy|as|av|ae|ay|az|bm|ba|eu|be|bn|bh|bi|bs|br|bg|my|ca|ch|ce|ny|zh|cv|kw|co|cr|hr|cs|da|dv|nl|dz|en|eo|et|ee|fo|fj|fi|fr|ff|gl|ka|de|el|gn|gu|ht|ha|he|hz|hi|ho|hu|ia|id|ie|ga|ig|ik|io|is|it|iu|ja|jv|kl|kn|kr|ks|kk|km|ki|rw|ky|kv|kg|ko|ku|kj|la|lb|lg|li|ln|lo|lt|lu|lv|gv|mk|mg|ms|ml|mt|mi|mr|mh|mn|na|nv|nb|nd|ne|ng|nn|no|ii|nr|oc|oj|cu|om|or|os|pa|pi|fa|pl|ps|pt|qu|rm|rn|ro|ru|sa|sc|sd|se|sm|sg|sr|gd|sn|si|sk|sl|so|st|es|su|sw|ss|sv|ta|te|tg|th|ti|bo|tk|tl|tn|to|tr|ts|tt|tw|ty|ug|uk|ur|uz|ve|vi|vo|wa|cy|wo|fy|xh|yi|yo|za|zu
#for a description of the language compare the list above with this: Abkhaz|Afar|Afrikaans|Akan|Albanian|Amharic|Arabic|Aragonese|Armenian|Assamese|Avaric|Avestan|Aymara|Azerbaijani|Bambara|Bashkir|Basque|Belarusian|Bengali; Bangla|Bihari|Bislama|Bosnian|Breton|Bulgarian|Burmese|Catalan; Valencian|Chamorro|Chechen|Chichewa; Chewa; Nyanja|Chinese|Chuvash|Cornish|Corsican|Cree|Croatian|Czech|Danish|Divehi; Dhivehi; Maldivian;|Dutch|Dzongkha|English|Esperanto|Estonian|Ewe|Faroese|Fijian|Finnish|French|Fula; Fulah; Pulaar; Pular|Galician|Georgian|German|Greek, Modern|Guaraní|Gujarati|Haitian; Haitian Creole|Hausa|Hebrew (modern)|Herero|Hindi|Hiri Motu|Hungarian|Interlingua|Indonesian|Interlingue|Irish|Igbo|Inupiaq|Ido|Icelandic|Italian|Inuktitut|Japanese|Javanese|Kalaallisut, Greenlandic|Kannada|Kanuri|Kashmiri|Kazakh|Khmer|Kikuyu, Gikuyu|Kinyarwanda|Kyrgyz|Komi|Kongo|Korean|Kurdish|Kwanyama, Kuanyama|Latin|Luxembourgish, Letzeburgesch|Ganda|Limburgish, Limburgan, Limburger|Lingala|Lao|Lithuanian|Luba-Katanga|Latvian|Manx|Macedonian|Malagasy|Malay|Malayalam|Maltese|Maori|Marathi (Mara?hi)|Marshallese|Mongolian|Nauru|Navajo, Navaho|Norwegian Bokmål|North Ndebele|Nepali|Ndonga|Norwegian Nynorsk|Norwegian|Nuosu|South Ndebele|Occitan|Ojibwe, Ojibwa|Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic|Oromo|Oriya|Ossetian, Ossetic|Panjabi, Punjabi|Pali|Persian|Polish|Pashto, Pushto|Portuguese|Quechua|Romansh|Kirundi|Romanian, Moldavian(Romanian from Republic of Moldova)|Russian|Sanskrit (Sa?sk?ta)|Sardinian|Sindhi|Northern Sami|Samoan|Sango|Serbian|Scottish Gaelic; Gaelic|Shona|Sinhala, Sinhalese|Slovak|Slovene|Somali|Southern Sotho|Spanish; Castilian|Sundanese|Swahili|Swati|Swedish|Tamil|Telugu|Tajik|Thai|Tigrinya|Tibetan Standard, Tibetan, Central|Turkmen|Tagalog|Tswana|Tonga (Tonga Islands)|Turkish|Tsonga|Tatar|Twi|Tahitian|Uighur, Uyghur|Ukrainian|Urdu|Uzbek|Venda|Vietnamese|Volapük|Walloon|Welsh|Wolof|Western Frisian|Xhosa|Yiddish|Yoruba|Zhuang, Chuang|Zulu