Roket, это не глюки, а защита игры определяет что работает под эмулятором и творит вот такие пакости.
в игре вообще защита на защите и защитой погоняет
наверное если убрать все части с обфускацией кода картридж значительно похудеет в размере.
кста, кто нибудь еще изучает эту игрушку на предмет найти таки эти проверки ?
я лично нашел парочку
- при заходе на локацию пишутся a130f3 и a130ff, не помню для чего они, вроде банкинг у какой-то игре, так что если в эмуляторе этот маппер включен "напостоянку" игра глюканет.
- очень изредка, спустя минут 10-15 геймплея игра устраивает еще проверку, на этот раз наличия SRAM для карика Phantasy Star - пишет a130f9 и a130f1 и проверяет не появился ли SRAM в 0x200000, если вдруг появился - глюканет.
но MESS эти моменты проходит нормально, видимо определяет его как-то по-другому.
еще один глючек нашел, на этот раз с Z80 - туда в память засылается одна программка, потом спустя какое-то время другая, НО это происходит еще до того как отработала первая, в результате код работает глючно, что можно заметить в логе - код пишет что-то во всякие непотребные места
':genesis_snd_z80' (0E60): unmapped program memory write to 007FFE = 00B6 & 00FF
под отладчиком этот момент я поправил, но увы дело не в нем.