Example #1
1
<?php

require "docgen.inc";
?>

<?php 
BeginPage('vb', 'Virtual Boy');
?>

<?php 
BeginSection('Introduction');
?>

<p>
Virtual Boy emulation in Mednafen is original code, except for an extremely modified(optimizations, bug fixes, and better all-around emulation) V810 emulator core taken from Reality Boy years
ago for PC-FX emulation.
</p>

<p>
Virtual Boy ROM images must each have an extension of ".vb" or ".vboy" to be recognized as such.  Mednafen versions prior to 0.9.13 allowed ".bin" as well, but this conflicts with the Sega Megadrive emulation module.
</p>

<p>
Due to how the left+right views are transformed into a single image, enabling most of the image filter effects(bilinear interpolation, OpenGL pixel shaders, special scalers, etc.) is not recommended.  However, they will work properly with the "cscope" and "sidebyside" 3D modes, and may work tolerably with the "anaglyph" 3D mode.  This limitation may be corrected in the future by refactoring the 3D mode mixing out to the driver side, post individual filtering for each left/right view; however, this would significantly negatively impact performance.
</p>

<p>
To use the "hli" mode with a "Line Interlaced 3D" monitor, you'll want to set "vb.yscale(fs)" to 1, "vb.liprescale" appropriately, and "vb.xscale(fs)" to 2 multiplied by the value of "vb.liprescale".
</p>

<p>
Example #2
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('sms', 'Sega Master System');
?>

<?php 
BeginSection('Introduction');
?>
Mednafen's Sega Master System emulation is based off of <a href="http://cgfm2.emuviews.com/smsplus.php">SMS Plus</a>.
<p>
Sega Master System emulation in Mednafen is a low-priority system in terms of proactive maintenance and bugfixes.
</p>
<?php 
EndSection();
?>

<?php 
PrintSettings();
?>

<?php 
EndPage();
?>

Example #3
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('pcfx', 'PC-FX');
?>

<?php 
BeginSection('Introduction');
?>
  <ul>
   <li>Internal backup memory and external backup memory are emulated.</li>
   <li>Motion decoder RLE and JPEG-like modes are emulated.</li>
   <li>KING Background 0 scaling+rotation mode is supported.</li>
   <li>Mouse emulation.</li>
  </ul>
<?php 
EndSection();
?>


<?php 
BeginSection('Default Key Assignments');
?>

 <table border>
  <tr><th>Key(s):</th><th>Action:</th><th>Configuration String:</th></tr>
  <tr><td>ALT + SHIFT + 1</td><td>Activate in-game input configuration process for device on virtual inport port 1.</td><td>input_config1</td></tr>
  <tr><td>ALT + SHIFT + 2</td><td>Activate in-game input configuration process for device on virtual inport port 2.</td><td>input_config2</td></tr>
Example #4
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('pce', 'PC Engine/TurboGrafx 16 (CD)/SuperGrafx');
?>

<?php 
BeginSection('Introduction');
?>
 
 <ul>
  <li>Sub-instruction timing granularity(but greater than cycle granularity)
  <li>All sprite sizes supported.</li>
  <li>16-sprites per line limit emulated.</li>
  <li>Accurate HuC6280 flags emulation.</li>
  <li>Dot-clock emulation for more accurate aspect ratios.</li>
  <li>Support for Street Fighter 2's HuCard hardware.</li>
  <li>Support for Populous's backup RAM.</li>
  <li>6-button pad emulation.</li>
  <li>Mouse emulation.</li>
  <li>Working CD+G playback.</li>
 </ul>
<?php 
EndSection();
?>

<?php 
BeginSection('Custom Palettes');
<?php

require "docgen.inc";
?>

<?php 
BeginPage('wswan', 'WonderSwan');
?>

Mednafen's WonderSwan (Color) emulation is based off of <a href="http://cygne.emuunlim.com/">Cygne</a>.

