PDA

View Full Version : FF9 crashing


Nezzar
December 15th, 2002, 19:37
I've tried almost all plugin combinations and settings but it keeps crashing after the screen saying "published by square europe" or something. I guess, it's a bug in the emulator since it crashes with every plugin combination. I've tried internal HLE Bios and a real one as well as the interpreter and DynaRec. Everything leads to a crash at the mentioned point.
So if anybody has an idea what's going on, I'd appreciate an answer tounge.gif

Specs are in profile

PS: I haven't found any compat reports in the databases of psxf and ngemu either.
PPS: It's the pal/german version

linuzappz
December 15th, 2002, 21:32
hi, sorry, ff9 doesn't works with pcsx, and i don't have it to fix it :(.

Nezzar
December 16th, 2002, 10:22
OK, no prob then :) Thought it was my frickin pc :)

@ruantec
December 20th, 2002, 23:32
I know about this problem too.....you get a message telling you that you are out of memory.......right???? well iŽll check the pcsx code maybe i found a way how to fix this probl.

Nezzar
December 21st, 2002, 12:27
Yeah, something about "blahblah tried to access blahblah. Not allowed blahblah".

@ruantec
December 21st, 2002, 14:12
I know this problem too because i own the German version of final fantasy 9.... so am now checking the code for solve the problem...but i still donŽt understand why this problem accur...................:-(

linuzappz
December 22nd, 2002, 04:07
i actually know what's the problem, but since i don't have ff9 i can't fix it :(, if u want i could send a beta source that's close to fix it, maybe u can work it out :).

@ruantec
December 22nd, 2002, 11:36
Ok no problem just send me the beta....iŽll check it out :-)

btw the error message is this:
Instruction in "0x0041f11f" make no reference to the memory in "0x00dc1000" the memory canŽt "read"

well i traslate the error message....(i get it in spanish ;-))

but i think i know where is the problem.....it seems to be a problem reading the mdecs of final fantasy 9. i try with the cd4 witch doesnŽt contains a movie at the begining...and it works just perfect...iŽve also load a save game and it works perfect. so is a problem reading the mdecs.

another problem is entering the battles...if you use the dinamrec the game freeze but if you use the interpreter it works fine.

please send the beta here: joelaso_21@hotmail.com

Xeven
December 23rd, 2002, 00:05
no, the crashing problem is fixed by emulating the DMA timing for MDEC_out / GPU slice correctly. The actual problem left is that the MDECS will be loaded at VRAM (0,0), in a single column. Hope you can find a solution for that. :)

@ruantec
December 23rd, 2002, 13:38
Thanx i think i have found the problem.......maybe i have solution soon for it... am also trying to fix a bug in crash bandicoot 3

@ruantec
December 23rd, 2002, 14:59
Good news!!! the crashing problem is fixed now! everything is working fine(mdecs etc.)... except the battles..but it can be fixed by activating the interpreter cpu untill i find a solution.

Note: I own both versions NTSC & PAL and both are working!

linuzappz
December 24th, 2002, 01:02
that's great :), can u send me changes?
thx

@ruantec
December 24th, 2002, 19:10
Well iŽve actualy found a problem with the fix...if you use the fix i send you it will work fine with ff9 movies but with other games the movies will get too slow.

Xeven
January 7th, 2003, 04:59
Okay, after a bunch of heachace tables, here's what i found out. What's actually happening with mdecs in some games such as ff9 is that the software expects the MDEC_IN_SYNC (or mdec busy) signal to be toggled while the mdec is being decompressed. Once it's set all the time, then ff9 mdecs work. BUT, some other games expect this bit to be OFF all the time (i.e Dino, gundam etc) or mdecs won't work at all. Although i thought this was the case at first, it was only half true. The MDEC_IN_SYNC signal should remain ON while the MDEC is decompressing, and should only be turned OFF at the last Macroblock, which actually make much sense from a hardware point of view. In FF9 what's happening is that, since the MDEC_IN_SYNC is turned off at the first macroblock, the software considers this as the end of the row and hence moves to the next row. Which produced the "column" effect i was talking about in the previous post. So inorder to solve this problem then the following should be done.

1. Correct DMA timing for MDEC_out / GPU slice.
2. Unsetting the MDEC_IN_SYNC only in the last macroblock. For example for a 320x240 image where macroblocks are arranged left -> right. Then the bit should only be unset in the last macroblock or in this case 320/16 = 20th.

This should fix this problem, and not screw up mdecs for other games as well. I still don't know if some other things might contribute to this, or if i'm seeing nothing but a side effect of the real problem, but i'll try to see if i can look for more once i have more time, or when im not as lazy as i am now :heh:.

@ruantec
January 18th, 2003, 23:36
Thanks Xeven! i hope to get time to do this since am working in other projects now under linux...maybe linuzappz will do it first if not i will try to get time to do it...