2014年5月12日 星期一

Mednafen 0.9.34.1

Mednafen

多機種模擬器 Mednafen 發布新版,更新如下:

-- 0.9.34.1: --

May 11, 2014:
        Fixed a bug in the sound format conversion code that caused garbled audio when using the new shared-mode WASAPI driver
        with a sound device configured with more than 2 speakers.

-- 0.9.34: --

May 10, 2014:
 CDPLAY: Optimized the visualization code.

 Added a new shared-mode WASAPI sound driver named "wasapish".

 For consistency, the "wasapi" and "sdl" sound drivers no longer subtract the overhead latency from the desired buffer size
 when calculating the size of the buffer to use.

 Changed the default value of setting "sound.buffer_time" to "0", to enable usage of partially-new code that calculates a buffer
 size automatically based on emulated system characteristics and the sound driver in use.

May 8, 2014:
 GB: Fixed tilt sensor emulation that was broken in the May 6 IDIT_BUTTON_ANALOG packing change.

 Updated the embedded copy of libmpcdec to the latest SVN copy; fixes problems with playback of older SV7 format files(with
 the CD emulation code).

 Wrote threading code to target Win32 APIs directly, rather than rely on SDL's threading support, for the Windows build.

May 7, 2014:
 GBA, NES: Resolved some compiler warnings.

 No longer compile with -mstackrealign for the Windows build, instead using "__attribute__((force_align_arg_pointer))" where
 appropriate(e.g. Win32 and SDL callbacks).

 Updated the cheat console-interface code to use a condition variable instead of sleep-waiting.

 Remove an erroneous extra mutex unlock around a driver-side message queue.

May 6, 2014:
 Pack "IDIT_BUTTON_ANALOG" and "IDIT_RUMBLE" type input device data more tightly(only aligning to a byte-boundary now,
 and packing as 16-bits rather than 32-bits).

 Calculate and send a device type number for each emulated port with the netplay login data(the data is not used currently by
 mednafen-server, but will be in the future).

May 5, 2014:
 Reworked the multithreaded CD reading code to use condition variables, rather than repeatedly unlocking, sleeping, and
 locking mutexes.  This should help with performance a bit, and will prevent a lot of unnecessary CPU/CPU core wakeups, especially
 after loading multiple disc images with M3U files(since a read thread is created for each disc image, at least when CD image
 memcaching is disabled, the default).

 Moved common parts of the MDFNI_Load and MDFNI_LoadCD functions into a separate function to reduce code duplication.

 Emulation modules' LoadCD functions all now throw exceptions on error, so changed the function pointer prototype to remove
 the return type(void all the way!).

May 4, 2014:
 PCE, PCE_FAST, PC-FX, MD: Make better use of exceptions(and handle some that were not handled properly before) in the game
 loading and initialization code paths.

 Emulation modules' Load and LoadCD functions may now throw exceptions upwards instead of calling MDFN_PrintError() and
 returning 0.

 Reworked IPS parsing and applying code to use exceptions, and Stream instead of stdio file access.

 Reworked MDFNFILE to use exceptions to signal errors on file loading(the memory-stream functions provided primarily for the NES
 module's use still don't throw exceptions, however).

 Lynx: Removed undocumented(and largely pointless) support for loading a gzip or ZIP-compressed "lynxboot.img" firmware file.

 GB: Made game loading code more resilient to avoid leaking memory if an error occurs during game load.

 Added a gcc format string check attribute to an MDFN_Error constructor, and fixed a few minor format string problems this
 checking exposed.

May 3, 2014:
 GBA: Reworked save file type parsing code to use FileStream instead of stdio.

 GBA: Sanitize a few variables in the flash memory save state loading code to prevent malicious save states blah blah blah.

 GBA: Added masks to array access in the EEPROM emulation code to prevent malicious save states from corrupting the heap.

 GBA: EEPROM file loading code now errors out if there's an error opening or reading the file(but not if the error is that it
 simply does not exist), or the file is of an unexpected/incorrect size.

