Ah ok sweet. Now I know where to look.@Ferne, you mean being about to output using A/B as the address? I can add that.
Yeah, every once and a while, the A ADD B, A/B -> C function sometimes doesn't work and 0 is written to A. Thus only the last result is displayed. In 13 time 13, the displayed result is result 4 + result 3, which is (13 * 2^3) + (13 * 2^2) = 104 + 52 = 56. From that, the first result, 13, wasn't included as I observed that it wasn't stored in C when it was supposed to. The program instructions are correct at that part though.
I'm learning to program this (it's really fun, and not that hard if you write the instructions you want on some piece of paper) and I made a program that counts to 8 (using an IF EQUAL loop) but I can't display it in the loop :/... This is because in RAM -> OUTPUT you have to put the adress. Things would get waaay easier if you implement sending to OUTPUT with variable RAM adressing.
The problem seems to be in the fact that at the end, when result 1 is added to result 2, the answer isn't stored in C and then stored into A. All additions after that seem to work. But it seems like empty slots are still being converted to 11111111 and not set back to off.
I have fixed a couple things that could have made your program not function properly. I went through all of the steps and the processor does exactly what is written in every step now.I tried 11*11 and it gave me 88 (which is 11*8)I tried 9*9 and it gave me 72 (which is 9*8)I tried 13*13 and it gave me 156 (which is 13*12)Seems like something to do with the instructions as they are all landing on divisibles
Seems to be doing the same thing.
I think I found the problem! Gonna attempt to fix this with a little delay particle.
I guess so. But one thing that I should is that you made one of the first tpt instruction sets that actually made sense to me.
Hmm that didn't seem to change anything. I manually refreshed the RAM everytime 00000000 was converted to 11111111 and it still returns 79 at the end. It turns out when you attempt to read from the empty RAM, it still returns 0. It just converts the value to 11111111 afterwards and never converts it back.
Ah I think I see what happened. You told ROM to write 0 in RAM. And then RAM tried to read that later, and since there was nothing in the RAM, the part of the RAM that is supposed to refresh the value never gets sparked. Therefore it leaves 11111111 in RAM. I shall fix this.