Banner
Views: 568,838,261
Time: 2017-09-25 05:00:40 PM
11 users online: AntiDuck, EDIT3333, errorgfx, Golden Yoshi, o Lazy, NeXuS15, SubconsciousEye, Super Stiviboy, Thomas, UTF, VilelaBot - Guests: 35 - Bots: 141Users: 32,524 (1,187 active)
Latest: phllame
Tip: If you place Dragon Coins in a level, make sure there are at least 5.Not logged in.
Details for $1411 + L/R Softlock Fix
SMW Patches - $1411 + L/R Softlock Fix
File Name: $1411 + L/R Softlock Fix
Added: 2017-08-10 01:27:55 AM
Authors: telinc1
Tool: Asar
Requires Free Space: Yes
Bug Fix: Yes
Featured: No
Description: This patch fixes the bug where the game softlocks if $1411 (horizontal scrolling flag) is cleared (i.e. horizontal scrolling is disabled) while the screen is being scrolled with L/R. An infamous example of this scenario is scrolling an auto-scroll generator on screen with L/R (which is what the patch was originally made to fix).

Of course, spontaneously setting $1411 during a level can still result in a glitchy mess if the screen has to scroll (or rather, snap) too much to catch up. This is vanilla behavior and it's not what this patch intends to fix.

For the curious (technical information): This issue seems to stem from the routine at $00CDDD, which handles horizontal scrolling. One of the things it does is write $13FD (L/R scrolling flag) to $9D (sprites locked flag), then jump to another part of the routine which handles L/R scrolling if $13FD is set. If $1411 is clear, the routine will return prematurely. This usually fine, however unsetting the flag after sprites have been locked will prevent the game from updating scrolling, which will mean L/R scrolling will hang and keep sprites locked, which ends up practically softlocking the game. This was fixed by resetting L/R scrolling and unlocking sprites if they're locked, the screen is being L/R scrolled, and horizontal scrolling is disabled (all at the same time).
Tags: sa-1, screen, screen scrolling, scroll
Download: Download - 366 bytes
34 downloads
  Submit Update
Screenshots
Image
LX5
Interesting fix, since I never use L and R I never found this bug. Good work!
Posted by: LX5 - 2017-08-10 01:27:15 AM
telinc1
Originally posted by GreenHammerBro
Does this unlocks $9D every frame? That could cause glitches with other ASMs that temporally locks $9D.

No, it doesn't, at least not all the time. It only unlocks $9D it if
$9D and $13FD are set and if $1411 is clear (the softlock happens when sprites are locked and L/R scroll is happening with horizontal movement turned off, the only instance I can think of where that's true is if you scroll an autoscroller on the screen with L/R).
Posted by: telinc1 - 2017-08-01 11:57:38 AM
GreenHammerBro
Does this unlocks $9D every frame? That could cause glitches with other ASMs that temporally locks $9D.
Posted by: GreenHammerBro - 2017-07-22 04:30:02 AM

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2017 - SMW Central
Legal Information - Privacy Policy - Link To Us


Total queries: 29

Menu

Follow Us On

  • Facebook
  • Twitter
  • YouTube

Affiliates

  • Talkhaus
  • SMBX Community
  • GTx0
  • Super Luigi Bros
  • ROMhacking.net
  • MFGG
  • Gaming Reinvented