<?php 
BeginSection('Default Key Assignments');
?>

 The "X Cursor" buttons are usually used for directional control with horizontal-layout games, 
 while the "Y Cursor" buttons are usually used for directional control with vertical-layout games.
 Additionally, the opposite buttons are often treated as action buttons...because of this,
 <big><b>you must *NOT* configure the X cursor buttons and Y cursor buttons to the same real buttons or keys.</b></big>  Games will not behave
 well at all if you do.
 </p>
 <p>
 <table border>
  <tr><th>Key(s):</th><th>Action:</th><th>Configuration String:</th></tr>
  <tr><td>ALT + SHIFT + 1</td><td>Activate in-game input configuration process for WonderSwan pad.</td><td>input_config1</td></tr>
  <tr><td>ALT + O</td><td>Rotate the screen<i>(and optionally input controlled, by setting wswan.rotateinput)</i></td><td>rotate_screen</td></tr>
 </table>
 </p>
 <p>
 <table border>
  <tr><th>Key:</th><th nowrap>Action/Button:</th></tr>
Example #6
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('ngp', 'Neo Geo Pocket (Color)');
?>

<?php 
BeginSection('Introduction');
?>
Mednafen's Neo Geo Pocket emulation is based off of <a href="http://neopop.emuxhaven.net/">NeoPop</a>.
<p>
The Neo Geo Pocket (Color) emulation in Mednafen is not very accurate in terms of low-level details; BIOS is HLE'd, CPU instruction
timing is totally fubared, some CPU instructions are likely emulated incorrectly, and there are a couple of per-game hacks.
It's sufficient to play most of the commercially released games fairly well, but if you want to do NGP(C) homebrew development,
you're better off at looking at something like <a href="http://www.mess.org">M.E.S.S.</a>.
</p>


<?php 
EndSection();
?>

<?php 
BeginSection('Default Key Assignments');
?>
 <table border>
  <tr><th>Key(s):</th><th>Action:</th><th>Configuration String:</th></tr>
  <tr><td>ALT + SHIFT + 1</td><td>Activate in-game input configuration process for Neo Geo Pocket pad.</td><td>input_config1</td></tr>
Example #7
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('md', 'Sega Genesis/MegaDrive');
?>

<?php 
BeginSection('Introduction');
?>
Mednafen's Sega Genesis/Megadrive emulation is based off of <a href="http://cgfm2.emuviews.com/">Genesis Plus</a> and
information and code from <a href="http://code.google.com/p/genplus-gx/">Genesis Plus GX</a>.  The GPL-incompatible
CPU and sound emulation cores in the aforementioned projects have been replaced with GPLed or GPL-compatible alternatives;
heavily-modified and improved YM2612 emulation from Gens, heavily-modified 68K emulation core from Yabause, and Z80 emulation core from
FUSE.
<p>
Sega Genesis/Megadrive emulation should still be considered experimental; there are still likely subtle bugs in the 68K
emulation code, the YM2612 emulation code is not particularly accurate, and the VDP code has timing-related issues.
</p>

<p>
Sega 32X and Sega CD are not currently supported, though there is a bit of stub Sega CD code present currently.
</p>

<?php 
EndSection();
?>

<?php 
Example #8
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('gb', 'Game Boy (Color)');
?>

Mednafen's GameBoy (Color) emulation is based off of <a href="http://vba.sf.net/">VisualBoy Advance</a>.
<p>
Super Game Boy is presently not supported.  If it ever is supported in the future, it will likely be via the
<a href="snes.html">SNES</a> module instead of the GB module.
</p>

<?php 
BeginSection('Default Key Assignments');
?>
 <table border>
  <tr><th>Key(s):</th><th>Action:</th><th>Configuration String:</th></tr>
  <tr><td>ALT + SHIFT + 1</td><td>Activate in-game input configuration process for GameBoy pad.</td><td>input_config1</td></tr>
 </table>
 </p>
 <p>
 <table border>
  <tr><th>Key:</th><th nowrap>Action/Button:</th></tr>
  <tr><td>Keypad 2</td><td>B</td></tr>
  <tr><td>Keypad 3</td><td>A</td></tr>
  <tr><td>Enter/Return</td><td>Start</td></tr>
  <tr><td>Tab</td><td>Select</td></tr>
  <tr><td>W</td><td>Up</td></tr>
