Mograsim.git
4 years agoRemoved System.out's
Christian Femers [Sat, 29 Jun 2019 01:36:40 +0000 (03:36 +0200)]
Removed System.out's

4 years agoChanged high level addressing to have the correct bit and reg. order
Christian Femers [Sat, 29 Jun 2019 01:35:09 +0000 (03:35 +0200)]
Changed high level addressing to have the correct bit and reg. order

4 years agoFixed and added a lot of tests
Christian Femers [Sat, 29 Jun 2019 01:30:32 +0000 (03:30 +0200)]
Fixed and added a lot of tests

4 years agoImproved package structure
Christian Femers [Sat, 29 Jun 2019 01:29:46 +0000 (03:29 +0200)]
Improved package structure

4 years agoAdded getBounds() to TextComponent
Christian Femers [Sat, 29 Jun 2019 01:29:05 +0000 (03:29 +0200)]
Added getBounds() to TextComponent

4 years agoFixed ManualSwitch concerning U and added Bit methods
Christian Femers [Sat, 29 Jun 2019 01:28:14 +0000 (03:28 +0200)]
Fixed ManualSwitch concerning U and added Bit methods

4 years agoAdded an visual-only text component and modelling helper class
Christian Femers [Fri, 28 Jun 2019 17:26:19 +0000 (19:26 +0200)]
Added an visual-only text component and modelling helper class

4 years agoMade LogicUIStandalone implement Runnable because why not.
Christian Femers [Fri, 28 Jun 2019 17:24:47 +0000 (19:24 +0200)]
Made LogicUIStandalone implement Runnable because why not.

4 years agoCommon ConnectionPoint interface to simplify many things
Christian Femers [Fri, 28 Jun 2019 17:22:57 +0000 (19:22 +0200)]
Common ConnectionPoint interface to simplify many things

Simplifies the GUIWire's constructors and allows to loop to create wire
connections.

4 years agoSlight improvements in documentation.
Daniel Kirschten [Wed, 26 Jun 2019 21:10:56 +0000 (23:10 +0200)]
Slight improvements in documentation.

4 years agoImplemented set/getHighLevelState for most components
Daniel Kirschten [Wed, 26 Jun 2019 21:02:59 +0000 (23:02 +0200)]
Implemented set/getHighLevelState for most components

4 years agoConstructor of BitVector now is fail-fast for bits being null
Daniel Kirschten [Wed, 26 Jun 2019 20:29:20 +0000 (22:29 +0200)]
Constructor of BitVector now is fail-fast for bits being null

4 years agoAdded debug shell for setHighLevelState; improved ViewModel comments
Daniel Kirschten [Wed, 26 Jun 2019 19:53:44 +0000 (21:53 +0200)]
Added debug shell for setHighLevelState; improved ViewModel comments

4 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Wed, 26 Jun 2019 19:19:17 +0000 (21:19 +0200)]
Merge remote-tracking branch 'origin/development' into development

4 years agomapping.json is now loaded by the class loader
Fabian Stemmler [Wed, 26 Jun 2019 19:11:21 +0000 (21:11 +0200)]
mapping.json is now loaded by the class loader

4 years agoImplemented GUI_rsLatch#setHighLevelState
Daniel Kirschten [Wed, 26 Jun 2019 17:19:39 +0000 (19:19 +0200)]
Implemented GUI_rsLatch#setHighLevelState

4 years agoImplemented GUIManualSwitch#setHighLevelState
Daniel Kirschten [Wed, 26 Jun 2019 17:19:32 +0000 (19:19 +0200)]
Implemented GUIManualSwitch#setHighLevelState

4 years agoImplemented things needed for setHighLevelState
Daniel Kirschten [Wed, 26 Jun 2019 17:16:31 +0000 (19:16 +0200)]
Implemented things needed for setHighLevelState

