From 895efc7a8e7f5ff20e84fd957b7f5e57d06b9b72 Mon Sep 17 00:00:00 2001 From: hneemann Date: Wed, 30 Mar 2016 19:27:51 +0200 Subject: [PATCH] added a gpo to processor --- src/main/dig/processor/GPO.dig | 405 +++++++++++++ src/main/dig/processor/Processor.dig | 531 ++++++++++++------ .../java/de/neemann/digital/gui/Main.java | 8 + 3 files changed, 763 insertions(+), 181 deletions(-) create mode 100644 src/main/dig/processor/GPO.dig diff --git a/src/main/dig/processor/GPO.dig b/src/main/dig/processor/GPO.dig new file mode 100644 index 000000000..f4678f1ac --- /dev/null +++ b/src/main/dig/processor/GPO.dig @@ -0,0 +1,405 @@ + + + + + In + + + Label + A + + + Bits + 16 + + + + 0 + + + In + + + Label + D + + + Bits + 16 + + + + 0 + + + In + + + Label + C + + + + 0 + + + In + + + Label + ioW + + + + 0 + + + Comparator + + + Bits + 16 + + + + 0 + + + Const + + + Value + 21 + + + Bits + 16 + + + + 0 + + + And + + + 0 + + + Register + + + Bits + 16 + + + + 0 + + + Splitter + + + Input Splitting + 16 + + + Output Splitting + 1*16 + + + + 0 + + + Out + + + Label + O0 + + + + 0 + + + Out + + + Label + O1 + + + + 0 + + + Out + + + Label + O2 + + + + 0 + + + Out + + + Label + O3 + + + + 0 + + + Out + + + Label + O4 + + + + 0 + + + Out + + + Label + O5 + + + + 0 + + + Out + + + Label + O6 + + + + 0 + + + Out + + + Label + O7 + + + + 0 + + + Out + + + Label + O8 + + + + 0 + + + Out + + + Label + O9 + + + + 0 + + + Out + + + Label + OA + + + + 0 + + + Out + + + Label + OB + + + + 0 + + + Out + + + Label + OC + + + + 0 + + + Out + + + Label + OD + + + + 0 + + + Out + + + Label + OE + + + + 0 + + + Out + + + Label + OF + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/dig/processor/Processor.dig b/src/main/dig/processor/Processor.dig index addc1406e..f2461f086 100644 --- a/src/main/dig/processor/Processor.dig +++ b/src/main/dig/processor/Processor.dig @@ -137,7 +137,7 @@ 16 - + 0 @@ -169,60 +169,27 @@ Data - 46 - 5380 - 8417 - 19680 - 8417 - 5367 - 19695 - 28163 - 20992 - 31744 - 28662 - 8417 - 19693 - 734 - 8417 - 32770 - 23053 - 15362 - 23574 + 13 + 5137 + 5120 + 6145 + 15888 + 29521 + 15375 + 26107 8193 - 8417 - 19680 - 8417 - 5625 - 19695 - 28657 - 65535 - 22992 - 32770 - 23053 - 8194 - 8417 - 19680 - 8417 - 32805 - 4848 - 19695 - 28645 - 65535 - 23325 - 1025 - 749 - 20190 - 6369 - 20222 - 6370 - 27151 + 16400 + 29521 + 15360 + 26107 + 28661 16 lastDataFile - /home/hneemann/Dokumente/DHBW/Technische_Informatik_II/Systemnahes_Programmieren/java/assembler3/src/main/asm/fibonacci.hex + /home/hneemann/Dokumente/DHBW/Technische_Informatik_II/Systemnahes_Programmieren/java/assembler3/src/main/asm/lightChase.hex @@ -271,7 +238,7 @@ Frequency - 1000 + 100 @@ -307,8 +274,174 @@ 0 + + GPO.dig + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + LED + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -318,16 +451,16 @@ - - + + - - + + - - + + @@ -358,8 +491,12 @@ - - + + + + + + @@ -367,11 +504,11 @@ - + - - + + @@ -394,8 +531,12 @@ - - + + + + + + @@ -411,7 +552,7 @@ - + @@ -430,12 +571,28 @@ - - + + - - + + + + + + + + + + + + + + + + + + @@ -450,12 +607,8 @@ - - - - - - + + @@ -471,43 +624,35 @@ - + - - + + + + + + - - - - - - - - - - - - - - + + - - + + @@ -518,12 +663,12 @@ - - + + - - + + @@ -539,7 +684,7 @@ - + @@ -549,58 +694,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -618,8 +711,72 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -654,8 +811,8 @@ - - + + @@ -665,14 +822,18 @@ - - - - + + + + + + + + @@ -686,17 +847,13 @@ - - + + - - - - @@ -714,12 +871,8 @@ - - - - - - + + @@ -733,10 +886,6 @@ - - - - @@ -765,6 +914,10 @@ + + + + @@ -794,8 +947,12 @@ - - + + + + + + @@ -805,10 +962,6 @@ - - - - @@ -818,13 +971,29 @@ - - + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/de/neemann/digital/gui/Main.java b/src/main/java/de/neemann/digital/gui/Main.java index 463d186a7..5c05dde3c 100644 --- a/src/main/java/de/neemann/digital/gui/Main.java +++ b/src/main/java/de/neemann/digital/gui/Main.java @@ -25,6 +25,8 @@ import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; import java.awt.*; import java.awt.event.ActionEvent; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; import java.io.Closeable; import java.io.File; import java.io.IOException; @@ -96,6 +98,12 @@ public class Main extends JFrame implements ClosingWindowListener.ConfirmSave { getContentPane().add(statusLabel, BorderLayout.SOUTH); addWindowListener(new ClosingWindowListener(this, this)); + addWindowListener(new WindowAdapter() { + @Override + public void windowClosed(WindowEvent e) { + clearModelDescription(); // stop model timer if running + } + }); JMenuBar bar = new JMenuBar();