I've modified an old capx I found to create a grid system for my gamekit. I feel I've gotten it pretty close to how A Link to the Past runs, if you compare this gif below. I've recorded the below gif with bsnes and licecap, so the example below runs at near 100% accuracy in terms of simulating the SNES. (without accounting for the slight slowdown caused by recording the gif, so it probably runs slightly faster)
How would I go about getting the smooth movement as seen in this next gif? The gif demonstrates Link smoothly moving into a one-tile wide space, for clarity. The original Legend of Zelda did not have this, as it had clipping issues with attempting to move into a one-tile wide space. As some of you know, you had to be exactly pixel perfect to not clip with things in the NES LoZ.
From some googling and article research, my guess is to create two feelers on the side of the player's hitbox. One on their left and one on their right, about four pixels away from their own hitbox edges. If there's no collision for both, no position adjustment is needed but if both get collision detections, it'll stop the player's forward progress but if only one feeler has a collision detected, the player will get nudged into the opposite direction until they're aligned with the grid and then continue forward motion.