2. Fixed bug
[ 989478 ] I-Cache and undefined Instruktions
The L4 microkernel uses an undefined instruction to
trap for a special requests into the kernel (LOCK NOP).
The handler fixes this up and gives the user a special
code page with syscall stubs. If you're not using the
I-Cache optimization everthing works find on bochs. But
if you enable the I-Cache (--enable-icache), then the
undefined opcode exception is thrown only once for ever
virtual address it occurs. See the demodisk of the
L4KA::pistachio
(http://www.l4ka.org/projects/pistachio/download.php).
In this case the pingpong benchmark of this demo is of
interest. Everything runs fine until the program tries
to spawn a new task for its measurements. This new task
shares the code of the creating program. But the new
task stops executing at the undefined instruction
explained above and no exception is thrown.
bochs.h already not include iodev.h which reduces compilation dependences for almost all cpu and fpu files, now cpu files will not be recompiled if iodev includes was changed
- textconfig runtime menu: some options moved to submenu "Misc runtime options"
- bx_param_c: variable group_name and methods set_group() / get_group() added
- bx_list_c: new flag SHOW_GROUP_NAME added (used for SB16 options in runtime menu)
configure script option --enable-magic-breakpoints (enabled by default).
Documented the instruction required to trigger the magic breakpoint
(xchgw %bx,%bx).
single setting without writing the complete line. The sequence of the arguments
doesn't matter now.
- the dmatimer value must be valid to enable the sb16
be used instead of a simple text control (implemented in wx)
- the new flag USE_SPIN_CONTROL is used by the memory size and the irq parameters
- special bx_list_c for the "Other options" menu in the wx configuration added
available at runtime
- wx: 'runtime' flag added to ParamDialog. If this flag is set, all options
with the flag 'runtime_param' clear will be disabled.
- only the runtime options for cdrom's are now enabled in the ATA dialogs at runtime
- the options 'keyboard paste delay', 'mouse' and 'vga update interval' are now
available at runtime
- wxdialog.h: unnecessary comments removed
- new bx_list_c for keyboard options (used in wx, TODO in textconfig)
- new flag USE_BOX_TITLE controls the usage of the list name for the group box label
- wxdialog.cc: unused variable removed
- siminterface: ask_filename() uses the prompt for the parameter name
- wx: missing title of the CMOS dialog added
- floppy path parameter names changed (used by win32config)
- user shortcut parameter description added
- pit: and time0: options are still supported but deprecated
- warn when parsing deprecated directives
- fix wrong number of ata_device_translation_names
- still to do:
- setting time0 to utc is not yet supported
- the man page, user guide and .bochsrc still need to be updated
with the new options
* option "cmosimage" must be saved, too
* most important options (config_interface, display_library, megs, romimage,
vgaromimage, boot) moved to the top of the saved file
- add the "journal" option to the ataX-xxx directive, so the user can
set a specific path for the redolog file (applies only for undoable
and volatile disk modes)
- add the enable handler, so the status and journal options of the ataX-xxx
directive can be hidden even if the ataX-xxx parameter is enabled.