<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>MIX Development Kit</title> </head> <body bgcolor="white" link="#ff0000" vlink="#a00000"> <a name="top"></a> <table cellspacing="0" cellpadding="5" border="0" align="center"> <tr> <td width="100" bgcolor="#696969"> </td> <td bgcolor="#696969" width="600" align="center"> <font color="white"><b>MDK, the MIX development kit</b></font> </td> <td bgcolor="#696969" width="10"> </td> </tr> <tr> <td colspan="2"> </td> <td bgcolor="#696969" > </td> </tr> <tr> <td bgcolor="#909090" valign="top"> <br> <a href="news.html">News</a><br> <a href="download.html">Download</a><br> <a href="mdk.html">Documentation</a><br> <a href="lists.html">Mailing lists</a><br> <a href="http://sourceforge.net/projects/mdk"> MDK at SourceForge</a><br> <a href="http://sourceforge.net/cvs/?group_id=13897"> CVS repository</a><br><br> <p align="center">Thanks to<br> <A href="http://sourceforge.net"> <IMG src="http://sourceforge.net/sflogo.php?group_id=13897&type=1" width="88" height="31" border="0" alt="SourceForge Logo"> </A> </td> <td > <p align="right"><font color="#000069" size="+1"> Latest news </font></p> <ul> <li>(08/01/01) <i>MDK 0.2 release. </i> New version of MDK. <a href="news.html#new3">Read more...</a> <li>(26/11/00) <i>Documentation update.</i> <a href="news.html#new2">Read more...</a> <li>(18/11/00) <i>MDK 0.1.1 release. </i> New version of MDK. <a href="news.html#new1">Read more...</a> </ul> <p align="right"><font color="#000069" size="+1"> What is the MIX? </font> </p> <b>MIX</b> is Donald Knuth's mythical computer as described in his monumental work <a href="http://Sunburn.Stanford.EDU/~knuth/taocp.html"> The Art Of Computer Programming</a>. As any of its real counterparts, the MIX features registers, memory cells, an overflow toggle, comparison flags, input-output devices, and a set of binary instructions executable by its virtual CPU. You can programme the MIX using an assembly language called <b>MIXAL</b>, the MIX Assembly Language. <p> So, what's the use of learning MIXAL? The MIX computer is a simplified version of real CISC computers, and its assembly language closely resembles real ones. You can learn MIX/MIXAL as an introduction to computer architecture and assembly programming: see the <a href="mdk.html">MDK documentation</a> for a <a href="mdk_2.html">tutorial</a> on MIX and MIXAL. </p> <br> <br> <p align="right"><font color="#000069" size="+1"> What is the MDK? </font> </p> The <b>M</b>IX <b>D</b>evelopment <b>K</b>it offers an emulation of <b>MIX</b> and <b>MIXAL</b>. The <a href="download.html"> current version</a> of MDK includes two applications: <ul> <li><b><i>mixasm</i></b> A MIXAL compiler, which translates your source files into binary ones, executable by the MIX virtual machine. <li><b><i>mixvm</i></b> A MIX virtual machine which is able to run and debug compiled MIXAL programs, using a command line interface with readline's line editting capabilities. </ul> Using the MDK tools, you'll be able to <ul> <li>write, compile and execute MIXAL programs, <li>set breakpoints and run your programs step by step, <li>collect execution timing statistics, <li>trace executed instructions, <li>inspect and modify the MIX registers, flags and memory contents at any step, <li>simulate MIX input-output devices using the standard output and your file system. </ul> See the MDK <a href="mdk.html">user's manual</a> for a complete description of the toolkit. The MDK utils will run on any GNU/Linux box (see <a href="download.html#reqs">requirements</a>) and, of course, are <a href="http://www.gnu.org/copyleft/gpl.html">free software</a>. <p align="right"><font color="#000069" size="+1"> Planned features </font> </p> MDK is currently under active development, and there are some planned additional features I have in mind, e.g. <ul> <li> allow MIXAL instructions as commands at the <b><i>mixvm</i></b> prompt, <li> ncurses based frontend, <li> GTK++/GNOME support, </ul> Please, <a href="mailto:jaortega@acm.org">let me know</a> which of these features would you like better. <p align="right"> Contact the <a href="mailto:jaortega@acm.org">author.</a> </p> </td> <td bgcolor="#696969" > </td> </tr> <tr> <td bgcolor="#909090"> </td> <td colspan="2"> </td> </tr> <tr> <td bgcolor="#909090"> </td> <td colspan="2" bgcolor="#909090" align="right"> <i>last updated Sat Jan 6 15:35:39 CET 2001</i> </td> </tr> </table> </body> </html>