![]() |
![]() |
![]() |
![]() |
![]() |
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-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: 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. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-28 00:00:00 |
Found nothing of importance yet... Hopefully, I'll have found something tomorrow. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-27 00:00:00 |
Added basic support for the timers and the related interrupts. It doesn't seem to help much though : the game still crashes at the same place.
I'll study the sector read mechanism a little bit more and try to figure out why the sectors needed aren't available to the routine that makes the game crash. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-26 00:00:00 |
This NULL pointer problem is the same one as the previous one. I don't know why it's occuring again yet, but it probably has something to do with the "high-level" BIOS. The game also uses one of the timers which I haven't bothered implementing. So I think I'd be better implementing that and see what happens after.
I've already started working on that a little bit... The game was using an odd mechanism to be able to write to the timer registers that was involving setting the COP0 in "error exception" mode and returning to the calling function by using ERET. While this mode wasn't supported, it didn't make the emulator crash... I made the necessary changes to ERET to make this kind of "hack" work properly. Next, I gotta add an actual timer module and save the values written to the registers. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-25 00:00:00 |
The crash from yesterday was due to some problems with thread scheduling. I changed some things and it seems to work alright for now.
Fixed a little bug with the handling of the DIRECT VIF command. Added support for writing to the DISPLAY1 register. We're starting to get interesting output in the GS, but there's nothing interesting yet to show. But for the moment, there's still another problem with some NULL pointers that I'll be checking next. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-23 00:00:00 |
Got the program to read from the DVD successfully, and as I thought, this fixed the NULL pointer problems I was having.
It seems to go a bit further now, but it still crashes because of something else. I'll continue my investigation tomorrow. |
Make 'Castlevania: Yami no Juin' work up to the title screen.
Posted on 2006-06-23 00:00:00 |
I made some changes to how the order of execution of thread because I found suspicious that two threads were left doing nothing. Those two threads are responsible for controlling the CDVD stuff. There was more CDVDFSV methods that were missing and there's still a bit more. Also, there's chances that this routine I was talking about yesterday is used for reading stuff off the DVD, but I'm not sure... So I'll complete the missing methods tomorrow, but I have no clue if that's going to fix the problem... |
<< Older Log Entries | Newer Log Entries >> |