File Release Notes and Changelog
Notes:
Snapshot taken at 06-FEB-2008, at 17:30 (GMT+1)
Changes:
Changes from last snapshot build:
- Fixed registration of ROM expansion address. (06-feb-2008, Camiel
Vanderhoeven)
- Check for FPEN in old floating point code. (06-feb-2008, Camiel
Vanderhoeven)
- Proper interrupt handling in serial port device. Fixes an
initialization bug spotted by David Hittner. (06-feb-2008, Camiel
Vanderhoeven)
- Disable unaligned access check alltogether; it doesn't work properly
for some reason. (05-feb-2008, Camiel Vanderhoeven)
- The new floating point code (21-jan-2008) has some unidentified
problems. The OpenVMS installation routine fails with this new code.
For now, the old floating point code has been restored, and the new
floating-point code is used only when HAVE_NEW_FP has been defined.
The new code should be fixed, so we can take advantage of floating
point exceptions. (05-feb-2008, Camiel Vanderhoeven)
- Display a message when system initialization has failed. (05-feb-2008,
Brian Wheeler)
- Put X64 around 64-bit constants in DO_CVTQL. (compilation issue on some
Linux'es) (05-feb-2008, Camiel Vanderhoeven)
- Corrected a typo in the definition of PCI_PTE_SHIFT (2 should be 12)
that caused an OpenVMS procgone bugcheck. (04-feb-2008, Camiel
Vanderhoeven)
Changes from version 0.17:
- Completed LPT support so it works with FreeBSD as a guest OS.
(02-feb-2008, Brian Wheeler)
- Avoid unnecessary shift-operations to calculate constant values.
(01-feb-2008, Camiel Vanderhoeven)
- Improved speed by remembering the number of instructions left in current
memory page, so that the translation-buffer doens't need to be consulted
on every instruction fetch when the Icache is disabled. (30-jan-2008,
Camiel Vanderhoeven)
- Remember separate last found translation-buffer entries for read and write
operations. This should help with memory copy operations. (29-jan-2008,
Camiel Vanderhoeven)
- Avoid interrupts from the new IDE device that originated while interrupts
were disabled. (29-jan-2008, Brian Wheeler)
- Improved floating-point exception handling. (28-jan-2008, Camiel
Vanderhoeven)
- Lifted hardcoded file-size limit of 10,000 bytes for config file.
(26-jan-2008, Camiel Vanderhoeven)
- Bugfix in the VAX floating point STF and the IEEE floating point STS
instructions. (26-jan-2008, Camiel Vanderhoeven)
- Don't repeat interrupts from the new IDE controller too soon.
(26-jan-2008, Brian Wheeler)
- Do unaligned trap only when a page boundary is crossed. Something is
causing alignment traps in the SRM console, with the DAT bit set to false,
and no OS handler in place. Also, when OpenVMS boots there are alignment
traps that shouldn't happen. None of these cross page boundaries, so we're
safe for now. (26-jan-2008, Camiel Vanderhoeven)
- Trap on unaligned memory access. The previous implementation where
unaligned accesses were silently allowed could go wrong when page
boundaries are crossed. (25-jan-2008, Camiel Vanderhoeven)
- Allow specifying autocreate_size on a disk image to have it created if it
doesn't exist. (25-jan-2008, Camiel Vanderhoeven)
- Added an option to disable the processor Icache. The emulator runs faster
when this is disabled, but that might lead to problems with some OS'es.
(25-jan-2008, Camiel Vanderhoeven)
- Added do_pci_write and do_pci_read functions to the PCI base device.
(24-jan-2008, Camiel Vanderhoeven, David Hittner)
- Fixed overflow-detection. (24-jan-2008, Camiel Vanderhoeven)
- Added missing integer /V instructions (22-jan-2008, Camiel Vanderhoeven,
Bob Supnik)
- win32 GUI made compatible with older windows SDK. (22-jan-2008, Camiel
Vanderhoeven)
- New floating-point code (21-jan-2008, Camiel Vanderhoeven, Bob Supnik)
- Fixed misinterpretation of the INT bit in integer overflow traps. (Camiel
Vanderhoeven, 21-jan-2008)
- Limited the maximum number of sectors, as the OpenVMS IDE driver doesn't
like 255 sectors. (Camiel Vanderhoeven, 21-jan-2008)
- Added X11 GUI. (20-jan-2008, Camiel Vanderhoeven)
- Added win32 GUI. (19-jan-2008, Camiel Vanderhoeven)
- Run CPU in a separate thread if CPU_THREADS is defined. NOTA BENE: This is
very experimental, and has several problems. (19-jan-2008, Camiel
Vanderhoeven)
- Replaced sext_64 inlines for performance reasons (18-jan-2008, Camiel
Vanderhoeven, David Hittner)
- Process device interrupts after a 100-cpu-cycle delay. (18-jan-2008,
Camiel Vanderhoeven)
- Added ADDL/V instruction (16-jan-2008, David Hittner, Bob Supnik)
- Fixed some timeouts on new IDE controller. (16-jan-2008, Brian Wheeler)
- When a keyboard self-test command is received, and the queue is not empty,
the queue is cleared so the 0x55 that's sent back will be the first thing
in line. Makes the keyboard initialize a little better with SRM.
(15-jan-2008, Brian Wheeler)
- Bugfix regarding double deletion of disk device objects. (13-jan-2008,
Brian Wheeler)
- New IDE-controller working on big-endian host architectures. (13-jan-2008,
Fang Zhe)
- Support additional CD-ROM commands. (13-jan-2008, Brian Wheeler)
- Smart algorithm for determining optimal cylinder/head/sector disk layout.
(13-jan-2008, Camiel Vanderhoeven)
- End debugger run on Ctrl-C. (12-jan-2008, Brian Wheeler)
- SCSI Engine added to Disk class. SCSIBus class and SCSIDevice base class
added. (12-jan-2008, Camiel Vanderhoeven)
- bugfix to ATAPI code in new IDE controller. SRM can now boot from IDE
CD-ROMs. (09-jan-2008, Brian wheeler)
- ATAPI improvements to new IDE controller. (09-jan-2008, Brian wheeler)
- Put filename without path in disk model number. (09-jan-2008, Brian
Wheeler)
- Save disk state to state file. (09-jan-2008, Camiel Vanderhoeven)
- Use Brian Wheeler's CNewIde class instead of the CAliM1543C_ide class if
HAVE_NEW_IDE is defined. This change will be undone when the new ide
controller will replace the old standard one. (08-jan-2008, Camiel
Vanderhoeven)
- "Old" IDE-controller working on big-endian host architectures.
(08-jan-2008, Fang Zhe)
- S3 Trio VGA-card working on big-endian host architectures. (08-jan-2008,
Fang Zhe)
- Removed last references to IDE disk read SRM replacement. (08-jan-2008,
Camiel Vanderhoeven)
- Added NewIde class. Due to replace the current IDE controller
implementation. (08-jan-2008, Brian Wheeler)
- PCI scatter/gather DMA memory mapping support added. (07-jan-2008, Camiel
Vanderhoeven)
- Default blocksize set to 2048 bytes for CD-ROM devices. (06-jan-2008,
Camiel Vanderhoeven)
- Allow changing block-size on disk devices. (06-jan-2008, Camiel
Vanderhoeven)
- Fixed typo in network-code (05-jan-2008, Fausto Saporito)
- Do 64-bit file I/O properly for FreeBSD and OS X. (05-jan-2008, Fang Zhe)
- Added CDiskDevice class to allow using raw devices. (05-jan-2008, Camiel
Vanderhoeven)
- Made MAC-address of network-card configurable (04-jan-2008, David Hittner)
- Make telnet work on Apple OS X. (04-jan-2008, Fang Zhe)
- Improved compatibility with SDL on Apple OS X (including keyboard).
(04-jan-2008, Fang Zhe)
- Added swap_xx macro's for use in places where bytes need to be swapped
regardless of endianess. (04-jan-2008, Camiel Vanderhoeven)
- Support for larger disk images by using 64-bit file I/O. (04-jan-2008,
Camiel Vanderhoeven)
- Cirrus VGA-card working on big-endian host architectures. (03-jan-2008,
Camiel Vanderhoeven)
- PCI base device working on big-endian host architectures. (03-jan-2008,
Camiel Vanderhoeven)
- Compatibility with SDL on Apple OS X. (03-jan-2008, Fang Zhe)
- Compileable on Apple OS X and FreeBSD. (03-jan-2008, Fang Zhe)
- CPU working on big-endian host architectures. (02-jan-2008, Camiel
Vanderhoeven)
- Recognize endianess on more architectures. (02-jan-2008, Fang Zhe)