The above video goes away if you are a member and logged in, so log in now!
resurrecting old thread
if I/O chip which is the PS1 cpu is used to do I/O tasks such as reading CD-ROM when running native PS2 games, then how are games loaded when the console is in PS1 mode? the PS1 cpu has enough power to run PS1 code AND do I/O ?
The PS1 didn't have a dedicated IO processor, IIRC. That would mean that the CPU was doing that work as well. Couldn't find anything to back up this assertion, so if anyone can prove me wrong I'm more than interested in hearing it.
Another problem with PS1 emulation is going to be the insanely low arbitrary limits on the PS2. If there's anything I've heard repeatedly, the PS2 is a pain in the ass to code for due to a cramped architecture. Not much RAM, the IOP space is pretty limited too. Much as I hate to say it, the X-Box would be vastly easy to code such an emulator for (and one has, even if it's a VERY limited PC port, and only really works for pirates since the X-Box DVD drive handles XA *very* badly.)
Bleemcast can come in gamepacks, but can also come as a single disc that you can swap with a psx original or backup. The compatibility is identical and pretty unbelievable if you ask me. PcsxDC isn't going anywhere. The next big Dreamcast PSX project is Chui PSOne Emulator for DC.
Well, of course pcsxDC isn't going anywhere. That kind of project is doomed from the start. The Dreamcast isn't powerful enough to run a PC-native emulator without heavy optimization or reworking of major CPU hogs in assembly. Add in the fact that it's a straight C port and has no optimizations and you can see where it just wasn't going to be all that effective from the very start.
If you're going to write a system emulation for a system that is >100% more powerful, you're going to need to tailor the code to the platform and use a lot of assembly to crank speed out of the most difficult routines.
If your platform has quirks and is already a bitch to code for (PS2), then you're going to have to do assembly or really optimized code to emulate anything at all with any semblence of full speed.
We may see a PS1 emulator on DC (which is beside the point since this is a PS2 site) eventually that actually works well, but a PS1 emulator on PS2 is going to take a miracle and a God-class programmer. That's not too likely at this point since even the basic emulators (NES, SNES, GB, C64, etc) have mostly passed the PS2 by.
Edit: Adjusted the 50% to 100%. Let's be honest-- emulation is computationally expensive in general. Unless your architecture is close enough that you can get away with wrapping API calls..
anas I said, an emulator on the EE side is really the only way.
An optimized emu is definitely possible. The GS is more than capable of doing the same "bleem"ing that ps1drv does, and doing the framebuffer effects and whatnot in hardware. this frees up some cpu time. ANd because ps1 games has definite memory limitations there should be memory accessible by the EE left to hold the ps1 code that's needed.
I didn't say it was easy.
Once the IOP is in ps1 mode as far as I know a REBOOT is required ot get i back out. and even if the EE is capable of switchngit ino ps2 mode again, that still pauses the emulation which is not acceptable.
According to some people, Sonny in fact made a software emulation an dit works well. i've yet to see any proof of this. but anyone who has an original JP ps2 migh t want to investigate, as these are the machines that suppossedly have it. (I know they had the dvd player on the memcard, for example)
First revision US PS2s also needed the DVD player on the memory card, IIRC. That's why the CD came with the remote control. Even later units, you might find a newer version of the DVD player on the disc than what you have in the firmware.
However, I agree. It's possible-- but totally infeasible. To be blunt.. the PS3 is coming. The 360 is here. If we're going to see PS1 emulation, it'll be on a protection-broken PS3 since I doubt there's even a single coder on these forums who would want to undertake such a thankless and difficult ("Why doesn't XYZ work? FIX IT!") task, much less on an obsolete platform.