I get the emulator not started because of a newer java version:
Exception in thread "main" java.lang.UnsupportedClassVersionError: de/heinrichs/scmp_pe/frontend/Main has been compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0
what to do?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello, the new version of SCMPPE is compiled using the Oracle Java 15 JDK compiler. Can you pls try "java -version" in a command shell and check which Java version is installed on your machine? You may download and install Java 15 or newer, then it should work. Best regards!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Vielen Dank, habe Java15 installiert und der Emulator startet einwandfrei.
Jetzt weiss ich nur nicht, wie man den Emulator bedient. Gibt es eine Anleitung dafür? Ich möchte nur Byte für Byte eingeben und dann laufen lassen, so wie ich es damals 1977 an der ersten Platine, hiess wohl RAM I/O, mit den Kippschaltern gemacht habe.
Hallo, der Emulator stellt die nächst- größere Stufe des damaligen Elektro SC/MP Systems dar. Also dasjenige, in der schon eine separate CPU-Karte und eine "HEX I/O" Karte installiert war. Man muss dazu beispielsweise das ELBUG-Monitorprogramm laden und kann dann recht komfortabel Programmcode eintippen. Die Version, die Sie meinen ("RAM I/O") habe ich damals auch gehabt - aber die Nachbildung der Schalter und Leuchtdioden ist leider nicht im Emulator enthalten. -- Sie können das trotzdem gut testen, indem Sie eine sog. HEX-Datei erstellen, das sind Textdateien mit Endung .hex. In jeder Zeile der Datei muss man zuerst die hexadezimale Adresse (also erste Zeile vermutlich 0000) angeben, und dann mit Leerzeichen getrennt die Binärdaten als 2-stelligen Hexadezimalwert. Beispiel: (einzeilige Datei)
0000 08 c4 05 18 e4 03 c8 05 00
Das würde jetzt zwei Zahlen (5 und 3) addieren, wenn Sie das im Emulator mit "File -> Load Memory" laden und mit "File -> Run" ab 0000 laufenlassen würden. Mit "View -> Memory Hex Dump" können Sie sich den Speicherbereich anschauen. Schauen Sie mal in das etc-Verzeichnis, da sind Testprogramme. Diese kann man mit dem Disassembler in Assembler übersetzen. Viele Grüße!
Last edit: Theo Heinrichs 2021-03-19
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I get the emulator not started because of a newer java version:
Exception in thread "main" java.lang.UnsupportedClassVersionError: de/heinrichs/scmp_pe/frontend/Main has been compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0
what to do?
Hello, the new version of SCMPPE is compiled using the Oracle Java 15 JDK compiler. Can you pls try "java -version" in a command shell and check which Java version is installed on your machine? You may download and install Java 15 or newer, then it should work. Best regards!
Vielen Dank, habe Java15 installiert und der Emulator startet einwandfrei.
Jetzt weiss ich nur nicht, wie man den Emulator bedient. Gibt es eine Anleitung dafür? Ich möchte nur Byte für Byte eingeben und dann laufen lassen, so wie ich es damals 1977 an der ersten Platine, hiess wohl RAM I/O, mit den Kippschaltern gemacht habe.
Last edit: Peter Mihatsch 2021-03-19
Hallo, der Emulator stellt die nächst- größere Stufe des damaligen Elektro SC/MP Systems dar. Also dasjenige, in der schon eine separate CPU-Karte und eine "HEX I/O" Karte installiert war. Man muss dazu beispielsweise das ELBUG-Monitorprogramm laden und kann dann recht komfortabel Programmcode eintippen. Die Version, die Sie meinen ("RAM I/O") habe ich damals auch gehabt - aber die Nachbildung der Schalter und Leuchtdioden ist leider nicht im Emulator enthalten. -- Sie können das trotzdem gut testen, indem Sie eine sog. HEX-Datei erstellen, das sind Textdateien mit Endung .hex. In jeder Zeile der Datei muss man zuerst die hexadezimale Adresse (also erste Zeile vermutlich 0000) angeben, und dann mit Leerzeichen getrennt die Binärdaten als 2-stelligen Hexadezimalwert. Beispiel: (einzeilige Datei)
0000 08 c4 05 18 e4 03 c8 05 00
Das würde jetzt zwei Zahlen (5 und 3) addieren, wenn Sie das im Emulator mit "File -> Load Memory" laden und mit "File -> Run" ab 0000 laufenlassen würden. Mit "View -> Memory Hex Dump" können Sie sich den Speicherbereich anschauen. Schauen Sie mal in das etc-Verzeichnis, da sind Testprogramme. Diese kann man mit dem Disassembler in Assembler übersetzen. Viele Grüße!
Last edit: Theo Heinrichs 2021-03-19
Tatsächlich, funktioniert perfekt, genial. Danke