4 years agoAdded forceValues(...) method to Wire
Fabian Stemmler [Wed, 26 Jun 2019 13:51:57 +0000 (15:51 +0200)]
Added forceValues(...) method to Wire

4 years agoCommented MovablePin
Daniel Kirschten [Wed, 26 Jun 2019 10:50:41 +0000 (12:50 +0200)]
Commented MovablePin

4 years agoCommented WireCrossPoint
Daniel Kirschten [Wed, 26 Jun 2019 10:49:16 +0000 (12:49 +0200)]
Commented WireCrossPoint

4 years agoCommented Pin
Daniel Kirschten [Wed, 26 Jun 2019 10:16:54 +0000 (12:16 +0200)]
Commented Pin

4 years agoIncluded net.mograsim.preferences into net.mograsim.plugin.feature
Daniel Kirschten [Tue, 25 Jun 2019 12:57:57 +0000 (14:57 +0200)]
Included net.mograsim.preferences into net.mograsim.plugin.feature

4 years agoThe user no longer has to click on "Apply" to see changes in the preview
Daniel Kirschten [Tue, 25 Jun 2019 09:47:16 +0000 (11:47 +0200)]
The user no longer has to click on "Apply" to see changes in the preview

4 years agoSimulation preview no longer can be moved / zoomed; removed old code
Daniel Kirschten [Tue, 25 Jun 2019 09:37:51 +0000 (11:37 +0200)]
Simulation preview no longer can be moved / zoomed; removed old code

4 years agoMore colors managed by Preferences
Daniel Kirschten [Tue, 25 Jun 2019 09:33:12 +0000 (11:33 +0200)]
More colors managed by Preferences

4 years agoRemoved visitor pattern used for one test only
Daniel Kirschten [Tue, 25 Jun 2019 09:23:43 +0000 (11:23 +0200)]
Removed visitor pattern used for one test only

4 years agoexecuteWithDifferentColor no longer crashes if col==null
Daniel Kirschten [Tue, 25 Jun 2019 08:49:19 +0000 (10:49 +0200)]
executeWithDifferentColor no longer crashes if col==null

4 years agoNow using preference system in plugin.core
Daniel Kirschten [Tue, 25 Jun 2019 08:45:53 +0000 (10:45 +0200)]
Now using preference system in plugin.core

4 years agoChanges in the preference system
Daniel Kirschten [Tue, 25 Jun 2019 08:45:39 +0000 (10:45 +0200)]
Changes in the preference system

4 years agoCreated net.mograsim.preferences
Daniel Kirschten [Tue, 25 Jun 2019 08:03:50 +0000 (10:03 +0200)]
Created net.mograsim.preferences

4 years agoCleaned project references and MANIFEST.mf Bundle-Vendor entries
Daniel Kirschten [Tue, 25 Jun 2019 07:27:42 +0000 (09:27 +0200)]
Cleaned project references and MANIFEST.mf Bundle-Vendor entries

4 years agoReorganized location of .json components
Fabian Stemmler [Mon, 24 Jun 2019 15:46:14 +0000 (17:46 +0200)]
Reorganized location of .json components

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

4 years agoEquivalent inner components now exchangeable. Fixed in/output pin order.
Fabian Stemmler [Mon, 24 Jun 2019 14:22:20 +0000 (16:22 +0200)]
Equivalent inner components now exchangeable. Fixed in/output pin order.

1. Previously, the creation of the inner components of a custom
component was fixated in the file, even though the same inner component
could either be described by a class, or a file. mapping.json now
dictates, which one to use.
2. Added the .json versions of all currently available
SubmodelComponents
3. Since pins are no longer addressed by index, but rather by name,
rectangular custom components were created with a more or less random
pin order, were inputs and outputs were mixed. This issue was fixed.

4 years agoCleaned up:
Daniel Kirschten [Sun, 23 Jun 2019 22:35:16 +0000 (00:35 +0200)]
Cleaned up:

