What is Play! ?
Play! is a PlayStation2 emulator for Windows, macOS, UNIX, Android, iOS & web browser platforms. For more information about this project please visit the "About" section of this site.

Compatibility Status
Fetching compatibility status...

Development Log

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-08 00:00:00
The structure used to store the state of the controller is a bit different (again) from the stuff I had already implemented, so I needed to change that a little bit. It's not quite finished yet, but I hope to have it done tomorrow.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-07 00:00:00
Completed the shaders required to add support for those exotic texture clamping/wrapping modes :


Screenshot #000140 Screenshot #000141


Almost everything in these screens renders perfectly now. The cursor was broken with the shaders for some reason and there's a little fade texture that should be visible that isn't. Even though the speed isn't really good, I think this part is fine for the moment. Next, I'll work on making the controller work to be able to make the game go a bit further.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-06 00:00:00
Seems like there's no easy solutions that would allow us to implement those 2 "clamping" modes with OpenGL. One thing we could do is reorder the pixels in the texture by simulating the transformed texture coordinates and using that as a texture instead of the real one. Another idea would be to use a pixel/fragment shader and restrict the texture coordinates by ourselves. The shader idea is probably the most efficient one but won't work with older video cards. I think I'll go ahead with the shader idea for now.

I've started working on it a little bit and I should be done tomorrow.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-05 00:00:00
Fixed the colors with a quick hack that'll do the job for this game:


Screenshot #000138 Screenshot #000139


Tomorrow, I'll see how I can add support for the pattern and region clamping modes in the OpenGL renderer to fix the background of the window.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-04 00:00:00
Fixed the PSMT4 swizzling/storage routines in the emulator:


Screenshot #000136 Screenshot #000137


The colors are wrong because the CLUT still isn't applied on this, but that'll come next, and the background of the window might be using one of those special pattern clamping modes which aren't supported. But everything is starting to look better now.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-03 00:00:00
I rechecked the GS command log when it's drawing the screen and found out that it was writing to the TEX2 register specifing a PSMT4 texture format instead of PSMT8 that is specified in TEX0. After doing some tests with the PSMT4 texture format/swizzling, I can confirm that the textures are indeed in PSMT4 format.


Screenshot #000135


This picture shows one of the textures used in the screen with no CLUT applied and with a bit of manipulation done in Paint. So tomorrow, I'll work on fixing the swizzling routines to make the textures display correctly in the emulator.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-02 00:00:00
Today, I rechecked the GS memory addressing routines, but everything seems to be alright on this side. I don't have other ideas for the moment, so I'll keep thinking about it.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-07-01 00:00:00
The textures seem to come directly from the data file on the DVD with no modifications, so we can exclude any CPU bugs. The texture is transferred as a PSMCT16 buffer but is bound as PSMT8. So the problem might lie in that swizzling stuff... I'll keep exploring this possibility tomorrow.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-30 00:00:00
Implemented VU instructions ILWR, IBGTZ, IBLEZ and JALR.

As I suspected, the game uses a VU microprogram to display a simple 2D screen:


Screenshot #000134


It seems that we're getting to the point where the game displays the screen to ask if the player wants to play without a memory card. Even though the textures are totally screwed up, the thing seems to be accurate primitive wise and we can even see the backgrounds of the "windows" moving like it does in the game.

I'm going to work on getting the textures to be displayed correctly next.

Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-29 00:00:00
I found out that one of the patches I had created earlier on was related to DVD reading. So I removed it and tweaked a bit the high-level OS, and the NULL ptr problem seems to have disappeared.

The game still doesn't display anything interesting, but it seems that some VU microprogram execution requests are going through, so that might be where the interesting stuff lies. There are some missing instructions that I'll have to add first.

<< Older Log Entries Newer Log Entries >>