Final Burn Legends 1.0 This is a port of Final Burn Alpha 2.99.07 to the Xbox. It also includes parts of FBA-XXX Pro 1.29. The reason I developed this port was so that I could play Thunder Blade, Galaxy Force 2, Turbo Outrun, and After Burner 2 on the Xbox. However, it developed into much more than that. Source code is included. It features: -Support for over 2700 games. Some games are not playable anywhere else on the Xbox. It also has an excellent Sega Genesis emulator. Many Genesis games play perfectly. -Fullspeed emulation (even with software filters in HD) for CPS1, CPS2, NeoGeo, Cave, Konami, and many other games. -Hiscore support for most games. -SRAM support for Sega Genesis games. -Built in cheat database. Nearly all games have cheats (not just CPS1 and CPS2). This includes support for multi byte cheats. EEPROM cheats do not work. -Built in Help system with information about the emulator, FAQ, and the controls. -Per game ini files. Setting options in the GUI are global settings. Once a setting is changed in the emulation menu, then those settings are saved for that game only. -Detailed arcade information. This is the MAME history database. This can be selected from the in game emulation menu. This includes information about the game, trivia, tips, etc... -Save states. There are ten savestate slots for each game. There is a preview generated for each savestate. Some games have issues with savestates, but most games work fine. -NVRAM support. All changes made through the Arcade settings menu are saved. -In game menu where the user can configure the controls, video, or other options. This is accessed by clicking the right analog stick. -Support for all the Xbox partitions and DVD drive. The Drive letters are (C, E, F, G, X, Y, Z, and R for the DVD-ROM). DVD discs must be created from XISOs. Otherwise the ROMs will not be found. -Command line support. The first parameter should be the path to the emulator (E:\games\Final Burn Legends\default.xbe etc...). The second parameter should be ONLY the name of the rom without the extension (i.e. sf2). Not sf2.zip. Not E:\games\Final Burn Legends\roms\sf2.zip. -Supports game guides. These are text files that describe a game (found at www.gamefaqs.com). Try to keep the files at 1MB or less. -Supports the ability to take a screenshot which will then be displayed in the GUI. -Arcade settings menu. This is where options like DIP switch settings can be changed. -Hundreds of game filters. A user can display only the games they want. For example, a user could display only horizontal shooters, or 2D fighting games, or only CPS1, or only games made by Konami, or only games made in 1998, etc... The filter categories are: Custom (CPS1, CPS2, CPS1 + CPS2, NeoGeo, CPS1 + CPS2 + NeoGeo, All others, Cave, Psykio, Cave + Psykio, Megadrive) Manufacturer Year Genre (dozens of sub filters (2D Fighters, 2.5 Fighters, etc...) The Manufacturer, Year, and Genre filter databases are intelligently built. It only shows possible filters based on the games found. For example, there will be no 2D Fighters filter if there are no 2D fighting games found. -Favorites browser (games are added/deleted by selecting a game and pressing the white button) -Software Filters: SuperScale AdvancedMame HQ2X Simple2X Scanlines 2xSaI Super2xSaI SuperEagle SuperScale75 -Hardware Filters: Bilinear Point Trilinear Gaussian Cubic Anisotropic -Resolutions: 480i 480p 720p 1080i Most games run at 60 FPS regardless of the resolution. -Flicker Filter. This determines how blurry the screen is. -Soften Filter. This determines how blurry the screen is. -The screen can be adjusted during emulation. Each game saves this information to an ini file. -VSYNC can be turned on or off. Off might provide more accurate emulation speed for games that do not run at 60 FPS. However, there are not many that don't run at 60 FPS and it will cause screen tearing. -10x11 pixel aspect ratio for users in 480i/p -Screen rotation. The screen can be rotated up to 360 degrees. This might be needed for some games. -6 speaker surround sound (however no games output the audio in that format) -Sample and FM interpolation can be enabled or disabled. -Sound frequencies 11025, 22050, 44100, and 48000. -All 4 controllers supported. -All the buttons can be configured. -Supports turbo for all buttons. There is a turbo speed that can be adjusted if needed. The higher the number the slower the turbo. -Macro support. Any button combination can be used. These are read from an ini file and the user can add macros to it. Macros work as follows: A user would first map the buttons for the game they wanted to use a macro for. For example, the user might map the 3 punches in Street Fighter 2 to Xbox B, Y, and Black. The user then would enable the macro for Xbox B, Y, and Black (B + Y + CK) and assign this macro to an Xbox button (for example the Xbox right trigger button). Then, when the user presses the Xbox right trigger, it will actually tell the emulator that the user pressed the Xbox B, Y, and Black buttons. Since these buttons are mapped to the three punches, then it will be the same as if they pressed all three punches at the same time. This simplifies certain combo moves where the user has to press multiple buttons at once. -The cursor speed can be adjusted. This is the on screen target that is drawn for shooters like Rail Chase. -Almost all image/text items can be adjusted in the Options menu. -Screenshot previews. It automatically detects when to display horizontal or vertical screenshots. -It supports up to 8 screenshots per game. These can be cycled by pressing left/right on the right analog stick in the GUI. -Analog scroll through the ROM list. Press left or right on the DPad to cycle throguh letters of the alphabet. -Video previews -Dual previews. If the emulator only finds a screenshot, then it displays the screenshot in single screenshot mode. If it finds a video and no screenshot it displays the video in single video mode. If it finds a video and a screenshot then it automatically uses the dual preview mode where the screenshot and video are displayed side by side. -The main menu supports six different backgrounds and a movie layer. -The game select screen supports independently moving/resizing the game panel, the selected game panel, the background, and all other items. This way the user can create a user interface to suit their preference. -Animated logo for the ROM browser and Main Menu screens. -Splash screen -GUI sound effects. -GUI sound effects can be disabled. -Options to scan the ROMs directory. This needs to be done if games are added, deleted, or the ROM path is changed. -All ROMs match the latest version of FBA 2.99.07. If the game doesn't work there, it won't work on this port. A dat file is included that can be used to verify or fix any game. The PC version dat file will not have all the games the included dat file has. -Three skins are included (one for 480, 720p, and 1080i). If you are going to use the emulator in HD, then pick one of these skins. It sets everything up for you. -Skin browser ------------------------------------------------------------------------ Notes: -If you reset a game and it doesn't reset, then try it again. Sometimes reset doesn't take. -The resolution of the screenshots matter. Larger screenshots will slow down the GUI. An easy way to get only screenshots that Final Burn Legends supports is to download a complete MAME screenshot set. Put the screenshot.bat and FBA folder (from the tools folder) in that folder. Run the screenshot.bat file. It will copy any screenshots that Final Burn Legends supports to the FBA folder. Then copy those screenshots to the Xbox. -There are a few games that will only work in 480i/p. I am only aware of four. If a game runs out of memory in HD, then try it in 480i/p. That may fix it. 99% of all games work in all resolutions though. -Any time you add, delete, or change a game make sure you re-scan your ROMs. This is found at Options->Rebuild Game List -There is no CPS3 emulation nor will there be. The Xbox is not fast enough to emulate these games using Final Burn Alpha. -Sometimes games will crash if invalid cheat codes are enabled. For example: Don't enable "Always have 7 magic spells" in Golden Axe if the Dwarf is the character. The Dwarf can never have more than 4. This would crash the game. -Sometimes games will have corrupt graphics or audio when loading savestates. Nothing I can do about that. -If a Genesis game says something like "This game was designed for NTSC or PAL systems only..." then reset the game. That will switch regions. -The default aspect ratio for vertical games is not 100% correct. This can be fixed by resizing the screen if needed. This only has to be done once since each game saves the settings to a separate ini file. -If you are going to modify the code and make another release, please only do so if you can meet the following criteria: 1) RELEASE THE SOURCE! Don't take mine or anyone else's work and not release the source. Everyone should get to benefit and future developers should be able to improve the code whenever current development stops. 2) Don't take Final Burn Legends, make a few changes, and then call it something else. Call it Final Burn Legends. Only change the version number. 3) Release it properly through Xbox-Scene. This way, you get the proper credit and it helps keep the Xbox scene alive. 4) I would appreciate it if no one made changes to it while I am still working on it. I will make it clear when I've stopped. -New skins can be added by following these rules: 1) Make sure the new skin has all of the files found in the arcade skin (i.e. there should be an option.png, mainmenu.png, rombrowser.png, etc... file). None of the images should be bigger than the ones provided. Memory is at a premium and larger images will cause the skin to not display in HD or cause games (like NeoGeo) not to work. 2) Make sure the files are in a folder with the name of the skin (i.e. if the skin is called "FBA" then all the files should be in the "skins\FBA" folder) 3) Once a user has created the images for the skin and copied them to the new FBA folder, they can set up the skin through the GUI. The current GUI settings are saved to ini\FinalBurnLegends.ini. When the user is satisfied with how the GUI looks, they should copy the FinalBurnLegends.ini to the new FBA folder and rename it to FBA.ini. 4) The FBA.ini file should have the line FBA where the skin name is written. Look at arcade1080.ini as an example. About half way through the file is a line that says "arcade1080". That line would be replaced with "FBA" (without the quotes) in this example. The folder name, the ini file, and the name of the skin in the ini file should all have the same name. Otherwise, the skin won't work. 5) Search the ini for the word "Selected" (like GameSelected, CustomSelected, etc...). Make sure it says the value =0 for any that are found. If the ini file has GameSelected=1000 and another user uses your skin and doesn't actually have 1000 games, then that could cause a crash. 5) The skin can then be uploaded to the internet for all to enjoy. A user would just add the new skin to the skins folder and pick it from the Options menu. ------------------------------------------------------------------------ Compatibility: Most games work perfectly (and at 60 FPS). Most of the ones that don't work require VM. Some games don't work correctly or at all but that is rare. If a game does not run at 60 FPS, the first thing to do is disable software filters. Another option is to run in 480p. Games that use VM may run better in lower resolutions since there is more RAM. ------------------------------------------------------------------------ Thanks: Kenshiro (Big thanks to him for the NeoGeo and other VM code). The NeoGeo compatibility would be much lower without his code. iq_132 for the PGM code and other help Wac0 (Most of the GUI was done by him), Giles9999 (GUI), and anyone who made a logo Xport, FinalDave, and anyone who worked on any of the FBA PC versions or Xbox ports. Antirad for the great logo. Anyone I forgot. ------------------------------------------------------------------------ Please post any bugs or requests in this thread. Read the FAQ first. What NOT to post (or PM me): -Can you send me the emulator? -Where can I download the emulator? -Where can I download ROMs? -My ROM doesn't work (i.e. I haven’t verified it on the PC). What to post: -Any game that gets an "Out of Memory" error. (other than CPS3, PGM, or D.D. Crew) Please post what resolution you were in. -Anything that crashes the Xbox -Anything in the GUI that doesn't work correctly. -Any requests (not please add <your favorite game here>) Requests are for GUI features or fixing games (other than CPS3 or PGM games) that are already supported in the PC version but not in the Xbox port. Enjoy