Yes, the start address can be anywhere in the upper memory. It has the 32bit boundry so you can only scroll by 2 (16bit) or 4 (8bit) pixels. It is possible to use the display delay to fine tune this down to 1 pixel, but at the cost of a column (or 3 in 8bit mode) from the right-hand side.
In your example of 640x240 you'll just need to set the stride to double what it normally is to make the hardware skip the extra screens worth of data.
Unfortunately we don't have anything like the old Copper (happy Amiga days :rolleyes
to make really easy full 8-way endless scrolling, but we do have plenty of power to do it the hard way.