[Oberon] Updated RISC5 firmware
skulski at pas.rochester.edu
Thu Oct 25 08:05:37 CEST 2018
> Indeed, version control is not one of NWs strengths :-)
> I lately had the idea to implement „diff" and „patch“ in Oberon.
Version control will not provide insight into the intent of the writer. For example, I am curious what is the difference between RISC5.v dated 31.8.2018 and RISC5a.v dated 1.9.2018. Both can be fetched from the same page www.inf.ethz.ch/personal/wirth/ProjectOberon/index.html.
Fortunately, there are some comments in that code:
RISC5.v dated 31.8.2018 //with interrupt and floating-point
RISC5a.v dated 1.9.2018 //no interrupt, no floating-point
The former is accompanied by Multiplier.v dated 14.9.2015.
The latter is accompanied by Multiplier1.v dated 29.4.2011
So here I have a question: why two multipliers, and why their codes are different? Would be good to see a comment on the website. But there is no comment. Just a horizontal line.
Even more puzzling is that RISC5.v is accompanied by MouseP.v, while RISC5a.v is accompanied by MouseX.v, which are again quite different. Another puzzle.
The term "accompanied by" is my own interpretation of the horizontal lines dividing this web page. It would be good to know why the Verilog modules have been grouped this particular way. Is it true that MouseP.v needs floating point, while MouseX.v does not? Or is it an accident that they have been parted by a horizontal line?
So the patch and the diff are not the only tools which we would need. Comments would be even more useful.
How can I force my students to comment their source code when they can see this situation?
More information about the Oberon