The XO Chip instructions reference bitplanes when drawing to the screen. In the default implementation of the Chip8 specification, we assume there is only a single plane. The bitplane variable is a single byte value that encodes which bitplane should be active. There are only four choices:
0 - means neither bitplanes are selected.
1 - means that the first bitplane is selected - this is the default value and is set when the emulator starts for Chip8 compability.
2 - means that the second bitplane is selected.
3 - means that both the first and second bitplane is selected.
For this issue, the bitplane selector should be created and should be instantiated as 1 when the emulator starts up. The bitplane selection instruction Fn01 should be implemented that will store the value of n to the bitplane selector variable. The drawing, scrolling, and clearing instructions will be updated to work on separate bitplanes in a different issue.
The XO Chip instructions reference bitplanes when drawing to the screen. In the default implementation of the Chip8 specification, we assume there is only a single plane. The
bitplane
variable is a single byte value that encodes which bitplane should be active. There are only four choices:0
- means neither bitplanes are selected.1
- means that the first bitplane is selected - this is the default value and is set when the emulator starts for Chip8 compability.2
- means that the second bitplane is selected.3
- means that both the first and second bitplane is selected.For this issue, the
bitplane
selector should be created and should be instantiated as1
when the emulator starts up. The bitplane selection instructionFn01
should be implemented that will store the value ofn
to thebitplane
selector variable. The drawing, scrolling, and clearing instructions will be updated to work on separate bitplanes in a different issue.