This isn't necessarily an emulators question - although it may also involve some parameters when launching the emulator?
I haven't done this, so just going off of what I have read from others but it involves a bit of setup with both the frontend and possibly the emulator as well.
For the frontend:
You mentioned the rotation plugin, which can automatically rotate the frontend display to match the last game played, and can also change the default rotation. If you are just manually rotating the monitor - then that should be good enough.
You will also want to find or put together a good layout that works in both horizontal and vertical, a lot of times layouts aren't designed well to work for both.
For the emulator / mame:
May either involve setting up the config to rotate or passing parameters along with the emulator executable
For mechanical rotation:
You'd need a 'rotate_mon' executable that runs to rotate the monitor - at least before running the emulator executable, and maybe after the emulator exits if you wanted it to rotate back. I haven't needed it yet and can't recall if AM has somewhere to configure pre/post executables. The tricky part is passing the selected games rotation to the rotate executable - this might need to be done via a plugin / script.
Quite a few have done it before with other frontends, and you could find some guidance about it at the arcadecontrols forum:
http://forum.arcadecontrols.com/index.php?topic=90769.0