Releases: MaisiKoleni/Am2900ME
Am2900ME
Please follow the wiki introduction page for the first steps
It is likely that this will be the last version of Am2900ME, as the project has been superseded by Mograsim and support for this project is not needed anymore. If you have found any bugs or have feature requests, you will need to open an issue for that, I won't initiate any further development on Am2900ME on my own.
Changes:
- Fixed #9 so that mnemonics not used by IN0004 at the TUM can be recognized by surrounding
()
. - Switched to Java 13 and OpenJavaFX 13 (maybe something works better now)
- Minor bug fixes
Please note:
- The interrupt controls are currently not supported.
- This is only a sequential simulator for Am2900 behavior that is good enough for basic exercises. For more visual and realistic simulation, please use its successor project Mograsim.
Am2900ME RC2
Please follow the wiki introduction page for the first steps
Changes:
- Reset was sometimes buggy if an exception was thrown beforehand due to inappropriate RAM usage.
- Micro-programcounter now shows the correct number. Note that this number does not always correspond to the currently loaded, green highlighted microinstruction!
- Switched to Java 11 and OpenJavaFX (maybe something works better now)
- Fixed Am2904 shift instruction
0_1111
behavior - There are now standalone runtime images available for the platforms Windows, Linux and Mac (all 64 bit). You don't need to start the application from the command line with JVM parameters to include JavaFX anymore. You don't even need to have Java installed. Just unzip it somewhere and be happy.
The second release candidate of the Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM, all registers and status registers and most importantly, the microprogram memory, in four separate windows. You can save and load all three parts (not the registers) individually.
Please note:
- The interrupt controls are currently not supported.
Am2900ME RC1
Please follow the wiki introduction page for the first steps
Changes:
- Fixed a critical bug concerning status registers, see #3
- No more rudimentary RAM-register GUI.
- The "Registers and Status" window now features all registers that are present in the machine. All are editable and updatable.
- The "Machine RAM" and "Registers and Status" windows now include an auto-update button that is on per default. It updates all values and highlights changes (see below). Very convenient.
- Added a proper reset button. Restarting the application all the time is annoying. No need for that anymore.
- Changes to RAM and (status) registers get highlighted and thereby enable you to observe where something changed. Those highlights always stay until the next instruction cycle is performed.
The first release candidate of the Basic Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM, all registers and status registers and most importantly, the microprogram memory, in four separate windows. You can save and load all three parts (not the registers) individually.
Please note:
- The interrupt controls are currently not supported.
- The shift instruction 0_1111 behaves like 0_1110. This bug is fixed in the git-repo, but since it is not relevant for the exams, the executable is going to get fixed afterwards.
Am2900ME Basic Emulator 4
Please follow the wiki introduction page for the first steps
Changes:
- Added a rudimentary Am2901 RAM register window. But it is already useful enough for an extra pre-release.
The fourth (now more reliable) experimental version of the Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM, some Registers and most importantly, the Microprogram Memory, in four separate Windows. You can save and load all three parts (not the registers) individually.
Please note:
- The Emulator is still a bit unstable, so be careful that you save often. The machine can currently no be reset, so
you need to restart the application if errors occur during execution. - The Interrupt Controls are currently not supported.
Am2900ME Basic Emulator 3
Please follow the wiki introduction page for the first steps
Changes:
- Fixed Issue #1 - RAM Register addresses were displayed as 8 bits but should be 4 bits.
- Highlighting was buggy (#2) and now is significantly improved, also concerning code quality
- Fixed non-TUM-MI-compliant condition code processing, see Commit "Fixed condition code behaviour and minor improvements"
- Machine RAM gets updated after "Load from File", because why not.
The third (now more reliable) experimental Version of the Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM and most importantly, the Microprogram Memory, in three separate Windows. You can save and load all three parts individually.
Please note:
- The Emulator is still a bit unstable, so be careful that you save often. The machine can currently no be reset, so
you need to restart the application if errors occur during execution. - The Interrupt Controls are currently not supported.
Am2900ME Basic Emulator 2
Please follow the wiki introduction page for the first steps
Changes:
- Added a button to execute the next n microinstructions. No need to click every single time anymore.
This way you can easily get over 4 million microinstructions per second, which is in the range of a real Am2900 system's speed. - Made file IO more "intelligent". It now opens the dialog windows using the last folder you used.
The old way was just too annoying. To make it even less annoying, it remembers it for the next run, too. - Fixed an error that occurred during load of a microinstruction save file.
This was caused by a typo in the loading method, the save files are correct and work with the new version - Removed redundant code, which resulted in even more fixed bugs. Always a good idea to do that.
The second (now less) experimental Version of the Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM and most importantly, the Microprogram Memory, in three separate Windows. You can save and load all three parts individually.
Should you have questions concerning the microinstructions, take a look into the additional_material folder.
The Am2904 Instructions have the following format:
[microSR-operation]_[machineSR-operation]_[conditionCodeSource]_[conditionCode]
The green highlighted microinstruction is the one that is currently loaded in the microinstruction register and is going to get executed as soon as you press "Execute Next". You cannot modify it any more at that point, changes will take effect on the next execution of that particular microinstruction.
Please note:
The Emulator is still a bit unstable, so be careful that you save often. The machine can currently no be reset, so you need to restart the application if errors occur during execution.
The Interrupt Controls are currently not supported.
Am2900ME Basic Emulator
Am2900ME-0.0.1 is a runnable jar, execute it to start the Application (requires Java to be installed)
Please follow the wiki introduction page for the first steps
The first (more or less) experimental Version of the Am2900 Microprogramming Emulator.
You can edit the Mapping PROM, the RAM and most importantly, the Microprogram Memory, in three separate Windows. You can save and load all three parts individually.
Should you have questions concerning the microinstructions, take a look into the additional_material folder.
The Am2904 Instructions have the following format:
[microSR-operation]_[machineSR-operation]_[conditionCodeSource]_[conditionCode]
The green highlighted microinstruction is the one that is currently loaded in the microinstruction register and is going to get executed as soon as you press "Execute Next". You cannot modify it any more at that point, changes will take effect on the next execution of that particular microinstruction.
Please note:
The Emulator is still very unstable, so be careful that you enter valid numbers in the correct range and save often. The machine can currently no be reset, so you need to restart the application if errors occur during execution.
The Interrupt Controls are currently not supported.