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 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-07 00:00:00
Did some debugging to find out how to make the backdrops appear, but I didn't find anything yet. But I came across some unhandled instructions that I implemented: VMAXbc, VMINIbc, PCEQW and PPACH.

I'll keep looking for the solution tomorrow.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-06 00:00:00
The slowness seems to be caused by some useless 24-bits image transfers that contain only black pixels. I disabled these transfers for now and I'll be checking about this later.

I added support for the triangle fan primitive in the OpenGL GS handler and implemented the VSUBbc instruction in the VU COP module.


Screenshot #000115


The character status and the players/enemies are now visible at the same time, but the backdrops are still invisible. The game sends some display lists that have triangles sharing all the same point on the screen and I think that's why the backdrops aren't visible. I'll be investigating on this tomorrow.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-05 00:00:00
Fixed the behavior of DIV.S when dividing by zero (the correct behavior was to return MAX_FLT instead of returning an indeterminate result). This fixes the flickering in the scenes where we can see the large character art talking to each other.

Next: Gotta figure out about the slowness in some scenes and gotta fix the battles.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-04 00:00:00
Made the Q register of the VU context accessible through CFC2 as it should have been done. This fixes the problem with the field in the first scene (and others) not being visible. It also fixes the scrolling jerkyness problem in other scenes.


Screenshot #000113 Screenshot #000114


The scenes which had thier field invisible still aren't perfect though as the field keeps flickering. I'll try to see what's wrong with this and I also want to check if there's a way to improve the speed by improving the texture caching.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-03 00:00:00
Finalized the handling for the correct pixel storage methods for the pixel formats that were supported beforehand.


Screenshot #000109 Screenshot #000110
Screenshot #000111 Screenshot #000112


Most of the stuff is displaying fine now. The memory card menu is still a bit buggy and I'll try to see what's wrong with it later on. There's some places where we can see some clamping artifacts, but this is minor and will also be fixed later. The next things I wanna fix are the places where the field is not shown (like in the first scene in the introduction).

The last screen shot shows the battle mode which doesn't display quite right. The backdrops are invisible, the shadows aren't black for some reason, and when the HUD appears all the characters become invisible too. But I'm not going to touch this right away.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-02 00:00:00
Almost finished converting the image transmission and texture uploading routines. I need to finish the ones that use PSMT8 and I should be done.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-05-01 00:00:00
I was working on some classes that would make my life easier about converting the pixels (X, Y) position to an address pretty easily and making so using the most constants possible, but I broke it a little bit and couldn't complete it today. I'll keep working on that tomorrow.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-04-30 00:00:00
Well, after thinking this throught, I think that the lack of "swizzling" is definitively what's causing the problem here. So I'll need to implement that... it's going to add extra overhead though, but we have no choice if we want to be accurate.

I started rewriting the image transfering code to be able to support the new storage methods and added support for the PSMCT16 storage method. It fixed the problem in the Lobotomia demo where I had to hardcode a texture buffer width to make the fonts appear correctly.

I'll need to tweak the texture caching mechanism again then I'll be working on the other 32-bits pixel storage formats.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-04-29 00:00:00
After further inspection of the code, there doesn't seem to be anything wrong or suspicous.

The last thing I think it could be is that the way the GS "swizzles" its memory could make it possible to have 2 CLUTs living that near to each other... But implementing that could be kind of risky, so I'll have to think about it a bit more to convince myself that's the way to go.

Make 'Iris no Atelier: Eternal Mana' work.
Posted on 2006-04-28 00:00:00
I did some debugging today and found out the function that's responsible for allocating VRAM memory. I'll be checking tomorrow why's the function returning a pointer to a 0x200 bytes memory area instead of a 0x800 big one.

<< Older Log Entries Newer Log Entries >>