<?php

require "docgen.inc";
?>

<?php 
BeginPage('snes', 'Super Nintendo Entertainment System/Super Famicom');
?>

<?php 
BeginSection('Introduction');
?>
SNES emulation is based off of <a href="http://byuu.org/">bsnes</a> v0.59, with the following (unofficial) modifications:
<ul>
 <li>Cx4 Op10 fix patch</li>
 <li>blargg_libco_ppc64-5</li>
 <li>nall serializer 64-bit type bugfix backport</li>
 <li>a few minor timing/scheduler related changes</li>
</ul>
<p>
SNSF playback is supported to a degree; however, its implementation in Mednafen is incomplete.
</p>
<p>
<b><font color="red">WARNING:</font></b> Saving state(and by extension rewinding and netplay) with Mednafen's SNES emulation may break some games.
"Tales of Phantasia" is a known problematic game in this regard.
</p>
<?php 
EndSection();
?>

<?php 
Example #10
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('', 'Netplay');
?>

<?php 
BeginSection('Introduction');
?>
 (To be written; topics: standalone-server based, potential for losing saved games, save state usage, latency issues, bandwidth usage)
<?php 
EndSection();
?>


<?php 
BeginSection('Setting up the Server');
?>
  <p>
  Download the latest "Mednafen-Server" release from <a href="http://sourceforge.net/project/showfiles.php?group_id=150840">SourceForge</a>.
  Untarballize it, and read the included "README" files for further instructions and caveats.
  </p>

<?php 
EndSection();
?>

<?php 
Example #11
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('nes', 'Nintendo Entertainment System/Famicom');
?>

<?php 
BeginSection('Introduction');
?>
<p>
Mednafen's NES/Famicom emulation is based off of <a href="http://fceultra.sourceforge.net/">FCE Ultra</a>.
</p>
<?php 
BeginSection('Custom Palettes');
?>
<p>
Custom palettes should contain 64 8-bit-per-color-component RGB triplets.
</p>
<?php 
EndSection();
?>

<?php 
BeginSection("Input");
?>
 <p>
  Mednafen emulates the standard NES gamepad, the Four-Score multiplayer
  adapter, the Zapper, the Power Pad,  and the Arkanoid controller.  The 
Example #12
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('gba', 'Game Boy Advance');
?>

<?php 
BeginSection('Introduction');
?>

Mednafen's GameBoy Advance emulation is based off of <a href="http://vba.sf.net/">VisualBoy Advance</a>.

<?php 
BeginSection('BIOS');
?>
Built-in high-level BIOS emulation is used by default; however, a real BIOS can be used by setting the <a href="#gba.bios">gba.bios</a> setting.
<?php 
EndSection();
?>

<?php 
BeginSection('Custom Palettes');
?>
<p>
Custom palettes should contain 32768 8-bit-per-color-component RGB triplets.
</p>
<?php 
EndSection();
Example #13
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('gg', 'Sega Game Gear');
?>

<?php 
BeginSection('Introduction');
?>
Mednafen's Sega Game Gear emulation is based off of <a href="http://cgfm2.emuviews.com/smsplus.php">SMS Plus</a>.
<p>
Game Gear emulation in Mednafen is a low-priority system in terms of proactive maintenance and bugfixes.
</p>
<?php 
EndSection();
?>

<?php 
PrintSettings();
?>

<?php 
EndPage();
?>

Example #14
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('', 'General');
?>

 <?php 
