|
1 |
| -# EduMIPS64 version 1.2.10 |
| 1 | +# EduMIPS64 version 1.3.0 |
2 | 2 |
|
3 |
| -*5th of March, 2021* |
| 3 | +*16th of October, 2023* |
4 | 4 |
|
5 | 5 | EduMIPS64 is a GPL MIPS64 Instruction Set Architecture (ISA) simulator and graphical debugger.
|
6 | 6 |
|
7 | 7 | ## Notes for this release
|
8 | 8 |
|
9 |
| -This is version 1.2.10 of EduMIPS64. Its codename is **FP - Freedom and Peace**, because |
10 |
| -of the ongoing conflict in Ukraine, which is being invaded by Russia. Freedom and Peace |
11 |
| -is what I wish right now to the Ukrainians. |
| 9 | +This is version 1.3.0 of EduMIPS64. Its codename is **Lourdes**, as the release is being |
| 10 | +published from the french city of Lourdes, home to the Sanctuaire Notre-Dame de Lourdes. |
12 | 11 |
|
13 |
| -This is mostly a bug-fixing release: issues #450, #646 and #304 (for the second time) were |
14 |
| -fixed. In terms of development changes, we moved to JDK (and JRE) 17 and we fixed the Snapcraft |
15 |
| -packages for the `armhf` architecture (among others). The latter means that EduMIPS64 is |
16 |
| -available on Raspberry PI via `snap`! |
| 12 | +Many complex conflicts are currently plaguing our world. We wish for reason and human |
| 13 | +kindness to prevail over reasoning that can only lead to destruction and death, and for |
| 14 | +those conflicts to end peacefully as soon as possible. |
17 | 15 |
|
18 |
| -This version contains contributions from the following people, listed in no particular order: |
| 16 | +This release contains some small improvements, a whole new translation for the simulator |
| 17 | +and its documentation and a breaking change. |
19 | 18 |
|
20 |
| -* @hugmanrique and @jcarletta - reported 2 critical bugs and provided MIPS64 code to reproduce them, |
21 |
| - which I was allowed to incorporate as regression tests. |
22 |
| -* Andrea Spadaccini - [**@lupino3**](http://github.com/lupino3) |
| 19 | +Let's start from the last one. |
23 | 20 |
|
24 |
| -Please keep in mind that this is still EXPERIMENTAL SOFTWARE. It may |
25 |
| -BURN YOUR HARD DISK, DESTROY ALL YOUR DATA and even GO OUT WITH YOUR |
26 |
| -PARTNER. :) |
| 21 | +### Fixing DMULU |
27 | 22 |
|
28 |
| -If you find a bug, please open an issue on GitHub. |
| 23 | +`DMULU` was historically implemented using a syntax that was made incorrect by Release 6 |
| 24 | +of the MIPS64 ISA in 2014. This version of EduMIPS64 changes `DMULU` to use the new, |
| 25 | +correct syntax, and therefore it will break all code using the old `DMULU` syntax. |
29 | 26 |
|
30 |
| -EduMIPS64 is hosted on GitHub: www.github.com/EduMIPS64/edumips64. |
| 27 | +Porting old code to the new code is pretty simple, as the old version store the results |
| 28 | +of the multiplication in the `LO` register, requiring an `MFLO` instruction to fetch it, |
| 29 | +while the new version allows users to directly specify the target register. |
| 30 | + |
| 31 | +While the old code may have looked like the following: |
| 32 | + |
| 33 | +``` |
| 34 | + [...] |
| 35 | + DMULU r1, r2 |
| 36 | + MFLO r3 |
| 37 | + [...] |
| 38 | +``` |
| 39 | + |
| 40 | +The new code should instead be: |
| 41 | + |
| 42 | +``` |
| 43 | + [...] |
| 44 | + DMULU r3, r1, r1 |
| 45 | +``` |
| 46 | + |
| 47 | +This is exactly how our internal tests changed, see [code](https://github.com/EduMIPS64/edumips64/commit/897f559ebda971760aae0bcad949b3cf38847b02#diff-24af5fcdf7f63916c891371766a8dc7875e89634fb6dfd5dad34d5b1969846e7). |
31 | 48 |
|
32 |
| -Our web site is www.edumips.org, and our development blog is http://edumips64.blogspot.com. |
33 | 49 |
|
34 |
| -## Main changes since 1.2.9 |
| 50 | +### Simplified Chinese Translation |
35 | 51 |
|
36 |
| -### Added |
| 52 | +Thanks to the effort of @smallg0at, EduMIPS64 now is fully translated to Simplified Chinese, |
| 53 | +including the in-app documentation and the HTML/PDF docs. |
37 | 54 |
|
38 |
| -* New Snapcraft packages for armhf (e.g. Raspberry PI) and other architectures |
| 55 | +This change had us find and fix several smaller bugs related to rendering non-ASCII (and non-Italian) |
| 56 | +characters, as well as trying to get Sphinx to properly emit Simplified Chinese docs. We haven't |
| 57 | +fully succeeded, so the PDF has to be rendered through readthedocs.io, but it is usable and |
| 58 | +we have all the needed artifacts. |
39 | 59 |
|
40 |
| -### Fixed |
| 60 | +Huge thanks to @smallg0at for this contribution! |
41 | 61 |
|
42 |
| -* Parser incorrectly interprets hexadecimal immediates (Issue #450) |
43 |
| -* Some floating-point division cycles missing in Cycles window (Issue #646) |
44 |
| -* Infinite RAW stall in floating-point code (Issue #304) (yes, *again*) |
| 62 | +## Special mention: new Web UI |
45 | 63 |
|
46 |
| -### Changed |
| 64 | +@smallg0at also implemented a brand new, IDE-like layout for the Web UI, which is already deployed |
| 65 | +to https://web.edumips.org. This is a major step forward in having a fully-functional version |
| 66 | +of EduMIPS64 on the web. Thanks agains, @smallg0at! |
| 67 | + |
| 68 | +Also thanks to @pviotti for doing the foundational work of migrating to more recent major versions |
| 69 | +of React and Material UI, which made this work possible. |
| 70 | + |
| 71 | +## Other changes |
| 72 | + |
| 73 | +We also added the `DMUHU` instruction (pretty similar to `DMULU` in terms of implementation), fixed |
| 74 | +a few documentation issues (thanks @galloj and @winstonpurnomo) and also changed the look and feel to |
| 75 | +be more modern (goodbye, Metal!). |
| 76 | + |
| 77 | +## The usual conclusion |
| 78 | + |
| 79 | +If you find a bug, please open an issue on GitHub. |
| 80 | +EduMIPS64 is hosted on GitHub: www.github.com/EduMIPS64/edumips64. |
47 | 81 |
|
48 |
| -* Migrated to JDK (and JRE) 17 |
| 82 | +Our web site is https://www.edumips.org. |
| 83 | +The web version of EduMIPS64 is available at https://web.edumips.org. |
0 commit comments