-Empty but required folders now are being tracked via .gitkeep files
-Cleaned build.properties files
-Moved test source build output folders to bin/test
-Removed duplicate ClickableSubmodelComponentsTest
-Removed source folders from .classpath in projects that don't need /
have source folders

4 years agoAdded logo
Christian Femers [Sun, 23 Jun 2019 18:37:16 +0000 (20:37 +0200)]
Added logo

4 years agoCopyright notice added
Christian Femers [Sun, 23 Jun 2019 17:38:05 +0000 (19:38 +0200)]
Copyright notice added

4 years agoUpdate LICENSE to EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
Christian Femers [Sun, 23 Jun 2019 17:35:27 +0000 (19:35 +0200)]
Update LICENSE to EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

4 years agoCompletely changed the structure and switched to Eclipse Plugin.
Christian Femers [Sun, 23 Jun 2019 17:29:10 +0000 (19:29 +0200)]
Completely changed the structure and switched to Eclipse Plugin.

4 years agoCommented GUIWire
Daniel Kirschten [Sat, 22 Jun 2019 13:16:04 +0000 (15:16 +0200)]
Commented GUIWire

4 years agoCorrected documentation of wireCreated() and wireDestroyed()
Daniel Kirschten [Sat, 22 Jun 2019 13:07:57 +0000 (15:07 +0200)]
Corrected documentation of wireCreated() and wireDestroyed()

4 years agoViewLogicModelAdapter no longer forces all GUIComponents to be loaded
Daniel Kirschten [Sat, 22 Jun 2019 12:40:25 +0000 (14:40 +0200)]
ViewLogicModelAdapter no longer forces all GUIComponents to be loaded

4 years agoCommented SubmodelComponent
Daniel Kirschten [Sat, 22 Jun 2019 08:58:33 +0000 (10:58 +0200)]
Commented SubmodelComponent

4 years agoChanged SubmodelComponent.addSubmodelInterface() interface
Daniel Kirschten [Sat, 22 Jun 2019 08:56:46 +0000 (10:56 +0200)]
Changed SubmodelComponent.addSubmodelInterface() interface

4 years agoChanged interface of GUIComponent.getPins()
Daniel Kirschten [Sat, 22 Jun 2019 08:43:15 +0000 (10:43 +0200)]
Changed interface of GUIComponent.getPins()

4 years agoImproved comments of GUIComponent
Daniel Kirschten [Sat, 22 Jun 2019 08:34:04 +0000 (10:34 +0200)]
Improved comments of GUIComponent

4 years agoAdded a check in addPin()
Daniel Kirschten [Sat, 22 Jun 2019 08:31:11 +0000 (10:31 +0200)]
Added a check in addPin()

4 years agoCommented GUIComponent
Daniel Kirschten [Sat, 22 Jun 2019 08:15:05 +0000 (10:15 +0200)]
Commented GUIComponent

4 years agoStopped creation of unneccessary Rectangle instances
Daniel Kirschten [Sat, 22 Jun 2019 07:48:03 +0000 (09:48 +0200)]
Stopped creation of unneccessary Rectangle instances

4 years agoImplemented SubmodelComponent.clicked(); removed obsolete TODOs
Daniel Kirschten [Sat, 22 Jun 2019 07:33:50 +0000 (09:33 +0200)]
Implemented SubmodelComponent.clicked(); removed obsolete TODOs

4 years agoRemoved obsolete AtomicAm2901NANDBased
Daniel Kirschten [Fri, 21 Jun 2019 22:15:17 +0000 (00:15 +0200)]
Removed obsolete AtomicAm2901NANDBased

4 years agoFinished GUIAm2901
Daniel Kirschten [Fri, 21 Jun 2019 21:55:07 +0000 (23:55 +0200)]
Finished GUIAm2901

