-
-
Notifications
You must be signed in to change notification settings - Fork 71
Beta Files FAQ
Update_all is a tool that takes care of most of your update needs in MiSTer FPGA. It can be used to download the beta files automatically.
- Download this ZIP file. Unzip it and copy update_all.sh to the /Scripts folder in your primary SD card.
- Power on MiSTer, bring up the OSD and press F12 (menu). Select the Scripts item
- Navige to update_all and press enter
- Press down to configure update_all
- Enable beta downloads as shown in this video.
- Save the settings and keep on running update_all
Manuall copy the file jtbeta.zip from Patreon/Discord to the games/mame folder. Do not unzip it. This file is occasionally updated (every ~2 months). Copy it again when needed.
Look for the new games in the Arcade folder. Sometimes games in beta phase may get a game in the Arcade/alternatives folder supported before the main title is, for instance, Wonder Boy 3 was released under Arcade/alternatives before released directly under Arcade
Beta cores for the Pocket require the user to unzip the jtbeta.zip file found in Patreon in the Assets/corename/common
folder of each core in beta. For instance, for the JTTWIN16 beta core (supporting The Final Round) the location will be Assets/jttwin16/common
.
Once the core is promoted to public, this step is no longer needed.
This file can be found in many places:
- The last Patreon post about a beta will always have the jtbeta.zip attached, even if it has not changed
- The core zip files attached in Patreon already contain jtbeta.zip in the right subfolder (games/mame) so you don't need to copy it again if you install the core by unzipping it rather than update_all
- The #betafiles channel of the JOTEGO Discord. Link your Patreon and Discord accounts to get access
- The jtbeta Github repository, if you are a supporting JOTEGO via Github sponsors
Please do not distribute jtbeta.zip. Sponsors and patrons are the way to keep research on arcade systems and new FPGA arcade cores development.
MiSTer has an expected folder/file structure for arcade systems:
Folder | Content |
---|---|
/_Arcade/*.mra | MRA files |
/_Arcade/Cores/*.rbf | RBF files |
/Games/MAME/*.zip | ROM zip files, beta.zip |
ROM files contain the actual arcade game code (main program, graphics, sound, etc.). RBF files (FPGA cores) are responsible for configuring the FPGA to match the architecture of the desired arcade system. MRA files are primarily responsible for instructing the core how to load the ROM data in the expected order.
Additional files are automatically created on a per-game basis in the following locations as settings are changed and saved.
Using Alien vs. Predator (Euro 940520).mra as an example:
Files | Use |
---|---|
/Config/*.cfg | General configuration settings (avsp.cfg, avsp_gamma.cfg, avsp_scaler.cfg, avsp_volume.cfg) |
/Config/Inputs/*.map | Input mappings for each controller based on VID_PID (avsp_input_0f0d_0086_v3.map) |
/Config/NVRAM/*.nvm | Test Menu EEPROM contents (Alien vs. Predator (Euro 940520).nvm) |
It is a good practice to regularly remove old .cfg, .map, and .nvm files specific to CPS-2 games that are left behind by previous versions of the core while it is still in beta and undergoing regular changes. These older files could cause problems with newer releases of the core and MRAs. Newer versions of the CPS-2 core will recreate proper versions of these files as needed.
IMPORTANT: Removing files in any of those locations that are not specific to CPS-2 could cause problems for other cores or MiSTer itself. Please make regular backups of MiSTer's micro SD card (or certain folders such as the /Config folder) in case something goes wrong.
The CPS-2 core features real-time decryption and expects original encrypted MAME ROMs. Decrypted ROMs (Avalaunch, Phoenix Edition, etc.) are not supported, but support for them may be added in the future when the core is more mature.
The version of MAME ROMs required is noted in each MRA file. Open an MRA in the text editor of your choice and look for the tag. For example, 0229 means it expects MAME 0.229 ROMs. Each MRA specifies ROM files individually by their CRC values. Depending on the version of MAME ROMs, the files inside some older versions of those zip files could be different (causing different CRC values) and not load properly.
Merged, non-merged, and split MAME ROM sets are supported, but merged ROMs are recommended for simplicity, as each zip file for a particular 'parent' game contains all of the ROMs necessary to run all revisions and regions of that game. Merged ROMs are downloaded by the MAME-Getter script, which is part of the Update_All script package located here:
https://github.com/theypsilon/Update_All_MiSTer
First and foremost, ensure that the main MiSTer system files are updated. Use the official updater script or the Update_All script package before proceeding, as this has been known to resolve some issues.
Below are some common problems some people have experienced.
This could indicate a problem with the core (*.rbf) not being present or in the proper location, or there are multiple versions of the core present in that location.
Make sure the RBF file is placed in /_Arcade/Cores. If multiple cores exist (same name, but different dates in the file name), remove all but the one with the most recent date in the file name (jtcps2_YYYYMMDD.rbf).
I try to launch a game, but I just get a black screen. I am still able to open and navigate the OSD though.
NOTE: As of MiSTer_20210329, a ROM loading status screen for arcade cores has been added to indicate the progress of assembling and loading the ROMs into memory. When you launch an MRA and everything is working properly, you should briefly see a message such as "Assembling ROM #0", and a status bar indicating how long until the process is complete. If you do not see this, something may be wrong.
The most common reasons for a black screen after launching an MRA is that the ROMs are not present, they are in the wrong location, they are not the correct ones, they are corrupt, or they are in multiple locations and MiSTer cannot find the correct ones. Verify the presence of the ROMs first.
For example, via FTP:
media/fat/_Arcade/MAME (this is a legacy location on the micro SD card, but many people still use this) media/fat/Games/MAME (the new default location on the micro SD card) media/usb0/Games/MAME (default location, just on a different device such as a USB flash drive or USB hard drive)
Those are all valid locations for MAME ROMs, but only one needs to be present. If ROMs exist in multiple locations, MiSTer may not find the files it needs based on its built-in path search order.
Check for the presence of multiple MAME folders. If you already had a folder created in one location and an update script is creating one in another and downloading additional ROMs to it instead, this could cause problems.
If the majority of your ROMs exist in one of those locations, but you happen to discover a MAME folder in another location with a few ROMs inside it, move those ROMs to the folder where the main ones are and delete the empty MAME folder(s).
If you do have ROMs located in a folder that differs from an update script's default download location, it may be best to simply move all of your existing ROMs to that folder to prevent this from happening again in the future.
There are a few reasons why this could happen:
It is possible that your MiSTer OS/firmware is not up-to-date, which the CPS-2 core requires. Either use the official updater script, or use the Update_All script package to perform an update to your MiSTer's base system files.
Make sure you are using the MRAs that were packaged with the version of the core you are using, as there may have been changes in the MRAs to address problems in previous versions of the core or the MRAs themselves.
It may also be necessary to remove some configuration files (*.cfg, *.nvm) in the /Config folder created by a previous version of the core that are no longer compatible with a newer version, and allow the updated core to create new ones.
There is also a possibility that you do not have the required amount of SDRAM to run some of the games in the CPS-2 library (if you only have a 32 MB SDRAM module). As support for more games is added over time, the amount of required RAM will increase, and unfortunately many games exceed what is possible with 32 MB. The only solution in this case is to upgrade to a 64 MB or 128 MB SDRAM module.
This could be caused by a corrupt input mapping configuration file (*.map) in the /Config/Inputs folder.
First, make sure you are able to properly map all buttons through the MiSTer main menu without any other cores loaded. This will ensure that MiSTer is at least able to see the controller and recognize all of its buttons as valid inputs.
Then, navigate to your /Config/Inputs folder and delete the *.map file that has the set name of the game you are having problems with in the file name.
Finally, remap your controls in the OSD while the game is running.
I do not hear any sound during demo/attract mode, but I hear them while playing the game.... The screen is flipped upside down for vertical games.
Games shipped from the factory with certain default settings, but these can be changed in the game's Test Menu.
Before accessing a game's Test Menu, make sure all controller buttons are mapped for that particular game, as these will be used to make selections in that menu.
To access the Test Menu for any CPS-2 game, open the MiSTer OSD, briefly turn Test Mode: On (long enough to see the game's Test Menu show up in the background), then turn it back Off and close the OSD. If you have a keyboard attached, pressing F2 will also enter the game's Test Menu, just like in MAME.
Select System Configuration (or Configuration, then System, depending on the game). From this screen, you can make the following changes:
-
If you do not hear demo/attract mode sounds, change Demo Sound to On.
-
If the screen is upside down, change Monitor to Flip. This may be easier to do if Rotate Screen is set to No in the OSD so it appears sideways instead, then rotate as necessary after the Flip option has been set.
After all of the desired changes are made, use the Exit option for all menus, allowing the game to save those EEPROM settings in RAM. Depending on the game, this may at some point require simultaneously pressing Start on P1 and P2 controllers (or 1+2 on a keyboard).
Finally, open the OSD again and select Save Settings (press Right on the OSD, as it is on a secondary page), which will commit those changes in RAM to the SD card. This step creates a .nvm file with the same name as the MRA that launched the game in /Config/NVRAM. This allows those changed preferences to be loaded automatically the next time that game is launched.
Do this for any other 'soft' DIP switch changes in those games as well, such as difficulty, number of lives, etc.
NOTE: NVRAM files between MiSTer (*.nvm) and MAME (eeprom) are compatible with each other.
The Update_All MAME-Getter script is not downloading ROMs for MRAs that I have manually copied to MiSTer.
The Update_All script package will download cores and MRAs from publicly-accessible respositories, but while the CPS-2 core is in closed beta, these files must be manually copied from the zip files made available through Patreon posts. Some users have reported that the MAME-Getter script (part of the Update_All script package) that is responsible for downloading merged MAME ROMs based on the MRAs that are present on MiSTer, does not see the newer files that have been manually copied over.
This also seems to affect the functionality of the Arcade-Organizer script.
If this happens, the possible solution is to navigate to the /Scripts/.cache/mame-getter/ folder and delete the last_run file, then run the script again. This will force the script to recheck every MRA.
NOTE: The folder this file is located in will most likely be hidden, so depending on how you are attempting to access that location, you may need to enable an option to show hidden folders/files.
For example, if you are using WinSCP to access MiSTer via FTP:
- Options -> Preferences -> Panels -> Show Hidden Files
If you are using FileZilla:
- Server -> Force Showing Hidden Files
This file is published once a month in a Patreon post. It is also available in the #beta-files channel of the discord server JTFPGA.
- If you are a Patreon member, follow these instructions
- If you are not a Patreon member, you can still access the public channel