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.png Binary files differdeleted file mode 100644 index bb2ee83..0000000 --- a/doc/ss_devices.png +++ /dev/null diff --git a/doc/ss_mix.png b/doc/ss_mix.png Binary files differdeleted 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.png Binary files differdeleted 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.png Binary files differdeleted 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 |