4 years agoMade Wire.fuse(Wire, Wire, int, int int) public
Daniel Kirschten [Fri, 21 Jun 2019 21:33:37 +0000 (23:33 +0200)]
Made  Wire.fuse(Wire, Wire, int, int int) public

4 years agoFusing Wires will no longer initialize Wires with value U
Fabian Stemmler [Fri, 21 Jun 2019 17:27:50 +0000 (19:27 +0200)]
Fusing Wires will no longer initialize Wires with value U

4 years agoFixed a bug in GUIAm2901
Daniel Kirschten [Fri, 21 Jun 2019 14:42:22 +0000 (16:42 +0200)]
Fixed a bug in GUIAm2901

4 years agoImplemented functional GUIAm2901 without layout
Daniel Kirschten [Fri, 21 Jun 2019 14:01:11 +0000 (16:01 +0200)]
Implemented functional GUIAm2901 without layout

4 years agoMade GUIComponent.getPin(String) fail-fast
Daniel Kirschten [Fri, 21 Jun 2019 14:00:48 +0000 (16:00 +0200)]
Made GUIComponent.getPin(String) fail-fast

4 years agoQuickfix for Wire.fuse(...)
Fabian Stemmler [Fri, 21 Jun 2019 13:02:41 +0000 (15:02 +0200)]
Quickfix for Wire.fuse(...)

The fusion of Wires caused an exception upon updating Wire values, if
one of the fused Wires had no inputs, other than the Wire it was fused
with.

The Connector Component still has this issue.

4 years agoUpdated GUIAm2901ALUInclDecode
Daniel Kirschten [Fri, 21 Jun 2019 12:42:04 +0000 (14:42 +0200)]
Updated GUIAm2901ALUInclDecode

4 years agoUpdated GUIAm2901ALUFuncDecode
Daniel Kirschten [Fri, 21 Jun 2019 12:24:17 +0000 (14:24 +0200)]
Updated GUIAm2901ALUFuncDecode

4 years agoViewLogicModelAdapter now supports directly connected interface pins
Daniel Kirschten [Fri, 21 Jun 2019 12:14:50 +0000 (14:14 +0200)]
ViewLogicModelAdapter now supports directly connected interface pins

4 years agoMade LogicExecuter robust against crashes in Timeline.executeUntil
Daniel Kirschten [Fri, 21 Jun 2019 12:13:57 +0000 (14:13 +0200)]
Made LogicExecuter robust against crashes in Timeline.executeUntil

4 years agoImplemented GUIAm2901ALUInclSourceDecodeInclFunctionDecode
Daniel Kirschten [Fri, 21 Jun 2019 10:56:25 +0000 (12:56 +0200)]
Implemented GUIAm2901ALUInclSourceDecodeInclFunctionDecode

4 years agoUpdated SubmodelComponentParams json format
Fabian Stemmler [Fri, 21 Jun 2019 10:22:25 +0000 (12:22 +0200)]
Updated SubmodelComponentParams json format

Instead of saving an inner GUIComponents logicWidth, a Map<String,
Object> containing all relevant information for instantiation is saved.
Insured that FileWriter/Readers are closed in JsonHandler.

4 years agoPins are now accessed via name, not index
Daniel Kirschten [Fri, 21 Jun 2019 09:18:43 +0000 (11:18 +0200)]
Pins are now accessed via name, not index

4 years agoAdded call checks for subclass methods:
Daniel Kirschten [Wed, 19 Jun 2019 11:13:49 +0000 (13:13 +0200)]
Added call checks for subclass methods:

SubmodelComponents don't allow add / removePin,
SimpleRectangularSubmodelComponents don't allow add /
removeSubmodelInterface and setSize

4 years agoMerge commit '28314e7a9a3c3ebfcc4db8e9f1875507063ae6e6' into development
Daniel Kirschten [Wed, 19 Jun 2019 11:04:01 +0000 (13:04 +0200)]
Merge commit '28314e7a9a3c3ebfcc4db8e9f1875507063ae6e6' into development

