summaryrefslogtreecommitdiffhomepage
path: root/doc/mdk_gmixvm.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/mdk_gmixvm.texi')
-rw-r--r--doc/mdk_gmixvm.texi69
1 files changed, 61 insertions, 8 deletions
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