2010-11-08

Mednafen 0.9.14 WIP

EmuCR: MednafenMednafen 0.9.14 WIP is released. Mednafen is a multi-game-system emulator, for various platforms, including emulation of the following systems:Atari Lynx,Famicom,GameBoy (Color),GameBoy Advance,Neo Geo Pocket (Color),
NES(both NTSC and PAL),PC Engine/TurboGrafx 16 (CD) and SuperGrafx,PC-FX,WonderSwan (Color)
.

Mednafen 0.9.14 WIP changelog:
-- 0.9.14-WIP: --

November 6, 2010:
Corrected the last updated dates in the auto-generated documentation files.

VB: Uncommented out important save state code that was commented out for debugging purposes(and was accidentally left
that way).

-- 0.9.13-WIP: --
November 5, 2010:
PCE: The timestamp displayed in the debugger is now counted from when a virtual power off->on occurred, rather
than the start of the Mednafen video frame. However, the displayed value wrap when it reaches 2^32 due to limitations
in the debugger code(TODO: fix in the future).

PCE: Fixed default mouse L/R button assignments(they were reversed). (You'll need to delete the Mednafen configuration
file for the new defaults to take effect, or reconfigure the mouse in Mednafen, with the correct L/R button
assignment)

PCE: Fixed a bug that caused the debugger to corrupt Arcade Card state in certain common situations while the debugger
was open or breakpoints were enabled.

PCE, PCE_FAST: Reworked and fixed the ADPCM code to closer match a real system(based on hardware tests). Previously,
ADPCM playback IRQ generation was sooooo wrong. These changes finally fix the broken battle voices in "Langrisser",
yay.

October 17, 2010:
Fixed 2xSaI family filters to not crash; the 2xSaI filter source image data is now from a temporary video buffer
created from the original source video buffer, but with padding on all sides to handle 2xSaI's lack of source
video buffer coordinate bounds checking.

October 14, 2010:
Re-disabled physical CD unreadable sector testing code, as it causes too long of a delay at startup. A
different solution will need to be found.

October 4, 2010:
PCE: Optimized debugger PC and opcode breakpoint testing during emulation.

October 3, 2010:
PCE: Fixed CD register reads with side effects when the debugger is open, and changed PCE_InDebug from bool to uint32,
to allow for ++/-- pairs instead of = true, = false, to handle potential recursion.

September 30, 2010:
PCE_FAST: Fixed a emulator crash in the case that a game didn't initialize MPRs properly.

PCE_FAST: Made a small optimization to the HuC6280 core.

PCE_FAST: Rewrote a bit of HES playback code so it works at a lower-level, allowing the removal/privatization of some
HuC6280 state setting functions.

September 29, 2010:
PCE_FAST: Fixed a reversed-tile issue with BG drawing on big-endian platforms(thanks to Rakashazi for pointing it out).

PCE_FAST: Added 16bpp rendering support.

NES: Added 16bpp rendering support.

Added 16bpp support to MDFN_Surface and MDFN_PixelFormat. However, most internal components in Mednafen currently
can't handle 16bpp, emulation modules included.

September 25, 2010:
Altered the text for the "sound" setting to better match what it actually does.

September 19, 2010:
The destination blit rectangle in the video output code now has the lowermost bits of the X and Y coordinates cleared,
as a quick kludge to fix potential issues with the VB emulation's "hli" and "vli" video modes. A cleaner
solution may be prudent in the future.

VB: Added setting "vb.liprescale".

Optimized the "hli" video mode drawing code slightly.

September 18, 2010:
VB: Added setting "vb.3dreverse".

VB: Renamed "pbarrier" 3dmode to "vli".

VB: Added 3dmode "hli".

September 16, 2010:
When -force_module is used with an unknown/invalid system, Mednafen will print an error stating so, rather
than stating that the file format is unrecognized. If the system is recognized, but the system only supports CDs
and the file being loaded is not a CD image, a message will be printed to that effect.

September 13, 2010:
PCE_FAST: HDS is now used in calculating the screen viewable area position, fixing the "Final Blaster" intro
sequence.

September 12, 2010:
Fixed a significant memory leak in the video output code(the leak would increase every time fullscreen is toggled
while Mednafen is running).

PCE_FAST: Fixed a benign(in Mednafen as it is now) memory leak.

PCE_FAST, PCE: IsSGX variable is now explicitly initialized to 0 correctly.

Updated the AX_CFLAGS_GCC_OPTION autoconf macro.

PCE_FAST: Renamed various identifiers in the HuC6280 emulator code to avoid conflicting with C reserved identifier
conventions.

PCE_FAST: Removed unused VDC debug code.

NES: An error while attempting to open the file specified by setting "nes.cpalette" will no longer cause Mednafen
to crash.

