PCSX2 / pcsx2

PCSX2 - The Playstation 2 Emulator
https://pcsx2.net
GNU General Public License v3.0
11.27k stars 1.57k forks source link

Special Boot Roms (DEX, PSX) not supported #1549

Open Nisto opened 7 years ago

Nisto commented 7 years ago

I could not (fast nor full) boot games with the Japanese version of BIOS v01.80(28/10/2003) on PCSX2 v1.4.0. Settings used (including plugin selections) are all exactly as initially presented/configured. I use the binary release of PCSX2 from pcsx2.net, to be exact.

The following models have this BIOS: DESR-5000 DESR-5100 DESR-7000 DESR-7100

Checksums of the BIOS file: SHA-1: AA4A35C14EE342CF7A03B1DDE294CA10E64889E1 MD5: 1C6CD089E6C83DA618FBF2A081EB4888

I tested the following Japanese game releases: Silent Hill 2 (SLPM-65051) Silent Hill 3 (SLPM-65257) Final Fantasy X (SLPS-25050)

System specs: OS: Windows 7 SP1 (64-bit) CPU: Intel Core i7-6800K @ 3400MHz (stock) GPU: Asus GeForce GTX 970 @ 1114MHz (stock) RAM: HyperX Fury 4x8GB (32GB) DDR4 @ 2133MHz (stock)

This was the first BIOS I tried using with PCSX2. The emulator does not crash with Japanese v01.60(27/04/2001).

FlatOutPS2 commented 7 years ago

Have you tried redumping the bios from your PS2?

Nisto commented 7 years ago

I really don't think there is any need to redump it. It matches with many other people's dumps on redump.org (database, not a BIOS file).

ssakash commented 7 years ago

Could you provide the content of your emulog when the game crashes ?

Nisto commented 7 years ago
Opening plugins...
    Opening GS
    Opening PAD
    Opening SPU2
Current Renderer: Direct3D11 (Hardware mode)
    Opening CDVD
isoFile open ok: C:\Final Fantasy X (Japan).iso
    Image type  = DVD
 * CDVD Disk Open: DVD, Single layer or unknown:
 * * Track 1: Data (Mode 1) (2238352 sectors)
    Opening USB
    Opening FW
    Opening DEV9
McdSlot 0 [File]: C:\PCSX2 1.4.0\memcards\Mcd001.ps2
McdSlot 1 [File]: C:\PCSX2 1.4.0\memcards\Mcd002.ps2
Plugins opened successfully.
EE/iR5900-32 Recompiler Reset
    Bios Found: Japan   v01.80(28/10/2003)  Console
    BIOS rom1 module not found, skipping...
    BIOS rom2 module not found, skipping...
    BIOS erom module not found, skipping...
(UpdateVSyncRate) Mode Changed to NTSC.
(UpdateVSyncRate) FPS Limit Changed : 59.94 fps
# Initialize memory (rev:3.69, ctm:392Mhz, cpuclk:294Mhz detected)

PlayStation 2 ======== Hard reset boot
 ROMGEN=2003-1028, IOP info (CPUID=1f, CACH_CONFIG=0, 8MB, IOP mode)
 <20031028-053521,ROMconf,PS20180JC20031028.bin:12064>
# Total accessable memory size: 64 MB (B:2:8:0) (369:2:7c30)
# TLB spad=0 kernel=1:12 default=13:32 extended=33:41
# Initialize Start.
Closing plugins...
    Closing DEV9
    Closing FW
    Closing USB
    Closing CDVD
    Closing SPU2
    Closing PAD
    Closing GS
Plugins closed successfully.
Shutting down plugins...
Plugins shutdown successfully.

I don't know if it changes anything, but the Windows Problem Reporting dialogue ("pcsx2.exe has stopped working") always comes up before it loads McdSlot 1. Or at least it temporarily stops writing to the log as of that point (until I press "close the program" or close the dialogue).

willkuer commented 7 years ago

But why does pcsx2 continue writing in the log after it crashed? Or do you get the 'stopped working' dialog and pcsx2 is still running?

willkuer commented 7 years ago

Have you tried running the bios (no disc)?

Nisto commented 7 years ago

But why does pcsx2 continue writing in the log after it crashed? Or do you get the 'stopped working' dialog and pcsx2 is still running?

Correct - pcsx2 stays open until I close the dialogue, or press "close the program". When the dialogue disappears, pcsx2 immediately writes some more to the log and terminates.

Have you tried running the bios (no disc)?

I had not tried that. Tested it now, but no difference.

ghost commented 7 years ago

I remember having to shorten the file names for dump i made or it wouldn't show the console version number properly in osdsys. It'd say Console: Unknown instead of Console: SCPH-39001. Not sure if it's related to your crash, but you could try renaming the files maybe

Nisto commented 7 years ago

Renaming did not help. It was already named very much alike my v01.60 BIOS file (which works), so I doubt that's it.

ghost commented 7 years ago

Damn, sorry about that. Dunno what's up with it then

sudonim1 commented 7 years ago

Total accessable memory size: 64 MB (B:2:8:0) (369:2:7c30)

