With the speed problem, i'm assuming your incrementing menu_type during the render call? If so you need to either time it to only increment once every 0.5 seconds or so, or alternatively set it to only increment when the +/- key is first pressed but not when it is held down.
A better way of determining if OS is present could do with being thought up too. Using the developer_mode makes dev only text pop up all over the place.
I'm not sure what the context is for using this but it seems to do what you described so good work.
Bookmarks