Mograsim.git
5 years agoLauch configuration attribute "Initial RAM" now has an effect
Daniel Kirschten [Mon, 30 Sep 2019 12:07:55 +0000 (14:07 +0200)]
Lauch configuration attribute "Initial RAM" now has an effect

5 years agoMemoryEditor now actually works
Daniel Kirschten [Mon, 30 Sep 2019 12:07:09 +0000 (14:07 +0200)]
MemoryEditor now actually works

5 years agoCreated MainMemoryParser
Daniel Kirschten [Mon, 30 Sep 2019 12:06:54 +0000 (14:06 +0200)]
Created MainMemoryParser

5 years agoRemoved MachineProcess
Daniel Kirschten [Sun, 29 Sep 2019 22:02:02 +0000 (00:02 +0200)]
Removed MachineProcess

5 years agoMainMachineLaunchConfigTab's selection dialogs now look better
Daniel Kirschten [Sun, 29 Sep 2019 21:44:38 +0000 (23:44 +0200)]
MainMachineLaunchConfigTab's selection dialogs now look better

5 years agoMainMachineLaunchConfigTab now looks better
Daniel Kirschten [Sun, 29 Sep 2019 21:31:08 +0000 (23:31 +0200)]
MainMachineLaunchConfigTab now looks better

5 years agoThe user can now specify a RAM file (but doesn't have to)
Daniel Kirschten [Sun, 29 Sep 2019 21:30:14 +0000 (23:30 +0200)]
The user can now specify a RAM file (but doesn't have to)

5 years agoA Machine now can be run, not only debugged (doesn't make a difference)
Daniel Kirschten [Sun, 29 Sep 2019 21:14:47 +0000 (23:14 +0200)]
A Machine now can be run, not only debugged (doesn't make a difference)

5 years agoMPM file gets loaded when MainMachineLaunchConfigTab is created
Daniel Kirschten [Sun, 29 Sep 2019 21:10:03 +0000 (23:10 +0200)]
MPM file gets loaded when MainMachineLaunchConfigTab is created

5 years agoReplaced hardcoded string with reference to MGSActivater.PLUGIN_ID
Daniel Kirschten [Sun, 29 Sep 2019 20:52:35 +0000 (22:52 +0200)]
Replaced hardcoded string with reference to MGSActivater.PLUGIN_ID

5 years agoMade MPM configurable; changed startup exec speed from 10 to 1
Daniel Kirschten [Sun, 29 Sep 2019 20:51:48 +0000 (22:51 +0200)]
Made MPM configurable; changed startup exec speed from 10 to 1

5 years agoFixed a bug in MainMemoryBlockExtension
Daniel Kirschten [Sun, 29 Sep 2019 16:38:36 +0000 (18:38 +0200)]
Fixed a bug in MainMemoryBlockExtension

5 years agoMade main memory access via the Memory view work
Daniel Kirschten [Sun, 29 Sep 2019 16:26:04 +0000 (18:26 +0200)]
Made main memory access via the Memory view work

5 years agoFurther work on machine launch configs
Daniel Kirschten [Sun, 29 Sep 2019 12:36:56 +0000 (14:36 +0200)]
Further work on machine launch configs

5 years agoRemoved version attributes of org.eclipse.debug.core/ui dependencies
Daniel Kirschten [Sat, 28 Sep 2019 16:28:23 +0000 (18:28 +0200)]
Removed version attributes of org.eclipse.debug.core/ui dependencies

5 years agoAdded a test launch config
Daniel Kirschten [Sat, 28 Sep 2019 14:31:45 +0000 (16:31 +0200)]
Added a test launch config

5 years agoUpdated project structure (bc SWTInput)
Christian Femers [Fri, 27 Sep 2019 01:59:33 +0000 (03:59 +0200)]
Updated project structure (bc SWTInput)

5 years agoFixed MemoryTableContentProvider#update throwing an exception
Daniel Kirschten [Thu, 26 Sep 2019 23:23:51 +0000 (01:23 +0200)]
Fixed MemoryTableContentProvider#update throwing an exception

5 years agoMade Clock slow enough for the slowest microinstruction I could find
Daniel Kirschten [Thu, 26 Sep 2019 23:22:40 +0000 (01:22 +0200)]
Made Clock slow enough for the slowest microinstruction I could find

5 years agoUpdated feature.xml to new dependencies and removed sizes
Christian Femers [Thu, 26 Sep 2019 23:06:07 +0000 (01:06 +0200)]
Updated feature.xml to new dependencies and removed sizes

5 years agoMake project selector handle MachineContexts and small improvements
Christian Femers [Thu, 26 Sep 2019 22:20:26 +0000 (00:20 +0200)]
Make project selector handle MachineContexts and small improvements

5 years agoSmall adjustment to the validity quality of a MachineContext
Christian Femers [Thu, 26 Sep 2019 22:18:43 +0000 (00:18 +0200)]
Small adjustment to the validity quality of a MachineContext

5 years agologic.core.tests now depends on logic.core, not logic.model
Daniel Kirschten [Thu, 26 Sep 2019 22:08:16 +0000 (00:08 +0200)]
logic.core.tests now depends on logic.core, not logic.model

5 years agoUpdated project references; also plugin.core no longer depends on itself
Daniel Kirschten [Thu, 26 Sep 2019 21:56:07 +0000 (23:56 +0200)]
Updated project references; also plugin.core no longer depends on itself

5 years agoMerge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
Fabian Stemmler [Thu, 26 Sep 2019 21:49:15 +0000 (23:49 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development

5 years agoSetting simulation speed higher should no longer have an effect on logic
Fabian Stemmler [Thu, 26 Sep 2019 21:49:05 +0000 (23:49 +0200)]
Setting simulation speed higher should no longer have an effect on logic

5 years agoRemoved debug sysouts to make the plugin "silent"
Daniel Kirschten [Thu, 26 Sep 2019 20:21:06 +0000 (22:21 +0200)]
Removed debug sysouts to make the plugin "silent"

5 years agoAdded "Reload machine" button
Daniel Kirschten [Thu, 26 Sep 2019 18:41:16 +0000 (20:41 +0200)]
Added "Reload machine" button

5 years agoA machine change now leaves user-defined sim speeds intact
Daniel Kirschten [Thu, 26 Sep 2019 18:40:14 +0000 (20:40 +0200)]
A machine change now leaves user-defined sim speeds intact

5 years agoSimulation speed now can be edited via a text field
Daniel Kirschten [Thu, 26 Sep 2019 18:35:16 +0000 (20:35 +0200)]
Simulation speed now can be edited via a text field

5 years agoFixed a stupid bug causing LogicExecuter to eat your CPU
Daniel Kirschten [Thu, 26 Sep 2019 18:06:49 +0000 (20:06 +0200)]
Fixed a stupid bug causing LogicExecuter to eat your CPU

5 years agoSwitched default mouse buttons for action and drag.
Daniel Kirschten [Thu, 26 Sep 2019 17:35:26 +0000 (19:35 +0200)]
Switched default mouse buttons for action and drag.

This makes it easier to move the view using the touchpad of a laptop.
Also it reflects that the user will rarely want to interact with the
model (via clicking), but frequently want to look around.

5 years agoChanged simulation speed slider to a scale (not sure if this is better?)
Daniel Kirschten [Thu, 26 Sep 2019 17:30:02 +0000 (19:30 +0200)]
Changed simulation speed slider to a scale (not sure if this is better?)

5 years agoRemoved MemoryView from plugin.xml
Daniel Kirschten [Thu, 26 Sep 2019 17:28:53 +0000 (19:28 +0200)]
Removed MemoryView from plugin.xml

5 years agoMade preference page a bit easier to use
Daniel Kirschten [Thu, 26 Sep 2019 17:28:28 +0000 (19:28 +0200)]
Made preference page a bit easier to use

5 years agoAdded preferences for mouse button assignments
Daniel Kirschten [Thu, 26 Sep 2019 17:15:46 +0000 (19:15 +0200)]
Added preferences for mouse button assignments

5 years agoDeleted legacy MachineContext
Daniel Kirschten [Thu, 26 Sep 2019 16:17:26 +0000 (18:17 +0200)]
Deleted legacy MachineContext

5 years agoFixed typo in SimulationViewEditor
Daniel Kirschten [Thu, 26 Sep 2019 16:17:06 +0000 (18:17 +0200)]
Fixed typo in SimulationViewEditor

5 years agoMade MemoryView to an Editor
Daniel Kirschten [Thu, 26 Sep 2019 16:16:11 +0000 (18:16 +0200)]
Made MemoryView to an Editor

5 years agoSet reasonable default values for Am2900 MicroInstructions
Fabian Stemmler [Thu, 26 Sep 2019 15:11:51 +0000 (17:11 +0200)]
Set reasonable default values for Am2900 MicroInstructions

5 years agoCreated CyclingCellEditor for BooleanEditingSupport
Fabian Stemmler [Thu, 26 Sep 2019 14:43:53 +0000 (16:43 +0200)]
Created CyclingCellEditor for BooleanEditingSupport

5 years agoAdded MnemonicFamilyBuilder and set most Mnemonics to 'X' by default
Fabian Stemmler [Thu, 26 Sep 2019 13:03:34 +0000 (15:03 +0200)]
Added MnemonicFamilyBuilder and set most Mnemonics to 'X' by default

5 years agoFixed execution freezing when the next queued event has a long delta
Daniel Kirschten [Thu, 26 Sep 2019 12:56:22 +0000 (14:56 +0200)]
Fixed execution freezing when the next queued event has a long delta

5 years agoSped up logic core execution by 1000%
Daniel Kirschten [Thu, 26 Sep 2019 12:42:09 +0000 (14:42 +0200)]
Sped up logic core execution by 1000%

5 years agoPauseableTimeFunction now supports non-integral speed factors
Daniel Kirschten [Thu, 26 Sep 2019 12:41:34 +0000 (14:41 +0200)]
PauseableTimeFunction now supports non-integral speed factors

5 years agoAdded a reset button to SimulationViewEditor
Daniel Kirschten [Thu, 26 Sep 2019 11:31:20 +0000 (13:31 +0200)]
Added a reset button to SimulationViewEditor

5 years agoFixed Am2900Machine#reset (broke when deleting clock ManualSwitch)
Daniel Kirschten [Thu, 26 Sep 2019 11:30:21 +0000 (13:30 +0200)]
Fixed Am2900Machine#reset (broke when deleting clock ManualSwitch)

5 years agoInstructionView now reacts to memory reassignments and machine changes
Daniel Kirschten [Thu, 26 Sep 2019 09:29:06 +0000 (11:29 +0200)]
InstructionView now reacts to memory reassignments and machine changes

5 years agoMade sure listeners get removed when SimulationViewEditor gets disposed
Daniel Kirschten [Thu, 26 Sep 2019 09:26:48 +0000 (11:26 +0200)]
Made sure listeners get removed when SimulationViewEditor gets disposed

5 years agoReworked some parts of the MachineContext to make its status clear.
Christian Femers [Thu, 26 Sep 2019 05:08:37 +0000 (07:08 +0200)]
Reworked some parts of the MachineContext to make its status clear.

While this is much better at tracking the status, Eclipse is still
"greedy" about the information that can be tracked concerning projects.
The current handling allows for more detailed listening to the machine
context status, and detects deleted or closed projects and "deactivates"
their machines. In addition to that, the machines get initialized in a
lazy way, as they are needed. This is currently done be requesting an
active machine, as putting it into getActiveMachine() caused troubles
with the SimulationViewEditor's recreate being called double (once
during get, and then as listener). This is not near an optimal solution
right now, but works reasonably well.

5 years agoFixed the MograsimBuilder a bit, but it will likely get removed
Christian Femers [Thu, 26 Sep 2019 04:57:08 +0000 (06:57 +0200)]
Fixed the MograsimBuilder a bit, but it will likely get removed

5 years agoDocumented the ProjectMachineContext
Christian Femers [Thu, 26 Sep 2019 04:56:01 +0000 (06:56 +0200)]
Documented the ProjectMachineContext

5 years agoReordered the disposal of the old resources, because of errors
Christian Femers [Thu, 26 Sep 2019 04:53:59 +0000 (06:53 +0200)]
Reordered the disposal of the old resources, because of errors

Apparently this was able to lead to "widget disposed" exceptions, and
for some reason the old canvas sill stays at it's place, causing two
canvases side by side.

5 years agoAdded comment on MachineRegistry
Christian Femers [Thu, 26 Sep 2019 04:50:17 +0000 (06:50 +0200)]
Added comment on MachineRegistry

5 years agoModified README.md a bit; deleted build_from_source.txt
Daniel Kirschten [Wed, 25 Sep 2019 19:41:27 +0000 (21:41 +0200)]
Modified README.md a bit; deleted build_from_source.txt

5 years agoRemoved the clock ManualSwitches and made the clock slower
Daniel Kirschten [Wed, 25 Sep 2019 18:45:11 +0000 (20:45 +0200)]
Removed the clock ManualSwitches and made the clock slower

5 years agoBZ/PC and IR now get written at the rising clock edge
Daniel Kirschten [Wed, 25 Sep 2019 18:43:11 +0000 (20:43 +0200)]
BZ/PC and IR now get written at the rising clock edge

to make timing requirements less strict

5 years agoReserialized components
Daniel Kirschten [Wed, 25 Sep 2019 18:27:23 +0000 (20:27 +0200)]
Reserialized components

5 years agoMade Am2900 memory reads work if Am2901Dest=QREG ...
Daniel Kirschten [Wed, 25 Sep 2019 18:00:57 +0000 (20:00 +0200)]
Made Am2900 memory reads work if Am2901Dest=QREG ...

at the expense of U forming shortly in the D bus when the second cycle
of a read starts, if the D bus is used in the first cycle; due to the
memory controller's TriStateBuffers being en- and disabled earlier than
the other TriStateBuffers writing to the buses.
U also forms in the D bus when the cycle after the second one of a read
starts, but this is due to the RAM chip shortly outputting U due to the
address changing to X, because the A bus holds Z in the second cycle of
a read.
Writes don't have these kind of problems since the memory controller
obviously doesn't output anything on the D bus when writing.

5 years agoFixed two small bugs in the two Delegating...Handlers:
Daniel Kirschten [Wed, 25 Sep 2019 16:42:18 +0000 (18:42 +0200)]
Fixed two small bugs in the two Delegating...Handlers:

1. DelegatingSubcomponentHighLevelStateHandler#getParamsForSerializing
now throws a meaningful exception when the delegate target was destroyed
2. Both now support serializing delegating to the parent

5 years agoHLSShell now closes when the according LogicUICanvas is disposed
Daniel Kirschten [Wed, 25 Sep 2019 16:33:27 +0000 (18:33 +0200)]
HLSShell now closes when the according LogicUICanvas is disposed

5 years agoAdjusted default HLS debug shell depth
Daniel Kirschten [Wed, 25 Sep 2019 16:33:07 +0000 (18:33 +0200)]
Adjusted default HLS debug shell depth

5 years agoRemoved model.am2900 from plugin.core's required bundles
Daniel Kirschten [Wed, 25 Sep 2019 16:10:27 +0000 (18:10 +0200)]
Removed model.am2900 from plugin.core's required bundles

5 years agoIndirectModelComponentCreator now supports clearing the component cache
Daniel Kirschten [Wed, 25 Sep 2019 16:10:02 +0000 (18:10 +0200)]
IndirectModelComponentCreator now supports clearing the component cache

5 years agoSimulationViewEditor now reacts better to machine changes
Daniel Kirschten [Wed, 25 Sep 2019 16:09:12 +0000 (18:09 +0200)]
SimulationViewEditor now reacts better to machine changes

5 years agosetViewerInput now is much faster and doesn't cause text to flicker
Daniel Kirschten [Wed, 25 Sep 2019 15:57:43 +0000 (17:57 +0200)]
setViewerInput now is much faster and doesn't cause text to flicker

5 years agoMade clock overridable by a ManualSwitch
Daniel Kirschten [Wed, 25 Sep 2019 13:26:43 +0000 (15:26 +0200)]
Made clock overridable by a ManualSwitch

5 years agoReserialized components
Daniel Kirschten [Wed, 25 Sep 2019 10:44:00 +0000 (12:44 +0200)]
Reserialized components

5 years agoSVE now supports context changes better (untested)
Daniel Kirschten [Wed, 25 Sep 2019 10:42:07 +0000 (12:42 +0200)]
SVE now supports context changes better (untested)

5 years agoRe-added instruction preview to SimulationViewEditor
Daniel Kirschten [Wed, 25 Sep 2019 10:40:28 +0000 (12:40 +0200)]
Re-added instruction preview to SimulationViewEditor

5 years agoFixed an exception being thrown when the application exits
Daniel Kirschten [Wed, 25 Sep 2019 10:06:27 +0000 (12:06 +0200)]
Fixed an exception being thrown when the application exits

5 years agoSimulationViewEditor now supports machine context changes (untested)
Daniel Kirschten [Wed, 25 Sep 2019 09:58:17 +0000 (11:58 +0200)]
SimulationViewEditor now supports machine context changes (untested)

5 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Wed, 25 Sep 2019 09:57:25 +0000 (11:57 +0200)]
Merge remote-tracking branch 'origin/development' into development

# Conflicts:
# plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/views/LogicUIPart.java

5 years agoSwitched BooleanEditingSupport back to ´CheckBoxCellEditor
Fabian Stemmler [Wed, 25 Sep 2019 08:40:35 +0000 (10:40 +0200)]
Switched BooleanEditingSupport back to ´CheckBoxCellEditor

5 years agoNumbers in MemoryView and mpm editor now have leading zeros
Fabian Stemmler [Tue, 24 Sep 2019 18:18:19 +0000 (20:18 +0200)]
Numbers in MemoryView and mpm editor now have leading zeros

5 years agoMade simulation view / LogicUIPart to an Editor
Daniel Kirschten [Tue, 24 Sep 2019 14:51:00 +0000 (16:51 +0200)]
Made simulation view / LogicUIPart to an Editor

5 years agoMade infinite depth for HLS combo selectable in Eclipse preferences
Daniel Kirschten [Tue, 24 Sep 2019 14:50:05 +0000 (16:50 +0200)]
Made infinite depth for HLS combo selectable in Eclipse preferences

5 years agoMerge branch 'development' of
Fabian Stemmler [Tue, 24 Sep 2019 14:29:34 +0000 (16:29 +0200)]
Merge branch 'development' of
https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into
development

Conflicts:
plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/views/LogicUIPart.java

5 years agoMade HLSShell component combo box shorter
Daniel Kirschten [Tue, 24 Sep 2019 14:21:37 +0000 (16:21 +0200)]
Made HLSShell component combo box shorter

5 years agoAdded Step by step execution to LogicUIPart
Fabian Stemmler [Tue, 24 Sep 2019 14:17:47 +0000 (16:17 +0200)]
Added Step by step execution to LogicUIPart

5 years agoAdded clock to Am2900
Fabian Stemmler [Tue, 24 Sep 2019 14:17:29 +0000 (16:17 +0200)]
Added clock to Am2900

5 years agoImproved error handling when opening and saving .mpm files
Fabian Stemmler [Tue, 24 Sep 2019 11:46:07 +0000 (13:46 +0200)]
Improved error handling when opening and saving .mpm files

5 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Tue, 24 Sep 2019 09:26:59 +0000 (11:26 +0200)]
Merge remote-tracking branch 'origin/development' into development

5 years agoAdded the two Combos mentioned in the prev. commit to test them.
Christian Femers [Tue, 24 Sep 2019 04:28:12 +0000 (06:28 +0200)]
Added the two Combos mentioned in the prev. commit to test them.

While one is only there for experiments, the other can later be used to
switch active projects.

5 years agoTool class for creating Combos that allow to select machines/projects
Christian Femers [Tue, 24 Sep 2019 04:26:39 +0000 (06:26 +0200)]
Tool class for creating Combos that allow to select machines/projects

5 years agoFixed detection problems with ProjectMachineContext
Christian Femers [Tue, 24 Sep 2019 04:24:18 +0000 (06:24 +0200)]
Fixed detection problems with ProjectMachineContext

Other problems still remain; e.g. PRE-CLOSE et al. makes the listeners
unable to detect a closed project, because it was not yet marked as
such. There should also be a register of open, but currently unused
projects.

5 years agoMarked old MachineContext deprecated
Christian Femers [Tue, 24 Sep 2019 04:19:43 +0000 (06:19 +0200)]
Marked old MachineContext deprecated

5 years agoRenamed the simulation view in the plugin.xml (had a "view1" id)
Christian Femers [Tue, 24 Sep 2019 03:19:36 +0000 (05:19 +0200)]
Renamed the simulation view in the plugin.xml (had a "view1" id)

5 years agoAdded listener and event structure to ProjectMachineContexts
Christian Femers [Tue, 24 Sep 2019 03:18:06 +0000 (05:18 +0200)]
Added listener and event structure to ProjectMachineContexts

5 years agoAllow to listen for changes in the MachineRegistry
Christian Femers [Tue, 24 Sep 2019 03:13:46 +0000 (05:13 +0200)]
Allow to listen for changes in the MachineRegistry

5 years agoRenamed method to its actual function
Christian Femers [Tue, 24 Sep 2019 03:12:39 +0000 (05:12 +0200)]
Renamed method to its actual function

5 years agoAdded id to machine definition (was only set in the extension point)
Christian Femers [Tue, 24 Sep 2019 03:11:56 +0000 (05:11 +0200)]
Added id to machine definition (was only set in the extension point)

MachineRegistry will check for consistency

5 years agoMade InstructionTable a bit easier to use
Daniel Kirschten [Mon, 23 Sep 2019 15:43:48 +0000 (17:43 +0200)]
Made InstructionTable a bit easier to use

5 years agoCreate a new machine when a MachineContext is used and has a definition.
Christian Femers [Mon, 23 Sep 2019 14:53:05 +0000 (16:53 +0200)]
Create a new machine when a MachineContext is used and has a definition.

This might be refined in future to a somewhat more lazy creation, but
for now it fixes the bug that a machine context has no machine at the
start, and it is not clear, when else it should be created.

5 years agoAdded missing call to super.dispose()
Daniel Kirschten [Mon, 23 Sep 2019 12:06:07 +0000 (14:06 +0200)]
Added missing call to super.dispose()

5 years agoUpdated to new SWTHelper version
Daniel Kirschten [Mon, 23 Sep 2019 12:04:37 +0000 (14:04 +0200)]
Updated to new SWTHelper version

5 years agoProject now correctly identified from file
Fabian Stemmler [Sun, 22 Sep 2019 18:13:22 +0000 (20:13 +0200)]
Project now correctly identified from file

5 years agoSwitched Instruction View to project associated MachineContext
Fabian Stemmler [Sun, 22 Sep 2019 17:32:52 +0000 (19:32 +0200)]
Switched Instruction View to project associated MachineContext

5 years agoAdded hover text to make clear that pressing running will pause the sim.
Christian Femers [Sat, 21 Sep 2019 21:25:51 +0000 (23:25 +0200)]
Added hover text to make clear that pressing running will pause the sim.

This might still need a better solution from an UX perspective

5 years agoAdded logo resources to the core plugin
Christian Femers [Sat, 21 Sep 2019 21:22:02 +0000 (23:22 +0200)]
Added logo resources to the core plugin