This page describes the content of item 561 found in the graphics.dat file from:
This item is not found in any other version of the games (even in other Dungeon Master for Amiga 2.x versions).
There are two variations in the content of this item with two possible sizes:
This item is only used in Atari ST versions. All Amiga versions contain the equivalent data in the executable file itself and never read any data from this item.
It contains initialization data for global variables that was not included in the source code as an optimization to reduce the executable file size. This was because of the special way the C compiler worked on Atari ST, and this trick was not used on any other platform.
You may consult the names, values and usage of all these variables in the source code of ReDMCSB (search the source code for variable names containing “Graphic558”, “Graphic559”, “Graphic560”, “Graphic561” and “Graphic562”).
You may extract all values to text files with the data file decoder script at DM, CSB and DMII Data Files and Animations Decoders for PC.
All the notes below are the results of older research by credited people. They are incomplete and presented “as-is”.
Paul Stevens (CSBwin source code)
rain` (ADGE source code)
Structure: 28x12 bytes
A button is defined by the coordinates of an on-screen rectangle area from (x1, y1) to (x2, y2), a mouse button (left or right) and a command type. If you click in the corresponding area with the specified mouse button then the associated command is triggered.
Each button is made of 6 words:
This section contains 8 lists of buttons. Each list is terminated by an ’null button’ where all 6 words are 0000h.
Here is the list of the 28 buttons in this section, including ’null buttons’:
Event Mouse
type x1 x2 y1 y2 button Description
210 63 148 101 115 2 Dialog box in center of screen with 4 buttons, Top left button
211 170 254 101 115 2 Dialog box in center of screen with 4 buttons, Top right button
212 63 148 138 152 2 Dialog box in center of screen with 4 buttons, Lower left button
213 170 254 138 152 2 Dialog box in center of screen with 4 buttons, Lower right button
0 0 0 0 0 0 Dialog box in center of screen with 4 buttons, Null button
210 63 254 101 115 2 Dialog box in center of screen with 3 buttons, Top button
211 63 148 138 152 2 Dialog box in center of screen with 3 buttons, Lower left button
212 170 254 138 152 2 Dialog box in center of screen with 3 buttons, Lower right button
0 0 0 0 0 0 Dialog box in center of screen with 3 buttons, Null button
210 63 254 101 115 2 Dialog box in center of screen with 2 buttons, Top button
211 63 254 138 152 2 Dialog box in center of screen with 2 buttons, Bottom button
0 0 0 0 0 0 Dialog box in center of screen with 2 buttons, Null button
210 63 254 138 152 2 Dialog box in center of screen with 1 button, Bottom button
0 0 0 0 0 0 Dialog box in center of screen with 1 button, Null button
210 16 101 101 115 2 Dialog box in the viewport (left of screen) with 4 buttons, Top left button
211 123 207 101 115 2 Dialog box in the viewport (left of screen) with 4 buttons, Top right button
212 16 101 138 152 2 Dialog box in the viewport (left of screen) with 4 buttons, Lower left button
213 123 207 138 152 2 Dialog box in the viewport (left of screen) with 4 buttons, Lower right button
0 0 0 0 0 0 Dialog box in the viewport (left of screen) with 4 buttons, Null button
210 16 207 101 115 2 Dialog box in the viewport (left of screen) with 3 buttons, Top button
211 16 101 138 152 2 Dialog box in the viewport (left of screen) with 3 buttons, Lower left button
212 123 207 138 152 2 Dialog box in the viewport (left of screen) with 3 buttons, Lower right button
0 0 0 0 0 0 Dialog box in the viewport (left of screen) with 3 buttons, Null button
210 16 207 101 115 2 Dialog box in the viewport (left of screen) with 2 buttons, Top button
211 16 207 138 152 2 Dialog box in the viewport (left of screen) with 2 buttons, Bottom button
0 0 0 0 0 0 Dialog box in the viewport (left of screen) with 2 buttons, Null button
210 16 207 138 152 2 Dialog box in the viewport (left of screen) with 1 buttons, Bottom button
0 0 0 0 0 0 Dialog box in the viewport (left of screen) with 1 buttons, Null button
Structure: 4x8 bytes
A rectangle is defined by the coordinates of an on-screen rectangle area from (x1, y1) to (x2, y2).
Each rectangle is made of 4 words:
This section contains 4 rectangles used by the function that displays dialog boxes on screen. In the graphics.dat file, only one base dialog image with 3 buttons is stored. When a dialog box with 1, 2 or 4 options is required, parts of the base image are duplicated as necessary. These rectangles define the areas of the base dialog image that need to be duplicated.
Structure: 4 words (big endian, signed)
This table gives the number of steps to the right that the party has to take for each movement direction (note that directions are not absolute but relative to the current party direction). These values are only used when the player moves the party.
Values: 0, 1, 0, -1 for Forward, Right, Backward, Left
When you move the party by pressing an arrow on the keyboard or by clicking with the mouse on one of the movement arrows on screen, this table indicates the number of steps to the right that the party will take.
The game engine calls a function with this number of steps as a parameter to update the actual party coordinates.
Structure: 4 words (big endian, signed)
This table gives the number of steps forward that the party has to take for each movement direction (note that directions are not absolute but relative to the current party direction). These values are only used when the player moves the party.
Values: 1, 0, -1, 0 for Forward, Right, Backward, Left
When you move the party by pressing an arrow on the keyboard or by clicking with the mouse on one of the movement arrows on screen, this table indicates the number of steps forward that the party will take.
The game engine calls a function with this number of steps as a parameter to update the actual party coordinates.
Structure: 7x8 bytes
This section contains a list of 7 rectangles. These coordinates correspond to the 6 symbol positions and the undo button.
Structure: 4x8 bytes
This section contains a list of 4 rectangles. These coordinates correspond to the 4 arrows used to move (not the two arrows to turn left or right):
Move Forward, Move Right, Move Backward, Move Left
Structure: 4x4 bytes
This section defines the screen coordinates of the four areas on floor where you can drop or take items, in this order: bottom left, bottom right, top right, top left. For each area, there are four bytes:
In the game, everything can be done with the mouse. However, there are some commands that can be triggered using keyboard shortcuts.
The tables below are used to translate keyboard shortcuts with command types.
Each entry in the tables contains two words:
This section contains four lists. Each list is terminated by an entry where both words are set to 0000h.
Values:
00 94 00 1B: ASCII code of ‘Escape’ (1Bh) is translated to command type 0094h (148) which is ‘Unfreeze game’.
00 00 00 00
00 92 00 0D: ASCII code of ‘Carriage return’ (0Dh) is translated to command type 0092h (146) which is ‘Wake up’.
00 93 00 1B: ASCII code of ‘Escape’ (1Bh) is translated to command type 0093h (147) which is ‘Freeze game’.
00 00 00 00
00 01 52 00: Scan code of the ‘Insert’ key (52h) is translated to command type 0001h which is ‘Turn left’.
00 03 48 00: Scan code of the ‘Up arrow’ key (48h) is translated to command type 0003h which is ‘Move forward’.
00 02 47 00: Scan code of the ‘Clr/Home’ key (47h) is translated to command type 0002h which is ‘Turn right’.
00 06 4B 00: Scan code of the ‘Left arrow’ key (4Bh) is translated to command type 0006h which is ‘Move left’.
00 05 50 00: Scan code of the ‘Down arrow’ key (50h) is translated to command type 0005h which is ‘Move backward’.
00 04 4D 00: Scan code of the ‘Right arrow’ key (4Dh) is translated to command type 0004h which is ‘Move right’.
00 00 00 00
00 07 3B 00: Scan code of the ‘F1’ key (3Bh) is translated to command type 0007h which is ‘Toggle champion 1 inventory display’.
00 08 3C 00: Scan code of the ‘F2’ key (3Ch) is translated to command type 0008h which is ‘Toggle champion 2 inventory display’.
00 09 3D 00: Scan code of the ‘F3’ key (3Dh) is translated to command type 0009h which is ‘Toggle champion 3 inventory display’.
00 0A 3E 00: Scan code of the ‘F4’ key (3Eh) is translated to command type 000Ah (10) which is ‘Toggle champion 4 inventory display’.
00 8C 00 13: ASCII code of ‘CTRL-S’ (13h) is translated to command type 008Ch (140) which is ‘Display disk menu’.
00 93 00 1B: ASCII code of ‘Escape’ (1Bh) is translated to command type 0093h (147) which is ‘Freeze game’.
00 00 00 00
Structure: 124x12 bytes
This section contains lists of buttons.
In Dungeon Master there are 16 buttons in List K. In Chaos Strikes Back there are 20 buttons in that list: 4 buttons were added to allow clicks on the bars in champion status boxes. Each list is terminated by an ’null button’ where all 6 words are 0000h.
Here is the list of the 120/124 buttons in this section, including ’null buttons’:
Event Mouse
type x1 x2 y1 y2 button Description
160 104 158 86 142 2 List A (3 buttons), Choose champion: Resurrect
161 163 217 86 142 2 List A (3 buttons), Choose champion: Reincarnate
162 104 217 146 156 2 List A (3 buttons), Choose champion: Cancel
0 0 0 0 0 0 List A (3 buttons), Null button
58 117 132 92 107 2 List B (8 buttons), Carry location in open chest area: Chest item 1
59 106 121 109 124 2 List B (8 buttons), Carry location in open chest area: Chest item 2
60 111 126 126 141 2 List B (8 buttons), Carry location in open chest area: Chest item 3
61 128 143 131 146 2 List B (8 buttons), Carry location in open chest area: Chest item 4
62 145 160 134 149 2 List B (8 buttons), Carry location in open chest area: Chest item 5
63 162 177 136 151 2 List B (8 buttons), Carry location in open chest area: Chest item 6
64 179 194 137 152 2 List B (8 buttons), Carry location in open chest area: Chest item 7
65 196 211 138 153 2 List B (8 buttons), Carry location in open chest area: Chest item 8
0 0 0 0 0 0 List B (8 buttons), Null button
16 0 42 0 6 2 List C (12 buttons), Champion status box: Champion 1 name, select party leader
17 69 111 0 6 2 List C (12 buttons), Champion status box: Champion 2 name, select party leader
18 138 180 0 6 2 List C (12 buttons), Champion status box: Champion 3 name, select party leader
19 207 249 0 6 2 List C (12 buttons), Champion status box: Champion 4 name, select party leader
20 4 19 10 25 2 List C (12 buttons), Champion status box: Champion 1 left hand
21 24 39 10 25 2 List C (12 buttons), Champion status box: Champion 1 right hand
22 73 88 10 25 2 List C (12 buttons), Champion status box: Champion 2 left hand
23 93 108 10 25 2 List C (12 buttons), Champion status box: Champion 2 right hand
24 142 157 10 25 2 List C (12 buttons), Champion status box: Champion 3 left hand
25 162 177 10 25 2 List C (12 buttons), Champion status box: Champion 3 right hand
26 211 226 10 25 2 List C (12 buttons), Champion status box: Champion 4 left hand
27 231 246 10 25 2 List C (12 buttons), Champion status box: Champion 4 right hand
0 0 0 0 0 0 List C (12 buttons), Null button
101 235 247 51 61 2 List D (8 buttons), Spell area: Rune 1
102 249 261 51 61 2 List D (8 buttons), Spell area: Rune 2
103 263 275 51 61 2 List D (8 buttons), Spell area: Rune 3
104 277 289 51 61 2 List D (8 buttons), Spell area: Rune 4
105 291 303 51 61 2 List D (8 buttons), Spell area: Rune 5
106 305 317 51 61 2 List D (8 buttons), Spell area: Rune 6
108 234 303 63 73 2 List D (8 buttons), Spell area: Cast spell
107 305 318 63 73 2 List D (8 buttons), Spell area: Delete rune
0 0 0 0 0 0 List D (8 buttons), Null button
116 233 252 86 120 2 List E (4 buttons), Action area: Champion 1 action
117 255 274 86 120 2 List E (4 buttons), Action area: Champion 2 action
118 277 296 86 120 2 List E (4 buttons), Action area: Champion 3 action
119 299 318 86 120 2 List E (4 buttons), Action area: Champion 4 action
0 0 0 0 0 0 List E (4 buttons), Null button
112 285 318 77 83 2 List F (4 buttons), Action area: Cancel action
113 234 318 86 96 2 List F (4 buttons), Action area: Action 1
114 234 318 98 108 2 List F (4 buttons), Action area: Action 2
115 234 318 110 120 2 List F (4 buttons), Action area: Action 3
0 0 0 0 0 0 List F (4 buttons), Null button
148 0 319 0 199 2 List G (2 buttons), Unfreeze game (left click)
148 0 319 0 199 1 List G (2 buttons), Unfreeze game (right click)
0 0 0 0 0 0 List G (2 buttons), Null button
146 0 223 33 168 2 List H (2 buttons), Wake up (left click)
146 0 223 33 168 1 List H (2 buttons), Wake up (right click)
0 0 0 0 0 0 List H (2 buttons), Null button
11 0 319 0 199 1 List I (37 buttons), Close inventory (right click)
140 174 182 36 44 2 List I (37 buttons), Display disk menu
145 188 204 36 44 2 List I (37 buttons), Sleep
11 210 218 36 44 2 List I (37 buttons), Close inventory button
28 6 21 86 101 2 List I (37 buttons), Carry location: Left hand
29 62 77 86 101 2 List I (37 buttons), Carry location: Right hand
30 34 49 59 74 2 List I (37 buttons), Carry location: Head
31 34 49 79 94 2 List I (37 buttons), Carry location: Torso
32 34 49 99 114 2 List I (37 buttons), Carry location: Legs
33 34 49 119 134 2 List I (37 buttons), Carry location: Feet
34 6 21 123 138 2 List I (37 buttons), Carry location: Pouch 2
70 56 71 46 61 2 List I (37 buttons), Feed champion
71 12 27 46 61 2 List I (37 buttons), Press champion eye
35 79 94 106 121 2 List I (37 buttons), Carry location: Quiver 2,1
36 62 77 123 138 2 List I (37 buttons), Carry location: Quiver 1,2
37 79 94 123 138 2 List I (37 buttons), Carry location: Quiver 2,2
38 6 21 66 81 2 List I (37 buttons), Carry location: Necklace
39 6 21 106 121 2 List I (37 buttons), Carry location: Pouch 1
40 62 77 106 121 2 List I (37 buttons), Carry location: Quiver 1,1
41 66 81 66 81 2 List I (37 buttons), Carry location: Backpack 1,1
42 83 98 49 64 2 List I (37 buttons), Carry location: Backpack 2,2
43 100 115 49 64 2 List I (37 buttons), Carry location: Backpack 2,3
44 117 132 49 64 2 List I (37 buttons), Carry location: Backpack 2,4
45 134 149 49 64 2 List I (37 buttons), Carry location: Backpack 2,5
46 151 166 49 64 2 List I (37 buttons), Carry location: Backpack 2,6
47 168 183 49 64 2 List I (37 buttons), Carry location: Backpack 2,7
48 185 200 49 64 2 List I (37 buttons), Carry location: Backpack 2,8
49 202 217 49 64 2 List I (37 buttons), Carry location: Backpack 2,9
50 83 98 66 81 2 List I (37 buttons), Carry location: Backpack 1,2
51 100 115 66 81 2 List I (37 buttons), Carry location: Backpack 1,3
52 117 132 66 81 2 List I (37 buttons), Carry location: Backpack 1,4
53 134 149 66 81 2 List I (37 buttons), Carry location: Backpack 1,5
54 151 166 66 81 2 List I (37 buttons), Carry location: Backpack 1,6
55 168 183 66 81 2 List I (37 buttons), Carry location: Backpack 1,7
56 185 200 66 81 2 List I (37 buttons), Carry location: Backpack 1,8
57 202 217 66 81 2 List I (37 buttons), Carry location: Backpack 1,9
81 96 223 83 167 2 List I (37 buttons), Click in open chest area (lower right part of inventory)
0 0 0 0 0 0 List I (37 buttons), Null button
1 234 261 125 145 2 List J (8 buttons), Party movement: Turn left
3 263 289 125 145 2 List J (8 buttons), Party movement: Move forward
2 291 318 125 145 2 List J (8 buttons), Party movement: Turn right
6 234 261 147 167 2 List J (8 buttons), Party movement: Move left
5 263 289 147 167 2 List J (8 buttons), Party movement: Move backward
4 291 318 147 167 2 List J (8 buttons), Party movement: Move right
80 0 223 33 168 2 List J (8 buttons), Click in viewport
83 0 319 33 199 1 List J (8 buttons), Display party leader inventory (right click)
0 0 0 0 0 0 List J (8 buttons), Null button
12 0 42 0 28 2 List K (19 buttons), Click in left part of Champion 1 status box: select party leader
13 69 111 0 28 2 List K (19 buttons), Click in left part of Champion 2 status box: select party leader
14 138 180 0 28 2 List K (19 buttons), Click in left part of Champion 3 status box: select party leader
15 207 249 0 28 2 List K (19 buttons), Click in left part of Champion 4 status box: select party leader
125 274 299 0 13 2 List K (19 buttons), Drag top left champion position icon
126 301 319 0 13 2 List K (19 buttons), Drag top right champion position icon
127 301 319 15 28 2 List K (19 buttons), Drag lower right champion position icon
128 274 299 15 28 2 List K (19 buttons), Drag lower left champion position icon
7 0 66 0 28 1 List K (19 buttons), Champion status box: Champion 1 (right click), toggle inventory display
8 69 135 0 28 1 List K (19 buttons), Champion status box: Champion 2 (right click), toggle inventory display
9 138 204 0 28 1 List K (19 buttons), Champion status box: Champion 3 (right click), toggle inventory display
10 207 273 0 28 1 List K (19 buttons), Champion status box: Champion 4 (right click), toggle inventory display
7 44 66 0 28 2 List K (19 buttons), Champion status box: Champion 1 bars, toggle inventory display
8 113 135 0 28 2 List K (19 buttons), Champion status box: Champion 2 bars, toggle inventory display
9 182 204 0 28 2 List K (19 buttons), Champion status box: Champion 3 bars, toggle inventory display
10 251 273 0 28 2 List K (19 buttons), Champion status box: Champion 4 bars, toggle inventory display
100 233 319 42 73 2 List K (19 buttons), Click in spell area
111 233 319 77 121 2 List K (19 buttons), Click in action area
147 0 1 198 199 2 List K (19 buttons), Freeze game
0 0 0 0 0 0 List K (19 buttons), Null button
215 103 217 145 159 2 List L (1 buttons), Restart game (after party has died)
0 0 0 0 0 0 List L (1 buttons), Null button
200 244 298 45 58 2 List M (3 buttons), Entrance menu: Enter dungeon
201 244 298 76 93 2 List M (3 buttons), Entrance menu: Resume
202 248 293 187 199 2 List M (3 buttons), Entrance menu: Credits
0 0 0 0 0 0 List M (3 buttons), Null button