Cxbx-Reloaded / game-compatibility

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

Jet Set Radio Future [NTSC Combo Disc] [SE-010] [1.04] #409

Open CakeLancelot opened 7 years ago

CakeLancelot commented 7 years ago

Description

The game performs similarly to it's PAL counterpart.

---------------------------
Cxbx-Reloaded
---------------------------
Received Exception Code 0xC0000005 @ EIP := 0x000FFA09(=unknown+0x0)

  Press "OK" to terminate emulation.
  Press "Cancel" to debug.
---------------------------
OK   Cancel   
---------------------------

Dumps

KrnlDebug.txt 1.04: XbeJSRF.txt

Status

Previous behavior: Crashes on launch (see here) Crashes at the first cutscene. Also showed same graphical errors as #178.

Current behavior: Functions similarly to it's PAL counterpart. (Game plays relatively well with minor issues: Graffiti and shadows are missing, boost dash blanks screen.)

Screenshots

N/A

Additional Information

This is the NTSC disc combo, it also included Sega GT 2002 and some game demos/videos. Came bundled with the xbox at some point. Tested on 94a2ddae (Oct 8 2017)

Logitech-byte commented 6 years ago

Always recieve this after the loading intro. Combo disc tested.

sem titulo

luffytam commented 6 years ago

Receive exception since this year cxbx-reloaded git,running on a pc with a AMD gpu jsrfexception JSRFKrnlDebug.txt JSRFXbe.txt

LukeUsher commented 6 years ago

I'm unable to reproduce this issue on my machine, could you try a release build and see what happens?

Jack-Anstey commented 6 years ago

I've got a similar issue. I am using a region free copy that only has JSRF (Sega GT 2002 is not on this disc) image

KrnlDebug.txt 1.01: XbeDump.txt

This is using the release from appveyor from January 25th 2018

Logitech-byte commented 6 years ago

Do you guys check the sun light in the sky? Make sure it have some object or texture.

Logitech-byte commented 6 years ago

sem titulo

A few pixels appears here.

sem titulo 2

Logitech-byte commented 6 years ago

It must be some bad texture with a bad code in.

Logitech-byte commented 6 years ago

Thanks guys for this version.

mnadareski commented 6 years ago

Tested with 15335306:

KrnlDebug.txt 1.01: Xbe.txt

Opening credit screens show properly:

image

Main menu with background music appears to show correctly:

image

Characters, rails, objects, and floors all appear to render in-game:

image

At least in GG's garage, lighting, item placement, textures, and character models appear correct, even from first person view:

image

Meters, effects, trick names, and score all appear properly:

image

Idle animations also appear to run smoothly:

image

Ground effects (like the dust plume) appear correctly:

image

Mission dialog boxes appear with proper static effect:

image

Paint cans also show up properly and animate:

image

Graffiti does NOT show up after spraying:

image

Tried to get an image of the boost effect, but unfortunately (as happened a lot in testing) it claimed my "disc was dirty", even with an unmodified (to my knowledge) XBE.

ObiKKa commented 6 years ago

There's also a third typical problem with this game - the big buildings and man made objects tend to lack their own shadow casts. Also I recommend that you make use of an online photo collage website to compile 2 or a few screens into one by one montage screens. It's to make each post in the GitHub thread smaller. Coz we can all expect further bugs and posts to be made about these games over time.

LukeUsher commented 6 years ago

The Graffiti Pixel Shader (Created when spraying Graffiti in the garage) fails to compile, the generated shader assembly is this:

