Menu

Code2 Commit Log


Commit Date  
[r5167] by debug

*** empty log message ***

2008-03-14 12:22:27 Tree
[r5166] by debug

Working on the main loop, GXemul::ExecuteCycles(), which should call each component s Run function in suitable proportions. Adding a CPUComponent base class, from which MIPS_CPUComponent inherits.

2008-03-14 12:12:32 Tree
[r5165] by debug

Huge commit, don't have the time or energy to split into multiple
smaller ones. Comment from the HISTORY file:

> Creating a ComponentFactory; moving Component::CreateComponent
> to ComponentFactory::CreateComponent.
> Reworking how components are created, in preparation for
> getting "templates" (such as the testmips machine) to work.
> A list of Components is now generated by the configure script,
> so that all .h files with a COMPONENT(name) command in
> src/include/components/ (including template machines, etc) will
> be creatable using ComponentFactory::CreateComponent.
> The -E command line option now works :-)
> 20080113 Adding a "quiet mode" to the GXemul class, set to true by the
> -q command line option.
> Adding some more simple commands: continue, list-components.
> 20080118 [0.4.x branch] Applying a WDC patch from Oleksandr Tymoshenko
> (dev_wdc.c and bus_pci.c), fixing the order of 16-bit words
> within 32-bit words in the identify struct, and not clearing
> the error on reads from the error register anymore.
> [0.4.x branch] RELEASE 0.4.6.2
> 20080119 Adding a generic GetAttribute function to components. Planned
> attributes are "template", "stable", "machine", "description",
> and "contributors". Unimplemented attributes result in an empty
> string being returned from GetAttribute.
> Moving the ASCII tree generator from TreeCommand.cc to
> Component::GenerateTreeDump.
> Documentation of available machine templates and all components
> is now automagically generated on a "make documentation".
> (doc/machines.html and doc/components.html.)
> 20080120 [0.4.x branch] Some minor OpenFirmware fixes: Adding a
> "memory" property to "/chosen", adding a dummy claim() service.
> Adding CTRL-W handling (remove current/last word) to the
> CommandInterpreter.
> The machines.html and components.html documentation pages now
> point to individual doc/machine_XXX.html and component_XXX.html
> pages, if they exist.
> 20080122 Beginning to rewrite the component state variable
> implementation a bit, in preparation for serialization/
> deserialization, undo/redo, and "run backwards" with data
> tightly tied to components.
> 20080123 Continuing on the state variable stuff. Both strings and
> integers (8-bit through 64-bit, signed and unsigned) can be
> used as state variables so far, but more unit tests are needed.
> Component classes can now also be registered runtime. (This is
> needed to enable meaningful unit testing of some things,
> such as cloning of dummy unit test components.)
> 20080124 Moving doc/machine_*.html and component_*.html into subdirs.
> 20080129 Re-adding detection of host arch (ABI) to the configure script.
> 20080203 Continuing on state variables (unit tests etc).
> 20080205 [0.4.x branch] Switching order of DINCLUDE and XINCLUDE in
> src/devices/Makefile (thanks to Ning Zhao for the tip).
> 20080210 Adding -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC to CFLAGS for
> debug builds.
> 20080222 Beginning on the main run loop, GXemul::ExecuteCycles.
> [0.4.x branch] Adding a DEV_DISK_OFFSET_HIGH32 register, for
> reading/writing the top 32 bits of the offset register (useful
> for emulated 32-bit archs), as suggested by Julian Elischer.
> 20080226 Implementing an IRInstruction base class, and some initial
> IR instructions (simple adds, moves, stores).
> 20080227 Continuing on IRInstruction stuff; unit tests to see that
> automatic native code generation kicks in, etc.
> Implementing a simple IRBlockCache, which is just a linear
> memory range with PROT_EXEC, which is reset when it overflows.
> Beginning on a (so far dummy) IRNativeAMD64 code generator.
> Adding a configure option for disabling native code generation
> support completely.
> 20080229 Rethinking how the IR stuff should work: I'll probably use
> simple and traditional interpretation by default (read instr,
> decode, execute), and only let native code generation via some
> form of IR kick in when necessary. Two advantages: it will be
> easier to add new cpu types (because an interpretation switch/
> case block is very easy to understand), and there will be no
> waste of memory (for IR data) for code which is not commonly
> used.
> Removing IRBlock and IRInstruction, but keeping IRBlockCache
> and IRNativeAMD64 for later.
> The IRBlockCache can now be resized during runtime (and it
> expands automatically if necessary).

