Host Engineering Forum
General Category => Do-more CPUs and Do-more Designer Software => Topic started by: Bolt on August 16, 2019, 03:49:26 PM
-
Using the FIFO instruction sets for the first time. A few comments/questions:
1. The boxes are quite large, taking up allot of space on the screen.
2. I can't use a number or a Symbolic Constant in the Value or Destination input?
3. How can I preform a lookup, IF FIFOBlock contains nnn, do not LOAD, or DROP nnn from FIFOBlock?
-
Using the FIFO instruction sets for the first time. A few comments/questions:
1. The boxes are quite large, taking up allot of space on the screen.
Status display is large. Non-status display is small/normal. We can make the status details be dynamic in a future version so you don't see as much info when you have status ON.
-
2. I can't use a number or a Symbolic Constant in the Value or Destination input?
No. To make this instruction fast, it uses memory pointers, not values, for both the source and destination. Hence, no constants are allowed. You must put the constant into a register first.
-
3. How can I preform a lookup, IF FIFOBlock contains nnn, do not LOAD, or DROP nnn from FIFOBlock?
These are basic FIFO/LIFO functionality. We are looking to support more complex TABLE operations where you can do FIND and DROP (or INSERT or whatever). The FIFO/LIFO were "easy" to implement/understand without adding a bunch of operations (i.e. TABLE complexity).
If you understand how circular buffers work, you could implement your own Find in a subroutine based on the members of the Queue structure. We can definitely help with that.