This commit is contained in:
2024-06-03 14:18:39 +02:00
parent 1d89bf16cc
commit c8f23176d2
4 changed files with 13 additions and 11 deletions

View File

@ -488,7 +488,7 @@ public class Commands {
}
DataRegister.determineZeroFlag(result);
DataRegister.determineCarryFlag(result);
DataRegister.determineDigitCarryFlag(result);
DataRegister.determineDigitCarryFlag((wRegister&0b11101111) & (DataRegister.getRegister(file)&0b1111));
}
@ -500,7 +500,7 @@ public class Commands {
}
else {
DataRegister.determineCarryFlag(result);
DataRegister.determineDigitCarryFlag(result);
DataRegister.determineDigitCarryFlag((wRegister&0b11101111) + (DataRegister.getRegister(file)&0b1111));
}
if (destination == 0) {
wRegister = result & 0xFF;
@ -533,7 +533,7 @@ public class Commands {
wRegister = result & 0xFF;
DataRegister.determineZeroFlag(result);
DataRegister.determineCarryFlag(result);
DataRegister.determineDigitCarryFlag(result);
DataRegister.determineDigitCarryFlag((wRegister&0b11101111) + (literal&0b1111));
}
public static void RETLW(int literal) {

View File

@ -44,6 +44,9 @@ public class DataRegister {
dataRegister[TRISB] = 0b11111111;
dataRegister[0x80 + PCLATH] = dataRegister[PCLATH];
dataRegister[0x80 + INTCON] = dataRegister[INTCON];
carryFlag = 0;
zeroFlag = 0;
digitCarryFlag = 0;
IOPorts.resetTRIS();
System.out.println(Arrays.toString(dataRegister));
}
@ -294,7 +297,7 @@ public class DataRegister {
}
public static void determineDigitCarryFlag(int result){
if (result > 0xF){
if (result >> 4 == 1){
setDigitCarryFlag(1);
}
else {

View File

@ -22,7 +22,7 @@ public class Table {
//Tabelle aktualisieren
private static final int NUM_COLUMNS = 8; // Anzahl der Spalten
private static final double TABLE_WIDTH = 420; // Breite der TableView
private static final double TABLE_WIDTH = 425; // Breite der TableView
private static final double TABLE_HEIGHT = 600; // Höhe der TableView
private static String formatHex(String s) {
@ -90,17 +90,16 @@ public class Table {
Label spacing = new Label(" ");
Label spacing2 = new Label(" ");
Label wRegisterLabel = new Label("W-Register: 0x" + formatHex(Integer.toHexString(Commands.get_wRegister()).toUpperCase()));
Label cLabel = new Label("Carry: 0x" + formatHex(Integer.toHexString(DataRegister.getCarryFlag())));
Label dcLabel = new Label("Digit-Carry: 0x" + formatHex(Integer.toHexString(DataRegister.getDigitCarryFlag())));
Label zLabel = new Label("Zero-Flag: 0x" + formatHex(Integer.toHexString(DataRegister.getZeroFlag())));
Label cLabel = new Label("Carry-Flag: " + DataRegister.getCarryFlag());
Label dcLabel = new Label("DigitCarry-Flag: " + DataRegister.getDigitCarryFlag());
Label zLabel = new Label("Zero-Flag: " + DataRegister.getZeroFlag());
Label pcLabel = new Label("PC: 0x" + formatHex(Integer.toHexString(DataRegister.getPC()).toUpperCase()));
Label pclLabel = new Label("PCL: 0x" + formatHex(Integer.toHexString(DataRegister.getRegister(DataRegister.getPCL())).toUpperCase()));
Label pclathLabel = new Label("PCLATH: 0x" + formatHex(Integer.toHexString(DataRegister.getRegister(DataRegister.getPCLATH())).toUpperCase()));
Label statusLabel = new Label("STATUS: 0b" + formatBin(Integer.toBinaryString(DataRegister.getRegister(DataRegister.getSTATUS())))+ " (0x" + formatHex(Integer.toHexString(DataRegister.getRegister(DataRegister.getSTATUS())).toUpperCase()) + ")");
Label fsrLabel = new Label("FSR: 0x" + formatHex(Integer.toHexString(DataRegister.getRegister(DataRegister.getFSR())).toUpperCase()));
Label fsrLabel = new Label("FSR: 0x" + formatHex(Integer.toHexString(DataRegister.getFSR()).toUpperCase()));
Label prescalerLabel = new Label("Prescaler: 0x" + formatHex(Integer.toHexString(PreScaler.getScaler())).toUpperCase());
Label intconLabel = new Label("INTCON: 0b" + formatBin(Integer.toBinaryString(DataRegister.getRegister(DataRegister.getINTCON()))) + " (0x" + formatHex(Integer.toHexString(DataRegister.getRegister(DataRegister.getINTCON())).toUpperCase()) + ")");
wRegisterLabel.setStyle("-fx-font-weight: bold");
pcLabel.setStyle("-fx-font-weight: bold");
statusLabel.setStyle("-fx-font-weight: bold");

View File

@ -14,7 +14,7 @@
<AnchorPane stylesheets="@styles.css" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" fx:controller="fabrik.simulator.pic16f84.Controller_Frontend">
<children>
<ListView fx:id="lstContentListView" layoutY="31.0" prefHeight="645.0" prefWidth="550.0">
<ListView fx:id="lstContentListView" layoutY="31.0" prefHeight="645.0" prefWidth="600.0">
</ListView>
<HBox layoutY="688.0" prefHeight="24.0" prefWidth="550.0">