May 2, 2014:
 NES:  The filename scanning to select region/video standard(NTSC or PAL), controlled via the "nes.fnscan" setting, now
 uses the filename and path stored in the ZIP file(when loading a NES game from a ZIP file) rather than the name of the ZIP file
 itself.  Additionally, the filename scanning feature no longer is affected by strings in the file extension(though I doubt this
 will affect anyone, as you'd have to be pretty deranged to name a NES game file like that).

May 1, 2014:
 PSX: Made CD-DA playback position report code more correct and resilient in regards to Q subchannel checksum errors.

April 30, 2014:
 PSX: Added settings to allow for scaling the analog stick axis values, to work around the issue of different logical ranges of 
 motion for PS1 DualShock and Dual Analog controllers versus more modern PC-compatible gamepads.

April 29, 2014:
 Added logic to gracefully fall back to other fullscreen stretch modes if the current fullscreen resolution is too low to support the
 stretch mode selected.

April 28, 2014:
 Added support for mapping joystick axes to lightgun screen coordinates; however, the configuration must be done manually
 by editing the configuration file.  (Additionally, the translation will not function properly if the software-rotation
 feature(via ALT+O) is used.)
 Example:
  psx.input.port2.guncon.x_axis joystick 630f0eab74165481 00008000
  psx.input.port2.guncon.y_axis joystick 630f0eab74165481 00008001
 Alternate coordinate translation for fullscreen mode, intended for physical modern lightgun and pointer devices:
  psx.input.port2.guncon.x_axis joystick 630f0eab74165481 00048000
  psx.input.port2.guncon.y_axis joystick 630f0eab74165481 00048001

April 27, 2014:
 GB: Cleaned up the memory-mapper code, fixing a few bugs that allowed some games(like "Best of the Best Championship Karate")
 to cause Mednafen itself to crash.

 GB: Fixed MBC7 support(it's been broken in Mednafen for a loooong time).

 GB: Disabled the broken simulation of HDMA overhead that seemed to be doing more harm than good; fixes problems with
 unstable framerates and inaccurate slowdown on some GBC games(such as "Shantae").

 MD, NGP, WonderSwan: Fixed potential memory leaks(memory was not really leaked due to how Mednafen is currently structured,
 but they could have become problematic leaks in the future).

 Merge clamp.h into math_ops.h.

 More #include statement changes in emulation module sources to use #include <mednafen/BLAH> style instead of #include "../BLAH".

April 26, 2014:
 Fixed a bug that was causing the output image to be distorted when rotation(via ALT+O) was used in conjunction with
 a *.videoip setting value of "x" or "y".

 Added a test/demo module to help work out bugs in the video processing code paths.

April 25, 2014:
 Reworked the build system and numerous source code and header files to allow for less sloppiness with -I include paths.

 GB: Statically-allocate a 320-byte graphics buffer instead of malloc()'ing it.

April 24, 2014:
 Fixed a problem with the configure script so it will (hopefully) no longer error out when cross-compiling.

 MD: memset() line buffer padding areas to prevent sprite rendering from reading from uninitialized memory.

 MD: Fixed violations of strict aliasing in the 68K CPU core.

 PC-FX, VB: Replaced SoftFloat, used in FPU emulation, with newly-written-while-sleep-deprived code.  It's possible this may
 cause regressions, since floating-point stuff is rather hairy...

 Fixed an ancient bug that made iterative multibyte-value cheat searches extremely unreliable.

 Fixed a bug that broke the output image when displaying a source image with multiple horizontal resolutions at a specific
 rotation angle(selected via ALT+O).

 Added support for negative <system>.scanlines setting values, which will change scanline behavior and size to overlay/obscure
 the previous field's line data if "video.deinterlacer" is set to "weave".

 Added setting "video.deinterlacer", default value of "weave".

 NES: Align a temporary line buffer array to prevent the possibility of a CPU fault and/or poor performance on non-x86 platforms.

 Simplified handling of muli-horizontal-resolution frames by changing "LineWidths"'s type from MDFN_Rect(representing
 x offset and width) to a simple int32(representing just width).

April 23, 2014:
 GB: Added support for custom palettes that specify BGP, OBP0, and OBP1 colors independently.

April 18, 2014:
 PC-FX, VB: Corrected the debugger's disassembly of the 5-bit sign-extended immediate form of "mov"
 (the disassembler was failing to sign-extend).

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

2014年5月11日 星期日

陰謀/陽謀 ?

到底是陰謀 ?還是陽謀 ? 現階段還不明朗,但追根究柢對使用者而言只有體驗的差異而沒有其他方面的損失,所以也不須太深究......但我還是希望有陰謀.....不過以作者的個性來說,又好像啥都不會變動......總之大概還要一段時間才會明朗,目前能做的....就是等待。



謎之音:
................................................又在不知所云了。

2014年5月10日 星期六

DeSmuME X432R 2014-05-10

非官方NDS模擬器 DeSmuME X432R 更新了,這款模擬器能強化NDS遊戲畫面,雖然畫面提升非常多,但相對對硬體要求也較高,有興趣可試試,更新如下 :

DeSmuME X432R 2014-05-10-0
公式SVN r5038を元に作成


高解像度3Dレンダリング(試験的)
内部処理を改良。
表示の再現度が向上。


HUD表示の不具合を修正。


Configメニュー → High-Resolution 3D Renderer → Async Modeを追加
描画処理の一部をメインスレッドから分離し、非同期に実行する機能です。
使用中は画面更新が正常に行われないことがあります。



http://shikaver01.webcrow.jp/

2014年5月7日 星期三

UME 0.153ex2

 由Haze編譯的MAME模擬器 UME 發布新版,更新如下:

UME (logo by JackC)
UME is the complete/combined version of the MAME / MESS project.
It’s always a little disappointing to have to post 3 UME updates in a row with no actual WIP news between them, but that’s the situation right now, I’ve not really made any changes worth doing an update about it, and progress elsewhere has been slow too if I’m honest.
0.153ex2 is built from SVN revision 30169
UME 0.153ex2 Windows binaries – 32-bit, 64-bit and all tools
UME 0.153ex2 sources
Here is the 0.153 to 0.153ex2 SVN log
Also split mame/mess (non-ume) binaries of this revision can be found here
Points of Interest
The main addition of note here is support for Wyvern F-0, already extensively covered by Luca. It’s not really quite as rare of valuable as it’s hyped up to be, but it’s an interesting addition as it further shows the influence Namco’s Xevious had on the arcades, employing a similar air / ground bombing system (Taito had tried this previously with Fire Battle) As Luca mentions there are still a few issues with sprite colours, as you can see.

Wyvern F-0 Wyvern F-0 Wyvern F-0

For UME / MESS users I’ve added the parsing of some additional ini files based on how the drivers are defined in the source. Drivers are defined with either a GAME( macro, a CONS( macro, COMP( or SYST( depending on what type of system they are. This information was previously unused, but the emulator will now attempt to parse ‘arcade.ini’ for anything defined as GAME. and ‘console.ini’, ‘computer.ini’ or ‘othersys.ini’ for each of the others. While this relies on things being properly defined in the source it will allow UME users who might want specific .ini options to be applied only to drivers that originated in MAME to create an ‘arcade.ini’ with those specific options in. Even if you’re not using UME the option will benefit MESS users who can use the computer/console.ini files for the same purpose.

system11 dumped a couple of clones, the most interesting being a Korean version of Kaneko’s ‘The Berlin Wall’ This version carries an ‘Inter’ license like the Korean version of Gals Panic and appears to be a fully legitimate version of the game licensed by Kaneko for the Korean market.
The set is also interesting because it uses the same character graphics as the ‘berlwallt’ clone set, but preserves the normal stage order. Interestingly it suffers from the same ‘COPY BOARD’ issue when you die / continue on world 4 and above that resulted in the ‘berlwallt’ set being marked as a possible bootleg. I’ve asked for system11 to check if this actually occurs on real hardware, because the board the set comes from is definitely original so we need to establish if it’s an emulation glitch (meaning we’re missing some way the game detects a bootleg board, or some way of hiding those sprites) or an oversight by Kaneko with these versions of the game. Luca also fixed a few bugs in the driver.

Berlin Wall (Korea) Berlin Wall (Korea) Berlin Wall (Korea)

While on the subject of Berlin Wall, I find it a shame that ‘Wani Wani World’ never made it to the arcades, it’s a much more refined, much better looking, much more fun version of the game that was released on the Sega Mega Drive in Japan. (you can always give it a spin in UME, “UME megadrij waniwani”) I think the ‘RESET’ button on the MD emulation broke at some point tho, a shame because you need to reset the game 19 times to activate the cheat mode (and F3 resets too much of the system for that)

Kale has also been busy with improving the Model 2 emulation, although it’s still a long way from being correct or any kind of rival to ElSemi’s emulator.
Other than that a lot of the work done has been refactoring as usual, although a number of the small improvements are important, the Sega Master System timing tweaks that went in fixed a number of bugs I was seeing where screens were flicking that did not occur on real hardware (menu screens in Micro Machines for example – although there does seem to be a flickering line again on Fantastic Dizzy now) We’ve also seen work started on a long overdue cleanup of the MSX drivers.
A significant number of devices have had uninitialized variables cleaned up which should make things more reliable as uninitialized values can result in unpredictable buggy behaviour (like the Namco flipscreen issue we saw in 0.153)
A fair amount of work has also been done on more obscure systems in MESS, but you’d be better off checking the changelogs yourself for those if you want more details. A driver for the Xerox Alto 2 from Juergen is one such addition, but work was also done on the Goldstar FC-100, the Dick Smith Super-80, the NeXT systems and a number of others, each change inching them a bit closer to a working state. The MESS side of the code has been a hive of activity when it comes to these lesser known systems and it’s always good to see some devs of old getting a feel for things again with them!
Beyond that we’ve also seen attempts to repair the collateral damage caused by some of the other recent refactoring / device conversions / core rewrites such as the 0.153 regressions seen with the Cybiko.

http://mamedev.emulab.it/haze/

MADrigal CD Collection v59.2

早期 Game&Watch 時代的模擬器合集 MADrigal CD Collection 更新了,共收錄了59款遊戲,有興趣的可試試.

I have always wanted to upgrade my simulators of games belonging to the Nintendo Game & Watch series, but unfortunately I don't own the original handhelds anymore and I have no chance to scan them at high resolution by myself.
Luckily, I recently got a huge help from two Austrian men, authors of the gorgeous Der Inoffizielle Game & Watch Sammlerkatalog book, who provided me with great pictures and scans from a few games I simulated long ago: Egg, Mickey Mouse, Snoopy Tennis and Turtle Bridge.
I decided to upgrade the former two games first, as well as their Russian clones (minor fixes). This is the new look of the Game & Watch simulators:
              
I will release the upgraded Snoopy Tennis and Turtle Bridge sometimes soon. Here's the list of the games I'm releasing today:
- Egg (Nintendo, Wide Screen) S4/1.03 (Standard 4, complete rewrite)
- Mickey Mouse (Nintendo, Wide Screen) S4/1.02 (Standard 4, complete rewrite)
- Explorers of Space (Elektronika) S4/1.03 (Standard 4, various optimizations)
- Fowling (Elektronika) S4/1.02 (Standard 4, various optimizations)
- Frog Boaster (Elektronika) S4/1.02 (Standard 4, various optimizations)
- MADrigal CD Collection ver. 59.2

http://www.madrigaldesign.it/sim/

2014年5月2日 星期五

RetroArch v1.0.0.2

Libretro

不算是新聞,因為去年底買了台2手筆電,之後就幾乎不再動安卓平版了,所以也不太注意這款模擬器的進展,不過這款優秀的多機種模擬器可沒跟著停下腳步,繼續往光明的未來邁步中......

官網提供了一個頁面,包含所有支援平台的模擬器新版本下載,有興趣的可以依據自己的需要選擇下載。

http://www.libretro.com/index.php/downloads/

2014年5月1日 星期四

XQEMU: Smashing Drive Ingame

XBOX模擬器 XQEMU 釋出了運行 Smashing Drive 的截圖,原文如下:

XQEMU: Smashing Drive Ingame



Okay, we're moving along here faster than I anticipated.  Just a few moments ago, I added a few texture related fixes to XQEMU, and now Smashing Drive goes ingame!  Although there isn't too much visually impressive in this game, it's proof that LLE is a feasible idea.

In my experience, Smashing Drive has always been the easiest Xbox game to emulate (the game is only 90mb, making it the smallest known commercial Xbox game that I know of!), so I'm not really too surprised it's working this well.  You're probably wondering why the colours are inverted, lack of colour keying and depth testing, etc.  The emu actually doesn't appear to implement any render states at all at the moment, and we're still working out how certain texture formats should be interpreted in OpenGL.  Other than that, everything runs with minimal issues, minus the random freeze likely caused by race conditions.

So, just wanted to give you all a quick update on XQEMU's progress as of late.  Thanks for reading!

Shogun.
 
http://shogun3d-cxbx.blogspot.tw/2014/04/xqemu-smashing-drive-ingame.html