BeginSection("Introduction");
?>
 <p>
 This main document covers general Mednafen usage, generally regardless of which system is being emulated.  Documentation covering key assignments, settings, and related information for each system emulation module is linked to in the table of contents under "Emulation Module Documentation".
 </p>

 <p>
  The term "movie" used in this documentation refers to save-state and recorded input stream stored in a file, generally usable only in Mednafen itself.<br>
  The terms "audio/video movie", "QuickTime movie", and variations thereof refer to audio and video data recorded and stored in a file, and
  usable with external programs.
 </p>
  <?php 
BeginSection("Base Directory", "", FALSE, FALSE, "Section_base_directory");
?>
   <p>
    Mednafen's "base directory" is the directory under which Mednafen stores its data and
    looks for various auxillary data by default.  If the "<b>HOME</b>" environment variable is set, it will be suffixed with "/.mednafen"
    and used as the base directory(in other words ~/.mednafen, or $HOME/.mednafen).  If the "<b>MEDNAFEN_HOME</b>" environment variable is set,
    it will be used as the base directory.  If neither the "HOME" nor "MEDNAFEN_HOME" environment
    variable is set, and the current user has an entry in the password file, the corresponding home directory
    will be used as if it were the "HOME" environment variable.
Example #15
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('lynx', 'Atari Lynx');
?>

<?php 
BeginSection('Introduction');
?>
<p>
Mednafen's Atari Lynx emulation is based off of <a href="http://homepage.ntlworld.com/dystopia/">Handy</a>.
</p>
<p>
Atari Lynx emulation requires the 512-byte Lynx boot ROM image, named as "lynxboot.img", and placed in the Mednafen base
directory.
</p>
<?php 
EndSection();
?>


<?php 
BeginSection('Default Key Assignments');
?>
 <table border>
  <tr><th>Key(s):</th><th>Action:</th><th>Configuration String:</th></tr>
  <tr><td>ALT + SHIFT + 1</td><td>Activate in-game input configuration process for Lynx pad.</td><td>input_config1</td></tr>
 </table>
Example #16
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('psx', 'Sony PlayStation');
?>

<?php 
BeginSection('Introduction', "", FALSE, FALSE, "Section_intro");
?>
<p>
<font color="red" size="+2">WARNING:</font> Save states(and by extension, state rewinding and netplay) and saved games on emulated memory cards do not mix well unless you are
extremely careful.  For any given game, either use save states or the game's own save system, but not both, lest you may destroy your saved games.
</p>
<p>
PlayStation 1 emulation is currently in a state of development, so there may occasionally be horrifying SPINE-TINGLING regressions in new versions.
</p>
<p>
A dual-core Phenom II or Athlon II at 3GHz or higher, or rough equivalent(in terms of single-core IPC), is recommended for
running Mednafen's PlayStation 1 emulation on.  For better performance, the binary should be compiled for a 64-bit
target(for example, x86_64) rather than 32-bit, if available.<br>
</p>

<p>
Enabling CD image preloading into memory via the <a href="mednafen.html#cd.image_memcache">cd.image_memcache</a> setting is recommended, to
avoid short emulator pauses and audio pops due to waiting for disk accesses to complete when the emulated CD is accessed.
</p>

<p>
Example #17
0
<?php

require "docgen.inc";
?>

<?php 
BeginPage('pce_fast', 'PC Engine (CD)/TurboGrafx 16 (CD)/SuperGrafx');
?>

<?php 
BeginSection('Introduction');
?>
<p>
The "pce_fast" emulation module is an experimental alternative to the <a href="pce.html">pce</a> emulation module.  It is
a fork of 0.8.x modified for speed at the expense of (usually) unneeded accuracy(this compares to the "pce" module,
which traded speed away in favor of accuracy).
</p>
<p>
To use this module rather than the "pce" module, you must either set the "pce.enable" setting to "0", or pass
"-force_module pce_fast" to Mednafen each time it is invoked.
</p>
<p>
<b>WARNING:</b> Save states, movies, and netplay are definitely not compatible between the "pce" module and the "pce_fast" module.
</p>
<?php 
EndSection();
?>

<?php 
PrintSettings();
?>