ps.1.3
tex t0
tex t1
tex t2
tex t3
; xmma t2.rgb,discard,discard, t2.rgb,r1.a,0.000000f,0.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
mul t2.rgb, t2,r1.a ; d0=s0*s1
; +xmma t2.a,discard,discard, t2.a,r1.a,0.000000f,0.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
+mul t2.a, t2.a,r1.a ; d0=s0*s1
; xmma discard,discard,t2.rgb, t3.rgb,r1.a,t2.rgb,1.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
mad t2.rgb, t3,r1.a,t2 ; d0=s0*s1+s2
; +xmma discard,discard,t2.a, t3.a,r1.a,t2.a,1.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
+mad t2.a, t3.a,r1.a,t2.a ; d0=s0*s1+s2
; xmma t0.rgb,discard,discard, t0.rgb,v0.a,0.000000f,0.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
mul t0.rgb, t0,v0.a ; d0=s0*s1
; +xmma t0.a,discard,discard, t0.a,v0.a,0.000000f,0.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
+mul t0.a, t0.a,v0.a ; d0=s0*s1
; xmma discard,discard,r0.rgb, t1.rgb,r1.a,t0.rgb,1.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
mad r0.rgb, t1,r1.a,t0 ; d0=s0*s1+s2
; +xmma discard,discard,r0.a, t1.a,r1.a,t0.a,1.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
+mad r0.a, t1.a,r1.a,t0.a ; d0=s0*s1+s2
; xmma discard,discard,r0.rgb, t2.a,t2.rgb,r0.rgb,1-t2.a ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
lrp r0.rgb, t2.a,t2,r0 ; d0=s0*s1+{1-s0}*s2=s0*{s1-s2}+s2
; +xmma discard,discard,r0.a, t2.a,1.000000f,r0.a,1.000000f ; d0=s0*s1, d1=s2*s3, d2={s0*s1}+{s2*s3}
+add r0.a, r0.a,t2.a ; d0=s0+s1

And compilation errors are:

(Statement 6) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3
(Statement 7) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3
(Statement 8) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3
(Statement 9) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3
(Statement 12) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3
(Statement 13) (Validation Error) Read of uninitialized component(*) in r1: r/0 g/1 b/2 *a/3

This is most likely the issue why Graffiti doesn't work right

PatrickvL commented 6 years ago

We have to look into what's supposed to be in r1, and more specifically in it's alpha channel.

LukeUsher commented 6 years ago

It must be an issue with our shader converter: Basis that it is not possible to read from r (temporary) registers without writing to them first, earlier in the shader: The conversion must be missing something.

PatrickvL commented 6 years ago

As far as I can tell by the commented lines, there's no assignment to r1 in the Xbox shader, so it's more likely it's depending on some default content

infinitephantasm commented 4 years ago

graffiti when in gameplay seems to have a strange issue where the contrast/colors are wrong, and other graffiti's alpha channels seem to also get loaded in? image image

this isn't the case when changing graffitis in the garage, or in cutscenes (e.g. chapter 2's intro cutscene, where you can see poison jam's graffiti) image

not quite sure as to why this is happening. on cxbx-reloaded 63bc65ec.

infinitephantasm commented 4 years ago

builds above 63bc65ec (this appears to happen in c6875ad9 and 8fd6253a) appear to be causing crashes when certain things involving the camera occur (camera switches in cutscenes and the camera changes done when picking up graffiti souls, from what i've been able to tell) it always seems to be random, but it's always the same issue. i can't find anything in the kernel logs that could be the issue, only DSOUND errors that seem to be in both 63bc65ec and above (and it shows up beforehand iirc)

also possibly related, the startup time of the game (logos appearing) seems to be much slower compared to 63bc65ec

ipwwn commented 4 years ago

Can confirm build from December 2 2019 (63bc65ec) is way more stable than current build, I just played the whole Rokkaku Dai level without crashing whilst in the newest build it would be a matter of luck not to crash at around 5 minutes of gameplay

xmat123x commented 4 years ago

On an rtx2080 the player character and NPCs turn invisible. Using the DXVK wrapper as mentioned in the PAL thread for AMD RDNA users hasn't fixed the issue either.

I also got a game crash in the first mission but haven't been able to replicate it.

lsdxm commented 4 years ago

The game plays completely perfectly for me, including boost dash (but the graffiti issues still exist, I’m not observant enough to notice if shadows are working or not), until I get to Shibuya Terminal, where the FPS comes to a screeching halt. Professor K’s text bubbles take half a minute to catch up and go off the screen, and when I’m looking at a crowd or anywhere that renders the center of the level (the bus terminal) it slows to about half speed.

I originally ran it at 1080 but tried 1024x768 with the same results, if I go lower the game doesn’t load; I’m gonna try turning off vsync and see if it helps, will update then.

Edit: turning off vsync didn’t help, and I’ve now realized that the intro (Which also takes place in Shibuya terminal) isn’t supposed to be slomo. I’ve never played this on console so I just thought it was supposed to be that way, but when I get to the part that shows them skating around it jumps in and out of slomo whenever the terminal area is in view.

Edit #deux The multi thread speed hack fixes it, but then it crashes semi-regularly.

TheSkidd commented 3 years ago

Graffiti seems to render correctly now. Shadows also work but they'll turn white for a split second on occasion. (Using the July 2 build.)