diff options
| -rw-r--r-- | .cvsignore | 8 | ||||
| -rw-r--r-- | NEWS | 21 | ||||
| -rw-r--r-- | configure.in | 2 | ||||
| -rw-r--r-- | doc/Makefile.am | 7 | ||||
| -rw-r--r-- | doc/img/.cvsignore | 2 | ||||
| -rw-r--r-- | doc/img/Makefile.am | 2 | ||||
| -rw-r--r-- | doc/mdk.texi | 38 | ||||
| -rw-r--r-- | doc/mdk_gmixvm.texi | 69 | ||||
| -rw-r--r-- | doc/ss_devices.png | bin | 16621 -> 0 bytes | |||
| -rw-r--r-- | doc/ss_mix.png | bin | 12642 -> 0 bytes | |||
| -rw-r--r-- | doc/ss_mix.txt | 31 | ||||
| -rw-r--r-- | doc/ss_mixal.png | bin | 14536 -> 0 bytes | |||
| -rw-r--r-- | doc/ss_mixal.txt | 14 | ||||
| -rw-r--r-- | doc/ss_worddlg.png | bin | 15050 -> 0 bytes | |||
| -rw-r--r-- | samples/stress2.mixal | 15 | 
15 files changed, 110 insertions, 99 deletions
| @@ -1,4 +1,8 @@  .emacs.desktop +GPATH +GRTAGS +GSYMS +GTAGS  Makefile  Makefile.in  blah @@ -12,7 +16,9 @@ intl  mdk-0.1.1.tar.gz  mdk-0.1.tar.gz  mdk-0.2.tar.gz +mdk-0.3.tar.gz +mixmvc  stamp-h  stamp-h.in  test -mixmvc +tmp @@ -3,11 +3,18 @@ GNU MDK -- History of visible changes.  Copyright (C) 2000, 2001, Free Software Foundation, Inc.  See the end for copying conditions. -Please send mdk bug reports to jaortega@acm.org. +Please send mdk bug reports to bug-mdk@gnu.org. -*Version 0.2.1 +*Version 0.3 (28/03/01) -** MDK is now an official GNU packaga. +** MDK is now an official GNU package. + +** New GTK+ interface for the virtual machine (gmixvm). + +** New mixvm-Emacs/GNUD interface via mixvm.el (Philip King). + +** JRED is now properly implemented (bug pointed out by +   Vasiliy Ozmetelenko).  *Version 0.2 (07/01/01) @@ -15,19 +22,19 @@ Please send mdk bug reports to jaortega@acm.org.     invocation of run or next.  ** mixvm can trace instructions as they are executed. tron/troff -   commands turn off/off instruction tracing. +   commands turn on/off instruction tracing.  ** mixvm accepts a new command, w2d, which computes the     decimal value of a MIX word given as a series of     bytes (e.g. - 01 00 34 32 22). -** symbols can be defined at the mixvm prompt with the +** Symbols can be defined at the mixvm prompt with the     new command ssym.  ** mixvm accepts a new command, weval, which allows the     evaluation of MIXAL w-expressions. -** expressions containing strings of successive '*' are now +** Expressions containing strings of successive '*' are now     correctly evaluated.  ** When using block devices in mixvm, the buffers are now @@ -55,7 +62,7 @@ Please send mdk bug reports to jaortega@acm.org.  -------------------------------------------------------  Copying information: -Copyright (C) 2000, Free Software Foundation, Inc. +Copyright (C) 2000, 2001, Free Software Foundation, Inc.     Permission is granted to anyone to make or distribute verbatim copies     of this document as received, in any medium, provided that the diff --git a/configure.in b/configure.in index c27cde4..5e2bc00 100644 --- a/configure.in +++ b/configure.in @@ -91,7 +91,7 @@ AC_SUBST(CFLAGS)  AC_OUTPUT(   Makefile   doc/Makefile  -doc/html/Makefile  +doc/img/Makefile   mixlib/Makefile   mixlib/testsuite/Makefile   mixutils/Makefile diff --git a/doc/Makefile.am b/doc/Makefile.am index 42953a8..9640449 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -10,14 +10,13 @@  # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the  # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -SUBDIRS = html +SUBDIRS = img  SUFFIXES = .html -  info_TEXINFOS = mdk.texi  mdk_TEXINFOS = gpl.texi mdk_intro.texi mdk_tut.texi mdk_gstart.texi \                 mdk_mixvm.texi mdk_emixvm.texi mdk_mixasm.texi mdk_bugs.texi \ -               mdk_index.texi +               mdk_index.texi mdk_gmixvm.texi  html_docs = mdk.html @@ -25,4 +24,4 @@ html_docs = mdk.html  	$(MAKEINFO) --html $<  .PHONY: html -html: version.texi gpl.texi $(html_docs)
\ No newline at end of file +html: $(html_docs) diff --git a/doc/img/.cvsignore b/doc/img/.cvsignore new file mode 100644 index 0000000..282522d --- /dev/null +++ b/doc/img/.cvsignore @@ -0,0 +1,2 @@ +Makefile +Makefile.in diff --git a/doc/img/Makefile.am b/doc/img/Makefile.am index ed6877f..bc20ab4 100644 --- a/doc/img/Makefile.am +++ b/doc/img/Makefile.am @@ -10,6 +10,6 @@  # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the  # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -EXTRA_DIST = ss_mix.png ss_mixal.png ss_devices.png ss_worddlg.png \ +EXTRA_DIST = ss_mix.jpg ss_mixal.jpg ss_devices.jpg ss_worddlg.jpg \               ss_mix.txt ss_mixal.txt diff --git a/doc/mdk.texi b/doc/mdk.texi index ba5b94f..338917b 100644 --- a/doc/mdk.texi +++ b/doc/mdk.texi @@ -92,24 +92,17 @@ helpful discussions, as well as actual code (@pxref{mixvm.el}).  @end ifinfo  @menu -* Introduction::		 -* Installing MDK::		 -* MIX and MIXAL tutorial::	Learn the innards of MIX and MIXAL. -* Getting started::		Basic usage of the @sc{mdk} tools. -* mixvm.el::			Using @code{mixvm} within Emacs. -* mixvm::			Invoking and using the MIX virtual machine. -* gmixvm::			 -* mixasm::			Invoking the MIXAL assembler. -* Copying::			@sc{mdk} licensing terms. -* Problems::			Reporting bugs. -* Concept Index::		Index of concepts. - - - - - - - +* Introduction::                 +* Installing MDK::              Installing GNU MDK from the source tarball. +* MIX and MIXAL tutorial::      Learn the innards of MIX and MIXAL. +* Getting started::             Basic usage of the @sc{mdk} tools. +* mixvm.el::                    Using @code{mixvm} within Emacs. +* mixvm::                       Invoking and using the MIX virtual machine. +* gmixvm::                      Invoking and using the GTK+ virtual machine. +* mixasm::                      Invoking the MIXAL assembler. +* Copying::                     @sc{mdk} licensing terms. +* Problems::                    Reporting bugs. +* Concept Index::               Index of concepts.  @detailmenu   --- The Detailed Node Listing --- @@ -184,9 +177,12 @@ Interactive commands  gmixvm -* Invoking @code{gmixvm}::       -* MIX virtual machine::          -* Menu and status bars::         +* Invoking @code{gmixvm}::      Invoking the GTK+ interface. +* MIXVM console::                +* MIX virtual machine::         The MIX virtual machine window. +* MIXAL source view::            +* MIX devices view::             +* Menu and status bars::        Available menu commands.  @code{mixasm}, the MIXAL assembler diff --git a/doc/mdk_gmixvm.texi b/doc/mdk_gmixvm.texi index f3ed33b..81ced1d 100644 --- a/doc/mdk_gmixvm.texi +++ b/doc/mdk_gmixvm.texi @@ -7,11 +7,14 @@  @menu  * Invoking @code{gmixvm}::      Invoking the GTK+ interface. +* MIXVM console::               Using @code{mixvm} commands.  * MIX virtual machine::         The MIX virtual machine window. +* MIXAL source view::           Viewing the MIXAL source code. +* MIX devices view::            Device output.  * Menu and status bars::        Available menu commands.  @end menu -@node Invoking @code{gmixvm}, MIX virtual machine, gmixvm, gmixvm +@node Invoking @code{gmixvm}, MIXVM console, gmixvm, gmixvm  @comment  node-name,  next,  previous,  up  @section Invoking @code{gmixvm} @@ -27,7 +30,7 @@ gmixvm @kbd{RET}  at your command prompt. The @code{gmixvm} main window will appear,  offering you a graphical interface to run and debug your MIX programs. -@image{ss_mix} +@image{img/ss_mix}  Apart from the menu and status bars, we can distinguish two zones (or  halves) in this main window. In the upper half of @code{gmixvm}'s main @@ -48,12 +51,27 @@ devices.  @noindent  On the other hand, the main window's lower half presents you a  @code{mixvm} command prompt and a logging area where results of the -issued commands are presented. +issued commands are presented. These widgets implement a @code{mixvm} +console which offers almost the same functionality as its @acronym{CLI} +counterpart.   The following sections describe the above mentioned components of  @code{gmixvm}.  -@node MIX virtual machine, Menu and status bars, Invoking @code{gmixvm}, gmixvm +@node MIXVM console, MIX virtual machine, Invoking @code{gmixvm}, gmixvm +@comment  node-name,  next,  previous,  up +@section MIXVM console + +In the lower half of the @code{gmixvm} main window, you will find a +command text entry and, above it, an echo area. These widgets offer you +the same functionality as its @acronym{CLI} counterpart, @code{mixvm} +(@pxref{mixvm}). You can issue almost all @code{mixmv} commands at the +@code{gmixvm}'s command prompt in order to manipulate the MIX virtual +machine. Please, refer to @xref{mixvm}, for a description of these +commands, and to @xref{Getting started}, for a tutorial on using the MIX +virtual machine. + +@node MIX virtual machine, MIXAL source view, MIXVM console, gmixvm  @comment  node-name,  next,  previous,  up  @section MIX virtual machine @@ -65,10 +83,11 @@ total uptime, elapsed time since the last run command and total  execution time for the currently loaded MIX program).  Clicking any register entry, you will be prompted for a new register's -contents +contents. +  @ifnotinfo -(as shown in the next figure). -@image{ss_worddlg} +The next figure shows the enter word dialog. +@image{img/ss_worddlg, 400pt}  @end ifnotinfo  In the same manner, click on any address of the memory cells list to be @@ -77,8 +96,42 @@ address column's title, a dialog asking you for a memory address will  appear; if you introduce a valid address, this will be the first cell  displayed in the scrollable list after you click the OK button. +The register contents are shown as a list of MIX bytes plus sign. If you +place the mouse pointer over any of them, the decimal value of this MIX +word will appear inside a tooltip. + +@node MIXAL source view, MIX devices view, MIX virtual machine, gmixvm +@comment  node-name,  next,  previous,  up +@section MIXAL source view + +The second notebook's page, dubbed MIXAL, shows you the MIXAL source of +the currently loaded MIX file. A shown in the next figure, the +information is presented in two columns. + +@image{img/ss_mixal, 400pt} + +The first column shows the address and memory contents of the compiled +MIX instruction, while the second one displays its corresponding MIXAL +representation, together with the source file line number. The current +location of the location counter is highlighted in grey, while any set +breakpoint is marked in red. You can set/unset breakpoints by clicking +on any line in this view which has an associated memory address. + +@node MIX devices view, Menu and status bars, MIXAL source view, gmixvm +@comment  node-name,  next,  previous,  up +@section MIX devices view + +The last notebook page, dubbed Devices, shows you the output on +character based MIX devices (the console, line printer and paper tape, +@pxref{Devices}) produced by the running program. The binary +input/output devices (disks, cards, etc.) are handled via files, as in +@code{mixvm} (@pxref{Devices}). + +@ifnotinfo +@image{img/ss_devices, 400pt} +@end ifnotinfo -@node Menu and status bars,  , MIX virtual machine, gmixvm +@node Menu and status bars,  , MIX devices view, gmixvm  @comment  node-name,  next,  previous,  up  @section Menu and status bars diff --git a/doc/ss_devices.png b/doc/ss_devices.pngBinary files differ deleted file mode 100644 index bb2ee83..0000000 --- a/doc/ss_devices.png +++ /dev/null diff --git a/doc/ss_mix.png b/doc/ss_mix.pngBinary files differ deleted file mode 100644 index 9d0e6b6..0000000 --- a/doc/ss_mix.png +++ /dev/null diff --git a/doc/ss_mix.txt b/doc/ss_mix.txt deleted file mode 100644 index 757026e..0000000 --- a/doc/ss_mix.txt +++ /dev/null @@ -1,31 +0,0 @@ -|-----------------------------------------------------------| -|   Menu       	       	  	         	            | -|-----------------------------------------------------------| -|            	      	       	         	            | -|            	      	       	         	            | -|            	      	       	         	            | -|      	   	      	       	         	            | -|               MIXVM / MIXAL / Devices  	            | -|                     	       	         	            | -|          	   	       	         	            | -|                              	         	            | -|      			       	         	            | -|      			       	         	            | -|                              	         	            | -|-----------------------------------------------------------| -|      				         	            | -|                     Command output     	            | -|      				    		            | -|      				    		            | -|                                                           | -|-----------------------------------------------------------| -|                     Command prompt               	    | -|-----------------------------------------------------------| -|  Status bar						    | -|-----------------------------------------------------------| -       							     -       							     -       							     - - - diff --git a/doc/ss_mixal.png b/doc/ss_mixal.pngBinary files differ deleted file mode 100644 index 506a170..0000000 --- a/doc/ss_mixal.png +++ /dev/null diff --git a/doc/ss_mixal.txt b/doc/ss_mixal.txt deleted file mode 100644 index 4ae0455..0000000 --- a/doc/ss_mixal.txt +++ /dev/null @@ -1,14 +0,0 @@ -      address       |                   source ---------------------+---------------------------------------------------- -                    | 001:      * table of primes (taopc p. 148) -                    | 002:      * -                    | 003:      L       EQU     500 -                    | 004:      OUTDEV	EQU	20	the paper tape -                    | 005:      PRIME	EQU	-1 -                    | 006:      BUF0	EQU	2000 -                    | 007:      BUF1	EQU	BUF0+25 -                    | 008:              ORIG	3000 -3000: + 00 00 00 20 | 009:      START	IOC	0(OUTDEV) -3001: + 32 02 00 05 | 010:              LD1	=1-L= -3002: + 32 03 00 05 | 011:              LD2     =3= -                    |
\ No newline at end of file diff --git a/doc/ss_worddlg.png b/doc/ss_worddlg.pngBinary files differ deleted file mode 100644 index be6e7f2..0000000 --- a/doc/ss_worddlg.png +++ /dev/null diff --git a/samples/stress2.mixal b/samples/stress2.mixal index 4c7250d..0c4d7d6 100644 --- a/samples/stress2.mixal +++ b/samples/stress2.mixal @@ -1,14 +1,7 @@  		ORIG 1999   ST		NOP -3H		CON 10 -		ENT1 * -		LDA 3B -** rI1 is 2001, rA is 10.  So far so good! -3H		ORIG 3B-1000 -** at this point 3H should -** equal 2002, and the location counter should be 1000. -		ENT2 * -		LDX 3B -** rI2 should be 1000, rX should be 2002 (I think...) +SYM	    EQU SYM+1 +SYM2    CON SYM2+1	 +SYM3    ORIG SYM3+2  		HLT -		END ST +SYM4	END SYM4+1 | 