SCSI CD:
Refactoring and code cleanups.

Added various command error condition checks, and corrected various error codes(NEC uses a few
nonstandard ASC values). (INCOMPLETE)

Specific command fixes for PCE CD:
Command 0xD8: If the command is executed with the same address as when it was previously executed,
and the previous execution was < 190ms ago, then the new execution
is ignored(this occurs regardless if the previous command was ignored). This is more
of a kludge than a proper fix, and it is intended to fix the silent CD-DA problem
with "Steam Heart's".

Specific command fixes for PC-FX:
MODE SENSE and MODE SELECT:
Added support for block descriptor(incomplete), and the DBD bit for MODE SENSE.
Added support for all the mode pages present on a PC-FX(though most don't actually do anything
in emulation yet, as I do not know their function or their function is irrelevant at the current
level of CD emulation accuracy).

Command 0x25: Corrected returned data when PMI bit is set.
Command 0x42: Fixed the relative address returned when the address results are expressed as LBA.
Command 0xD8: Proper support for play bit.
Command 0xD9: Improved play mode evaluation, and play mode 0x1 is no longer erroneously
interpreted as loop mode(only 0x4 is).
Command 0xDD: The control/adr field is now returned in the data.
Command 0xDE: Added emulation of returned data mode 0x03(there was a dummy stub before, to get the PhotoCD
player to work).

September 11, 2010:
Changed hqxx's sole supported pixel format to match the new OpenGL texture pixel format used(in the future, changing
its hardcoded pixel format based on an #ifdef MSB_FIRST may be warranted).

WonderSwan: Re-enabled(and fixed) debugger's graphics viewer.

PCE_FAST: Reduced fb_height from 256 to 242.

September 10, 2010:
If Mednafen is running with an OpenGL implementation of OpenGL >= 1.2, and is on an x86 or x86_64 platform,
it will now upload texture data in GL_BGRA GL_UNSIGNED_INT_8_8_8_8_REV format rather than GL_RGBA GL_UNSIGNED_BYTE.
This may need to be tweaked for older video cards. Would it have killed the OpenGL developers to have
included a means of querying the fastest formats for texture uploading?

September 8, 2010:
todo: make sure tblur works right with surface->pitch32 != gameinfo->fb_width and player

Converted MDFNGI pitch(in bytes) to fb_width(in pixels).

Fixes for incorrectly using MDFNGameInfo->fb_width instead of the surface's pitch:
gb
gba
lynx(was hardcoded)
nes
ngp
pce_fast(was hardcoded)
player
wswan
mmrecord.cpp
tblur.cpp

Reduction of fb_width to minimum acceptible for the module(the driver-side can still round up to a power of 2 when
creating the MDFN_Surface, of course):
gb
gba
lynx
ngp
pce_fast(required a bit of work in vdc.cpp to eliminate non-visible-area surface rendering)
vb
wswan


September 5, 2010:
PC-FX: Implemented an optimization to the FX VCE layer mixing priority evaluation code, that will also allow further
optimization in the future.

September 4, 2010:
NES: Replaced "femms" inline assembly generated when compiling for x86_64 with "emms", as not all x86_64
processors are made by AMD.

August 24, 2010:
PC-FX: Track numbers in READ TOC(10) are now returned in hex instead of BCD(fixes BIOS handling of discs
with a large number of tracks; no PC-FX games are like this, but it may be useful for playing audio CDs or audio
portions of PCE CD). The bug was present in 0.8.x, but due to a design decision/bug elsewhere, it didn't
cause the BIOS to be unable to play the CD-DA tracks.

August 22, 2010:
Re-enabled raw MMC command usage for reading physical discs(it had been disabled for debugging purposes).

PC-FX: A PhotoCD disc will now automatically be detected as being handled by the PC-FX module.

L-EC correction code is now called external to cdromfile.cpp, and with PC-FX/PCE CD emulation, will generate
a SCSI error if it fails.

August 20, 2010:
SNES: Applied a patch from Jonas Quinn to fix a Cx4 emulation bug.

VB: Mednafen will no longer automatically recognize files with the ".bin" extension as Virtual Boy games,
as the extension conflicts with Sega Genesis/Megadrive. If you have any such files, they will need to be renamed
to have an extension of ".vb" or ".vboy".

VB: Files with the extension ".vboy" are now automatically recognized as Virtual Boy games.

VB: Altered timer emulation to fix digital sound and voice playback in "Virtual Bowling". The change has the
possibility of causing regressions with other games, but none were detected in very quick and not thorough testing.

August 14, 2010:
Cleaned up git.h slightly.

Download:Mednafen 0.9.14 WIP
Source:Here

0 Comments

Post a Comment