Difference between revisions of "Mednafen"

From Emulation General Wiki
Jump to navigation Jump to search
(Cheats)
Line 57: Line 57:
  
 
==Review==
 
==Review==
It is command line only, so its interface might be hard to use to new users.
+
Mednafen only has a command line interface, so its interface might be hard to use to new users.
  
The most useful cores are those that are original. These are the PS1, PCE, PC-FX and Virtual Boy cores. The PCE core is one of the best emulators for that system, with a Fast and Accurate versions. The PS1 core is native resolution only, and features high degree of accuracy and compatibility. The Virtual boy core is one of the best, although it does not attempt to reproduce the 3D.
+
The best cores in Mednafen are those that are original - which are the PS1, PCE, PC-FX and Virtual Boy cores. The PCE core is one of the best emulators for that system, with a Fast and Accurate version. The PS1 core is native resolution only, and features high degree of accuracy and compatibility. The Virtual Boy core is one of the best for the system, although it does not attempt to reproduce the 3D.
  
 
Other cores improve upon emulators that have been long abandoned and rarely updated. These include the Neo Geo Pocket, WonderSwan Color and Atari Lynx cores.
 
Other cores improve upon emulators that have been long abandoned and rarely updated. These include the Neo Geo Pocket, WonderSwan Color and Atari Lynx cores.
  
Other cores are less useful, as there are better options in stand-alone emulators. NES, Genesis, Master System and SNES. These cores might even be based on out dated versions. For instance, the SNES core is based on an old outdated version of bSNES. This is before the performance/accuracy/balanced cores - 0.50x territory - with a couple of changes by Ryphecha.
+
Other cores are less useful, as there are better options in stand-alone emulators (NES, Genesis, Master System and SNES). These cores might even be based on out-dated versions. For instance, the SNES core is based on an old outdated version of bSNES. This is before the performance/accuracy/balanced cores - 0.50x territory - with a couple of changes by Ryphecha.
  
 
It is unknown at this time whether Mednafen's GBA core is better than VBA-M.
 
It is unknown at this time whether Mednafen's GBA core is better than VBA-M.
  
[[RetroArch]] uses the PS1, PCE, Neo-Geo Pocket, Virtual Boy, and WonderSwan cores of Mednafen so it might make sense to use that instead.
+
[[RetroArch]] uses the PS1, PCE, Neo-Geo Pocket, Virtual Boy, and WonderSwan cores of Mednafen, so it might make sense to use that instead.
  
 
==Using Mednafen==
 