4 years agoSimpleRectangularSubmodelComponent now supports pin names
Daniel Kirschten [Wed, 19 Jun 2019 10:56:26 +0000 (12:56 +0200)]
SimpleRectangularSubmodelComponent now supports pin names

4 years agoMerge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
Fabian Stemmler [Tue, 18 Jun 2019 19:40:59 +0000 (21:40 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development

4 years agoLogic Wire bits can now be fused together (Wire.fuse(...))
Fabian Stemmler [Tue, 18 Jun 2019 19:38:22 +0000 (21:38 +0200)]
Logic Wire bits can now be fused together (Wire.fuse(...))

4 years agoPins now have names
Daniel Kirschten [Tue, 18 Jun 2019 16:01:32 +0000 (18:01 +0200)]
Pins now have names

4 years agoImplemented GUIAm2901ALUInclDecode
Daniel Kirschten [Tue, 18 Jun 2019 15:48:30 +0000 (17:48 +0200)]
Implemented GUIAm2901ALUInclDecode

4 years agoImplemented GUIAm2901ALUFuncDecode
Daniel Kirschten [Tue, 18 Jun 2019 14:26:14 +0000 (16:26 +0200)]
Implemented GUIAm2901ALUFuncDecode

4 years agoExported all packages
Daniel Kirschten [Tue, 18 Jun 2019 11:00:21 +0000 (13:00 +0200)]
Exported all packages

4 years agoImproved rendering quality for speedup
Daniel Kirschten [Tue, 18 Jun 2019 10:43:31 +0000 (12:43 +0200)]
Improved rendering quality for speedup

4 years agoFixed GUIram4
Daniel Kirschten [Tue, 18 Jun 2019 08:28:01 +0000 (10:28 +0200)]
Fixed GUIram4

4 years agoAdded file version and closed resource leak
Fabian Stemmler [Tue, 18 Jun 2019 08:17:48 +0000 (10:17 +0200)]
Added file version and closed resource leak

Component json files are now created with the version in the first line.
Removed a superfluous FileWriter in JsonHandler.

4 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Tue, 18 Jun 2019 07:17:57 +0000 (09:17 +0200)]
Merge remote-tracking branch 'origin/development' into development

4 years agoProviding json examples
Fabian Stemmler [Mon, 17 Jun 2019 15:52:22 +0000 (17:52 +0200)]
Providing json examples

The format is basically finished, only the InnerComponentParams might
still changed.

4 years agoImplemented GUIAm2901ALUOneBit
Daniel Kirschten [Mon, 17 Jun 2019 14:24:15 +0000 (16:24 +0200)]
Implemented GUIAm2901ALUOneBit

4 years agoImplemented GUIAm2901SourceDecode
Daniel Kirschten [Mon, 17 Jun 2019 13:47:06 +0000 (15:47 +0200)]
Implemented GUIAm2901SourceDecode

4 years agoCleaned up GUICustomComponentCreator and wrote documentation.
Fabian Stemmler [Mon, 17 Jun 2019 13:26:07 +0000 (15:26 +0200)]
Cleaned up GUICustomComponentCreator and wrote documentation.

4 years agoSimplified file representation of SubmodelComponents
Fabian Stemmler [Sun, 16 Jun 2019 21:21:12 +0000 (23:21 +0200)]
Simplified file representation of SubmodelComponents

Merged SubmodelComponentParams and the SimpleRectangularComponentParams
into one, by adding a map of specialized parameters to
SubmodelComponentParams. There is only one file type now, so the
distinction via file extension is no longer required. This new system
still requires some clean up, but should be extensible when new
subclasses of SubmodelComponent are created.

4 years agoGeneral SubmodelComponents can now be saved to a json format
Fabian Stemmler [Fri, 14 Jun 2019 13:40:57 +0000 (15:40 +0200)]
General SubmodelComponents can now be saved to a json format

Format for SimpleRectangularSubmodelComponents has changed.
Format for SubmodelComponents holds information on Pin positions.
Both SubmodelComponents and SimpleRect... can be created through the
GUICustomComponentCreator (SubmodelComponents are created as
SimpleRect..., as SubmodelComponent is abstract). This can be expanded
upon for the addition of more subclasses to SubmodelComponent. Included
a class JsonExample for testing a few standard cases.

4 years agoImplemented GUIAm2901DestDecode
Daniel Kirschten [Wed, 12 Jun 2019 09:35:43 +0000 (11:35 +0200)]
Implemented GUIAm2901DestDecode

4 years agoImplemented GUIAm2901QReg
Daniel Kirschten [Wed, 12 Jun 2019 08:27:31 +0000 (10:27 +0200)]
Implemented GUIAm2901QReg

4 years agoImplemented GUIor4
Daniel Kirschten [Tue, 11 Jun 2019 20:57:25 +0000 (22:57 +0200)]
Implemented GUIor4

4 years agoRemoved redundant calls to getPin
Daniel Kirschten [Tue, 11 Jun 2019 20:57:20 +0000 (22:57 +0200)]
Removed redundant calls to getPin

4 years agoImplemented GUIsel3_4
Daniel Kirschten [Tue, 11 Jun 2019 20:39:15 +0000 (22:39 +0200)]
Implemented GUIsel3_4

4 years agoImplemented GUIxor
Daniel Kirschten [Tue, 11 Jun 2019 20:12:05 +0000 (22:12 +0200)]
Implemented GUIxor

4 years agoMade GUIsel2_4 more "tabellaric"
Daniel Kirschten [Tue, 11 Jun 2019 20:01:44 +0000 (22:01 +0200)]
Made GUIsel2_4 more "tabellaric"

4 years agoImproved GUIsel2_4 wire layout
Daniel Kirschten [Tue, 11 Jun 2019 19:58:53 +0000 (21:58 +0200)]
Improved GUIsel2_4 wire layout

4 years agoImplemented GUIram4
Daniel Kirschten [Tue, 11 Jun 2019 19:55:28 +0000 (21:55 +0200)]
Implemented GUIram4

4 years agoUpdated to new SWTHelper version needed for LogicUIRenderer.
Daniel Kirschten [Tue, 11 Jun 2019 15:31:59 +0000 (17:31 +0200)]
Updated to new SWTHelper version needed for LogicUIRenderer.

4 years agoAdded file representation for SimpleRectangularSubmodelComponents
Fabian Stemmler [Mon, 10 Jun 2019 20:07:36 +0000 (22:07 +0200)]
Added file representation for SimpleRectangularSubmodelComponents

SimpleRectangularSubmodelComponents can now be saved into a .json file
(via ComponentParams writeJSON method)
GUICustomComponents can now be created from a .json file
This system does not yet support general SubmodelComponents and thus the
format is still subject to change.

4 years agoFixed a refactoring issue in GUIsel2_4
Fabian Stemmler [Sat, 8 Jun 2019 15:07:45 +0000 (17:07 +0200)]
Fixed a refactoring issue in GUIsel2_4

I had wrongly assumed that moveTo in GUIComponent had also been
refactored to moveCenterTo, like in WireCrossPoint.

4 years agoAdded GUIsel2_4
Fabian Stemmler [Sat, 8 Jun 2019 15:00:28 +0000 (17:00 +0200)]
Added GUIsel2_4

4 years agoFixed project references of net.mograsim.rcp
Daniel Kirschten [Fri, 7 Jun 2019 12:33:03 +0000 (14:33 +0200)]
Fixed project references of net.mograsim.rcp

4 years agoRemoved TODO about D lines
Daniel Kirschten [Fri, 7 Jun 2019 11:22:19 +0000 (13:22 +0200)]
Removed TODO about D lines