Mailinglist Archive: opensuse-commit (1903 mails)

< Previous Next >
commit mednafen for openSUSE:Factory
Hello community,

here is the log from the commit of package mednafen for openSUSE:Factory
checked in at 2019-04-30 13:03:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mednafen (Old)
and /work/SRC/openSUSE:Factory/.mednafen.new.5536 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mednafen"

Tue Apr 30 13:03:38 2019 rev:16 rq:697738 version:1.22.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/mednafen/mednafen.changes 2019-02-24
17:10:12.964508925 +0100
+++ /work/SRC/openSUSE:Factory/.mednafen.new.5536/mednafen.changes
2019-04-30 13:03:40.602080505 +0200
@@ -1,0 +2,6 @@
+Thu Apr 25 06:34:29 UTC 2019 - Илья Индиго <ilya@xxxxxxxxxx>
+
+- Update to mednafen 1.22.2
+ * ChangeLog https://mednafen.github.io/documentation/ChangeLog.txt
+
+-------------------------------------------------------------------

Old:
----
mednafen-1.22.1.tar.xz

New:
----
mednafen-1.22.2.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mednafen.spec ++++++
--- /var/tmp/diff_new_pack.MBQsp0/_old 2019-04-30 13:03:41.442079794 +0200
+++ /var/tmp/diff_new_pack.MBQsp0/_new 2019-04-30 13:03:41.442079794 +0200
@@ -17,7 +17,7 @@


Name: mednafen
-Version: 1.22.1
+Version: 1.22.2
Release: 0
Summary: Multiple video game console emulator
License: GPL-2.0-only

++++++ mednafen-1.22.1.tar.xz -> mednafen-1.22.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/ChangeLog new/mednafen/ChangeLog
--- old/mednafen/ChangeLog 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/ChangeLog 2019-04-23 23:54:58.000000000 +0200
@@ -1,3 +1,27 @@
+-- 1.22.2: --
+
+April 23, 2019:
+ PSX: Fixed a regression introduced in 1.22.0-UNSTABLE that broke a few
PS1 games(e.g. SimCity 2000 and Rise 2).
+
+ Fixed issues with inline functions in the QuickLZ code that could cause
linker errors when compiling with optimizations disabled.
+
+April 14, 2019:
+ Apple2: Added basic WOZ 2.0 disk image support.
+
+April 13, 2019:
+ NGP: Fixed a sequence point rule violation that could cause "Gals'
Fighters" to malfunction when Mednafen was compiled with clang,
+ per tip from stellarporter.
+
+ SS: Added the European release of "Theme Park" to the internal database
of games to use the data cache read bypass kludge with,
+ to fix a crash/hang during the intro FMV.
+
+ Lynx: Fixed an old heap buffer overflow bug that could be triggered if
the emulated game set up registers and RAM in a
+ certain way.
+
+March 18, 2019:
+ PCE: Fixed an old bug(looks like from around a decade ago) in the HES
playback code; it caused periodic high IRQ latency,
+ which resulted in timer IRQ-driven DDA playback sounding rougher than
it should have.
+
-- 1.22.1: --

January 27, 2019:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/apple2.html
new/mednafen/Documentation/apple2.html
--- old/mednafen/Documentation/apple2.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/apple2.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Apple II/II+ Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_mai">MAI System and Disks Configuration
File</a><ul></ul></li><li><a href="#Section_floppies">Floppy Disk
Images</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_input">Input</a><ul><li><a
href="#Section_joystick_gamepad">Joystick/Gamepad</a><ul></ul></li><li><a
href="#Section_atari_joystick">Atari Joystick</a><ul></ul></li><li><a
href="#Section_keyboard">Apple II/II+ Keyboard</a><ul><li><a
href="#Section_default_keys_keyboard">Default
Mappings</a><ul></ul></li></ul></li></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
@@ -173,7 +173,7 @@
<tr><td>d13</td><td>116480</td><td>Apple DOS 13 sectors/track</td></tr>
<tr><td>dsk<br>do</td><td>143360</td><td>Apple DOS-order 16
sectors/track</td></tr>
<tr><td>po</td><td>143360</td><td>Apple ProDOS-order 16
sectors/track</td></tr>
-
<tr><td>woz</td><td><i>(variable)</i></td><td>http://evolutioninteractive.com/applesauce/woz_reference.pdf</td></tr>
+
<tr><td>woz</td><td><i>(variable)</i></td><td>https://applesaucefdc.com/woz/</td></tr>
</table>
</p>

@@ -260,6 +260,7 @@
<li>Ardy</li>
<li>Bandits <i>(press CTRL+SHIFT+P)</i></li>
<li>Beer Run <i>(press CTRL+SHIFT+P on control method screen)</i></li>
+ <li>Berzap</li>
<li>Borg</li>
<li>Borrowed Time</li>
<li>Boulder Dash</li>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/apple2.php
new/mednafen/Documentation/apple2.php
--- old/mednafen/Documentation/apple2.php 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/apple2.php 2019-04-23 23:54:58.000000000
+0200
@@ -167,7 +167,7 @@
<tr><td>d13</td><td>116480</td><td>Apple DOS 13 sectors/track</td></tr>
<tr><td>dsk<br>do</td><td>143360</td><td>Apple DOS-order 16
sectors/track</td></tr>
<tr><td>po</td><td>143360</td><td>Apple ProDOS-order 16
sectors/track</td></tr>
-
<tr><td>woz</td><td><i>(variable)</i></td><td>http://evolutioninteractive.com/applesauce/woz_reference.pdf</td></tr>
+
<tr><td>woz</td><td><i>(variable)</i></td><td>https://applesaucefdc.com/woz/</td></tr>
</table>
</p>

