Chip 8 Interpreter

The Studio II chip 8 interpreter was designed by Marcel van Tongeren and is based on the VIP chip 8 interpreter.

To use the chip 8 interpreter in Emma 02 load the configuration 'Chip 8' or 'Multi-Cart' alternatively select 'chip8.bin' as ROM and any chip 8 file as CART.

On HW this chip 8 interpreter can run on a Studio II with the 40th Anniversary Multi-Cart as designed by FLiP. Due to HW differences of the Studio II compared with the VIP there are some limitations:

Memory map:

  0 - 2FF:  Interpreter
300 - 7FF:  Chip 8 SW using an offset of hex 100 
	    mapped to chip 8 memory hex 200-6FF.
            i.e. a JP to address hex 200 in chip 8 
  	    code will jump to Studio II address 
	    hex 300.
800 - 89F:  RAM free to use by chip 8 SW with an 1
	    offset of hex 300. i.e. to address RAM 
	    register I should contain a value 
	    between hex B00-B9F.
8A0 - 8CF:  Chip 8 Stack
8D0 - 8EF:  Chip 8 interpreter work area
8F0 - 8FF:  Content V0 - VF
900 - 9FF:  Display RAM
A00 - BFF:  Not used
C00 - FFF:  Chip 8 SW using an offset of hex 500 
	    mapped to chip 8 memory hex 700-AFF.
            i.e. a JP to address hex 700 in chip 8 
    	    code will jump to Studio II address 
            hex C00.
Note: JP or CALL in Studio II chip 8 is not possible to address range hex 800-BFF.
Memory map as seen by the chip 8 interpreter:

200 - 6FF:  Chip 8 SW stored in Studio II memory 
	    hex 300-7FF
700 - AFF:  Chip 8 SW stored in Studio II memory 
	    hex C00-FFF
B00 - B9F:  RAM free to use by chip 8 SW stored 
	    in Studio II memory hex 800-89F