That retired/old V1 motorshield from Adafruit uses inefficient L293 chips with a voltdrop of 2-4volt.
A 9volt motor supply could be 6volt left for the motors.
Use a supply that is 3volt higher than the motors need. With the right current capability.
That excludes a smoke alarm battery.
Leo..