I suppose in some way it depends on how ethical your people are. Some people can do the job for its own sake whether they feel good about it or not, but some people have to buy into why they're doing the job before they can be productive. It also depends on how inspiring the boss is. Does that person set an example of positive productivity? Does that person go around making sure everyone has what they need to do their jobs well? Profitability depends on all of these things.
Did you know that presenteeism costs a company just as much as absenteeism, if not more? In my experience, most unhappy workers might as well work only a half day at a time, because the other half of the day is going to be spent complaining, playing games, or worrying about personal issues, so the same amount of work will get done either way.
How to improve morale? There isn't one right way to do it. It depends on your corporate culture, your individual employees, the type of business, etc. - different techniques work for different groups of people. I hope you get some good suggestions here, or you find one of those "1001 Ways to Motivate..." books and see something that is a "yes" for you!