Cxbx-Reloaded / game-compatibility

Cxbx-Reloaded game compatibilty list, using GitHub issues
GNU General Public License v2.0
114 stars 29 forks source link

Virtua Cop 3 [00000000] [1.00] #132

Open PatrickvL opened 7 years ago

PatrickvL commented 7 years ago

Issues:

From @blueshogun96 on April 10, 2017 23:3

vc3_intro vc3_servicemenu

Okay, after adding a couple of signatures (D3D::CDevice::KickOff (called from D3DDevice_KickPushBuffer) and D3DDevice_DrawVerticesUP), I was able to get Virtua Cop 3 working somewhat again.

Now, there's a few important things to remember about Virtua Cop 3. I have a debug Xbox, so I'm able to play this game on some real hardware. Without 128mb of Ram as well as HD component cables hooked up, this game will not go any further than this. IIRC, there is a function used to detect which type of component cable is connected. It's been ages since I've looked at the XDK functions for this, so it may be a requirement.

Lastly, I was only able to get this to show up in release mode. Debug builds just give me an infinite black screen.

Shogun

Copied from original issue: Cxbx-Reloaded/Cxbx-Reloaded#354

PatrickvL commented 7 years ago

From @LukeUsher on April 11, 2017 6:5

We have completely removed patches that software use to detect AV cable, etc. Instead, we implemented the Kernel functionality directly.

We emulate HDTV connected, but using standard NTSC video mode. Have a play with this to see if you can get it executing futher.

EmuKrnlAv.cpp: AvQueryAvCapabilities() return AV_PACK_HDTV | AV_STANDARD_NTSC_M | AV_FLAGS_60Hz;

Perhaps try playing with the flags. For Example: return AV_PACK_HDTV | AV_STANDARD_NTSC_M | AV_FLAGS_60Hz | AV_FLAGS_HDTV_480p;

PatrickvL commented 7 years ago

@blueshogun96 Is this a Chihiro title? (The arcade-like menu seems to indicate that.) Because in that case, this would be the first arcade title (that I know of) that's starting to show something!

PatrickvL commented 7 years ago

Also, look in EMUPATCH(D3DDevice_SetViewport) - it limits Width to 640 and Height to 480,

otherwise crashes occur

PatrickvL commented 7 years ago

From @BenNottelling on April 11, 2017 17:41

@PatrickvL Funny, If you comment out the code It doesn't crash.. I tested Turok, even with a custom resolution it didn't crash. Not quite sure why it's there tbh

((D3DVIEWPORT8*)pViewport)->Width = 640;
((D3DVIEWPORT8*)pViewport)->Height = 480;

Stop those from running ^

PatrickvL commented 7 years ago

From @blueshogun96 on April 11, 2017 18:50

@LukeUsher Unfortunately, it didn't work :( I tried setting the flags you specified including the widescreen flag also. I'm not sure which flags are specifically expected, nor am I sure where Virtua Cop 3 verifies this. Since I have my debug Xbox, I can play around with the settings and see which ones work for sure. Also, I had a question about HalBootSMCVideoMode. Do you think it could be checking that? Do the same flags apply in that new function you wrote? I copied and pasted those flags to hard code it, but that didn't work either. Sadly I haven't found much info on that, so I was basically just throwing stuff out there.

Oh, and while I'm at it, I wanted to say that I'm impressed that you've removed my Jvs functions and STILL managed to get it this far. It's a good thing, as I initially thought that there was nothing I could do to avoid the Jvs and IN/OUT privileged instructions for the Chihiro hardware. I couldn't get to the JVS error screen without skipping these before.

@PatrickvL yes, that is a Chihiro title. I managed to get the error screen to show up in my earlier branch years ago, but never to the copyright screen. See above.

Also, removing the viewport limitation didn't work either. There's got to be something else stopping it. Just don't know what it is...

Shogun

PatrickvL commented 7 years ago

From @jackchentwkh on April 13, 2017 8:1

the virtual cop 3 requires 128MB ram when running on an original xbox hardware as I remember.

PatrickvL commented 7 years ago

From @blueshogun96 on April 13, 2017 18:45

As I already mentioned yes but I hear that doesn't become a requirement until you get ingame last I checked.

luffytam commented 6 years ago

Here's new progress in cxbx-reloaded git ccd0fe67

Log: vc3KrnlDebug.txt vc3Xbe.txt

the game boot without BGM and video. After you press start bring you to stage select with black screen so you need to press F11. This emu only success loading Mission3, 01

select Mission3 and press fire button. models are broken etc. and crash in 10sec. 02 03

UPDATE1: New log vc3removesoundKrnlDebug.txt If you remove all sound files it help emulator get further to the first guy, cutscenes not crash, but pull the gun trigger or get hit until continue screen still crash game 04 05 Videos https://youtu.be/0NEBxLmfpx8 https://youtu.be/TiSrImKj5QM

UPDATE2: New log vc3RemoveSndAndFldKrnlDebug.txt Remove all sound and fld files then game play is almost perfect, you can fire, reload and activate ES mode(slowdown enemy's ammo), crash in the first QTE cutscreen video https://youtu.be/s0gGHp_vJ48

UPDATE3: Diffent gpu has different visible object. is it because GTX750 have more VRAM than HD7650m? nvidiaKrnlDebug.txt cxbx gpu test https://youtu.be/eDcdgXorpTo

luffytam commented 6 years ago

OK to make everything work properly, switch to wireframe mode in mission select screen, after loading icon appear (the circle icon) switch back to normal mode, otherwise you cannot show everything just a dark scene

luffytam commented 5 years ago

latest version of cxbx make a huge progress on Virtua Cop 3, but some issue happen in my computer

My spec: AMD APU A4-4300M AMD HD7650m graphic chip, latest legacy driver test on both win7 and win10 x64

Mission3 is playable, minor water glitch Mission1 blank screen after entering building Mission2 totally blank screen, you can only see enemy's Lock-On-Sight blank screen also appear after showing sofdec/adx logo, i have a debug level log attached vcop3blank

Here's full debug level log, please report which one should i actually log vcop3 KrnlDebug.zip

digtal-devil commented 4 years ago

Game is perfectly playable, no crashes, sound works, graphics are almost perfect (in parts of the second mission, you get some black spots on the screen, and some of the slow motion shooting scenes are black screens with only the target outline of what you are supposed to shoot). Just finished the entire game now.

legend800 commented 4 years ago

There's been pretty much no change to this game since it became first emulated years ago. Just checked the latest build and it's the same issues:

General Issues: