Freeze when returning to the title screen from the file menu (Red/Green JP)

Поделиться
HTML-код
  • Опубликовано: 15 окт 2024
  • This glitch occurs when you back out of the file menu while bit 0x1 of memory address D2D7 is set (values 02, 03, 06, 07, etc.) (It might be the Japanese equivalent of wLetterPrintingDelayFlags (D358 or D357 in the English versions). Normally this won't apply, but it can occur on save files with memory corruption. It appears to have been fixed in Japanese Blue and all revisions of Japanese Yellow. It still occurs in the Rev A (Rev 1) revision of Red/Green.
    To modify the value of D2D7, we can set up the expanded inventory and modify the value of item 27's quantity to a value with bit 0x1 set. After saving and resetting the game, the value of D2D7 will be replaced with that of the save file after the file menu is loaded. From here, exiting the menu with B will freeze the game. However, you can temporarily 'fix' this glitch by entering and exiting the options menu before you exit the file menu with B. This resets the value to 01.
    There may be other non-expanded inventory ways of retaining bit 0x1 on D2D7, but at the moment I haven't found any.
    More information from my friend TimoVM:
    "D6AF (the equivalent of EN's $D730) does play a role here. setting bit 6 (overruling wPrintLetterDelayFlags) here will prevent a crash"
    "Short summary:
    The crash is caused by the version name being displayed. In the JP version, this is done using PlaceString. Having bit 1 set in wLetterPrintingDelayFlags will cause the game to wait during the printing of each character for one frame until the A or B button is being pressed.
    Once either of these button are pressed, DelayFrame is called. This contains a halt instruction, but the title screen seems to not prepare the correct settings for the halt instruction to function correctly, causing the game to freeze.
    (I vaguely recall that the halt instruction needs certain setting to be properly set up before it can be correctly used, but I'm not experienced enough in how it's used to give more details on this part)
    The reason this doesn't result in a freeze on EN is because the version title is placed using FarCopyData instead of PlaceString (since the version name slides in from the right in EN, while in JP the version name simply appears). This means that wLetterPrintingDelayFlags is never relevant for the EN title screen, preventing the freeze."
    "modifying the ROM to ensure the "RED/GREEN VERSION" string is immediately terminated prevents the crash "

Комментарии • 4

  • @BohepansTheThird
    @BohepansTheThird 10 месяцев назад +4

    "Saving your games causes Pokémon to crash." Gee, it's like a Paper Mario video! XD Do _anything_ - game crashes. _Don't_ do something - game crashes. I still love how this stuff is still being discovered. XD

  • @ShadowTraitYT
    @ShadowTraitYT 10 месяцев назад +9

    Broken games? First one that comes to mind: Gen I Pokemon

    • @starleaf-luna
      @starleaf-luna 9 месяцев назад

      oh trust me, the newer ones are just as bad.

    • @ShadowTraitYT
      @ShadowTraitYT 9 месяцев назад

      @@starleaf-luna I know that too! In fact I have quite a few videos about that, cuz gen 9 is broken af 😂