I've been running Sprinter on a RAMPS 1.4 control board for my MendelMax since I built it a few weeks ago. This is the most common firmware in use, with the most community support. However there are other firmware options that are faster and more cutting edge, at the expense of having more bugs and a smaller user base. Today I switched to Marlin because I read that it handles acceleration between moves more smoothly, and can draw smooth arcs as well (a much more experimental feature).
I chose this funnel as my test print because the cone and cylinders comprising it cover a range of arc sizes.
On the left we have a print with Sprinter. There is a strong ridge at the layer change point near the left side, and additional ridges on every edge around the model. This print took about 40 minutes.
In the middle is the exact same gcode run by Marlin. The edge ridges are gone, but the layer change ridge is more pronounced, especially on the cylinder at the top. This is much closer to what the original model looks like.
On the right is Marlin with arc gcodes produced by Slic3r. It looks through the model for series of points that look like arcs and replaces them with arcs. This produces an exceptionally smooth model everywhere except for the layer change ridge. There was a mostly unrelated print failure around 70% of the way up, everything above that should be ignored for the purpose of this comparison.
This has been an educational experience. I've learned how to begin configuring a new firmware (Marlin has a LOT more functionality with regards to runtime configuration), and I got a print quality increase as well. Switching away from Sprinter is not for the faint of heart, but I'd advise everyone to try it at least once.
PS: The latter two prints produced progressively less vibration in my printer as well, which should allow me to greatly increase my print speed in the near future