Emumaker86: a hardware simulator for teaching CPU design. - Michael Black; Nathaniel Waggoner (SIGCSE, 2013)