Looks straight forward as you say. However, why the pointer to void in map_key. I assume it works this way with all but def_video and def_debug. Also, I assume def_video and def_debug are in default.h? You'll have to play around with freeze_mode to really understand what it does as it's difficult to explain with words even though the documentation gives a description. I'll be looking into shoving this into a struct if it makes any sense. Keep up the good work