Episode map data format

1. 4 bytes: Signature ("ZMAP")

2. 4096 bytes: Textures definition:
  - A texture is 128x64, consists of 8 tiles (32x32), tile order is:
      1 3 5 7
      2 4 6 8
  - Has 256 records
  - A record consists of 8 tile numbers (2 bytes per tile number, big-endian):
      T1_Tile1 T1_Tile2 T1_Tile3 T1_Tile4 T1_Tile5 T1_Tile6 T1_Tile7 T1_Tile8
      T2_Tile1 T2_Tile2 T2_Tile3 T2_Tile4 T2_Tile5 T2_Tile6 T2_Tile7 T2_Tile8
      ..
      T256_Tile1 T256_Tile2 T256_Tile3 T256_Tile4 T256_Tile5 T256_Tile6 T256_Tile7 T256_Tile8
3. 2048 bytes: Texture orders:
     
  - Describes which texture to use on each side of each cell ID (#0 - #255)  
4. 256 bytes: Cell types definiton, one byte per cell, for types explanation, see [CellDefs] section of ztedit.ini.

5. 16384 bytes: Map data:
  - Each episode has 16 levels
  - Each level is 32x32, one byte per cell, first byte is upper-left corner, last byte is lower-right corner.
  - Each byte defines the cell ID to be placed. E.g. byte 0Ah (10d) causes the game to render the cell according to 10th record of cell types definition set.

6. 16 bytes: Level environment, one byte per one level, possible values are:
  - 00: Bright light
  - 01: Dim light
  - 02: Haze
  - 03: No ceiling
  - 04: Black ceiling