![]() |
![]() |
![]() |
![]() |
![]() |
Make 'Ys I & II Eternal Story' playable.
Posted on 2006-02-08 00:00:00 |
Found out what was causing the columns to be swapped. It was PPACB that was giving a reversed result, so I fixed it.
Now everything is fine for intra macroblocks, but some frames remain screwy when they're using predicted macroblocks. For example, the frame with the DigiCube logo which comes from an I-picture looks as it's supposed to look, while previous ones have some visible artifacts due to bad predictions. Some artifacts are visible too in the second picture above. I think the problem lies in the dequantisation of these blocks. I haven't really tested them in my experimental MPEG-2 decoder, so I'll be checking if everything is alright on this side tomorrow. If it's not caused by problems from the MPEG-2 decoding functions in the IPU, then it's probably related to the newly implemented MMI instructions. Also made some minor changes: - Isolated the computation of the lookup table for the Cr and Cb indices, used in the CSC command, in a function and made it so it's called only one time and not each time a CSC command is executed. - Added some Y position compensation in the GS handler when using an interlaced mode (fixes jumpy screen). But I'm not sure this is the appropriate way to do this though... |