Up: Map Next: 32513
31744: Scenery, item and creature data for the current room
768 game data bytes reserved here in routine at 49053. This was originally code that drew the decorative border graphics at the start of the game. This routine will not run again so can be overwritten.
These dynamic sets work as follows:
  • Each room item - including scenery graphics, doors, objects, creatures and missiles - is copied to and from here as they are set up and handled from the item graphic data buffer at 60227
  • The exception is the foreground scenery objects at the bottom of the room, which are handled in a separate table at 32513
  • The main routine that copies the data here is at 57520
  • Not all 48 banks are used, as there aren't this many different graphic elements in any screen, so later banks still contain code from drawing the aforementioned screen border etc.
  • 255 in the first byte of a data bank marks the end of the item sets needed for the current room.
Byte Value
1 Graphic type (see 60227)
2 & 3 For doors, address in connecting door table at 26512
For interactable objects, address pointer to object table at 29551
For missiles, address pointer to missile table at 27868
For creatures, address pointer to creature type in table at 27772
4 For missiles, missile number (1-9, table at 27868)
For creatures, creature type (see 60230)
For interactable objects, graphic number in item table at 29551
5 Prevision/overflow byte for screen horizontal position (see next byte)
6 Horizontal position of graphic in room, in 4-pixel (half-character) steps
7 Prevision/overflow byte for screen vertical position (see next byte)
8 Graphic vertical position within current room, in pixels, from top of room playing area
9 64 for various room items
255 for (general) tunnel
254 for tunnel item (boundary, spider, bat)
10 Missiles - difference between horizontal (X) position of missile and target (e.g. Maroc), in 2-pixel increments (negative if target to the left, positive if target to the right)
11 Missiles - difference between vertical (Y) position of missile and target (e.g. Maroc), in 2-pixel increments (negative if target is below, negative if target is above)
12 Item properties:
Bit 0 (1) set = item is visible in the current screen (0 = item is off-screen)
Bit 1 (2) set = item is hidden (e.g. in a chest)
Bit 2 (4) set = item needs erasing (e.g. it's moved position)
Bit 3 (8) set (doors) = door is open (0 = door is closed)
Bit 3 (8) set (items) = item is moving, e.g. has been dropped/thrown by the servant
Bit 4 (16) set (items) = currently carried by servant
Bit 5 (32) set (doors) = door opening/closing has been triggered
Bit 6 (64) set (items) = item is portable
Bit 6 (64) set (doors) = this door is opening or closing
Bit 7 (128) set (doors) = Maroc has just gone through a doorway
Bits 5-8 (Missiles) = existence time for missile (from second data byte from missiles table at 27868)
13 Pre-graphics data byte
Bits 0-3 = number of graphic frames for object
Bit 5 = graphic is 'flippable' if set
Bit 6 = graphic has left/right facing frames
Bit 7 = graphic is animated if set
14 Graphic address frame offset (>1 for mirrored graphics frames)
15 & 16 Pointer to the address for this graphic in table at 38851
Bank 1
31744 DEFB 32,197,115,8,80,16,0,10
31752 DEFB 64,0,0,2,1,1,229,152
Bank 2
31760 DEFB 6,197,115,8,80,32,0,58
31768 DEFB 64,0,0,1,33,2,231,151
Bank 3
31776 DEFB 1,197,115,8,80,20,0,90
31784 DEFB 64,0,0,1,33,2,227,151
Bank 4
31792 DEFB 1,197,115,8,80,28,0,74
31800 DEFB 64,0,0,1,33,2,227,151
Bank 5
31808 DEFB 1,197,115,8,80,36,0,58
31816 DEFB 64,0,0,1,1,1,223,151
Bank 6
31824 DEFB 1,197,115,8,80,44,0,74
31832 DEFB 64,0,0,1,33,1,225,151
Bank 7
31840 DEFB 2,148,103,1,80,50,0,80
31848 DEFB 64,0,0,9,37,245,221,151
Bank 8
31856 DEFB 1,197,115,1,80,52,0,90
31864 DEFB 64,0,0,1,33,1,235,151
Bank 9
31872 DEFB 7,197,115,1,80,40,0,58
31880 DEFB 64,0,0,1,33,1,229,151
Bank 10
31888 DEFB 255,188,108,0,32,62,64,57
31896 DEFB 64,0,0,4,1,1,233,151
Bank 11
31904 DEFB 1,188,108,0,32,70,64,57
31912 DEFB 64,0,0,4,1,1,223,151
Bank 12
31920 DEFB 1,188,108,0,32,78,64,57
31928 DEFB 64,0,0,4,1,1,223,151
Bank 13
31936 DEFB 1,188,108,0,32,86,64,73
31944 DEFB 64,0,0,4,33,1,225,151
Bank 14
31952 DEFB 2,156,103,3,32,92,64,79
31960 DEFB 64,0,0,4,37,17,213,151
Bank 15
31968 DEFB 1,188,108,1,32,94,64,89
31976 DEFB 64,0,0,4,33,1,235,151
Bank 16
31984 DEFB 7,188,108,1,32,82,64,57
31992 DEFB 64,0,0,4,33,1,229,151
Bank 17
32000 DEFB 4,195,115,8,32,74,0,66
32008 DEFB 64,0,0,4,1,1,229,152
Bank 18
32016 DEFB 255,188,108,1,0,26,192,83
32024 DEFB 64,0,0,5,33,1,229,151
Bank 19
32032 DEFB 255,188,108,9,32,6,0,82
32040 DEFB 64,7,248,5,227,25,83,152
Bank 20
32048 DEFB 3,188,108,9,0,14,0,84
32056 DEFB 64,7,248,5,227,26,85,152
Bank 21
32064 DEFB 255,35,54,40,35,54,32,35
32072 DEFB 54,32,33,37,88,54,32,35
Bank 22
32080 DEFB 54,32,33,0,88,54,56,35
32088 DEFB 54,56,33,23,88,54,16,33
Bank 23
32096 DEFB 57,88,54,16,33,25,88,54
32104 DEFB 16,33,59,88,54,16,33,160
Bank 24
32112 DEFB 89,54,16,33,192,89,54,16
32120 DEFB 35,54,16,33,224,89,54,16
Bank 25
32128 DEFB 35,54,16,33,0,90,54,16
32136 DEFB 35,54,16,35,6,6,17,29
Bank 26
32144 DEFB 0,54,16,35,54,16,35,54
32152 DEFB 16,35,25,16,244,33,33,90
Bank 27
32160 DEFB 54,16,33,226,90,54,56,35
32168 DEFB 54,56,35,54,56,35,54,56
Bank 28
32176 DEFB 33,6,90,6,20,54,56,35
32184 DEFB 16,251,33,28,90,54,56,33
Bank 29
32192 DEFB 191,89,54,56,33,223,89,54
32200 DEFB 56,33,254,89,54,56,35,54
Bank 30
32208 DEFB 56,33,13,90,54,56,35,54
32216 DEFB 56,35,54,56,33,29,90,54
Bank 31
32224 DEFB 56,35,54,56,35,54,56,33
32232 DEFB 61,90,54,56,35,54,56,35
Bank 32
32240 DEFB 54,56,33,93,90,54,56,35
32248 DEFB 54,56,33,155,90,54,40,33
Bank 33
32256 DEFB 186,90,54,40,35,54,32,33
32264 DEFB 218,90,54,32,33,63,90,17
Bank 34
32272 DEFB 32,0,54,40,25,54,40,25
32280 DEFB 54,40,25,54,32,25,54,32
Bank 35
32288 DEFB 25,62,1,50,175,139,62,12
32296 DEFB 50,176,139,33,95,130,34,196
Bank 36
32304 DEFB 124,33,98,64,205,39,130,62
32312 DEFB 1,50,175,139,62,12,50,176
Bank 37
32320 DEFB 139,33,127,130,34,196,124,33
32328 DEFB 125,64,205,39,130,62,1,50
Bank 38
32336 DEFB 175,139,62,1,50,176,139,33
32344 DEFB 135,130,34,196,124,33,93,64
Bank 39
32352 DEFB 205,39,130,62,1,50,175,139
32360 DEFB 62,1,50,176,139,33,103,130
Bank 40
32368 DEFB 34,196,124,33,226,72,205,39
32376 DEFB 130,62,1,50,175,139,62,1
Bank 41
32384 DEFB 50,176,139,33,119,130,34,196
32392 DEFB 124,33,253,72,205,39,130,62
Bank 42
32400 DEFB 26,50,175,139,62,1,50,176
32408 DEFB 139,33,143,130,34,196,124,33
Bank 43
32416 DEFB 67,64,205,39,130,62,26,50
32424 DEFB 175,139,62,1,50,176,139,33
Bank 44
32432 DEFB 111,130,34,196,124,33,227,72
32440 DEFB 205,39,130,62,1,50,175,139
Bank 45
32448 DEFB 62,1,50,176,139,33,151,130
32456 DEFB 34,196,124,33,66,64,205,39
Bank 46
32464 DEFB 130,33,66,88,14,6,6,28
32472 DEFB 54,8,35,16,251,35,35,35
Bank 47
32480 DEFB 35,13,32,242,34,196,124,33
32488 DEFB 99,88,14,2,6,26,54,15
Bank 48
32496 DEFB 35,16,251,35,35,35,35,35
32504 DEFB 35,13,32,240,42,196,124,14
Final end byte
32512 DEFB 255 255 = end of data sets
Up: Map Next: 32513