Can't get past second morgue scene in The Space Adventure Cobra

Issue #302 resolved
Former user created an issue

Original issue 302 created by icedomains on 2012-11-01T16:22:51.000Z:

What steps will reproduce the problem?
1. Find Tarbeige in Hebda City
2. Enter the morgue
3. Choose the correct coffin.

What is the expected output? What do you see instead?
The empty coffin opens and the game hangs... which shouldn't happen.

Load the savestate, then:
Look -> Area
Look -> Froggy
Think
Think
Open -> Third coffin from left

What version of the emulator are you using (official, SVN revision,...)?
Using revision 734 from the SVN. Happens (at least) with US BIOS 1.00, 1.10, 2.00.

Comments (6)

  1. Former user Account Deleted

    Comment # 1 originally posted by ekeeke31 on 2012-11-01T18:13:30.000Z:

    please upload internal game save instead (scd.brm) if possible

  2. Former user Account Deleted

    Comment # 6 originally posted by ekeeke31 on 2012-11-06T20:07:09.000Z:

    Well, that was an easy one: this game, like a few others I already knew, require some delay between the time a PLAY command is being sent by the game and the CD drive actually reaching its destination. I simply needed to increase the currently used delay values.

    Fixed in r735

  3. Former user Account Deleted

    Comment # 7 originally posted by iceknightmail on 2012-11-06T23:47:15.000Z:

    That's great news, thanks for fixing it!

    Just curious, is it calculating the delay based on the position that's being read and the destination?

    If it's currently a fixed delay and you need help making it accurate, perhaps somebody could write a simple Mega-CD program that shows the elapsed time between specific positions, so we could post the results that could be used as a guide to actually calculate it.

  4. Former user Account Deleted

    Comment # 8 originally posted by ekeeke31 on 2012-11-07T08:37:19.000Z:

    Well, even if there was someone writing a test program (which is very unlikely considering i don't know anyone else actually working on Mega CD emulation), it would probably not be so simple as the drive access time is not really consistent and depends on many other factors than only the moving distance.

    The fixed value represents the minimal time required to "initiates" the mechanism when it is paused or stopped (it should be larger when the disc is not spinning but games only need the delay when coming out of pause). It is currently set to 13 x 75hz interrupts, which makes 173ms ( approx. 10 lines).

    I only add the seek time (factor of the difference between current CD block and seeked CD block) when playing an audio track, since some games take the delay in account to synchronize with music played from the end of the disc. For data track, it only increases loading time when the game has a very large data track and access the last blocks, fixed minimal delay seem to be enough, it just needs to be adjusted for the few games relying on this.

  5. Log in to comment