==Using Mednafen==
Its pretty easy to get up and running. You can use a frontend like medgui. However, a good text editor like [http://www.notepad-plus-plus.org/ Notepad++] is all you need if you need to change settings.
+
Mednafen is pretty easy to get up and running. You can use a frontend like medgui. However, a good text editor like [http://www.notepad-plus-plus.org/ Notepad++] is all you need if you need to change settings.
===Bios===
+
===BIOS===
  
Most systems do not require any bios except for PS1, PCE-CD and PC-FX that need to be placed into a folder called "firmware" in your mednafen directory. Mednafen is very picky about which BIOS to use. The ones that you might need are:
+
Most cores do not require any BIOS except for the PS1, PCE-CD and PC-FX cores. BIOS files need to be placed into a folder called "firmware" in your Mednafen directory. Mednafen is very picky about which BIOS to use. The ones that you might need are:
  
 
PS1:
 
PS1:
Line 89: Line 89:
  
 
===CUE===
 
===CUE===
For most systems Mednafen only needs the rom file but to load PS1 games Mednafen requires CUE sheets to know where the music data is. Ensure that the CUE sheet is properly set up in order for the game to run. See the [[Cue sheet (.cue)]] for more.
+
For most systems, Mednafen only needs the rom file; but to load PS1 games, Mednafen requires CUE sheets to know where the music data is. Ensure that the CUE sheet is properly set up in order for the game to run. See the [[Cue sheet (.cue)]] page for more info.
 
===Loading a game===
 
===Loading a game===
In mednafen to load a game, simply drag and drop your rom or cue file onto the mednafen.exe or if you prefer you can use the command line. Mednafen requires no special commands such as the desired system. For example in windows the command would look like C:/Emulators/Mednafen/mednafen.exe C:/Roms/Nintendo/battletoads.nes
+
To load a game in Mednafen, simply drag and drop your rom or CUE file onto mednafen.exe, or if you prefer, you can use the command line. Mednafen requires no special commands, such as the desired system. For example, in Windows, the command would look like C:/Emulators/Mednafen/mednafen.exe C:/Roms/Nintendo/battletoads.nes
  
 
===Dual Analog Controllers with PS1===
 
===Dual Analog Controllers with PS1===
To use analog sticks and the rumble feature of Dualshock controllers open the mednafen-09x.cfg file search for "psx.input.port1" and change gamepad to dualshock. Do this for port2 if you wish to play multiplayer games with the features of dualshock controllers.
+
To enable analog sticks and rumble on DualShock controllers, open the mednafen-09x.cfg file, search for "psx.input.port1" and change gamepad to DualShock. Do this for port2 if you wish to play multiplayer games with the features of Dualshock controllers.
 
===Configuring Controls===
 
===Configuring Controls===
Once in game to configure your controller at any time press press alt+shift+1 and it will guide you through the setup. Press alt+shift+2 and so on for each additional controller for multiplayer.
+
Once in-game, to configure your controller at any time, press Alt+Shift+1 and it will guide you through the setup. Press Alt+Shift+2 and so on for each additional controller for multiplayer.
  
 
===Graphical Enhancements===
 
===Graphical Enhancements===
 
====Sprite Limit====
 
====Sprite Limit====
On older systems due to hardware limitations only so many sprites could be on screen at the same time. Most systems got around this limitation but alternating which sprites were on screen each refresh causing the sprite to appear to flicker. Mednafens default settings are true to the original system limits but in the cfg file this limitation can be removed. Here is the list of options from the cfg file to change from 0 to 1 if you don't wish to have the limit.
+
This is a feature on older systems, due to hardware limitations, that makes it only display so many sprites could be on screen at the same time. Most systems got around this limitation by alternating which sprites were on screen each refresh, causing the sprite to flicker. Mednafen's default settings are true to the original system limitsbut this can be disabled in the cfg file. Here is the list of options from the cfg file to change from 0 to 1 if you don't wish to have the limit.
  
 
*pcfx.rom
 
*pcfx.rom
Line 108: Line 108:
 
*pcfx.nospritelimit
 
*pcfx.nospritelimit
 
===Cheats===
 
===Cheats===
Mednafen supports the usual cheats such as gameshark, codebreaker, and action replay. The cheats menu is accessed by ALT+C
+
Mednafen supports the usual cheats such as GameShark, Code Breaker, and Action Replay. The cheats menu can be accessed with ALT+C.
  
 
===Further Reading===
 
===Further Reading===
Line 158: Line 158:
 
#Run MedGui.exe
 
#Run MedGui.exe
 
#You'll get a small window. On your left, you'll see two arrow buttons with a console/handheld icon in between. Choose your desired platform.
 
#You'll get a small window. On your left, you'll see two arrow buttons with a console/handheld icon in between. Choose your desired platform.
#Click the button with the blue lightning icon and look for the folder that contains your game(s). The emulator looks for compressed archives by default, but you can still load uncompressed files by clicking on the drop down menu
+
#Click the button with the blue lightning icon and look for the folder that contains your game(s). The emulator looks for compressed archives by default, but you can still load uncompressed files by clicking on the drop down menu.
#Pick your game
+
#Pick your game.
#Click the button with a checkered red ball and joystick to start the game
+
#Click the button with a checkered red ball and joystick to start the game.
#You'll then (very likely) get a message an update prompt. Click Yes, and wait
+
#You'll then (very likely) get a message an update prompt. Click Yes, and wait.
 
#Start the game. If it asks you to update again, ignore it and restart the emulator.
 
#Start the game. If it asks you to update again, ignore it and restart the emulator.
#While the game is loaded, press ALT + SHIFT + 1 to map your controller. You'll get several options per button (for example, UP 1, UP 2, UP 3, etc.). Just map the first one to your controller, and the rest to a key you'll never press. You will have to repeat this step for every emulator core
+
#While the game is loaded, press ALT + SHIFT + 1 to map your controller. You'll get several options per button (for example, UP 1, UP 2, UP 3, etc.). Just map the first one to your controller, and the rest to a key you'll never press. You will have to repeat this step for every emulator core.
#Close the emulator
+
#Close the emulator.
#Click the arrow button on the right side of the window. It should expand it
+
#Click the arrow button on the right side of the window. It should expand it.
#Click Advanced Mode
+
#Click Advanced Mode.
#Click the tab called Media/Network/Utility
+
#Click the tab called Media/Network/Utility.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
Line 188: Line 179:
 
#*"Password" which you can establish or leave blank
 
#*"Password" which you can establish or leave blank
 
#When you're done fiddling with your settings, click Create standard.conf
 
#When you're done fiddling with your settings, click Create standard.conf
#Click Create Server. A cmd window will appear
+
#Click Create Server. A cmd window will appear.
#Click My IP to obtain your external IP address, and share it along with your port to your friend(s)
+
#Click My IP to obtain your external IP address, and share it along with your port to your friend(s).
#Launch the game
+
#Launch the game.
#Press T, and type /server localhost
+
#Press T, and type /server localhost.
#Wait for your friend(s) to connect
+
#Wait for other people to connect.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
Line 209: Line 190:
 
#In the Netplay-Client section, you have the following options:
 
#In the Netplay-Client section, you have the following options:
 
#*"Host", which is the server's IP you'll connect to
 
#*"Host", which is the server's IP you'll connect to
#*"Port, which is the one used by the server (which you should also have open on your end)
+
#*"Port, which is the one used by the server (which you should also have open on your end).
#*"Password", blank if there is none
+
#*"Password", blank if there is none.
#*"Nickname" where you type whatever you want
+
#*"Nickname" where you type whatever you want.
#*"Localplayer" is the number of players that will also be playing from one computer
+
#*"Localplayer" is the number of players that will also be playing from one computer.
#*"Small font" which makes the chat font smaller
+
#*"Small font" which makes the chat font smaller.
 
#When you're done fiddling with your settings, launch the game.
 
#When you're done fiddling with your settings, launch the game.
#Press T, and type /server IP_goes_here
+
#Press T, and type /server IP_goes_here.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  

Revision as of 02:39, 4 October 2013

Newlogo-1-.png
Current version: 0.9.32-WIP
Active: Yes
OS: Multiplatform
Authors: Ryphecha, Mednafen Team
Official website: SouceForge
Source code: SourceForge

Mednafen is a multi-system emulator, driven from the command-line. Many of its cores are ports of other emulators, but many of them are also original. Its Playstation and PC Engine original cores are notable for their high quality, compatibility and accuracy.

Mednafen is an acronym for "My Emulator Doesn't Need A Frickin' Excellent Name".

Download

Mednafen

Supported systems

System Based on code from:
Atari Lynx Handy
Game Boy Advance VisualBoyAdvance
Neo Geo Pocket Color Neopop
Nintendo Entertainment System FCE Ultra
Super Nintendo Entertainment System (only available in WIP) bsnes
Nintendo Virtual Boy (only available in WIP) Original. NEC V810 CPU core based on Reality Boy.
PC Engine Original. CD-ROM interface based on PC2e.
PC-FX Original. NEC V810 CPU core based on Reality Boy.
PlayStation (only available in WIP) Original.
WonderSwan Color Cygne
Sega Genesis (only available in WIP) Genesis Plus
Sega Master System and Game Gear SMS Plus

Review

Mednafen only has a command line interface, so its interface might be hard to use to new users.

The best cores in Mednafen are those that are original - which are the PS1, PCE, PC-FX and Virtual Boy cores. The PCE core is one of the best emulators for that system, with a Fast and Accurate version. The PS1 core is native resolution only, and features high degree of accuracy and compatibility. The Virtual Boy core is one of the best for the system, although it does not attempt to reproduce the 3D.

Other cores improve upon emulators that have been long abandoned and rarely updated. These include the Neo Geo Pocket, WonderSwan Color and Atari Lynx cores.

Other cores are less useful, as there are better options in stand-alone emulators (NES, Genesis, Master System and SNES). These cores might even be based on out-dated versions. For instance, the SNES core is based on an old outdated version of bSNES. This is before the performance/accuracy/balanced cores - 0.50x territory - with a couple of changes by Ryphecha.

It is unknown at this time whether Mednafen's GBA core is better than VBA-M.

RetroArch uses the PS1, PCE, Neo-Geo Pocket, Virtual Boy, and WonderSwan cores of Mednafen, so it might make sense to use that instead.

Using Mednafen

Mednafen is pretty easy to get up and running. You can use a frontend like medgui. However, a good text editor like Notepad++ is all you need if you need to change settings.

BIOS

Most cores do not require any BIOS except for the PS1, PCE-CD and PC-FX cores. BIOS files need to be placed into a folder called "firmware" in your Mednafen directory. Mednafen is very picky about which BIOS to use. The ones that you might need are:

PS1:

  • scph5500.bin  Required for Japan-region games.
  • scph5501.bin  Required for North America/US-region games.
  • scph5502.bin  Required for Europe-region games.

PCE-CD:

  • syscard3.pce

PC-FX:

  • pcfx.rom

CUE

For most systems, Mednafen only needs the rom file; but to load PS1 games, Mednafen requires CUE sheets to know where the music data is. Ensure that the CUE sheet is properly set up in order for the game to run. See the Cue sheet (.cue) page for more info.

Loading a game

To load a game in Mednafen, simply drag and drop your rom or CUE file onto mednafen.exe, or if you prefer, you can use the command line. Mednafen requires no special commands, such as the desired system. For example, in Windows, the command would look like C:/Emulators/Mednafen/mednafen.exe C:/Roms/Nintendo/battletoads.nes

Dual Analog Controllers with PS1

To enable analog sticks and rumble on DualShock controllers, open the mednafen-09x.cfg file, search for "psx.input.port1" and change gamepad to DualShock. Do this for port2 if you wish to play multiplayer games with the features of Dualshock controllers.

Configuring Controls

Once in-game, to configure your controller at any time, press Alt+Shift+1 and it will guide you through the setup. Press Alt+Shift+2 and so on for each additional controller for multiplayer.

Graphical Enhancements

Sprite Limit

This is a feature on older systems, due to hardware limitations, that makes it only display so many sprites could be on screen at the same time. Most systems got around this limitation by alternating which sprites were on screen each refresh, causing the sprite to flicker. Mednafen's default settings are true to the original system limits,  but this can be disabled in the cfg file. Here is the list of options from the cfg file to change from 0 to 1 if you don't wish to have the limit.

  • pcfx.rom
  • nes.no8lim
  • pce.nospritelimit
  • pce_fast.nospritelimit
  • pcfx.nospritelimit

Cheats

Mednafen supports the usual cheats such as GameShark, Code Breaker, and Action Replay. The cheats menu can be accessed with ALT+C.

Further Reading

http://mednafen.sourceforge.net/documentation/09x/mednafen.html

Frontends

Medgui

http://sourceforge.net/projects/medgui/

MedGui Reborn

http://forum.fobby.net/index.php?t=msg&th=924&start=0&

Mednaffe

https://code.google.com/p/mednaffe/

NetPlay

Cores that work with NetPlay:

  • TG-16/PC Engine/PC-CD/SuperGrafx (option for both accuracy and fast cores)
  • PC-FX
  • NES
  • Genesis (experimental but mostly functional; 2 Players only)
  • Master System
  • SNES
  • Playstation 1
Review
PROS
  • You can make and load savestates
  • Netcode allows for people to join a game that's already in session
  • In-game chat
  • Playing it fullscreen works (sometimes)
CONS
  • Command-line only (you can use a frontend, though)
  • Weird, convoluted settings (or lack thereof)
  • SNES emulation will be slow to you if you're on a low-end computer (uses BSNES core)
  • Playstation is inexplicably slow (haven't checked to see what core it uses, but probably has one that's focused on accuracy)
  • Only supports 2 Players on Genesis.
  • Frontend doesn't always save settings correctly.
  • Frontend defaults to detecting compressed ROM archives instead of the actual ROMs (you can still load uncompressed ROMs by selecting "All files *.*" from the dropdown menu).
How to

It's recommended that you download a frontend

  1. Run MedGui.exe
  2. You'll get a small window. On your left, you'll see two arrow buttons with a console/handheld icon in between. Choose your desired platform.
  3. Click the button with the blue lightning icon and look for the folder that contains your game(s). The emulator looks for compressed archives by default, but you can still load uncompressed files by clicking on the drop down menu.
  4. Pick your game.
  5. Click the button with a checkered red ball and joystick to start the game.
  6. You'll then (very likely) get a message an update prompt. Click Yes, and wait.
  7. Start the game. If it asks you to update again, ignore it and restart the emulator.
  8. While the game is loaded, press ALT + SHIFT + 1 to map your controller. You'll get several options per button (for example, UP 1, UP 2, UP 3, etc.). Just map the first one to your controller, and the rest to a key you'll never press. You will have to repeat this step for every emulator core.
  9. Close the emulator.
  10. Click the arrow button on the right side of the window. It should expand it.
  11. Click Advanced Mode.
  12. Click the tab called Media/Network/Utility.



For Hosting:

  1. In the Netplay-Server section, you have the following options:
    • "Max Clients", as in, the number of people that can connect to your server (not necessarily players; theoretically you can use this as a makeshift stream)
    • "Conn. Timeout" which is the number of seconds you'll allow for your clients to attempt establishing a connection
    • "Port" where you'll choose one an open TCP/UDP one
    • "Password" which you can establish or leave blank
  2. When you're done fiddling with your settings, click Create standard.conf
  3. Click Create Server. A cmd window will appear.
  4. Click My IP to obtain your external IP address, and share it along with your port to your friend(s).
  5. Launch the game.
  6. Press T, and type /server localhost.
  7. Wait for other people to connect.


If you're Connecting:

  1. In the Netplay-Client section, you have the following options:
    • "Host", which is the server's IP you'll connect to
    • "Port, which is the one used by the server (which you should also have open on your end).
    • "Password", blank if there is none.
    • "Nickname" where you type whatever you want.
    • "Localplayer" is the number of players that will also be playing from one computer.
    • "Small font" which makes the chat font smaller.
  2. When you're done fiddling with your settings, launch the game.
  3. Press T, and type /server IP_goes_here.



You can chat in-game by pressing T. Also, remember that you can drop in and out of the game at any time, so you don't need to reset the game if someone accidentally disconnects. There are way too many settings, commands and features to list, so take a look at the emulator's documentation.