| 
					
				 | 
			
			
				@@ -1,7 +1,14 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package de.mcs.tools.sps.emulator.model;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.ArrayList;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.List;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 public class WorkingModel {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public enum WORKINGSTATE {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    NN, EMULATE
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   private byte registerA;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   private byte registerB;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   private byte registerC;
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -13,13 +20,17 @@ public class WorkingModel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   private short raddress;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   private short address;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  private List<Integer> stack = new ArrayList<>();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  private int[] bin2SrcLine;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  private WORKINGSTATE workingstate;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   @Override
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   public String toString() {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     StringBuilder b = new StringBuilder();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     b.append(String.format(
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        "%s:[registerA: 0x%02x, registerB: 0x%02x, registerC: 0x%02x, registerD: 0x%02x, registerE: 0x%02x, registerF: 0x%02x, page: 0x%02x, address: 0x%04x, raddress: 0x%04x ]",
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        "%s:[registerA: 0x%02x, registerB: 0x%02x, registerC: 0x%02x, registerD: 0x%02x, registerE: 0x%02x, registerF: 0x%02x, page: 0x%02x, address: 0x%04x, raddress: 0x%04x, stack: %d ]",
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.getClass().getSimpleName(), registerA, registerB, registerC, registerD, registerE, registerF, page,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        address, raddress));
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        address, raddress, stack.size()));
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return b.toString();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -158,4 +169,48 @@ public class WorkingModel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     this.registerF = registerF;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @return the stack
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public List<Integer> getStack() {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return stack;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @param stack
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   *          the stack to set
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public void setStack(List<Integer> stack) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.stack = stack;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @return the bin2SrcLine
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public int[] getBin2SrcLine() {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return bin2SrcLine;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @param bin2SrcLine
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   *          the bin2SrcLine to set
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public void setBin2SrcLine(int[] bin2SrcLine) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.bin2SrcLine = bin2SrcLine;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @return the workingstate
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public WORKINGSTATE getWorkingstate() {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return workingstate;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   * @param workingstate the workingstate to set
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   */
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  public void setWorkingstate(WORKINGSTATE workingstate) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.workingstate = workingstate;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }
 
			 |