Adding this to your init file would have changed the behavior to scroll only one line:
(setq scroll-conservatively 30) (setq scroll-conservatively 30) (defun go-up-one ()
(interactive "*")
(scroll-down 1))
(defun go-down-one ()
(interactive "*")
(scroll-up 1))
(global-set-key [S-up] 'go-up-one)
(global-set-key [S-down] 'go-down-one)
so shift-up and shift-down scroll by one line no matter where the cursor is; and the cursor can often remain where it is, until you scroll too far. (Maybe it's outdated, since I did it a long time ago.)