Shifting the night away
After making a small change which could easily have killed all the instructions I'd gotten working so far [but didn't], I now have the shift instructions [immediate or register shift amount, left or right, logical or arithmetic] working.
I'm not sure which instructions I'll work on next. There's a bunch of design work that's going to have to be done for either the memory or PC stuff, and I want to see if I can possibly reuse the ALU state machines.
However, before I do that I want to add to the code that lets me load in tests and helps me visualize data within the simulator. Currently I have to enter tests bit-by-bit, and I'd like to be able to simplify my input files such that I can just input bytes. Similarly, I need to mark up my design files a bit in order to see more of what's going on inside the simulator. The code for that part's already in, but I should add a bunch of annotations to the XML source of the design to make use of it.
Further down the line, I'll be building on that to have self-verifying tests. I'm not sure I'll get that far before getting back to logic design, though.
Down:
- addc
- addci
- add
- addi
- subc
- subci
- sub
- subi
- or
- ori
- xor
- xori
- and
- andi
- sh
- shi
To Go:
- lbr
- lba
- lsbr
- lsba
- sbr
- sba
- ssbr
- ssba
- b
- bc
- bal
- jal
- jmp
- li