code: function() {
  		var gl = this.gl,
  		      program = this.program;
  
  
  		// initialize pixel textures
  		this.bgTexture = createTexture( 0, "bgTexture" );
  		this.spriteTexture = createTexture( 1, "spriteTexture" );
  		this.prioTexture = createTexture( 2, "prioTexture" );
  
  		// initialize palette texture
  		this.paletteTexture = createTexture( 3, "paletteTexture" );
  		gl.texImage2D( gl.TEXTURE_2D, 0, gl.RGB, 64, 1, 0, gl.RGB, gl.UNSIGNED_BYTE, palette );
  
  		function createTexture( index, name ) {
  			var texture = gl.createTexture();
  			gl.bindTexture(gl.TEXTURE_2D, texture);
  
  			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
  			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
  			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
  			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
  
  			gl.uniform1i(gl.getUniformLocation(program, name), index);
  
  			return texture;
  		}
  	}
docs: Initialize textures.
  One 'dynamic' texture that contains the screen pixel data, and one fixed texture containing
  the system palette.