Menu

#20 "Comix Zone" doesn't work on Raspberry Pi

Current
open-accepted
None
5
2013-07-14
2013-07-11
No

On Raspberry Pi, "Comix Zone" doesn't load further than 5 seconds into the introduction sequence. The game then restarts abruptly and goes into the intro/restart loop. Works fine on Win x86_64.

Discussion

  • A. Normal

    A. Normal - 2013-07-11
    • status: unread --> open-accepted
    • assigned_to: A. Normal
    • Group: v1.32 --> Current
     
  • A. Normal

    A. Normal - 2013-07-11

    Could be a bug in the Cyclone 68k CPU emulator version used by DGen/SDL (by default on RPI because it's the fastest). Does it work fine if you switch to Musashi (default on x86_64) instead?

    If you have a keyboard, press F11 to cycle between CPU cores, otherwise you can do it in the configuration file with:

    emu_m68k_startup = musa
    

    You can also try to start the game with Musashi, then after 10 seconds or so go back to Cyclone for better performance.

     
  • Victor Luchits

    Victor Luchits - 2013-07-11

    Thank you,
    changing emu_m68k_startup to 'musa' helped indeed. However, switching to 'cyclone' core via F11 crashes the game immediately.
    Is there anything I can do to aid you in resolving the problem or passing the bug upstream?

     
  • A. Normal

    A. Normal - 2013-07-11

    I think it should be investigated as part of the DGen/SDL project for now. We can't rule out a bug in our code yet.

    I don't know if it runs on the RPI, but maybe you can try PicoDrive which also uses Cyclone 68000 and report whether it crashes in the same fashion. Note that although Notaz maintains both projects, it seems PicoDrive (and its various forks) still uses and older version of Cyclone.

     
  • Victor Luchits

    Victor Luchits - 2013-07-12

    Verified the game as working in PicoDrive, although I'm not entirely sure it doesn't use musashi by default, but I'm certain it has cyclone compiled in.

     
  • Victor Luchits

    Victor Luchits - 2013-07-12

    Ok, added some debug prints in the code and it's definitely Cyclone that's used for cpu emulation on RPI.

     
  • A. Normal

    A. Normal - 2013-07-13

    Thanks for your testing. One difference that may affect emulation is in cyclone/config.h, where CYCLONE_FOR_GENESIS is defined as 2 in DGen/SDL whereas it is 0 in PicoDrive. Can you try to recompile and test with 0?

    Another difference is USE_INT_ACK_CALLBACK, which DGen doesn't implement. I'll consider it if the above test doesn't improve anything.

     
  • Victor Luchits

    Victor Luchits - 2013-07-13

    Unfortunately changing CYCLONE_FOR_GENESIS to 0 didn't help

     
  • Victor Luchits

    Victor Luchits - 2013-07-14

    And it's unlikely that USE_INT_ACK_CALLBACK is at fault either because cyclone_irq_callback doesn't seem to be called at the moment of crash (added a debug printf at the start of it), so it has to be something else.

     

Log in to post a comment.