### 7.1 Invoking `gmixvm` ¶

If you have built MDK with GTK+ support (see Installing MDK), a graphical front-end for the MIX virtual machine will be available in your system. You can invoke it by typing

    gmixvm [-vhuq] [--version] [--help] [--usage] [--noinit]

at your command prompt, where the options have the following meanings:

User Option: -v ¶
User Option: --version ¶

  Prints version and copyleft information and exits.

User Option: -h ¶
User Option: --help ¶
User Option: -u ¶
User Option: --usage ¶

  Prints a summary of available options and exits.

User Option: -q ¶
User Option: --noinit ¶

  Do not load the Guile initialisation file `~/.mdk/mixguile.scm` at startup. This file contains any local Scheme code to be executed by the embedded Guile interpreter at startup (see Using Scheme in `mixvm` and `gmixvm`).

Typing `gmixvm` or `gmixvm -q` at your command prompt, the main window will appear, offering you a graphical interface to run and debug your MIX programs.

Apart from the menu and status bars, we can distinguish two zones (or halves) in this main window. In the upper half of `gmixvm`’s main window there is a notebook with three pages, namely,

- a MIX virtual machine view, which shows you the registers, flags, memory contents and time statistics of the virtual machine;
- a MIXAL source view, which shows the MIXAL file and lets you manage breakpoints;
- a Devices view, which shows you the output to character based MIX block devices.

These three windows can be detached from the notebook, using either the penultimate toolbar button (which detachs the currently visible notebook page) or the menu entries under `View->Detached windows`.

Here is an screenshot showing how `gmixvm` looks like when running with a couple of detached windows:

On the other hand, the main window’s lower half presents you a `mixvm` command prompt and a logging area where results of the issued commands are presented. These widgets implement a `mixvm` console which offers almost the same functionality as its CLI counterpart.

When `gmixvm` is run, it creates a directory named `.mdk` in your home directory (if it does not already exist). The `.mdk` directory contains the program settings, the device files used by your MIX programs (see MIX block devices), and a command history file.

The following sections describe the above mentioned components of `gmixvm`.