征服者
Retro Gamer
- 精华
- 7
- 帖子
- 4313
- 威望
- 13 点
- 积分
- 6423 点
- 种子
- 5 点
- 注册时间
- 2005-4-7
- 最后登录
- 2018-2-5
|
本帖最后由 gxb 于 2014-3-30 14:41 编辑
PicoDrive (v1.51b) port v1.13 released! – Yesterday,09:32 AM
Changelog for v1.13:
Corrected the position of the description text in the Mega/Sega CD menu, which was causing memory corruption.
Re-added and fixed the device selection menu.
When PicoDrive is started from a USB device, it will now continuously attempt to access the USB device until it can do so successfully.
Removed the MP3 decoding thread as it was not giving a performance boost.
Changed the newline character from CRLN to just LN, as the PS2SDK has problems with parsing CRLN text files. This, combined with a future update to the PS2SDK, fixes the problem with the game.cfg file ballooning in size.
Rewrote some of the I/O functions like the mkdir and remove replacements, to handle different types of paths properly. This probably won't affect end users though, except for developers like me.
Corrected the size of and placement of the framebuffer, when running with the 480P video mode.
Added a PAL NI (non-interlaced; 288P) video mode.
The 240P video mode has been renamed to "NTSC NI".
Downloads/links:
=========================================
PicoDrive (PlayStation 2移植版)
这是PSP上的PicoDrive v1.51b的PS2移植版. 尽管PS2上已经有一个叫PGEN的MD模拟器了,但是效果不好,没记错的话索尼克3是不能全速运行的。
I figured that anything good enough for the PSP would be also good enough for the PlayStation 2... especially since its EE (The "main" CPU) is a 64-bit MIPS with some 128-bit instructions. And so I ported PicoDrive v1.51b over from the PSP to the PlayStation 2.
Why port v1.51b?
Why not the new v1.85 which was released recently long ago by Notaz himself? It's because the PSP port within it appears to be dysfunctional and outdated. I wanted to have something that already works to work on, so that I would have a higher chance to succeed at porting. Even if the port was successfully made without the missing assembly stub (The C alternative could be used instead), it won't be as fast as a fully working copy of v1.51b.
What can I expect from this port?
The basic functionality from PicoDrive v1.51b in general (game compatibility rates, SEGA Megadrive and MegaCD support etc.)
Two-player support (Multitaps are not supported).
Support for the HDD unit, USB mass storage devices and the memory card.
Hardware bilinear filtering support, and support for progressive scanning.
Support for the L3 and R3 buttons, as well as the analog sticks (Press the MODE button to enable/disable this functionality).
Changelog for v1.11:
Fixed broken code within Memory_amips_r5900.s, which caused some games (Namely SSFII) to be broken. The contents of some registers were getting lost.
Compiled this port with a fixed up PS2SDK (Refer to the PS2SDK updates made today).
Added support for the 240P video mode (640x224).
Redesigned the menu to use 320x224 instead of 320x240, since the PlayStation 2's NTSC mode doesn't support 240/480 lines without some ugly, uneven scaling.
PAL games will now use a 320x240 frame buffer instead of 320x232. I thought that the PAL Megadrive screen had a resolution of 320x232.
Fixed saving of the video/display settings (VSYNC setting etc). As usual, the video mode setting will NOT be saved.
Changed the progressive video mode setting into a video mode selector. Allowed options are the NTSC, PAL, 480P and 240P modes.
The frame buffer will no longer be stretched to fit the video mode (Unless the screen isn't large enough to display the video on), to avoid the results of fractional scaling. Hence, the 480P or PAL video modes should be used for playing PAL games, since these modes have a high-enough resolution to avoid needing to scale the screen.
Replaced calls to gsKit_prim_sprite_texture_3d with a customized drawing function, since gsKit_prim_sprite_texture_3d seems to perform a series of weird calculations. Those calculations seem to be for achieving "pixel-perfect" sprite drawing, as demonstrated by jbit... but that doesn't seem to work well with nearest filtering!
Notes/known issues:
The progressive scanning option will not be saved. This is a deliberate limitation, since the PlayStation 2 has no built-in recovery mode in the event that the user enables progressive scanning but the connected display does not support progressive scanning (The Sony TRC forbids game developers from storing the HD mode settings too).
The screen in progressive scanning mode (480P) seems to be cut off at the sides on my TV... but I'm not sure why (hence I can't fix it).
The emulator must be placed in either a memory card or a USB mass storage device, for saving to work. Getting full support for the HDD unit is a challenge because the UI wasn't designed to deal with filesystem mounting. Such a modification would be intrusive (requires modification of the common code files).
For the skin to be loaded properly, the emulator must be stored on a memory card. The USB drivers may take a while to detect the USB device, and hence the USB device cannot be accessed during the emulator's startup process. The reason why this hasn't been worked around is the same as in #4: The menu wasn't designed for that purpose.
Due to #5, the emulator's required folders may not be created when the emulator is started up. If they don't exist, the emulator will be unable to save. A workaround would be to manually create the "brm", "cfg", "mds" and "srm" folders within the folder that the emulator is stored in (Hence why storing the emulator on a memory card is currently the best thing to do!).
Due to #5 and #4, the emulator's configuration may not be loaded at startup if the device cannot be accessed.
Anything under "Future enhancements" isn't going to be done by me for v1.51b because I feel that it's not going to be productive for me at this moment.
Future enhancements:
Port PicoDrive v1.85 over, although the assembly memory module stubs need to be written from scratch.
Connect with Notaz and get the PlayStation 2 port of v1.85 integrated with his repository (So that it'll automatically receive updates whenever PicoDrive gets updated).
Probably fix up the text colour code within menu.c. It currently works because the default colours are black (for the background) and white (for the text). The alpha bit (Bit 15) is set accordingly because black is 0x0000 (transparent) and white is 0xFFFF (Opaque). Since they are at the extreme ends of the colour values, the fact that the GS doesn't use R5G6B5 (It uses A1B5G5R5, where A1 at 1 = opaque) isn't apparent.
Prerequisites for compiling the PlayStation 2 port's source code (Please use their latest available versions!):
libmad and its dependencies.
libpng and its dependencies.
gsKit and its dependencies.
The homebrew PS2SDK.
Downloads/Links
PicoDrive v1.51b for the PlayStation 2 (v1.11): http://www.mediafire.com/downloa ... PS2-151b-111_bin.7z
PicoDrive v1.51b for the PlayStation 2 (v1.11, source code): http://www.mediafire.com/downloa ... 5DPicoDrive-151b.7z
PicoDrive v1.35b for the PlayStation 2 (v1.00): http://www.mediafire.com/downloa ... PS2-135b-100_bin.7z
PicoDrive v1.35b for the PlayStation 2 (v1.00, source code): http://www.mediafire.com/downloa ... 5DPicoDrive_135b.7z
As usual, please do not hotlink to the file as the link/filename will change with every release.
更多资料,请关注:http://ichiba.geocities.jp/ysai187/projects.htm
由于作者即将去服兵役,所以更新估计不会太多了 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
1
查看全部评分
-
|