Huh? Retail PS2s don't have 64 MB, only TOOLs do.

Nisto commented 7 years ago

Total accessable memory size: 64 MB (B:2:8:0) (369:2:7c30)

Huh? Retail PS2s don't have 64 MB, only TOOLs do.

Okay. This spawns two questions:

Are BIOSes from DESR-xxxx models supported? Because as I mention in the OP, the BIOS comes from such a model. If the emulator only supports BIOSes from SCPH models, perhaps it's worth updating the documentation.

Also, has anyone actually tried said BIOS on PCSX2? If it works, what are your system specs and PCSX2 settings?

ghost commented 7 years ago

That's the ps2 loaded with the DVR dubbed the PSX. I doubt it would work properly. Didn't realize it till I looked it up on google

https://en.wikipedia.org/wiki/PSX_(digital_video_recorder)

sudonim1 commented 7 years ago

Oh, okay. As far as I know, we haven't put any effort into supporting these, and probably won't.

gregory38 commented 7 years ago

IIRC, physical memory supported is hard coded to 32MB. IMHO, the fastest solution would be to patch the bios to report 32MB instead of 64MB.

mirh commented 7 years ago

@Nisto Perhaps edit the title to something like "PSX BIOS crashes PCSX2 on boot"

sudonim1 commented 7 years ago

Obviously crashing is less than ideal and should be debugged, but actually booting with this BIOS is probably not important to the project.

ramapcsx2 commented 7 years ago

If the machine was different enough to sport double the EE memory, you can count on the BIOS being totally different than everything we expect/hard code in PCSX2. It's a use case we haven't even considered when writing documentation on BIOS dumpers.

ramapcsx2 commented 7 years ago

We may get back to these kinds of extras one day but for now I'll close this issue.

mirh commented 7 years ago

I thought this was what Low Priority and/or Maybe? labels were for.

Nisto commented 7 years ago

I agree with mirh. I have the feeling no one's ever going to be looking for issues to actually fix under Closed.

ssakash commented 7 years ago

I also agree with mirh. Maybe let's reopen it and add a low priority/maybe label as suggested earlier ? Closing a valid issue isn't good IMHO.

ghost commented 7 years ago

It sounds like emulating another system. Not sure if there's really any point to leave this open

http://ichiba.geocities.jp/ysai187/PS2/PSX.htm

Edit: It's probably crashing on boot because it expects the hard disk to be there with the proper files. Well and the missing flash chip / dvr hardware too

sudonim1 commented 7 years ago

I really don't think anyone should care about emulating that PS2 based machine, especially not with the current state of the project.

Nisto commented 7 years ago

Instead of letting the emulator crash, can BIOSes be "rejected" somehow and cause a warning? Something like "PSX BIOSes are not [yet] supported." I'm not saying specific files or specific versions should be banned, but if there's a way to properly distinguish PSX BIOSes from "true" PS2 BIOSes by some identifier in the files or something, then that would be best of course.

Better than closing an issue that's actually marked as a bug and then just sweeping it under the rug. If it's going to be closed without any fix/update, assign a more explicit label. Just my two cents.

ramapcsx2 commented 7 years ago

It's actually nice if the emulator tries to work with special roms. Dumps from TOOL dev stations come to mind. I wouldn't add a filter for valid dumps for that reason. But if there's enough interest, it can be done.

mirh commented 7 years ago

I really don't think anyone should care about emulating that PS2 based machine, especially not with the current state of the project.

And indeed nobody is expecting this to work with the current state of the project 😛

mirh commented 7 years ago

Could this be renamed to a more fitting description?

StillPlay2 commented 12 months ago

These bioses require more RAM, the PSX came with total of 72MB. Compared to the PS2 of 32MB.

mirh commented 12 months ago

So this may relate to #5803?

nroach44 commented 9 months ago

Just to put it here:

The PSX is mostly a 50K, with 72MiB RAM, 8MB IOP RAM, Dragon Mechacon, pre-deckard IOP, a small flashrom (xfrom:/), a DVR processor emulating the harddisk (at the IDE level), and a second ODD (dual head single spindle).

It has a mostly standard rom0: minus OSDSYS, FONTM and a handful of other modules. There is no DVD player in ROM, it's part of the XMB OS.

It boots via memory card, or xfrom:/, then the xfrom:/ elf shows a splash and boots an XMB from the hard drive.

The second laser is a completely different type for burning DVD-Rs. They fail often, and by putting the console into "game mode" (via fmcb), the normal KHS laser is used instead.

I don't see it being worthwhile to emulate the DVR features (which would also stop the XMB OS from working), but it would be nice to use PCSX2 to develop software compatible with the stripped down BIOS.

For example, KernelLoader uses FONTM and some other modules that means it won't finish starting up, and since the UART isn't known on the PSX, it's quite difficult to work on.

At the very least as mentioned above, it would be nice to either disallow loading the BIOS, or clearly mark which BIOS files in the list come from what type of unit. I currently have many different entries in the list, dumped from my collection, and it's not clear which are PSX vs normal SCPH.