-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
783 lines (545 loc) · 24.2 KB
/
ChangeLog
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
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
2008-05-21 Kaz Sasayama <kazssym@vx68k.org>
* lib/inst/logic.h (struct andi_instruction, struct
andi_to_ccr_instruction, struct andi_to_sr_instruction, struct
eori_instruction, struct ori_instruction, struct
ori_to_ccr_instruction, struct ori_to_sr_instruction): New
structs.
(do_ANDI, do_EORI, do_ORI): Removed.
* lib/inst/arith.h (struct addi_instruction, struct
cmpi_instruction, struct subi_instruction): Use unsigned type.
* lib/vm68k/bits/data_size.h (struct vm68k_byte, struct
vm68k_word, struct vm68k_long_word): Micro-optimize as_signed.
* lib/vm68k/bits/context.h (class vm68k_context): Add new members
read_usp, read_usp_unsigned and write_usp. Add REGISTER_MAX to
enum register_index.
* lib/inst/arith.h (struct addi_instruction, struct
cmpi_instruction, struct subi_instruction): New structs.
(do_ADDI, do_CMPI, do_SUBI): Removed. Also change all users to
use the new structs.
* lib/inst/transfer.h (struct move_instruction, struct
movea_instruction, struct lea_instruction, struct
pea_instruction): New structs.
(do_MOVE, do_MOVEA, do_LEA, do_PEA): Removed. Also change all
users to use the new structs.
* lib/vm68k/bits/data_size.h (struct vm68k_data_size): New struct.
(vm68k_byte, vm68k_word, vm68k_long_word): Removed. Also change
all users to use vm68k_data_size members.
(struct vm68k_byte): Renamed from vm68k_byte_size. Also change
all users.
(struct vm68k_word, struct vm68k_long_word): Likewise.
* lib/Makefile.am (libvm68k_la_SOURCES): Reorder files.
(nobase_include_HEADERS): Reorder files.
(nobase_noinst_HEADERS): Move addressing.h to inst/addressing.h.
Remove instr.h.
(nobase_noinst_HEADERS): Move inst/logical.h to inst/logic.h.
* lib/inst/logic.h: Renamed.
* ChangeLog: Documentation fix.
* lib/inst/addressing.h: Moved from lib/addressing.h. Rewrite
classes.
* lib/vm68k/bits/context.h (enum register_index): New enum.
* lib/vm68k/bits/data_size.h (struct byte_size, struct word_size,
struct long_word_size): Templateize read_unsigned, read and write
for registers. Modify signed read to use the corresponging
unsigned version.
* lib/vm68k/bits/base.h (int_least8_t): Renamed from int8_t. Also
change all users.
(int_least16_t, int_least32_t, uint_least8_t, uint_least16_t,
uint_least32_t): Likewise.
* lib/vm68k/bits/bus.h (class mappable): Renamed from
vm68k_accessible and nested into class vm68k_bus. Also change
all users.
(enum function_code): Renamed from vm68k_bus_function and nested
into class vm68k_bus. Also change all users.
(enum direction_code): Renamed from vm68k_bus_direction and nested
into class vm68k_bus. Also change all users.
* lib/vm68k/bits/base.h: Removed the vm68k_ prefix from type
names. Also change all users.
2008-05-19 Kaz Sasayama <kazssym@vx68k.org>
* lib/Makefile.am (libvm68k_la_SOURCES): Move instr1_3.cpp to
inst/inst3.cpp.
(libvm68k_la_SOURCES): Move inst0.cpp to inst/inst0.cpp.
* lib/inst/inst0.cpp: Moved.
* lib/inst/inst3.cpp: Renamed from instr1_3.cpp. Split group 1 &
2 to lib/inst/inst1.cpp & lib/inst/inst2.cpp.
2008-05-18 Kaz Sasayama <kazssym@vx68k.org>
* lib/Makefile.am (libvm68k_la_SOURCES): Add inst/inst1.cpp and
inst/inst2.cpp.
* lib/inst/inst1.cpp, lib/inst/inst2.cpp: New files.
* lib/vm68k/bits/data_size.h: Prefix vm68k_ to names.
(namespace vx68k): Renamed from vx68k_m68k.
* lib/vm68k/bits/processor.h (namespace vx68k): Renamed from
vm68k.
(class condition_tester, class bitset_condition_tester, class
condition_code, struct registers, class context): Removed.
(class vm68k_exception): Renamed from processor_exception.
(class vm68k_bus_error_exception, class
vm68k_address_error_exception, class
vm68k_illegal_instruction_exception): Likewise.
(class vm68k_instruction): New class.
(class vm68k_instruction_decoder): New class replacing processor.
(class processor): Removed.
(vm68k_bus_error_exception): Use the copy constructor for _source.
(vm68k_address_error_exception): Likewise.
* lib/vm68k/bits/context.h: Rename types.
(namespace vx68k): Renamed from vx68k_m68k.
(enum vm68k_register_name): Removed.
(class vm68k_context): Renamed from context.
(class status_register): Deprecate.
(class vm68k_context): Add member _status_high. Add member
function push, pop, and pop_unsigned.
* lib/vm68k/bits/bus.h: Add vm68k_address_t.
* lib/vm68k/bits/base.h: Remove vm68k_address_t.
2008-03-11 Kaz Sasayama <kazssym@vx68k.org>
* configure.ac: Change AC_CONFIG_SRCDIR and AC_CONFIG_FILES.
* lib/Makefile.am: New file.
* lib/vm68k/bits/base.h (_VM68K_DEPRECATED): New macro.
* lib/vm68k/bits/bus.h: Upgrade to the GPLv3.
(namespace vx68k): Add vm68k_ prefixes to names.
(class vm68k_bus): Rename from system_bus. Rename map_page to
map_pages. Rename unmap_page to unmap_pages.
(enum vm68k_bus_function): Rename from function_code.
* lib/vm68k/bits/base.h: Upgrade to the GPLv3.
(VM68K_PUBLIC): Add definition for Win32.
(namespace vx68k): Rename from vx68k_m68k. Also change all
others.
(namespace vx68k): Rename (u)data*_t to (u)int*_t. Add vm68k_
prefixes to names.
* Move source files under lib subdirectory.
2008-02-28 Kaz Sasayama <kazssym@vx68k.org>
* vm68k/bus: New file.
* vm68k/bits/bus.h: Renamed from vm68k/bus. Rename ssw to
status. Rename _VM68K_PUBLIC to VM68K_PUBLIC.
(class system_bus): Add member null_accessible.
* vm68k/base: New file.
* vm68k/bits/base.h: Renamed from vm68k/base.
* bus.cpp: Add minimual support for Win32.
(~accessible): New function.
(null_accessible): Removed.
* configure.ac: Move config.h out of include/. Add comments.
* inst/monadic.h: New file.
* inst/control.h: New file.
2008-02-06 Kaz Sasayama <kazssym@vx68k.org>
* addressing.h: Renamed from vm68k/addressing.
* size.cpp (VM68K_PUBLIC): Define VM68K_PUBLIC.
* inst_xfer.h: New file.
* vm68k/base (VM68K_PUBLIC): Removed an underscore. Also change
all references.
* inst_arith.h, inst_logical.h, inst_bit.h: New files.
2008-01-31 Kaz Sasayama <kazssym@vx68k.org>
* vm68k/size: Change method names. Add _VM68K_PUBLIC.
* vm68k/context (class context): Change read_reg_unsigned and
read_reg to const.
* vm68k/base: Add compile-time test for data8_t and data16_t.
2008-01-15 Kaz Sasayama <kazssym@vx68k.org>
* context.cpp: Rewrite functions.
(_VM68K_PUBLIC): Define to a visibility attribute.
* vm68k/context (class context, class status_register): Add
_VM68K_PUBLIC.
* Makefile.am (libvm68k_la_LIBADD): New macro.
(dist-hook): Sort the file list.
* configure.ac: Add support for libltdl.
* bus.cpp (_VM68K_PUBLIC): Define to a visibility attribute.
* vm68k/bus: Use read and write instead of get and put
respectively.
(class bus_error, class address_error, class accessible, class
system_bus): Add _VM68K_PUBLIC.
* vm68k/base (_VM68K_PUBLIC): New macro.
2008-01-10 Kaz Sasayama <kazssym@vx68k.org>
* size.cpp (byte, word, long_word): New const object.
* vm68k/size: Redesign the size classes.
* vm68k/context: New file.
* configure.ac: Change package information. Use
AC_CONFIG_AUX_DIR. Move config.h into include. Remove Nana
support.
* size.cpp: New file.
* doc/libvm68k.texi: Moved from the top directory.
* Makefile.am (dist-hook): New target.
(libvm68k_la_LDFLAGS): Change the version information.
(libvm68k_la_SOURCES): Remove bus_target.cpp and add size.cpp.
Change the link order.
(nobase_include_HEADERS): New macro.
(info_TEXINFOS): Removed.
(SUBDIRS): Remove vm68k and add doc.
* bus.cpp: Change namespace from vm68k to vx68k_m68k. Update
implementations.
* vm68k/bus: Change namespace from vm68k to vx68k_m68k.
(class bus_error): Renamed from bus. Redesign it with multiple
page tables.
2008-01-08 Kaz Sasayama <kazssym@vx68k.org>
* vm68k/base: Renamed from vm68k/type. Change namespace from
vm68k to vx68k_m68k. Change all type definitions. Also update
all uses.
2003-04-10 Kaz Sasayama <kaz2003@hypercore.co.jp>
* Makefile.am (LIBS): Removed.
* vm68k/misc.h (vm68k): Remove throw spec.
* version.cpp (version): Use PACKAGE_VERSION. Remove throw spec.
* Makefile.am (libvm68k_la_LDFLAGS): Use LDRELEASE.
* configure.ac: Use explicit quotes.
Rename LTLIBRELEASE to LDRELEASE.
* Makefile.am (libvm68k_la_SOURCES): Modify file names.
* instr1_3.cpp: Renamed from instr1-3.cpp.
* Changed C++ file suffix from .cc to .cpp.
* configure.ac: Updated.
* Upgrade to Automake 1.6. All Makefile.in's regenerated.
2003-03-25 Kaz Sasayama <kaz2003@hypercore.co.jp>
* configure.ac: Renamed from configure.in, and updated for
autoconf 2.50 and later.
* configure: Regenerated.
* aclocal.m4: Regenerated.
* config.h.in: Regenerated.
* Makefile.in: Regenerated.
* vm68k/Makefile.in: Regenerated.
* Upgrade to GNU automake 1.5. Also regenerate aclocal.m4,
configure, and all Makefile.in's.
* depcomp: New file.
2002-10-02 Kaz Sasayama <kaz2002@hypercore.co.jp>
* instr1-3.cc (m68k_move): Replace _move.
(m68k_movea): Replace _movea.
* vm68k/addressing: Use std:: for sprintf.
2002-05-25 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/addressing (class data_register_direct, class
address_register_direct, class indirect, class postinc_indirect,
class predec_indirect, class disp_indirect, class index_indirect,
class absolute_short, class absolute_long, class disp_pc_indirect,
class index_pc_indirect, class immediate): New class.
(class basic_d_register, class basic_a_register, class
basic_indirect, class basic_postinc_indirect, class
basic_predec_indirect, class basic_disp_indirect, class
basic_index_indirect, class basic_abs_short, class basic_abs_long,
class basic_disp_pc_indirect, class basic_index_pc_indirect, class
basic_immediate): Removed. Also change all users using the new
classes above.
* processor.cc (_GNU_SOURCE): Defined.
(_POSIX_C_SOURCE): Defined.
* vm68k/processor (fetch_u, fetch_s): Remove the byte
specialization.
* vm68k/size (struct byte, struct word, struct long_word): Remove
value_type.
(struct byte, struct word, struct long_word): Remove value_bit.
Rename value_size to size and aligned_value_size to aligned_size.
Rename value_mask to uvalue_max. Add svalue_max. Rename uvalue
to normal_u and svalue to normal_s. Rename uget to get_u and get
to get_s. Rename uget_aligned to get_instruction_u and
get_aligned to get_instruction_s. Also change all users.
(struct byte): Add get_instruction_u and get_instruction_s.
* Makefile.am (libvm68k_la_SOURCES): Reorder files.
* condition_code.cc (_GNU_SOURCE): Defined.
(_POSIX_C_SOURCE): Defined.
* vm68k/condition: Renamed from condition.h. Also change all
users.
(namespace vm68k): Remove use namespace std. Add explicit std
prefixes.
(namespace condition): Renamed from conditional. Also change all
users.
* instr6.cc: Remove #include <vm68k/addressing>.
* instr7.cc: Likewise.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Replace add.h with
addressing.
* vm68k/addressing: Renamed from add.h. Also change all users.
(namespace addressing): Renamed from add. Also change all users.
(namespace addressing): Remove use namespace std. Add explicit
std prefixes.
* ChangeLog: Correct mail addresses.
* bus_target.cc: Move the location of #includes.
* bus.cc: Likewise.
* Makefile.am (libvm68k_la_SOURCES): Reorder files.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Replace processor.h
with processor.
* vm68k/processor: Renamed from processor.h. Also change all
users.
2002-05-12 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* processor.cc (processor): Remove unsigned long data.
* instr.h (install_instructions_0, install_instructions_1,
install_instructions_2, install_instructions_3,
install_instructions_4, install_instructions_5,
install_instructions_6, install_instructions_7,
install_instructions_8, install_instructions_9,
install_instructions_11, install_instructions_12,
install_instructions_13, install_instructions_14): Change the
second argument to void *.
2002-05-10 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/processor.h (class context, class processor_exception,
class processor): Use std:: prefix.
* vm68k/bus (class bus_error, class address_error, class bus): Use
std:: prefix.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Replace types.h with
type.
* vm68k/type: Renamed from types.h. Remove namespace types. Also
change all users.
* processor.cc (run): Handle bus_error and address_error.
* vm68k/processor.h (class processor_exception): Add pure virtual
method vecno.
(class bus_error_exception, class address_error_exception):
Rewrote.
(struct illegal_instruction_exception, struct
zero_divide_exception, struct privilege_violation_exception): Add
method vecno.
(class processor): Remove method set_instruction override with a
instruction_handler. Remove method step. Add throw spec to
method run.
2002-05-09 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/processor.h (class processor): Change the fourth argument
of instruction_handler to void *. Also change all users.
* vm68k/size (struct byte): Renamed from byte_size. Also change
all users.
(struct word): Renamed from word_size. Also change all users.
(struct long_word_size): Renamed from long_word_size. Also change
all users.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Replace size.h with
size.
* vm68k/size: Renamed from size.h. Also change all users.
* libvm68k.texi: Updated.
2002-05-08 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/processor.h (class bus_error_exception, class
address_error_exception): New classes.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Replace memory.h with
bus.
* Makefile.am (libvm68k_la_SOURCES): Replace memory.cc and
memory_map.cc with bus_target.cc and bus.cc.
* bus.cc: Renamed from memory_map.cc.
(fill_memory): Renamed from fill.
(class no_target): Renamed from missing_memory. Also change all
users.
(no_target): Renamed from null_memory. Also change all users.
(no_target): Use a static variable for the return value.
* bus_target.cc: Renamed from memory.cc.
(vecno): Removed.
* vm68k/bus: Renamed from memory.h. Also change all users.
(enum function_code): Moved out of class memory.
(enum bus_direction): Renamed from access and moved out of class
memory.
(class memory_error): Removed.
(class bus_error, class address_error): Move members from
memory_error. Rename member status to ssw. Remove member vecno.
(class bus_target): Renamed from memory. Also change all users.
(class bus_target): Change members to throw just bus errors.
(class bus): Renamed from memory_map. Also change all users.
(class bus): Add new typedef page_table_type. Rename member
null_memory to no_target. Rename get_16_unchecked to
get_16_aligned, and put_16_unchecked to put_16_aligned.
(class bus): Change put_8, put_16_aligned, get_8 and
get_16_aligned to throw just bus_error. Change put_16, put_32,
get_16 and get_32 to throw bus_error and address_error.
(find_memory): Use const_cast in the const override.
2001-12-07 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/memory.h (class memory_error): Renamed from
memory_exception. Also change all references.
(class memory_error): Add members: address() and status(). Remove
member vecno().
(_VM68K_MEMORY_H): Renamed from __VM68K_MEMORY_H.
* vm68k/processor.h (class processor_exception): Add members: _pc
and pc(). Add a constructor.
(struct illegal_instruction_exception): Add a constructor. Also
change all references.
(struct zero_divide_exception): Likewise.
(struct privilege_violation_exception): Likewise.
* vm68k/add.h: Renamed from addressing.h.
(namespace add): Renamed from addressing. Also change all
references.
* instr13.cc: Change the instruction handlers.
* instr14.cc: Likewise.
2001-12-06 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* instr9.cc: Change the instruction handlers.
* instr11.cc: Likewise.
* instr12.cc: Likewise.
2001-12-04 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/addressing.h: Change the addressing mode to take an
address instead of an offset from the PC.
* instr6.cc: Change the instruction handlers.
* instr7.cc: Change the instruction handlers.
* instr8.cc: Change the instruction handlers.
* Makefile.am (libvm68k_la_SOURCES): Change the file names.
* instr6.cc: Renamed from inst6.cc.
* instr7.cc: Renamed from inst7.cc.
* instr8.cc: Renamed from inst8.cc.
* instr9.cc: Renamed from inst9.cc.
* instr11.cc: Renamed from inst11.cc.
* instr12.cc: Renamed from inst12.cc.
* instr13.cc: Renamed from inst13.cc.
* instr14.cc: Renamed from inst14.cc.
* Makefile.am (libvm68k_la_SOURCES): Change the file name.
* instr5.cc: Renamed from inst5.cc. Change the instruction
handlers.
2001-12-03 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Makefile.am (libvm68k_la_SOURCES): Change the file name.
* instr4.cc: Renamed rom inst4.cc. Change the instruction
handlers.
2001-12-02 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Makefile.am (libvm68k_la_SOURCES): Change the file name.
* instr1-3.cc: Renamed inst1to3.cc. Change the instruction
handlers.
* processor.cc (run): Updated as the interface changed.
(illegal): Updated.
* context.cc: Use namespace blocks.
(handle_interrupts): Updated as the interface changed.
* Makefile.am (libvm68k_la_SOURCES): Change the file name.
* instr0.cc: Renamed from inst0.cc. Change instruction handlers.
* vm68k/processor.h (struct registers): Remove member pc, set_pc,
and advance_pc.
(class context): Replace ufetch and fetch with fetch_u and
fetch_s. Change handle_interrupts to take and return the PC.
(class processor): Change typedef instruction_handler. Also
change static method illegal. Change dispatch, step, run to take
and return the PC.
2001-11-30 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* libvm68k.texi (Processor Class): Updated as the code changed.
* vm68k/processor.h (class processor): Renamed from exec_unit.
Also change all references.
* Makefile.am (libvm68k_la_SOURCES): Change the filename.
* processor.cc: Renamed from execunit.cc.
* texinfo.tex: Updated.
2001-08-05 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* libvm68k.texi (Basic Types): Updated.
2001-07-04 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* configure.in (LTLIBRELEASE): Remove `AC_DEFINE(_GNU_SOURCE)'.
Reorder some tests.
2001-07-03 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Version 1.0.6.
* Makefile.am (libvm68k_la_LDFLAGS): Updates the version
information.
* configure.in: Set VERSION to 1.0.6.
* vm68k/iterator.h (class basic_uint16_iterator): Add template
constructor. Remove operators >, <=, and >=. Make operators +,
-, ==, and != non-member.
(class basic_uint16_iterator): Likewise.
2001-07-02 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Change tests for Nana macros.
2001-07-01 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* memory_map.cc: Move Nana inclusion first. Use "vm68k/memory.h"
instead of <vm68k/memory.h>.
(_GNU_SOURCE): Defined.
(_POSIX_C_SOURCE): Defined.
(inline): Removed.
(class missing_memory): Renamed from default_memory. Add
throw-specs to methods.
(__null_memory): Renamed from null_memory.
(null_memory): New function.
(memory_map): Use the function null_memory.
* memory.cc (bus_error::vecno): New function.
(bus_error::what): New function.
(address_error::vecno): New function.
(address_error::what): New function.
* vm68k/memory.h (class memory_exception): Removed variable member
vecno. Add prefix to other members. Modify the constructor
arguments and move it out of the definition. Add pure virtual
function vecno.
(struct bus_error): Replace struct bus_error_exception. Also
change all users.
(struct address_error): Replace struct address_error_exception.
Also change all users.
(class memory): Add enum access.
(class memory_map): Make the destructor out-of-line. Add static
method null_memory.
* NEWS: Updated.
* vm68k/iterator.h (class basic_uint16_iterator): Use const
references for T arguments. Add explicit to the class ref
constructor. Remove template constructor and conversion to T.
Add new member `base'.
(class basic_uint32_iterator): Likewise.
2001-06-29 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Version 1.0.5.
* Makefile.am (libvm68k_la_LDFLAGS): Update the version
information.
* configure.in: Set VERSION to 1.0.5.
* TODO: Updated.
* NEWS: Updated.
* vm68k/processor.h (struct byte_size): Removed.
(struct word_size): Removed.
(struct long_word_size): Removed.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Add size.h.
* vm68k/size.h: New file.
(struct byte_size): Moved from vm68k/processor.h.
(struct word_size): Likewise.
(struct long_word_size): Likewise.
* memory.cc (get_32): Add throw-spec.
(put_32): Likewise.
* vm68k/memory.h (class memory): Add throw-spec to get_8, get_16,
get_32, put_8, put_16, and put_32.
* configure.in: Set _GNU_SOURCE to 1.
* vm68k/memory.h: Remove #include <vm68k/iterator.h>.
(__VM68K_MEMORY_H): Renamed _VM68k_MEMORY_H.
* vm68k/iterator.h (class basic_uint16_iterator): Add relation
operators. Move some methods out of the class definition.
(class basic_uint32_iterator): Likewise.
* vm68k/memory.h (PAGE_SHIFT): Changed to signed.
(ADDRESS_BIT): Likewise.
(getw, getl, putw, putl): Removed.
* Makefile.am (LTLIBRELEASE): Removed.
* configure.in (LTLIBRELEASE): Set for substitution.
2001-06-27 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* vm68k/memory.h (class basic_uint16_iterator): Removed.
(class basic_uint32_iterator): Removed.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Add iterator.h.
* vm68k/iterator.h: New file.
(class basic_uint16_iterator): Moved from memory.h.
(class basic_uint32_iterator): Likewise.
* configure.in: Move the test for `--with-nana' later. Add
AC_C_CONST. Improve warning messages for missing C++ features.
* version.cc: Use "vm68k/misc.h" instead of <vm68k/misc.h>.
(_GNU_SOURCE): Defined.
(_POSIX_C_SOURCE): Defined.
(inline): Remove #undef.
* memory.cc (_GNU_SOURCE): Defined.
(_POSIX_C_SOURCE): Defined.
(inline): Remove #undef.
2001-06-26 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Version 1.0.4.
* Makefile.am (libvm68k_la_LDFLAGS): Update the version
information.
* configure.in: Set VERSION to 1.0.4.
* NEWS: Updated.
* vm68k/types.h: Remove uint_type and sint_type. Also change all
users.
* vm68k/processor.h: Remove #include <cassert>.
* vm68k/types.h: Update comments.
(__VM68K_TYPES_H): Renamed from _VM68K_TYPES_H.
* memory.cc: Use a namespace block. Include <nana.h> before other
headers.
* version.cc: Comment fix.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Remove except.h.
* vm68k/except.h: Removed.
* vm68k/processor.h (struct processor_exception): Moved from
except.h.
(struct illegal_instruction_exception): Likewise.
(struct zero_divide_exception): Likewise.
(struct privilege_violation_exception): Likewise.
(__VM68K_PROCESSOR_H): Renamed from _VM68K_PROCESSOR_H.
* configure.in: Use new macros.
* acinclude.m4: Copied from the autoconf macro archive.
* NEWS: Reformated again.
* TODO: Updated.
2001-06-24 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* NEWS: Reformated for the Emacs outline mode.
2001-06-19 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Version 1.0.3.
* Makefile.am (libvm68k_la_LDFLAGS): Update the version info.
* configure.in: Set VERSION to 1.0.3.
* NEWS: Updated.
* memory_map.cc: Use a namespace block.
(memory_map::fill): Use std:: prefix.
* configure.in: Add AC_PROG_CPP. Uncomment AC_SEARCH_LIBS for
pthread.
* memory_map.cc (write): Add const to pointers.
* vm68k/except.h (__VM68k_EXCEPT_H): Renamed from _VM68k_EXCEPT_H.
(struct processor_exception): Renamed from ordinary_exception.
Also change all users.
(struct processor_exception): Change the base class from
runtime_error to exception.
* Makefile.am (libvm68k_la_SOURCES): Add version.cc.
* version.cc: New file.
* vm68k/Makefile.am (vm68kinclude_HEADERS): Add misc.h.
* vm68k/misc.h: New file.
2001-06-17 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Version 1.0.2.
* configure.in: Set VERSION to 1.0.2.
* README: Updated.
* NEWS: Updated for new release.
2001-06-16 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Makefile.am (info_TEXINFOS): New macro.
(LTLIBRELEASE): New macro.
(libvm68k_la_LDFLAGS): Use LTLIBRELEASE.
* libvm68k.texi: New file.
* texinfo.tex: New file.
2001-06-13 Kaz Sasayama <Kaz.Sasayama@Hypercore.co.jp>
* Separated from vx68k. See the file ChangeLog.vx68k for older
changes.