1 |
$Id: HISTORY,v 1.1539 2007/05/01 04:03:51 debug Exp $ |
$Id: HISTORY,v 1.1613 2007/06/15 20:11:26 debug Exp $ |
2 |
|
|
3 |
Changelog for GXemul: |
Changelog for GXemul: |
4 |
--------------------- |
--------------------- |
3461 |
|
|
3462 |
============== RELEASE 0.4.5.1 ============== |
============== RELEASE 0.4.5.1 ============== |
3463 |
|
|
3464 |
|
20070501 Continuing a little on m88k disassembly (control registers, |
3465 |
|
more instructions). |
3466 |
|
Adding a dummy mvme88k machine mode. |
3467 |
|
20070502 Re-adding MIPS load/store alignment exceptions. |
3468 |
|
20070503 Implementing more of the M88K disassembly code. |
3469 |
|
20070504 Adding disassembly of some more M88K load/store instructions. |
3470 |
|
Implementing some relatively simple M88K instructions (br.n, |
3471 |
|
xor[.u] imm, and[.u] imm). |
3472 |
|
20070505 Implementing M88K three-register and, or, xor, and jmp[.n], |
3473 |
|
bsr[.n] including function call trace stuff. |
3474 |
|
Applying a patch from Bruce M. Simpson which implements the |
3475 |
|
SYSCON_BOARD_CPU_CLOCK_FREQ_ID object of the syscon call in |
3476 |
|
the yamon PROM emulation. |
3477 |
|
20070506 Implementing M88K bb0[.n] and bb1[.n], and skeletons for |
3478 |
|
ldcr and stcr (although no control regs are implemented yet). |
3479 |
|
20070509 Found and fixed the bug which caused Linux for QEMU_MIPS to |
3480 |
|
stop working in 0.4.5.1: It was a faulty change to the MIPS |
3481 |
|
'sc' and 'scd' instructions I made while going through gcc -W |
3482 |
|
warnings on 20070428. |
3483 |
|
20070510 Updating the Linux/QEMU_MIPS section in guestoses.html to |
3484 |
|
use mips-test-0.2.tar.gz instead of 0.1. |
3485 |
|
A big thank you to Miod Vallat for sending me M88K manuals. |
3486 |
|
Implementing more M88K instructions (addu, subu, div[u], mulu, |
3487 |
|
ext[u], clr, set, cmp). |
3488 |
|
20070511 Fixing bugs in the M88K "and" and "and.u" instructions (found |
3489 |
|
by comparing against the manual). |
3490 |
|
Implementing more M88K instructions (mask[.u], mak, bcnd (auto- |
3491 |
|
generated)) and some more control register details. |
3492 |
|
Cleanup: Removing the experimental AVR emulation mode and |
3493 |
|
corresponding devices; AVR emulation wasn't really meaningful. |
3494 |
|
Implementing autogeneration of most M88K loads/stores. The |
3495 |
|
rectangle drawing demo (with -O0) for M88K runs :-) |
3496 |
|
Beginning on M88K exception handling. |
3497 |
|
More M88K instructions: tb0, tb1, rte, sub, jsr[.n]. |
3498 |
|
Adding some skeleton MVME PROM ("BUG") emulation. |
3499 |
|
20070512 Fixing a bug in the M88K cmp instruction. |
3500 |
|
Adding the M88K lda (scaled register) instruction. |
3501 |
|
Fixing bugs in 64-bit (32-bit pairs) M88K loads/stores. |
3502 |
|
Removing the unused tick_hz stuff from the machine struct. |
3503 |
|
Implementing the M88K xmem instruction. OpenBSD/mvme88k gets |
3504 |
|
far enough to display the Copyright banner :-) |
3505 |
|
Implementing subu.co (guess), addu.co, addu.ci, ff0, and ff1. |
3506 |
|
Adding a dev_mvme187, for MVME187-specific devices/registers. |
3507 |
|
OpenBSD/mvme88k prints more boot messages. :) |
3508 |
|
20070515 Continuing on MVME187 emulation (adding more devices, beginning |
3509 |
|
on the CMMUs, etc). |
3510 |
|
Adding the M88K and.c, xor.c, and or.c instructions, and making |
3511 |
|
sure that mul, div, etc cause exceptions if executed when SFD1 |
3512 |
|
is disabled. |
3513 |
|
20070517 Continuing on M88K and MVME187 emulation in general; moving |
3514 |
|
the CMMU registers to the CPU struct, separating dev_pcc2 from |
3515 |
|
dev_mvme187, and beginning on memory_m88k.c (BATC and PATC). |
3516 |
|
Fixing a bug in 64-bit (32-bit pairs) M88K fast stores. |
3517 |
|
Implementing the clock part of dev_mk48txx. |
3518 |
|
Implementing the M88K fstcr and xcr instructions. |
3519 |
|
Implementing m88k_cpu_tlbdump(). |
3520 |
|
Beginning on the implementation of a separate address space |
3521 |
|
for M88K .usr loads/stores. |
3522 |
|
20070520 Removing the non-working (skeleton) Sandpoint, SonyNEWS, SHARK |
3523 |
|
Dnard, and Zaurus machine modes. |
3524 |
|
Experimenting with dyntrans to_be_translated read-ahead. It |
3525 |
|
seems to give a very small performance increase for MIPS |
3526 |
|
emulation, but a large performance degradation for SuperH. Hm. |
3527 |
|
20070522 Disabling correct SuperH ITLB emulation; it does not seem to be |
3528 |
|
necessary in order to let SH4 guest OSes run, and it slows down |
3529 |
|
userspace code. |
3530 |
|
Implementing "samepage" branches for SuperH emulation, and some |
3531 |
|
other minor speed hacks. |
3532 |
|
20070525 Continuing on M88K memory-related stuff: exceptions, memory |
3533 |
|
transaction register contents, etc. |
3534 |
|
Implementing the M88K subu.ci instruction. |
3535 |
|
Removing the non-working (skeleton) Iyonix machine mode. |
3536 |
|
OpenBSD/mvme88k reaches userland :-), starts executing |
3537 |
|
/sbin/init's instructions, and issues a few syscalls, before |
3538 |
|
crashing. |
3539 |
|
20070526 Fixing bugs in dev_mk48txx, so that OpenBSD/mvme88k detects |
3540 |
|
the correct time-of-day. |
3541 |
|
Implementing a generic IRQ controller for the test machines |
3542 |
|
(dev_irqc), similar to a proposed patch from Petr Stepan. |
3543 |
|
Experimenting some more with translation read-ahead. |
3544 |
|
Adding an "expect" script for automated OpenBSD/landisk |
3545 |
|
install regression/performance tests. |
3546 |
|
20070527 Adding a dummy mmEye (SH3) machine mode skeleton. |
3547 |
|
FINALLY found the strange M88K bug I have been hunting: I had |
3548 |
|
not emulated the SNIP value for exceptions occurring in |
3549 |
|
branch delay slots correctly. |
3550 |
|
Implementing correct exceptions for 64-bit M88K loads/stores. |
3551 |
|
Address to symbol lookups are now disabled when M88K is |
3552 |
|
running in usermode (because usermode addresses don't have |
3553 |
|
anything to do with supervisor addresses). |
3554 |
|
20070531 Removing the mmEye machine mode skeleton. |
3555 |
|
20070604 Some minor code cleanup. |
3556 |
|
20070605 Moving src/useremul.c into a subdir (src/useremul/), and |
3557 |
|
cleaning up some more legacy constructs. |
3558 |
|
Adding -Wstrict-aliasing and -fstrict-aliasing detection to |
3559 |
|
the configure script. |
3560 |
|
20070606 Adding a check for broken GCC on Solaris to the configure |
3561 |
|
script. (GCC 3.4.3 on Solaris cannot handle static variables |
3562 |
|
which are initialized to 0 or NULL. :-/) |
3563 |
|
Removing the old (non-working) ARC emulation modes: NEC RD94, |
3564 |
|
R94, R96, and R98, and the last traces of Olivetti M700 and |
3565 |
|
Deskstation Tyne. |
3566 |
|
Removing the non-working skeleton WDSC device (dev_wdsc). |
3567 |
|
20070607 Thinking about how to use the host's cc + ld at runtime to |
3568 |
|
generate native code. (See experiments/native_cc_ld_test.i |
3569 |
|
for an example.) |
3570 |
|
20070608 Adding a program counter sampling timer, which could be useful |
3571 |
|
for native code generation experiments. |
3572 |
|
The KN02_CSR_NRMMOD bit in the DECstation 5000/200 (KN02) CSR |
3573 |
|
should always be set, to allow a 5000/200 PROM to boot. |
3574 |
|
20070609 Moving out breakpoint details from the machine struct into |
3575 |
|
a helper struct, and removing the limit on max nr of |
3576 |
|
breakpoints. |
3577 |
|
20070610 Moving out tick functions into a helper struct as well (which |
3578 |
|
also gets rid of the max limit). |
3579 |
|
20070612 FINALLY figured out why Debian/DECstation stopped working when |
3580 |
|
translation read-ahead was enabled: in src/memory_rw.c, the |
3581 |
|
call to invalidate_code_translation was made also if the |
3582 |
|
memory access was an instruction load (if the page was mapped |
3583 |
|
as writable); it shouldn't be called in that case. |
3584 |
|
20070613 Implementing some more MIPS32/64 revision 2 instructions: di, |
3585 |
|
ei, ext, dext, dextm, dextu, and ins. |
3586 |
|
20070614 Implementing an instruction combination for the NetBSD/arm |
3587 |
|
idle loop (making the host not use any cpu if NetBSD/arm |
3588 |
|
inside the emulator is not using any cpu). |
3589 |
|
Increasing the nr of ARM VPH entries from 128 to 384. |
3590 |
|
20070615 Removing the ENABLE_arch stuff from the configure script, so |
3591 |
|
that all included architectures are included in both release |
3592 |
|
and development builds. |
3593 |
|
Moving memory related helper functions from misc.c to memory.c. |
3594 |
|
Adding preliminary instructions for netbooting NetBSD/pmppc to |
3595 |
|
guestoses.html; it doesn't work yet, there are weird timeouts. |
3596 |
|
Beginning a total rewrite of the userland emulation modes |
3597 |
|
(removing all emulation modes, beginning from scratch with |
3598 |
|
NetBSD/MIPS and FreeBSD/Alpha only). |
3599 |
|
20070616 After fixing a bug in the DEC21143 NIC (the TDSTAT_OWN bit was |
3600 |
|
only cleared for the last segment when transmitting, not all |
3601 |
|
segments), NetBSD/pmppc boots with root-on-nfs without the |
3602 |
|
timeouts. Updating guestoses.html. |
3603 |
|
Removing the skeleton PSP (Playstation Portable) mode. |
3604 |
|
Moving X11-related stuff in the machine struct into a helper |
3605 |
|
struct. |
3606 |
|
Cleanup of out-of-memory checks, to use a new CHECK_ALLOCATION |
3607 |
|
macro (which prints a meaningful error message). |
3608 |
|
Adding a COMMENT to each machine and device (for automagic |
3609 |
|
.index comment generation). |
3610 |
|
Doing regression testing for the next release. |
3611 |
|
|
3612 |
|
============== RELEASE 0.4.6 ============== |
3613 |
|
|