abaire / nxdk_pgraph_tests

Tests to verify xemu handling of various pushbuffer commands
Other
12 stars 8 forks source link

Hang on hardware #15

Closed GXTX closed 2 years ago

GXTX commented 2 years ago

Running on an 1.0 Xbox with XboxHDMI installed using m8plus kernel I am unable to run this. It either hangs before switching to rendering the first image or while rendering the image.

Build env is WSL w/ Ubuntu, clean nxdk base by directly cloning your fork and specific branch instead of having a remote checkout, checkout the submodule required by pgraph_tests, build using make.

It's possible that something with the HDMI patches are causing this however, I currently do not have anything system in place to test custom code.

abaire commented 2 years ago

Interesting, I'm also running on a 1.0 Xbox but it's a debug conversion.

If you go into the nxdk there's a samples directory, the basic samples (e.g., triangle https://github.com/XboxDev/nxdk/tree/master/samples/triangle ) should follow a very similar path to what this tester does, at least up until you're attempting to run specific tests. I'd be very interested to know if they hang in the same way.

Just to double check, it's hanging on the menu, or when attempting to run a specific test? It shouldn't hang ever, but knowing exactly where it's hanging that would narrow things down.

GXTX commented 2 years ago

I retested using the github generated iso and extracting and same issue.

it's hanging on the menu, or when attempting to run a specific test

I cloned a couple of days ago and it was able to get into the first test then freeze, today with a fresh clone it's freezing just before launching into the first test with the countdown stopping at something like 13ms remaining. Maybe tomorrow I can go back and bisect.

nxdk there's a samples directory, the basic samples (e.g., triangle

Triangle displays properly without hang.

abaire commented 2 years ago

Ah, I just realized that the default path used to save the output expects a debug harddisk layout, if you build with DEVKIT=n it might work. I suspect it's actually hitting an assert when it fails to save the output of the framebuffer after running the test (which happens around the same time as the buffer swap happens, so it might not update the display).

GXTX commented 2 years ago

Running from E:\nxdk_pgraph_tests is working as expected with DEVKIT=n. Generally I keep testing stuff on F:\ with E:\ being my /real/ dash.

abaire commented 2 years ago

Makes sense, at some point it'd be better to parameterize this or have it select a directory based on the location of the xbe. The workflow should probably also generate a non-devkit and a devkit variant so it's clearer which should be used.