1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
|
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 bug-mdk@gnu.org.
---------------------------------------------------------------------------
* Version 0.4 (22/07/01)
** Split mode: gmixvm can now be run with the MIXVM, MIXAL and Devices
windows detached (instead of arranged in a notebook).
** When running in split mode, the MIXVM, MIXAL and Devices windows
can be hidden.
** Conditional breakpoints can be set in mixvm and gmixvm using the
commands 'sbp[rmco]', which cause the execution to stop when a
given register, memory cell contents, comparison flag or overflow
toggle change (e.g. 'sbpr A' will set a breakpoint on register A
contents change). Conditional breakpoints can be deleted using the
new commands 'cbp[rmco]'.
** New vm command 'pbt' which prints a backtrace of the last executed
instructions.
** The gmixvm main window displays the path to the current MIX file in
its title bar.
** The mixvm and gmixvm configuration files are now stored in ~/.mdk
(instead of ~/.gmixvm).
** The default device files directory is also ~/.mdk. It can be
configured using the new command 'devdir' or (in gmixvm) with the
new Settings->Devices dir menu command.
** The commands 'tron' and 'troff' have been substituted by 'tracing
on|off'.
** The trace flag is saved as a configuration parameter in mixvm and
gmixvm.
** New vm commands: 'pedit'/'sedit' (print/set editor command) and
'pasm'/'sasm' (print/set compile command). Their value is stored as
a config param also in mixvm.
** New command 'timing' for setting on/off and printing the timing
statistics (both in gmixvm and mixvm). Its value is also stored as
a config param.
** mixvm and gmixvm now save a history file so that they remember
commands typed in previous sessions.
** Bug fix: changes in the device format are now correctly stored (gmixvm).
---------------------------------------------------------------------------
* Version 0.3.5 (23/06/01)
** In gmixvm, when the mouse pointer is over a MIXAL source line, the
status bar shows the value of the variables appearing in this line.
** The current symbol table can be displayed, in gmixvm, using the menu
command Debug->Symbols...
** Bug fix: the load, compile and run file dialogs now get the correct
filename under linux.
** Bug fix: fonts used by gmixvm are now always correctly saved.
** Bug fix: 'psym' now works correctly in gmixvm.
** Bug fix: the symbol table for a MIX file is now correctly recovered
both in gmixvm and mixvm (negative values where incorrectly
converted to a positive value).
---------------------------------------------------------------------------
* Version 0.3.4 (12/06/01)
** Bug fix for a segfault which made gmixvm unusable in version 0.3.3.
---------------------------------------------------------------------------
* Version 0.3.3 (10/06/01)
** The output of the contents of binary devices in gmixvm can be
configured to be in decimal or word format (for each block device).
** The main gmixvm window is not shown until it is completely drawn.
** The commands 'edit' and 'compile' are now understood by gmixvm. The
external programs used can be configured using the menu entry
Settings->External programs.
** The commands 'edit' and 'compile' can be now executed without
argument (both in mixvm and gmixvm). When no argument is given, the
MIXAL source file corresponding to the currently loaded MIX program
is edited/compiled.
** Bug in CON fixed : 'CON wexpr' didn't compile correctly unless wexpr
represented a valid instruction; now, wexpr can evaluate to an
arbitrary value (Vasilij Ozmetelenko).
** The completion key for the gmixvm command prompt is now TAB
(instead of RETURN).
** The gmixvm command prompt maintains now a history of previously
typed commands, which can be visited using the arrow keys (UP for
previous command, DOWN for next one).
** When a file is reloaded by the virtual machine (both in mixvm and
gmixvm), the currently set breakpoints are conserved.
** When compiling a source file which is not in the current directory, the
correct path is now stored in the compiled file.
** Fixed a bug which caused gmixvm to segfault when creating the
virtual machine (Andrew Hood)
** The GNU MDK documentation is now distributed under the GFDL
license.
---------------------------------------------------------------------------
* Version 0.3.2 (10/05/01)
** The colors used for highlighting MIXAL source lines in gmixvm are now
customizable.
** The fonts used used in the different gmixvm widgets are now
customizable.
** Input/output for all MIX block devices is shown in gmixvm.
** All gmixvm customizations are stored in a configuration file
(inside ~/.gmixvm directory).
** Device files used by gmixvm are stored in ~/.gmixvm, instead of the
working directory.
** Output to binary devices works now correctly.
** Bug on pmem fixed (thanks to Christoph von Nathusius and Jason
Uhlenkott).
---------------------------------------------------------------------------
* Version 0.3.1 (9/04/01)
** New binary and html RPMs (RedHat) contributed by Agustin Navarro
<anp@cantv.net>.
** The package can be correctly build in FreeBSD 4.2 (Ying-Chieh Liao)
** Fixed configuration process when included gettext is used.
** The info files are now properly categorized in a dir entry, so that
they can be properly installed.
** Compilation warnings fixed.
** getopt implementation provided for systems missing it.
---------------------------------------------------------------------------
* Version 0.3 (28/03/01)
** MDK is now an official GNU package.
** New GTK+ interface for the virtual machine (gmixvm).
** New mixvm-Emacs/GUD interface via mixvm.el (Philip King).
** Readline and history support for mixvm are now optional features.
** JRED is now properly implemented (bug pointed out by
Vasilij Ozmetelenko).
---------------------------------------------------------------------------
* Version 0.2 (07/01/01)
** mixvm provides virtual execution time statistics after each
invocation of run or next.
** mixvm can trace instructions as they are executed. tron/troff
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
new command ssym.
** mixvm accepts a new command, weval, which allows the
evaluation of MIXAL w-expressions.
** Expressions containing strings of successive '*' are now
correctly evaluated.
** When using block devices in mixvm, the buffers are now
flushed after each OUT operation.
---------------------------------------------------------------------------
* Version 0.1.1 (18/11/00)
** MDK is now compilable in rpm-based linuxes.
** MDK fully compliant with Knuth's specification. In particular,
local symbols are now properly handled in special cases such as
3H ORIG 3B
instructions. See samples/stress{1,2}.mixal.
** Future references affected by unary minus are accepted
with a warning (they are banned in Knuth's specification).
Also future refs in EQU directives are now properly handled.
See samples/stress{3,4}.mixal.
** When mixvm executes a program and reaches the end of the
available memory without encountering a HALT instruction,
it halts anyway.
---------------------------------------------------------------------------
* Version 0.1 (31/10/00)
** Initial version
-------------------------------------------------------
Copying information:
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
copyright notice and this permission notice are preserved,
thus giving the recipient permission to redistribute in turn.
Permission is granted to distribute modified versions
of this document, or of portions of it,
under the above conditions, provided also that they
carry prominent notices stating who last changed them.
|