@OP
Check if there is any immediate affect in the scrolling speed by doing --
1 Comment out the following lines in the loop() function.
//scrollSpeed = map(analogRead(A1), 0, 1023, 0, 500);
//delay(100);
// clearLCD(maxInUse, scrollSpeed);
2. Modifying the following line in the 'printCharWithShift()' function as indicated.
delay(map(analogRead(A1), 0, 1023, 0, 500));//shift_speed);