There are a couple of things you can do. I've posted this in a previous thread, but the search function is down, so I can't post a link to it. I've had this happen and was able to get main dining.
The first thing you can do, if you haven't already, is to be placed on the wait list. This sometimes can help. The more proactive thing you can do is to call every few days to check to see if there have been any openings. Apparently, they don't check the wait list as soon as something opens up, so if it opens during the day and you call to ask for it, you'll get it. You should especially do this during the week just prior to the 60-day refund period. Most cancellations will happen just prior to 60 days before the cruise, as this is the last chance for them to get a full refund. It's pretty easy to call and check, 1-877-566-0976. Have your reservation number ready, it makes things go more quickly.
If all else fails, you can ask once you board. I'm not sure how often they're able to accomodate you. I have tried the call-in method I've described above and its worked twice for me. Once to upgrade a cabin category, and once to change our dinner seating.