Age | Commit message (Collapse) | Author |
|
The program counter must be reset after each frame, and it's not
supposed to be set after each instruction execution.
We were setting the PC from the C value of the instructions but that's
not what we need to do. The C value is only used for a jump and then, in
the next frame the PC must be reloaded from its value in the memory.
The only way to change the PC in the program is using it in the B
argument of the instructions, which would overwrite it with an arbitrary
value (stored in A).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- This changes happens to slow down the whole system a lot.
Also add a test for the PC.
|
|
Fixes access to bytes and instruction calls
|
|
Looks like the colors were unpacked incorrectly after the changes and
red and blue where inverted.
|
|
|
|
|
|
Using bytevectors inside makes the process way faster and now can be
safely used in the loop, not only for debugging purposes
|
|
Cleans the code generation and controls the formats better.
I'm not sure if this really improves performance, but it looks cleaner
so ¯\_(ツ)_/¯
|
|
Palette works, but the instruction execution loop doesn't.
Needs further research.
Sound and keys are not implemented either.
|