2008-03-12 11:45:41 Tree
[r5164] by debug

Preparing for release 0.4.6.3

2008-02-24 05:54:33 Tree
[r5163] by debug

20080120 Some minor OpenFirmware fixes: Adding a "memory" property to
"/chosen", adding a dummy claim() service.
20080205 Switching order of DINCLUDE and XINCLUDE in
src/devices/Makefile (thanks to Ning Zhao for the tip).
20080222 Adding a DEV_DISK_OFFSET_HIGH32 register, for reading/writing
the top 32 bits of the offset register (useful for emulated
32-bit archs), as suggested by Julian Elischer.

2008-02-24 05:43:17 Tree
[r5162] by debug

1) Applying a WDC patch from Oleksandr Tymoshenko (dev_wdc.c and
bus_pci.c), fixing the order of 16-bit words within 32-bit
words in the identify struct, and not clearing the error on
reads from the error register anymore.

2) Updating Copyright messages for 2008.

2008-01-18 19:12:34 Tree
[r5161] by debug

Make it compile on FreeBSD/alpha 4.11 again.

2008-01-12 08:55:52 Tree
[r5160] by debug

20080106 Classes that use UNITTESTS(classname) are now fully auto
tested, no need to manually include .h files anymore. (This
relies on the fact that .h files have names that are exactly
the same as the class name they represent, otherwise it would
not work that well.) Updating some Doxygen comments to reflect
the current state of automagic unit testing.
Renaming TODO to doc/TODO.html.
Changing the Doxyfile to include full .cc source code in
the built documentation.
20080107 The "tree" command now shows a fancy ASCII tree of components.
Beginning on the "add" command (AddComponentCommand).
Components now get names based on their class name, followed
by a zero-based increasing integer, e.g. dummy0, dummy1, etc.
when added (if they don't already have a unique name).
20080108 TAB complete of empty string now shows all available commands.
Implementing Component helpers: GeneratePath and LookupPath.
The "add" command now takes path into account, but it must be
a complete path from the root component (i.e. "root.blahblah").
Component::Serialize now serializes into a std::stringstream
instead of returning a plain string.
20080109 Implementing Component::FindPathByPartialMatch (helper func.).
The "add" command now uses FindPathByPartialMatch for the
where-to-add argument.
Tab completion now expands component names :) also using
FindPathByPartialMatch. (Syntax of different parts of a
command line are not taken into account yet, though, so it
also for example tries to expand the argument of the "help"
command as a component name.)
Component::Serialize now serializes into an ostream instead
of a stringstream.
Implementing the "save" command.
CTRL-T now runs a "status" command (not yet implemented),
instead of using a status line hack of its own.
Implementing ClearEmulationAction and LoadEmulationAction.
Implementing the "close" and "load" commands.
20080110 Making the LoadEmulationAction undo-able (in the case the new
component was added to the tree, and did not entierly
replace the root component).
20080112 The gxemul binary can now be started with a config file as
an argument, which causes it to be loaded. The default RunState
is now Running on startup, and -V is used to set it to Paused.
Adding a NullUI, so that the result of GXemul::GetUI() does
not have to be checked all the time.

2008-01-12 08:29:57 Tree
[r5159] by debug

*** empty log message ***

2008-01-12 08:28:33 Tree
[r5158] by debug

Make it compile on FreeBSD/Alpha 4.11 again.

2008-01-05 13:23:28 Tree
Older >