@@ -301,6 +301,7 @@
<li>Ardy</li>
<li>Bandits <i>(press CTRL+SHIFT+P)</i></li>
<li>Beer Run <i>(press CTRL+SHIFT+P on control method screen)</i></li>
+ <li>Berzap</li>
<li>Borg</li>
<li>Borrowed Time</li>
<li>Boulder Dash</li>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/cdplay.html
new/mednafen/Documentation/cdplay.html
--- old/mednafen/Documentation/cdplay.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/cdplay.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Saturn Sound Format Player Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/gb.html
new/mednafen/Documentation/gb.html
--- old/mednafen/Documentation/gb.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/gb.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Game Boy (Color) Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/gba.html
new/mednafen/Documentation/gba.html
--- old/mednafen/Documentation/gba.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/gba.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Game Boy Advance Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul><li><a
href="#Section_bios">BIOS</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_backupmem_type">Backup Memory
Type</a><ul></ul></li></ul></li><li><a href="#Section_default_keys">Default Key
Assignments</a><ul></ul></li><li><a href="#Settings+Reference">Settings
Reference</a><ul></ul></li></ul><hr width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/gg.html
new/mednafen/Documentation/gg.html
--- old/mednafen/Documentation/gg.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/gg.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Game Gear Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/lynx.html
new/mednafen/Documentation/lynx.html
--- old/mednafen/Documentation/lynx.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/lynx.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Atari Lynx Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/md.html
new/mednafen/Documentation/md.html
--- old/mednafen/Documentation/md.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/md.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Genesis/MegaDrive Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/mednafen.html
new/mednafen/Documentation/mednafen.html
--- old/mednafen/Documentation/mednafen.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/mednafen.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,10 +9,10 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>General Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
- <ul><li><a href="#Section_introduction">Introduction</a><ul><li><a
href="#Section_base_directory">Base Directory</a><ul></ul></li></ul></li><li><a
href="#Section_core_features">Core Features</a><ul><li><a
href="#Section_cdrom_emulation">CD Emulation</a><ul><li><a
href="#Section_cd_images">Compact Disc Images</a><ul></ul></li><li><a
href="#Section_multicd_games">Multiple-CD Games</a><ul></ul></li><li><a
href="#Section_cdg">CD+G</a><ul></ul></li><li><a
href="#Section_photocdportfolio">PhotoCD
Portfolio</a><ul></ul></li></ul></li></ul></li><li><a
href="#Section_security">Security Issues</a><ul><li><a
href="#Section_security_savestates">Save States</a><ul></ul></li><li><a
href="#Section_security_includes">CD images and PSF(PSF1, GSF, etc.)
Files</a><ul></ul></li><li><a href="#Section_security_netplay">Network
Play</a><ul></ul></li></ul></li><li><a href="#Section_using">Using
Mednafen</a><ul><li><a href="#Section_key_assignments">Key
Assignments</a><ul></ul></li><li><a href="#Section_input_grabbing">Input
Grabbing</a><ul></ul></li><li><a href="#Section_remapping_input">Remapping
Buttons and Keys</a><ul></ul></li><li><a
href="#Section_command_line">Command-line</a><ul></ul></li><li><a
href="#Section_config_files">Configuration Files</a><ul></ul></li><li><a
href="#Global+Settings+Reference">Global Settings
Reference</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_ips_patching">Automatic IPS
Patching</a><ul></ul></li></ul></li><li><a href="#Section_advanced">Advanced
Usage</a><ul><li><a href="#Section_lag">Minimizing video/audio/input
Lag</a><ul><li><a href="#Section_lag_hardware">Hardware
Selection</a><ul></ul></li><li><a href="#Section_minimize_video_lag">Settings
to Minimize Video Lag</a><ul></ul></li><li><a
href="#Section_minimize_audio_lag">Settings to Minimize Audio
Lag</a><ul></ul></li></ul></li><li><a
href="#Section_input_mapping_format">Input Mapping Settings
Format</a><ul><li><a
href="#Section_ims_keyboard">Keyboard</a><ul></ul></li><li><a
href="#Section_ims_mouse">Mouse</a><ul></ul></li><li><a
href="#Section_ims_joystick">Joystick</a><ul></ul></li></ul></li></ul></li><li><a
href="#Section_troubleshooting">Troubleshooting and Common
Solutions</a><ul><li><a href="#Section_troubleshooting_nosoundlinux">No sound
output on Linux.</a><ul></ul></li><li><a
href="#Section_troubleshooting_configcrlf">Configuration file is a mess in
Notepad in Windows.</a><ul></ul></li></ul></li><li>Emulation Module
Documentation<ul><li><a href="apple2.html">Apple II/II+</a> [apple2]<li><a
href="lynx.html">Atari Lynx</a> [lynx]<li><a href="cdplay.html">CD-DA
Player</a> [cdplay]<li><a href="gb.html">GameBoy (Color)</a> [gb]<li><a
href="gba.html">GameBoy Advance</a> [gba]<li><a href="ngp.html">Neo Geo Pocket
(Color)</a> [ngp]<li><a href="nes.html">Nintendo Entertainment
System/Famicom</a> [nes]<li><a href="pce.html">PC Engine (CD)/TurboGrafx 16
(CD)/SuperGrafx</a> [pce]<li><a href="pce_fast.html">PC Engine (CD)/TurboGrafx
16 (CD)/SuperGrafx</a> [pce_fast]<li><a href="pcfx.html">PC-FX</a> [pcfx]<li><a
href="gg.html">Sega Game Gear</a> [gg]<li><a href="md.html">Sega
Genesis/MegaDrive</a> [md]<li><a href="sms.html">Sega Master System</a>
[sms]<li><a href="ss.html">Sega Saturn</a> [ss]<li><a href="ssfplay.html">Sega
Saturn Sound Format Player</a> [ssfplay]<li><a href="psx.html">Sony
PlayStation</a> [psx]<li><a href="snes_faust.html">Super Nintendo Entertainment
System/Super Famicom</a> [snes_faust]<li><a href="snes.html">Super Nintendo
Entertainment System/Super Famicom</a> [snes]<li><a href="vb.html">Virtual
Boy</a> [vb]<li><a href="wswan.html">WonderSwan</a> [wswan]</ul></li><li><a
href="debugger.html">Debugger</a><li><a href="netplay.html">Network
Play</a><li><a href="#Section_legal">Licenses, Copyright Notices, and Code
Credits</a><ul><li><a
href="#Section_legal_libmpcdec">libmpcdec</a><ul></ul></li><li><a
href="#Section_legal_tremor">Tremor</a><ul></ul></li><li><a
href="#Section_legal_minilzo">MiniLZO</a><ul></ul></li><li><a
href="#Section_legal_quicklz">QuickLZ</a><ul></ul></li><li><a
href="#Section_legal_trio">trio</a><ul></ul></li><li><a
href="#Section_legal_speex">Speex Resampler</a><ul></ul></li><li><a
href="#Section_legal_ffmpeg">ffmpeg cputest</a><ul></ul></li><li><a
href="#Section_legal_dvdisaster">CD-ROM data correction
code</a><ul></ul></li><li><a
href="#Section_legal_scale2x">Scale2x</a><ul></ul></li><li><a
href="#Section_legal_hqnx">hq2x, hq3x, hq4x</a><ul></ul></li><li><a
href="#Section_legal_2xsai">2xSaI</a><ul></ul></li><li><a
href="#Section_legal_sabr">SABR v3.0 Shader</a><ul></ul></li><li><a
href="#Section_legal_nes_ntsc">nes_ntsc</a><ul></ul></li><li><a
href="#Section_legal_gb_snd_emu">Gb_Snd_Emu</a><ul></ul></li><li><a
href="#Section_legal_blip_buffer">Blip_Buffer</a><ul></ul></li><li><a
href="#Section_legal_sms_snd_emu">Sms_Snd_Emu(base for T6W28_Apu NGP
code)</a><ul></ul></li><li><a href="#Section_legal_v810">V810
Emulator</a><ul></ul></li><li><a href="#Section_legal_fuse">Fuse Z80 emulation
code</a><ul></ul></li><li><a href="#Section_legal_emu2413">VRC7 Sound
Emulation</a><ul></ul></li><li><a href="#Section_legal_v30mz">NEC V30MZ
Emulator</a><ul></ul></li><li><a href="#Section_legal_v30mzdis">NEC V30MZ
disassembler(modified BOCHS x86 disassembler)</a><ul></ul></li><li><a
href="#Section_legal_emu2413_sms">EMU2413(used in SMS
emulation)</a><ul></ul></li><li><a href="#Section_legal_ym2612">YM2612
Emulator</a><ul></ul></li><li><a href="#Section_legal_svp_ssp16">Sega Genesis
SVP/SSP16 Emulator</a><ul></ul></li><li><a href="#Section_legal_pc2e">PC2e
(Used in portions of PC Engine CD emulation)</a><ul></ul></li><li><a
href="#Section_legal_handy">Handy</a><ul></ul></li><li><a
href="#Section_legal_vba">VisualBoyAdvance GameBoy and GBA
code</a><ul></ul></li><li><a href="#Section_legal_neopop">NeoPop Neo Geo Pocket
(Color) Code</a><ul></ul></li><li><a
href="#Section_legal_cygne">Cygne</a><ul></ul></li><li><a
href="#Section_legal_fceu">FCE Ultra</a><ul></ul></li><li><a
href="#Section_legal_sms_plus">SMS Plus</a><ul></ul></li><li><a
href="#Section_legal_genesis_plus">Genesis Plus</a><ul></ul></li><li><a
href="#Section_legal_genesis_plus_gx">Genesis Plus
GX</a><ul></ul></li></ul></li></ul><hr width="100%">
+ <ul><li><a href="#Section_introduction">Introduction</a><ul><li><a
href="#Section_base_directory">Base Directory</a><ul></ul></li></ul></li><li><a
href="#Section_core_features">Core Features</a><ul><li><a
href="#Section_cdrom_emulation">CD Emulation</a><ul><li><a
href="#Section_cd_images">Compact Disc Images</a><ul></ul></li><li><a
href="#Section_multicd_games">Multiple-CD Games</a><ul></ul></li><li><a
href="#Section_cdg">CD+G</a><ul></ul></li><li><a
href="#Section_photocdportfolio">PhotoCD
Portfolio</a><ul></ul></li></ul></li></ul></li><li><a
href="#Section_security">Security Issues</a><ul><li><a
href="#Section_security_savestates">Save States</a><ul></ul></li><li><a
href="#Section_security_includes">CD images and PSF(PSF1, GSF, etc.)
Files</a><ul></ul></li><li><a href="#Section_security_netplay">Network
Play</a><ul></ul></li></ul></li><li><a href="#Section_using">Using
Mednafen</a><ul><li><a href="#Section_key_assignments">Key
Assignments</a><ul></ul></li><li><a href="#Section_input_grabbing">Input
Grabbing</a><ul></ul></li><li><a href="#Section_remapping_input">Remapping
Buttons and Keys</a><ul></ul></li><li><a
href="#Section_command_line">Command-line</a><ul></ul></li><li><a
href="#Section_config_files">Configuration Files</a><ul></ul></li><li><a
href="#Global+Settings+Reference">Global Settings
Reference</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_ips_patching">Automatic IPS
Patching</a><ul></ul></li></ul></li><li><a href="#Section_advanced">Advanced
Usage</a><ul><li><a href="#Section_lag">Minimizing video/audio/input
Lag</a><ul><li><a href="#Section_lag_hardware">Hardware
Selection</a><ul></ul></li><li><a href="#Section_minimize_video_lag">Settings
to Minimize Video Lag</a><ul></ul></li><li><a
href="#Section_minimize_audio_lag">Settings to Minimize Audio
Lag</a><ul></ul></li></ul></li><li><a
href="#Section_input_mapping_format">Input Mapping Settings
Format</a><ul><li><a
href="#Section_ims_keyboard">Keyboard</a><ul></ul></li><li><a
href="#Section_ims_mouse">Mouse</a><ul></ul></li><li><a
href="#Section_ims_joystick">Joystick</a><ul></ul></li></ul></li></ul></li><li><a
href="#Section_troubleshooting">Troubleshooting and Common
Solutions</a><ul><li><a href="#Section_troubleshooting_nosoundlinux">No sound
output on Linux.</a><ul></ul></li><li><a
href="#Section_troubleshooting_configcrlf">Configuration file is a mess in
Notepad in Windows.</a><ul></ul></li></ul></li><li>Emulation Module
Documentation<ul><li><a href="apple2.html">Apple II/II+</a> [apple2]<li><a
href="lynx.html">Atari Lynx</a> [lynx]<li><a href="cdplay.html">CD-DA
Player</a> [cdplay]<li><a href="gb.html">GameBoy (Color)</a> [gb]<li><a
href="gba.html">GameBoy Advance</a> [gba]<li><a href="ngp.html">Neo Geo Pocket
(Color)</a> [ngp]<li><a href="nes.html">Nintendo Entertainment
System/Famicom</a> [nes]<li><a href="pce.html">PC Engine (CD)/TurboGrafx 16
(CD)/SuperGrafx</a> [pce]<li><a href="pce_fast.html">PC Engine (CD)/TurboGrafx
16 (CD)/SuperGrafx</a> [pce_fast]<li><a href="pcfx.html">PC-FX</a> [pcfx]<li><a
href="gg.html">Sega Game Gear</a> [gg]<li><a href="md.html">Sega
Genesis/MegaDrive</a> [md]<li><a href="sms.html">Sega Master System</a>
[sms]<li><a href="ss.html">Sega Saturn</a> [ss]<li><a href="ssfplay.html">Sega
Saturn Sound Format Player</a> [ssfplay]<li><a href="psx.html">Sony
PlayStation</a> [psx]<li><a href="snes_faust.html">Super Nintendo Entertainment
System/Super Famicom</a> [snes_faust]<li><a href="snes.html">Super Nintendo
Entertainment System/Super Famicom</a> [snes]<li><a href="vb.html">Virtual
Boy</a> [vb]<li><a href="wswan.html">WonderSwan</a> [wswan]</ul></li><li><a
href="debugger.html">Debugger</a><li><a href="netplay.html">Network
Play</a><li><a href="#Section_legal">Licenses, Copyright Notices, and Code
Credits</a><ul><li><a
href="#Section_legal_libmpcdec">libmpcdec</a><ul></ul></li><li><a
href="#Section_legal_tremor">Tremor</a><ul></ul></li><li><a
href="#Section_legal_minilzo">MiniLZO</a><ul></ul></li><li><a
href="#Section_legal_quicklz">QuickLZ</a><ul></ul></li><li><a
href="#Section_legal_trio">trio</a><ul></ul></li><li><a
href="#Section_legal_speex">Speex Resampler</a><ul></ul></li><li><a
href="#Section_legal_ffmpeg">ffmpeg cputest</a><ul></ul></li><li><a
href="#Section_legal_dvdisaster">CD-ROM data correction
code</a><ul></ul></li><li><a href="#Section_legal_cdrdao">CD-ROM L-EC
generation code</a><ul></ul></li><li><a
href="#Section_legal_scale2x">Scale2x</a><ul></ul></li><li><a
href="#Section_legal_hqnx">hq2x, hq3x, hq4x</a><ul></ul></li><li><a
href="#Section_legal_2xsai">2xSaI</a><ul></ul></li><li><a
href="#Section_legal_sabr">SABR v3.0 Shader</a><ul></ul></li><li><a
href="#Section_legal_nes_ntsc">nes_ntsc</a><ul></ul></li><li><a
href="#Section_legal_gb_snd_emu">Gb_Snd_Emu</a><ul></ul></li><li><a
href="#Section_legal_blip_buffer">Blip_Buffer</a><ul></ul></li><li><a
href="#Section_legal_sms_snd_emu">Sms_Snd_Emu(base for T6W28_Apu NGP
code)</a><ul></ul></li><li><a href="#Section_legal_v810">V810
Emulator</a><ul></ul></li><li><a href="#Section_legal_fuse">Fuse Z80 emulation
code</a><ul></ul></li><li><a href="#Section_legal_emu2413">VRC7 Sound
Emulation</a><ul></ul></li><li><a href="#Section_legal_v30mz">NEC V30MZ
Emulator</a><ul></ul></li><li><a href="#Section_legal_v30mzdis">NEC V30MZ
disassembler(modified BOCHS x86 disassembler)</a><ul></ul></li><li><a
href="#Section_legal_emu2413_sms">EMU2413(used in SMS
emulation)</a><ul></ul></li><li><a href="#Section_legal_ym2612">YM2612
Emulator</a><ul></ul></li><li><a href="#Section_legal_svp_ssp16">Sega Genesis
SVP/SSP16 Emulator</a><ul></ul></li><li><a href="#Section_legal_pc2e">PC2e
(Used in portions of PC Engine CD emulation)</a><ul></ul></li><li><a
href="#Section_legal_handy">Handy</a><ul></ul></li><li><a
href="#Section_legal_vba">VisualBoyAdvance GameBoy and GBA
code</a><ul></ul></li><li><a href="#Section_legal_neopop">NeoPop Neo Geo Pocket
(Color) Code</a><ul></ul></li><li><a
href="#Section_legal_cygne">Cygne</a><ul></ul></li><li><a
href="#Section_legal_fceu">FCE Ultra</a><ul></ul></li><li><a
href="#Section_legal_sms_plus">SMS Plus</a><ul></ul></li><li><a
href="#Section_legal_genesis_plus">Genesis Plus</a><ul></ul></li><li><a
href="#Section_legal_genesis_plus_gx">Genesis Plus
GX</a><ul></ul></li></ul></li></ul><hr width="100%">
<h2><a name="Section_introduction">Introduction</a></h2><p></p> <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>
@@ -832,6 +832,29 @@
*/
</pre>
</blockquote>
+<hr width="75%">
+<h3><a name="Section_legal_cdrdao">CD-ROM L-EC generation
code</a></h3><p></p><blockquote>
+<pre>
+/* cdrdao - write audio CD-Rs in disc-at-once mode
+ *
+ * Copyright (C) 1998-2002 Andreas Mueller <andreas@xxxxxxxx>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+</pre>
+</blockquote>
<hr width="75%">
<h3><a name="Section_legal_scale2x"><a
href="http://scale2x.sf.net/";>Scale2x</a></a></h3><p></p><blockquote>
<pre>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/mednafen.php
new/mednafen/Documentation/mednafen.php
--- old/mednafen/Documentation/mednafen.php 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/mednafen.php 2019-04-23 23:54:58.000000000
+0200
@@ -802,6 +802,31 @@
</blockquote>
<?php EndSection(); ?>

+<?php BeginSection("CD-ROM L-EC generation code", "Section_legal_cdrdao"); ?>
+<blockquote>
+<pre>
+/* cdrdao - write audio CD-Rs in disc-at-once mode
+ *
+ * Copyright (C) 1998-2002 Andreas Mueller <andreas@xxxxxxxx>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+</pre>
+</blockquote>
+<?php EndSection(); ?>
+
<?php BeginSection("Scale2x", "Section_legal_scale2x",
"http://scale2x.sf.net/";); ?>
<blockquote>
<pre>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/modules.def
new/mednafen/Documentation/modules.def
--- old/mednafen/Documentation/modules.def 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/modules.def 2019-04-23 23:54:58.000000000
+0200
@@ -1,4 +1,4 @@
-1.22.1
+1.22.2
apple2
Apple II/II+
250
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/nes.html
new/mednafen/Documentation/nes.html
--- old/mednafen/Documentation/nes.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/nes.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Nintendo Entertainment System/Famicom Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_input">Input</a><ul><li><a
href="#Section_input_zapper">Zapper</a><ul></ul></li></ul></li><li><a
href="#Section_formats">File Formats</a><ul><li><a
href="#Section_formats_ines">iNES Format</a><ul></ul></li><li><a
href="#Section_formats_unif">UNIF</a><ul></ul></li></ul></li><li><a
href="#Section_fds">Famicom Disk System</a><ul></ul></li><li><a
href="#Section_game_genie">Game Genie</a><ul></ul></li><li><a
href="#Section_vs_unisystem">VS Unisystem</a><ul></ul></li></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul><li><a
href="#Section_default_keys_vsuni">VS Unisystem</a><ul></ul></li><li><a
href="#Section_default_keys_fds">Famicom Disk System</a><ul></ul></li><li><a
href="#Section_default_keys_barcode">Barcode Readers</a><ul></ul></li><li><a
href="#Section_default_keys_gamepad">Game Pad</a><ul></ul></li><li><a
href="#Section_default_keys_powerpad">Power Pad</a><ul></ul></li><li><a
href="#Section_default_keys_fkb">Family Keyboard</a><ul></ul></li><li><a
href="#Section_default_keys_hypershot">HyperShot
Controller</a><ul></ul></li><li><a href="#Section_default_keys_mahjong">Mahjong
Controller</a><ul></ul></li><li><a href="#Section_default_keys_partytap">Party
Tap Controller</a><ul></ul></li></ul></li><li><a
href="#Section_hax">Game-specific Emulation Hacks</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li><li><a
href="#Section_credits">Credits</a><ul></ul></li></ul><hr width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/netplay.html
new/mednafen/Documentation/netplay.html
--- old/mednafen/Documentation/netplay.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/netplay.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Netplay Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_server_setup">Setting up the Server</a><ul></ul></li><li><a
href="#Section_using_console">Using Mednafen's netplay
console</a><ul></ul></li></ul><hr width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/ngp.html
new/mednafen/Documentation/ngp.html
--- old/mednafen/Documentation/ngp.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/ngp.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Neo Geo Pocket (Color) Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/pce.html
new/mednafen/Documentation/pce.html
--- old/mednafen/Documentation/pce.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/pce.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>PC Engine/TurboGrafx 16 (CD)/SuperGrafx
Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Section_advanced">Advanced Usage</a><ul><li><a
href="#Section_advanced_softreset">Accidental Soft
Resets</a><ul></ul></li><li><a href="#Section_advanced_spritelimit">Sprite
Flickering</a><ul></ul></li><li><a href="#Section_cdvolbalance">Obnoxious Sound
Effects in CD Games</a><ul></ul></li></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
@@ -102,7 +102,7 @@
<tr class="RowB"><td class="ColA"><b>pce.input.port5</b></td><td
class="ColB">enum</td><td class="ColC">none<br>gamepad<br>mouse</td><td
class="ColD">gamepad</td><td class="ColE"><a name="pce.input.port5">Input
device for Port 5</a><ul><li><b>none</b> - none<br></li><br><li><b>gamepad</b>
- Gamepad<br></li><br><li><b>mouse</b> - Mouse<br></li></ul></td></tr><tr><td
class="RowSpacer" colspan="5">&nbsp</td></tr>
<tr class="RowA"><td class="ColA">pce.mouse_sensitivity</td><td
class="ColB">real</td><td class="ColC"> <i>through</i> </td><td
class="ColD">0.50</td><td class="ColE"><a name="pce.mouse_sensitivity">Emulated
mouse sensitivity.</a></td></tr><tr><td class="RowSpacer"
colspan="5">&nbsp</td></tr>
<tr class="RowB"><td class="ColA">pce.nospritelimit</td><td
class="ColB">boolean</td><td class="ColC">0<br>1</td><td class="ColD">0</td><td
class="ColE"><a name="pce.nospritelimit">Remove 16-sprites-per-scanline
hardware limit.</a><p>WARNING: Enabling this option may cause undesirable
graphics glitching on some games(such as "Bloody Wolf").</p></td></tr><tr><td
class="RowSpacer" colspan="5">&nbsp</td></tr>
-<tr class="RowA"><td class="ColA">pce.psgrevision</td><td
class="ColB">enum</td><td class="ColC">huc6280<br>huc6280a<br>match</td><td
class="ColD">match</td><td class="ColE"><a name="pce.psgrevision">Select PSG
revision.</a><p>WARNING: HES playback will always use the "huc6280a" revision
if this setting is set to "match", since HES playback is always done with
SuperGrafx emulation enabled.</p><ul><li><b>huc6280</b> - HuC6280<br>HuC6280 as
found in the original PC Engine.</li><br><li><b>huc6280a</b> -
HuC6280A<br>HuC6280A as found in the SuperGrafx and CoreGrafx I. Provides
proper channel amplitude centering, but may cause clicking in a few games
designed with the original HuC6280's sound characteristics in
mind.</li><br><li><b>match</b> - Match emulation mode.<br>Selects "huc6280" for
non-SuperGrafx mode, and "huc6280a" for SuperGrafx(full)
mode.</li></ul></td></tr><tr><td class="RowSpacer" colspan="5">&nbsp</td></tr>
+<tr class="RowA"><td class="ColA">pce.psgrevision</td><td
class="ColB">enum</td><td class="ColC">huc6280<br>huc6280a<br>match</td><td
class="ColD">match</td><td class="ColE"><a name="pce.psgrevision">Select PSG
revision.</a><p>WARNING: HES playback will always use the "huc6280a" revision
if this setting is set to "match", since HES playback is always done with
SuperGrafx emulation enabled.</p><ul><li><b>huc6280</b> - HuC6280<br>HuC6280 as
found in the original PC Engine.</li><br><li><b>huc6280a</b> -
HuC6280A<br>HuC6280A as found in the SuperGrafx and CoreGrafx I. Provides
proper channel amplitude centering. Many games will have less clicking with
the HuC6280A, but it may cause clicking in a few games designed with the
original HuC6280's sound characteristics in mind.</li><br><li><b>match</b> -
Match emulation mode.<br>Selects "huc6280" for non-SuperGrafx mode, and
"huc6280a" for SuperGrafx(full) mode.</li></ul></td></tr><tr><td
class="RowSpacer" colspan="5">&nbsp</td></tr>
<tr class="RowB"><td class="ColA">pce.resamp_quality</td><td
class="ColB">integer</td><td class="ColC">0 <i>through</i> 5</td><td
class="ColD">3</td><td class="ColE"><a name="pce.resamp_quality">Sound
quality.</a><p>Higher values correspond to better SNR and better preservation
of higher frequencies("brightness"), at the cost of increased computational
complexity and a negligible increase in latency.<br>
<br>
Higher values will also slightly increase the probability of sample
clipping(relevant if Mednafen's volume control settings are set too high), due
to increased (time-domain) ringing.</p></td></tr><tr><td class="RowSpacer"
colspan="5">&nbsp</td></tr>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/pce_fast.html
new/mednafen/Documentation/pce_fast.html
--- old/mednafen/Documentation/pce_fast.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/pce_fast.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>PC Engine (CD)/TurboGrafx 16 (CD)/SuperGrafx
Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/pcfx.html
new/mednafen/Documentation/pcfx.html
--- old/mednafen/Documentation/pcfx.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/pcfx.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>PC-FX Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/psx.html
new/mednafen/Documentation/psx.html
--- old/mednafen/Documentation/psx.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/psx.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sony PlayStation Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_analog_range">Analog Sticks Range Issues</a><ul></ul></li><li><a
href="#Section_multitap">Multitap Usage</a><ul></ul></li><li><a
href="#Section_default_keys">Default Input Mappings</a><ul><li><a
href="#Section_default_keys_gamepad">Digital Gamepad on Virtual Port
1</a><ul></ul></li></ul></li><li><a href="#Settings+Reference">Settings
Reference</a><ul></ul></li></ul><hr width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/settings.def
new/mednafen/Documentation/settings.def
--- old/mednafen/Documentation/settings.def 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/settings.def 2019-04-23 23:54:58.000000000
+0200
@@ -15210,7 +15210,7 @@
HuC6280 as found in the original PC Engine.
huc6280a
HuC6280A
-HuC6280A as found in the SuperGrafx and CoreGrafx I. Provides proper channel
amplitude centering, but may cause clicking in a few games designed with the
original HuC6280\'s sound characteristics in mind.
+HuC6280A as found in the SuperGrafx and CoreGrafx I. Provides proper channel
amplitude centering. Many games will have less clicking with the HuC6280A, but
it may cause clicking in a few games designed with the original HuC6280\'s
sound characteristics in mind.
match
Match emulation mode.
Selects \"huc6280\" for non-SuperGrafx mode, and \"huc6280a\" for
SuperGrafx(full) mode.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/sms.html
new/mednafen/Documentation/sms.html
--- old/mednafen/Documentation/sms.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/sms.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Master System Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/snes.html
new/mednafen/Documentation/snes.html
--- old/mednafen/Documentation/snes.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/snes.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Super Nintendo Entertainment System/Super Famicom
Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/snes_faust.html
new/mednafen/Documentation/snes_faust.html
--- old/mednafen/Documentation/snes_faust.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/snes_faust.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Super Nintendo Entertainment System/Super Famicom
Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/ss.html
new/mednafen/Documentation/ss.html
--- old/mednafen/Documentation/ss.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/ss.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Saturn Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_firmware_bios">Firmware/BIOS</a><ul></ul></li><li><a
href="#Section_default_keys">Default Input Mappings</a><ul><li><a
href="#Section_default_keys_gamepad">Digital Gamepad on Virtual Port
1</a><ul></ul></li><li><a href="#Section_default_keys_mouse">Mouse on Virtual
Ports 1-12</a><ul></ul></li><li><a href="#Section_default_keys_gun">Light Gun
on Virtual Ports 1-12</a><ul></ul></li></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/ssfplay.html
new/mednafen/Documentation/ssfplay.html
--- old/mednafen/Documentation/ssfplay.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/ssfplay.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Sega Saturn Sound Format Player Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/vb.html
new/mednafen/Documentation/vb.html
--- old/mednafen/Documentation/vb.html 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/Documentation/vb.html 2019-04-23 23:54:58.000000000 +0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>Virtual Boy Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_custom_palettes">Custom Palettes</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/Documentation/wswan.html
new/mednafen/Documentation/wswan.html
--- old/mednafen/Documentation/wswan.html 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/Documentation/wswan.html 2019-04-23 23:54:58.000000000
+0200
@@ -9,7 +9,7 @@
<body>
<center><h1><img alt="Mednafen" src="mednafen.png" width="696"
height="204"></h1></center>
<center><h1>WonderSwan Documentation</h1></center>
- <center><i>Last updated January 27, 2019<br>Valid as of 1.22.1</i></center>
+ <center><i>Last updated April 23, 2019<br>Valid as of 1.22.2</i></center>
<p></p>
<b>Table of Contents:</b>
<ul><li><a href="#Section_intro">Introduction</a><ul></ul></li><li><a
href="#Section_default_keys">Default Key Assignments</a><ul></ul></li><li><a
href="#Section_hax">Game-specific Emulation Hacks</a><ul></ul></li><li><a
href="#Settings+Reference">Settings Reference</a><ul></ul></li></ul><hr
width="100%">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/configure new/mednafen/configure
--- old/mednafen/configure 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/configure 2019-04-23 23:54:58.000000000 +0200
@@ -4365,8 +4365,8 @@
#
# Avoid trailing and leading zeroes in the decimal version components to avoid
confusing not-so-learned people.
#
-MEDNAFEN_VERSION='1.22.1'
-MEDNAFEN_VERSION_NUMERIC=0x00102201
+MEDNAFEN_VERSION='1.22.2'
+MEDNAFEN_VERSION_NUMERIC=0x00102202
# 0xJJJnnnRR

# Make sure we can run config.sub.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/configure.ac new/mednafen/configure.ac
--- old/mednafen/configure.ac 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/configure.ac 2019-04-23 23:54:58.000000000 +0200
@@ -6,8 +6,8 @@
#
# Avoid trailing and leading zeroes in the decimal version components to avoid
confusing not-so-learned people.
#
-MEDNAFEN_VERSION='1.22.1'
-MEDNAFEN_VERSION_NUMERIC=0x00102201
+MEDNAFEN_VERSION='1.22.2'
+MEDNAFEN_VERSION_NUMERIC=0x00102202
# 0xJJJnnnRR

AC_CANONICAL_HOST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/apple2/disk2.inc
new/mednafen/src/apple2/disk2.inc
--- old/mednafen/src/apple2/disk2.inc 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/apple2/disk2.inc 2019-04-23 23:54:58.000000000 +0200
@@ -38,7 +38,7 @@
enum : unsigned { num_tracks = 160 };
//enum : unsigned { samples_per_track = 1431818 };
enum : unsigned { min_bits_per_track = 46000 };
-enum : unsigned { max_bits_per_track = 53168 };
+enum : unsigned { max_bits_per_track = 56048 };

static uint8 BootROM[256];
static uint8 SequencerROM[256];
@@ -868,7 +868,8 @@
}
}

-static const uint8 woz_header_magic[8] = { 0x57, 0x4F, 0x5A, 0x31, 0xFF, 0x0A,
0x0D, 0x0A };
+static const uint8 woz_header_magic[8] = { 0x57, 0x4F, 0x5A, 0x31, 0xFF,
0x0A, 0x0D, 0x0A };
+static const uint8 woz2_header_magic[8] = { 0x57, 0x4F, 0x5A, 0x32, 0xFF,
0x0A, 0x0D, 0x0A };

static void LoadWOZ(Stream* sp, FloppyDisk* disk)
{
@@ -876,13 +877,18 @@

MDFN_printf(_("Parsing WOZ-format disk image...\n"));

- if(sp->read(header, 12, false) != 12 || memcmp(header, woz_header_magic,
sizeof(woz_header_magic)))
+ if(sp->read(header, 12, false) != 12 || (memcmp(header, woz_header_magic,
sizeof(woz_header_magic)) && memcmp(header, woz2_header_magic,
sizeof(woz2_header_magic))))
throw MDFN_Error(0, _("Bad or missing WOZ file header."));
//
+ const bool woz2 = !memcmp(header, woz2_header_magic,
sizeof(woz2_header_magic));
+ //
uint8 disk_type;
uint8 write_protected;
uint8 synchronized;
uint8 cleaned;
+ uint8 optimal_bit_timing = 32;
+ uint16 compat_hw = 0;
+ uint16 req_ram = 0;
//
uint8 chunk_header[8];
unsigned required_chunks = 0;
@@ -922,6 +928,13 @@
MDFN_zapctrlchars(creator);
MDFN_trim(creator);

+ if(woz2)
+ {
+ optimal_bit_timing = info[39];
+ compat_hw = MDFN_de16lsb(&info[40]);
+ req_ram = MDFN_de16lsb(&info[42]);
+ }
+
if(disk_type == 0x02)
throw MDFN_Error(0, _("3.5\" floppy disk images not currently
supported."));

@@ -930,13 +943,40 @@

disk->write_protect = (bool)write_protected;

- MDFN_printf(" INFO:\n");
- MDFN_printf(" Version: %u\n", info_version);
- MDFN_printf(" Disk type: %u\n", disk_type);
- MDFN_printf(" Write protected: %u\n", write_protected);
- MDFN_printf(" Synchronized: %u\n", synchronized);
- MDFN_printf(" Cleaned: %u\n", cleaned);
- MDFN_printf(" Creator: %s\n", creator);
+ MDFN_printf(_(" INFO:\n"));
+ MDFN_printf(_(" Version: %u\n"), info_version);
+ MDFN_printf(_(" Disk type: %u\n"), disk_type);
+ MDFN_printf(_(" Write protected: %u\n"), write_protected);
+ MDFN_printf(_(" Synchronized: %u\n"), synchronized);
+ MDFN_printf(_(" Cleaned: %u\n"), cleaned);
+ MDFN_printf(_(" Creator: %s\n"), creator);
+
+ if(woz2)
+ {
+ static const char* compat_hw_tab[] = { "Apple II", "Apple II+", "Apple
IIe", "Apple IIc", "Apple IIe Enhanced", "Apple IIgs", "Apple IIc Plus", "Apple
III", "Apple III Plus" };
+ std::string compat_hw_str;
+
+ for(size_t i = 0; i < sizeof(compat_hw_tab) / sizeof(compat_hw_tab[0]);
i++)
+ {
+ if(compat_hw & (1U << i))
+ {
+ if(compat_hw_str.size())
+ compat_hw_str += ", ";
+
+ compat_hw_str += compat_hw_tab[i];
+ }
+ }
+
+ if(!compat_hw_str.size())
+ compat_hw_str = _("Unknown");
+
+ MDFN_printf(_(" Optimal bit timing: %u\n"), optimal_bit_timing);
+ MDFN_printf(_(" Compatible hardware: %s\n"), compat_hw_str.c_str());
+ if(!req_ram)
+ MDFN_printf(_(" Required RAM: %s\n"), _("Unknown"));
+ else
+ MDFN_printf(_(" Required RAM: %u KiB\n"), req_ram);
+ }
//
required_chunks |= 1;
}
@@ -963,57 +1003,98 @@
if(sp->tell() != 256)
throw MDFN_Error(0, _("Required chunk \"%s\" is at the wrong offset."),
"TRKS");

- if(chunk_size != num_src_tracks * 6656)
- throw MDFN_Error(0, _("Required chunk \"%s\" is of the wrong size."),
"TRKS");
- //
src_tracks.reset(new FloppyDisk::Track[num_src_tracks]);

MDFN_printf(" TRKS:\n");

- for(unsigned i = 0; i < num_src_tracks; i++)
+ if(woz2)
{
- uint8 trk[6656];
-
- sp->read(trk, 6656);
- //
- const uint16 bytes_used = MDFN_de16lsb(&trk[6646]);
- const uint16 bit_count = MDFN_de16lsb(&trk[6648]);
- const uint16 splice_point = MDFN_de16lsb(&trk[6650]);
- const uint8 splice_nibble = trk[6652];
- const uint8 splice_bit_count = trk[6653];
- const uint16 reserved = MDFN_de16lsb(&trk[6654]);
-
- if(bytes_used > 6646)
- throw MDFN_Error(0, _("Bytes used of TRKS chunk TRK entry %u is larger
than 6646!"), i);
+ std::unique_ptr<uint8[]> index(new uint8[1280]);
+ std::unique_ptr<uint8[]> trk(new uint8[(max_bits_per_track + 7) >> 3]);

- if(bit_count > bytes_used * 8)
- throw MDFN_Error(0, _("Bit count of TRKS chunk TRK entry %u is larger
than the number of bytes used * 8!"), i);
+ sp->read(index.get(), 1280);

- //
- // Sanity check, various assumptions to boost performance break down if
the number of bits is too low or high.
- // Maybe should check if the maximum absolute difference of one track's
bit count compared to another track's bit count
- // is too large too...
- //
- if(bit_count < min_bits_per_track || bit_count > max_bits_per_track)
- throw MDFN_Error(0, _("Bit count(%u) of TRKS chunk TRK entry %u is out of
the acceptable range of %u through %u!"), bit_count, i, min_bits_per_track,
max_bits_per_track);
+ for(unsigned i = 0; i < num_src_tracks; i++)
+ {
+ const uint16 starting_block = MDFN_de16lsb(&index[i * 8 + 0]);
+ const uint16 block_count = MDFN_de16lsb(&index[i * 8 + 2]);
+ const uint32 bit_count = MDFN_de32lsb(&index[i * 8 + 4]);
+
+ if(bit_count > (block_count * 8 * 512))
+ throw MDFN_Error(0, _("Bit count of TRKS chunk TRK entry %u is larger
than the block count * 512 * 8!"), i);
+
+ if(bit_count < min_bits_per_track || bit_count > max_bits_per_track)
+ throw MDFN_Error(0, _("Bit count(%u) of TRKS chunk TRK entry %u is out
of the acceptable range of %u through %u!"), bit_count, i, min_bits_per_track,
max_bits_per_track);
+ //
+ //
+ //
+ sp->seek(starting_block * 512);
+ sp->read(trk.get(), (bit_count + 7) >> 3);
+ //
+ MDFN_printf(_(" Source track %u:\n"), i);
+
+ MDFN_printf(_(" Starting block: %u\n"), starting_block);
+ MDFN_printf(_(" Block count: %u\n"), block_count);
+ MDFN_printf(_(" Bit count: %u\n"), bit_count);
+ //
+ apple2_track_encoder te(&src_tracks[i], bit_count);

- MDFN_printf(" Source track %u:\n", i);
+ for(size_t bi = 0; bi < bit_count; bi++)
+ {
+ te.encode_bit((trk[bi >> 3] >> (0x7 - (bi & 0x7))) & 1);
+ }
+ te.finish();
+ }
+ }
+ else
+ {
+ if(chunk_size != num_src_tracks * 6656)
+ throw MDFN_Error(0, _("Required chunk \"%s\" is of the wrong size."),
"TRKS");

- MDFN_printf(_(" Bytes used: %u\n"), bytes_used);
- MDFN_printf(_(" Bit count: %u\n"), bit_count);
- MDFN_printf(_(" Splice point: %u\n"), splice_point);
- MDFN_printf(_(" Splice nibble: 0x%02x\n"), splice_nibble);
- MDFN_printf(_(" Splice bit count: %u\n"), splice_bit_count);
- MDFN_printf(_(" Reserved: 0x%04x\n"), reserved);
+ for(unsigned i = 0; i < num_src_tracks; i++)
+ {
+ uint8 trk[6656];

- //
- apple2_track_encoder te(&src_tracks[i], bit_count);
+ sp->read(trk, 6656);
+ //
+ const uint16 bytes_used = MDFN_de16lsb(&trk[6646]);
+ const uint16 bit_count = MDFN_de16lsb(&trk[6648]);
+ const uint16 splice_point = MDFN_de16lsb(&trk[6650]);
+ const uint8 splice_nibble = trk[6652];
+ const uint8 splice_bit_count = trk[6653];
+ const uint16 reserved = MDFN_de16lsb(&trk[6654]);
+
+ if(bytes_used > 6646)
+ throw MDFN_Error(0, _("Bytes used of TRKS chunk TRK entry %u is larger
than 6646!"), i);
+
+ if(bit_count > bytes_used * 8)
+ throw MDFN_Error(0, _("Bit count of TRKS chunk TRK entry %u is larger
than the number of bytes used * 8!"), i);
+
+ //
+ // Sanity check, various assumptions to boost performance break down if
the number of bits is too low or high.
+ // Maybe should check if the maximum absolute difference of one track's
bit count compared to another track's bit count
+ // is too large too...
+ //
+ if(bit_count < min_bits_per_track || bit_count > max_bits_per_track)
+ throw MDFN_Error(0, _("Bit count(%u) of TRKS chunk TRK entry %u is out
of the acceptable range of %u through %u!"), bit_count, i, min_bits_per_track,
max_bits_per_track);
+
+ MDFN_printf(_(" Source track %u:\n"), i);
+
+ MDFN_printf(_(" Bytes used: %u\n"), bytes_used);
+ MDFN_printf(_(" Bit count: %u\n"), bit_count);
+ MDFN_printf(_(" Splice point: %u\n"), splice_point);
+ MDFN_printf(_(" Splice nibble: 0x%02x\n"), splice_nibble);
+ MDFN_printf(_(" Splice bit count: %u\n"), splice_bit_count);
+ MDFN_printf(_(" Reserved: 0x%04x\n"), reserved);
+ //
+ apple2_track_encoder te(&src_tracks[i], bit_count);

- for(size_t bi = 0; bi < bit_count; bi++)
- {
- te.encode_bit((trk[bi >> 3] >> (0x7 - (bi & 0x7))) & 1);
+ for(size_t bi = 0; bi < bit_count; bi++)
+ {
+ te.encode_bit((trk[bi >> 3] >> (0x7 - (bi & 0x7))) & 1);
+ }
+ te.finish();
}
- te.finish();
}

for(unsigned i = 0; i < sizeof(tmap); i++)
@@ -1406,7 +1487,7 @@

MDFN_printf("Warning: Detecting Apple II disk image format by contents
and/or size(ext=%s).\n", ext.c_str());

- woz_header_detected = (sp->read(header, 12, false) == 12 && !memcmp(header,
woz_header_magic, sizeof(woz_header_magic)));
+ woz_header_detected = (sp->read(header, 12, false) == 12 && (!memcmp(header,
woz_header_magic, sizeof(woz_header_magic)) || !memcmp(header,
woz2_header_magic, sizeof(woz2_header_magic))));
sp->rewind();

if(woz_header_detected)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/lynx/ram.h new/mednafen/src/lynx/ram.h
--- old/mednafen/src/lynx/ram.h 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/lynx/ram.h 2019-04-23 23:54:58.000000000 +0200
@@ -65,8 +65,8 @@

void Reset(void) MDFN_COLD;

- void Poke(uint32 addr, uint8 data){ mRamData[addr]=data;};
- uint8 Peek(uint32 addr){ return(mRamData[addr]);};
+ void Poke(uint32 addr, uint8 data){
mRamData[(uint16)addr]=data;};
+ uint8 Peek(uint32 addr){ return(mRamData[(uint16)addr]);};
uint32 ReadCycle(void) {return 5;};
uint32 WriteCycle(void) {return 5;};
uint32 ObjectSize(void) {return RAM_SIZE;};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/lynx/susie.cpp
new/mednafen/src/lynx/susie.cpp
--- old/mednafen/src/lynx/susie.cpp 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/lynx/susie.cpp 2019-04-23 23:54:58.000000000 +0200
@@ -58,13 +58,9 @@
// wa can access this directly without the hassle of
// going through the system object, much faster
//
-//#define RAM_PEEK(m) (mSystem.Peek_RAM((m)))
-//#define RAM_POKE(m1,m2) (mSystem.Poke_RAM((m1),(m2)))
-//#define RAM_PEEKW(m) (mSystem.PeekW_RAM((m)))
-
-#define RAM_PEEK(m) (mRamPointer[(m)])
-#define RAM_PEEKW(m)
(mRamPointer[(m)]+(mRamPointer[(m)+1]<<8))
-#define RAM_POKE(m1,m2) {mRamPointer[(m1)]=(m2);}
+#define RAM_PEEK(m) (mRamPointer[(uint16)(m)])
+#define RAM_PEEKW(m)
(mRamPointer[(uint16)(m)]+(mRamPointer[(uint16)((m)+1)]<<8))
+#define RAM_POKE(m1,m2)
{mRamPointer[(uint16)(m1)]=(m2);}

uint32 cycles_used=0;

@@ -838,7 +834,7 @@

INLINE void CSusie::WritePixel(uint32 hoff,uint32 pixel)
{
- uint32 scr_addr=mLineBaseAddress+(hoff/2);
+ const uint16 scr_addr=mLineBaseAddress+(hoff/2);

uint8 dest=RAM_PEEK(scr_addr);
if(!(hoff&0x01))
@@ -861,7 +857,7 @@

INLINE uint32 CSusie::ReadPixel(uint32 hoff)
{
- uint32 scr_addr=mLineBaseAddress+(hoff/2);
+ const uint16 scr_addr=mLineBaseAddress+(hoff/2);

uint32 data=RAM_PEEK(scr_addr);
if(!(hoff&0x01))
@@ -883,7 +879,7 @@

INLINE void CSusie::WriteCollision(uint32 hoff,uint32 pixel)
{
- uint32 col_addr=mLineCollisionAddress+(hoff/2);
+ const uint16 col_addr=mLineCollisionAddress+(hoff/2);

uint8 dest=RAM_PEEK(col_addr);
if(!(hoff&0x01))
@@ -906,7 +902,7 @@

INLINE uint32 CSusie::ReadCollision(uint32 hoff)
{
- uint32 col_addr=mLineCollisionAddress+(hoff/2);
+ const uint16 col_addr=mLineCollisionAddress+(hoff/2);

uint32 data=RAM_PEEK(col_addr);
if(!(hoff&0x01))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/lynx/sysbase.h
new/mednafen/src/lynx/sysbase.h
--- old/mednafen/src/lynx/sysbase.h 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/lynx/sysbase.h 2019-04-23 23:54:58.000000000 +0200
@@ -61,11 +61,6 @@
virtual void PokeW_CPU(uint32 addr,uint16 data)=0;
virtual uint16 PeekW_CPU(uint32 addr)=0;

- virtual void Poke_RAM(uint32 addr,uint8 data)=0;
- virtual uint8 Peek_RAM(uint32 addr)=0;
- virtual void PokeW_RAM(uint32 addr,uint16 data)=0;
- virtual uint16 PeekW_RAM(uint32 addr)=0;
-
virtual uint8* GetRamPointer(void)=0;

};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/lynx/system.h
new/mednafen/src/lynx/system.h
--- old/mednafen/src/lynx/system.h 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/lynx/system.h 2019-04-23 23:54:58.000000000 +0200
@@ -158,14 +158,6 @@
inline void PokeW_CPU(uint32 addr,uint16 data) {
mMemoryHandlers[addr]->Poke(addr,data&0xff);addr++;mMemoryHandlers[addr]->Poke(addr,data>>8);};
inline uint16 PeekW_CPU(uint32 addr) {return
((mMemoryHandlers[addr]->Peek(addr))+(mMemoryHandlers[addr]->Peek(addr+1)<<8));};

- //
- // RAM
- //
- inline void Poke_RAM(uint32 addr, uint8 data) {
mRam->Poke(addr,data);};
- inline uint8 Peek_RAM(uint32 addr) { return mRam->Peek(addr);};
- inline void PokeW_RAM(uint32 addr,uint16 data) {
mRam->Poke(addr,data&0xff);addr++;mRam->Poke(addr,data>>8);};
- inline uint16 PeekW_RAM(uint32 addr) {return
((mRam->Peek(addr))+(mRam->Peek(addr+1)<<8));};
-
// High level cart access for debug etc

inline void Poke_CART(uint32 addr, uint8 data)
{mCart->Poke(addr,data);};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/ngp/TLCS-900h/TLCS900h_interpret.cpp
new/mednafen/src/ngp/TLCS-900h/TLCS900h_interpret.cpp
--- old/mednafen/src/ngp/TLCS-900h/TLCS900h_interpret.cpp 2019-01-28
07:52:37.000000000 +0100
+++ new/mednafen/src/ngp/TLCS-900h/TLCS900h_interpret.cpp 2019-04-23
23:54:58.000000000 +0200
@@ -611,7 +611,9 @@
//Undocumented mode!
if (data == 0x13)
{
- mem = pc + (int16)fetch16();
+ const int16 disp = fetch16();
+
+ mem = pc + disp;
cycles_extra = 8; //Unconfirmed... doesn't make much
difference
return;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/pce/huc6280_ops.inc
new/mednafen/src/pce/huc6280_ops.inc
--- old/mednafen/src/pce/huc6280_ops.inc 2019-01-28 07:52:37.000000000
+0100
+++ new/mednafen/src/pce/huc6280_ops.inc 2019-04-23 23:54:58.000000000
+0200
@@ -547,7 +547,7 @@
if(EmulateWAI)
{
if(next_event > 1)
- ADDCYC(next_event - 1);
+ ADDCYC_MASTER(next_event - 1);
LastCycle();
break;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/pce/pce.cpp new/mednafen/src/pce/pce.cpp
--- old/mednafen/src/pce/pce.cpp 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/pce/pce.cpp 2019-04-23 23:54:58.000000000 +0200
@@ -44,7 +44,7 @@
static const MDFNSetting_EnumList PSGRevisionList[] =
{
{ "huc6280", PCE_PSG::REVISION_HUC6280, "HuC6280", gettext_noop("HuC6280 as
found in the original PC Engine.") },
- { "huc6280a", PCE_PSG::REVISION_HUC6280A, "HuC6280A", gettext_noop("HuC6280A
as found in the SuperGrafx and CoreGrafx I. Provides proper channel amplitude
centering, but may cause clicking in a few games designed with the original
HuC6280's sound characteristics in mind.") },
+ { "huc6280a", PCE_PSG::REVISION_HUC6280A, "HuC6280A", gettext_noop("HuC6280A
as found in the SuperGrafx and CoreGrafx I. Provides proper channel amplitude
centering. Many games will have less clicking with the HuC6280A, but it may
cause clicking in a few games designed with the original HuC6280's sound
characteristics in mind.") },
{ "match", PCE_PSG::_REVISION_COUNT, gettext_noop("Match emulation mode."),
gettext_noop("Selects \"huc6280\" for non-SuperGrafx mode, and \"huc6280a\" for
SuperGrafx(full) mode.") },
{ NULL, 0 },
};
@@ -333,7 +333,8 @@

static void CDSettingChanged(const char *name)
{
- SetCDSettings(true);
+ if(PCE_IsCD)
+ SetCDSettings(true);
}


diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/psx/cdc.cpp new/mednafen/src/psx/cdc.cpp
--- old/mednafen/src/psx/cdc.cpp 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/psx/cdc.cpp 2019-04-23 23:54:58.000000000 +0200
@@ -1874,7 +1874,7 @@

if(CommandLoc_Dirty)
SeekTarget = CommandLoc;
- else
+ else if(DriveStatus != DS_PAUSED && DriveStatus != DS_STANDBY)
SeekTarget = CurSector;

PSRCounter = 33868800 / (75 * ((Mode & MODE_SPEED) ? 2 : 1)) +
CalcSeekTime(CurSector, SeekTarget, DriveStatus != DS_STOPPED, DriveStatus ==
DS_PAUSED);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/quicklz/quicklz.c
new/mednafen/src/quicklz/quicklz.c
--- old/mednafen/src/quicklz/quicklz.c 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/quicklz/quicklz.c 2019-04-23 23:54:58.000000000 +0200
@@ -39,12 +39,12 @@
return -1;
}

-__inline unsigned int hash_func(unsigned int i)
+static inline unsigned int hash_func(unsigned int i)
{
return ((i >> 12) ^ i) & 0x0fff;
}

-__inline unsigned int fast_read(void const *src, unsigned int bytes)
+static inline unsigned int fast_read(void const *src, unsigned int bytes)
{
#ifndef X86X64
unsigned char *p = (unsigned char*)src;
@@ -68,7 +68,7 @@
#endif
}

-__inline void fast_write(unsigned int f, void *dst, unsigned int bytes)
+static inline void fast_write(unsigned int f, void *dst, unsigned int bytes)
{
#ifndef X86X64
unsigned char *p = (unsigned char*)dst;
@@ -118,7 +118,7 @@
#endif
}

-__inline void memcpy_up(unsigned char *dst, const unsigned char *src, unsigned
int n)
+static inline void memcpy_up(unsigned char *dst, const unsigned char *src,
unsigned int n)
{
// cannot be replaced by overlap handling of memmove() due to LZSS
algorithm
#ifndef X86X64
@@ -151,7 +151,7 @@
#endif
}

-__inline unsigned int fast_read_safe(void const *src, unsigned int bytes,
const unsigned char *invalid)
+static inline unsigned int fast_read_safe(void const *src, unsigned int bytes,
const unsigned char *invalid)
{
#ifdef memory_safe
if ((const unsigned char *)src + 4 > (const unsigned char *)invalid)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/settings-driver.h
new/mednafen/src/settings-driver.h
--- old/mednafen/src/settings-driver.h 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/settings-driver.h 2019-04-23 23:54:58.000000000 +0200
@@ -20,7 +20,7 @@
bool MDFNI_SetSettingUI(const char *name, uint64 value);
static INLINE bool MDFNI_SetSettingUI(const std::string& name, uint64 value) {
return MDFNI_SetSettingUI(name.c_str(), value); }

-bool MDFNI_DumpSettingsDef(const char *path);
+void MDFNI_DumpSettingsDef(const char *path) MDFN_COLD;

const std::vector<MDFNCS>* MDFNI_GetSettings(void);
std::string MDFNI_GetSettingDefault(const char* name);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/settings.cpp
new/mednafen/src/settings.cpp
--- old/mednafen/src/settings.cpp 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/settings.cpp 2019-04-23 23:54:58.000000000 +0200
@@ -28,6 +28,7 @@
#include <locale.h>
#include <map>
#include "settings.h"
+#include "settings-driver.h"
#include "string/escape.h"
#include <mednafen/string/string.h>
#include "FileStream.h"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/ss/db.cpp new/mednafen/src/ss/db.cpp
--- old/mednafen/src/ss/db.cpp 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/ss/db.cpp 2019-04-23 23:54:58.000000000 +0200
@@ -161,6 +161,7 @@
{ "T-1206G", CPUCACHE_EMUMODE_DATA_CB }, // Street Fighter Zero (Japan)
{ "T-1246G", CPUCACHE_EMUMODE_DATA_CB }, // Street Fighter Zero 3 (Japan)
{ "T-1215H", CPUCACHE_EMUMODE_DATA_CB }, // Super Puzzle Fighter II
Turbo (USA)
+ { "T-5001H", CPUCACHE_EMUMODE_DATA_CB }, // Theme Park (Europe)
{ "GS-9113", CPUCACHE_EMUMODE_DATA_CB }, // Virtua Fighter Kids (Java
Tea Original)
{ "T-15005G", CPUCACHE_EMUMODE_DATA_CB }, // Virtual Volleyball (Japan)
{ "T-18601H", CPUCACHE_EMUMODE_DATA_CB }, // WipEout (USA)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mednafen/src/types.h new/mednafen/src/types.h
--- old/mednafen/src/types.h 2019-01-28 07:52:37.000000000 +0100
+++ new/mednafen/src/types.h 2019-04-23 23:54:58.000000000 +0200
@@ -17,21 +17,26 @@
//
//
//
-
-#ifdef __USING_SJLJ_EXCEPTIONS__
- #error "SJLJ-style exception handling will incur a significant performance
penalty even when exceptions are not thrown, and thus an alternative(e.g.
DWARF) should be used if at all possible."
-#endif
-
-#if defined(__PIC__) || defined(__pic__) || defined(__PIE__) ||
defined(__pie__)
- #if defined(__386__) || defined(__i386__) || defined(__i386) ||
defined(_M_IX86) || defined(_M_I386) //|| (SIZEOF_VOID_P <= 4)
- #error "Compiling with position-independent code generation enabled is not
recommended, for performance reasons."
- #else
+#ifndef MDFN_DISABLE_PICPIE_ERRWARN
+ #if defined(__PIC__) || defined(__pic__) || defined(__PIE__) ||
defined(__pie__)
#warning "Compiling with position-independent code generation enabled is not
recommended, for performance reasons."
#endif
#endif

-#if defined(__x86_64__) && defined(__code_model_large__)
- #error "Compiling with large memory model is not recommended, for performance
reasons."
+#ifndef MDFN_DISABLE_NO_OPT_ERRWARN
+ #if defined(__GNUC__)
+ #if !defined(__OPTIMIZE__) && !defined(__OPTIMIZE_SIZE__)
+ #warning "Compiling without optimizations."
+ #endif
+
+ #if defined(__x86_64__) && defined(__code_model_large__)
+ #error "Compiling with large memory model is not recommended, for
performance reasons."
+ #endif
+ #endif
+
+ #ifdef __USING_SJLJ_EXCEPTIONS__
+ #error "SJLJ-style exception handling will incur a significant performance
penalty even when exceptions are not thrown, and thus an alternative(e.g.
DWARF) should be used if at all possible."
+ #endif
#endif
//
//


< Previous Next >
This Thread
  • No further messages