EMS Magic was initially written over a three year period, from 2003 to 2006. Being a one-man part-time project, actual time spent was probably closer to 6-8 months total. It was completely rewritten about halfway through, to allow for more flexibility. It has been updated periodically since then, with version 2.0 being released in late 2008.
The entire program is written in real-mode 386 assembly, using TASM's IDEAL mode. There are over 5000 lines of code, not including comments or whitespace.
Main program development was done on an Athlon 2800+ running Windows XP. Turbo Assembler 5.0 and WarpLink 2.7 were used to assemble and link EMS Magic via ConTEXT 0.9x.
An EMS "torture test" program was written in QuickBASIC 4.5 to test every LIM EMS 4.0 function and subfunction. Debugging was done on a networked K6-233, running MS-DOS 6.22. Initially debugging information was output on a monochrome monitor. Later an IPX interface was added to permit debug output logging. SoftICE 2.8 and Turbo Debugger 5.0 were also used occasionally for debugging.
The automated Windows installer was created with Inno Setup 5.