Dun Darach | Memory map |
Page | Byte | Address | Length | Description | |
---|---|---|---|---|---|
88 | 0 | 5800 | 768 |
ATTR
|
|
91 | 0 | 5B00 | 402 |
Spare memory for creating temprory data / bitmaps.
|
|
92 | 146 | 5C92 | 401 |
Temporary store which gets used for copy blocks.
|
|
94 | 35 | 5E23 | 1 |
Data block at 5E23
|
|
94 | 36 | 5E24 | 34 |
Offscreen Attribute table.
|
|
94 | 70 | 5E46 | 34 |
Room: Bg item table.
|
|
94 | 104 | 5E68 | 2715 |
Offscreen
|
|
105 | 3 | 6903 | 8 |
Rooms: Current room type structure.
|
|
105 | 11 | 690B | 96 |
Rooms:Room type structures.
|
|
105 | 107 | 696B | 108 |
Areas : Data holding area positions and names.
|
|
105 | 215 | 69D7 | 31 |
Dictionary : Table of start addresses for each different word lengths.
|
|
105 | 246 | 69F6 | 439 |
Dictionary : Of names and places.
|
|
107 | 173 | 6BAD | 1 |
Data block at 6BAD
|
|
107 | 174 | 6BAE | 254 |
Paths : Data for paths running east / west.
|
|
108 | 172 | 6CAC | 338 |
Paths : Data for paths running north / south.
|
|
109 | 254 | 6DFE | 2164 |
Background : Description string.
|
|
118 | 114 | 7672 | 60 |
Objects : Array of bitmap indices for the objects.
|
|
118 | 174 | 76AE | 601 |
Objects : List of strings representing object nouns.
|
|
121 | 7 | 7907 | 1 |
JP (HL)
|
|
121 | 8 | 7908 | 86 |
Offscreen : Blits part of offscreen.
|
|
121 | 94 | 795E | 47 |
Offscreen : Blits offscreen and colours.
|
|
121 | 141 | 798D | 17 |
Linked List : Create.
|
|
121 | 158 | 799E | 25 |
Initialise _bee4 data.
|
|
121 | 183 | 79B7 | 145 |
Handles main number keys, blits screen, moves onto main loop.
|
|
122 | 72 | 7A48 | 36 |
People : Stores bit of background that requires redrawing for each actor.
|
|
122 | 108 | 7A6C | 50 |
Data block at 7A6C
|
|
122 | 158 | 7A9E | 133 |
Main Initialisation
|
|
123 | 35 | 7B23 | 353 |
Data block at 7B23
|
|
124 | 132 | 7C84 | 32 |
Paths : Table of path offsets.
|
|
124 | 164 | 7CA4 | 48 |
Move : jump vectors.
|
|
124 | 212 | 7CD4 | 212 |
Offscreen : Scroll the offscreen in the direction of the player.
|
|
125 | 168 | 7DA8 | 35 |
Room : Create room structure copy
|
|
125 | 203 | 7DCB | 9 |
Current Room: Set up data structure based on type.
|
|
125 | 212 | 7DD4 | 265 |
Path : Find path that player is on.
|
|
126 | 221 | 7EDD | 16 |
ATTR : Fills stage to area's colour.
|
|
126 | 237 | 7EED | 105 |
Background : Draw all of the background.
|
|
127 | 86 | 7F56 | 24 |
Compass text.
|
|
127 | 110 | 7F6E | 1 |
Data block at 7F6E
|
|
127 | 111 | 7F6F | 427 |
Room : Initialise and redraw.
|
|
129 | 26 | 811A | 7 |
Data block at 811A
|
|
129 | 33 | 8121 | 563 |
Main game routine.
|
|
131 | 84 | 8354 | 129 |
Start off the action 'offer'.
|
|
131 | 213 | 83D5 | 367 |
Handle offer action if an offer is in place.
|
|
133 | 68 | 8544 | 92 |
View Skar through the telestone.
|
|
133 | 160 | 85A0 | 12 |
Rooms : Table of datasizes for each type.
|
|
133 | 172 | 85AC | 2 |
Default exit data for inside rooms.
|
|
133 | 174 | 85AE | 214 |
Action : Handles the 'enter' action.
|
|
134 | 132 | 8684 | 17 |
Handles door entry by the player.
|
|
134 | 149 | 8695 | 112 |
Table of pointers for storing exit copies.
|
|
135 | 5 | 8705 | 21 |
Positions used to locate person when goin through an exit, based on compass direction.
|
|
135 | 26 | 871A | 637 |
Room : Initialise
|
|
137 | 151 | 8997 | 98 |
Handle being caught by the yoeman for theft.
|
|
137 | 249 | 89F9 | 11 |
Selects pocket 1 if current selection is on iridi.
|
|
138 | 4 | 8A04 | 42 |
Room : Checks inventory on exit.
|
|
138 | 46 | 8A2E | 108 |
Room : Check shelf change on exit.
|
|
138 | 154 | 8A9A | 29 |
Room : Check combination lock on exit.
|
|
138 | 183 | 8AB7 | 13 |
Room : Display 'locked' message.
|
|
138 | 196 | 8AC4 | 45 |
Takes 200 iridi from cash.
|
|
138 | 241 | 8AF1 | 29 |
Room : Checks to see if hero can leave strong room.
|
|
139 | 14 | 8B0E | 50 |
Action : Handle Offer
|
|
139 | 64 | 8B40 | 47 |
Person : Skar, handle an offer.
|
|
139 | 111 | 8B6F | 7 |
Person : Ryde, handle an offer.
|
|
139 | 118 | 8B76 | 7 |
Person : Kara, handle an offer.
|
|
139 | 125 | 8B7D | 7 |
Person : Keli, handle an offer.
|
|
139 | 132 | 8B84 | 7 |
Person : Kahn, handle an offer.
|
|
139 | 139 | 8B8B | 7 |
Person : Dain, handle an offer.
|
|
139 | 146 | 8B92 | 7 |
Person : Mhor, handle an offer.
|
|
139 | 153 | 8B99 | 7 |
Person : Teth, handle an offer.
|
|
139 | 160 | 8BA0 | 18 |
Person : Pita, handle an offer.
|
|
139 | 178 | 8BB2 | 37 |
Person : Bren, handle an offer.
|
|
139 | 215 | 8BD7 | 6 |
Person : Loeg, handle an offer.
|
|
139 | 221 | 8BDD | 24 |
Rooms : Jump vector for each type. Called when entered.
|
|
139 | 245 | 8BF5 | 56 |
Room : Call all of the room events.
|
|
140 | 45 | 8C2D | 69 |
Create a door opening / closing event.
|
|
140 | 114 | 8C72 | 120 |
Create a door bitmap for opening / closing animation.
|
|
140 | 234 | 8CEA | 19 |
Door: Table of animation frames for door.
|
|
140 | 253 | 8CFD | 1 |
Routine at 8CFD
|
|
140 | 254 | 8CFE | 161 |
Event : Door opening or closing.
|
|
141 | 159 | 8D9F | 117 |
Sets up and blits the flame, if required.
|
|
142 | 20 | 8E14 | 30 |
Main text for the gambling room.
|
|
142 | 50 | 8E32 | 110 |
Displays text required based on amount staked.
|
|
142 | 160 | 8EA0 | 77 |
Blit a character offset in the vertical axis.
|
|
142 | 237 | 8EED | 1 |
Room handler, does nothing.
|
|
142 | 238 | 8EEE | 85 |
Room handler for the Castle combination lock room.
|
|
143 | 67 | 8F43 | 454 |
Handle the dice in the gambling room.
|
|
145 | 9 | 9109 | 41 |
Room jump vector,
|
|
145 | 50 | 9132 | 72 |
Room handler for Galleries.
|
|
145 | 122 | 917A | 1 |
Room jump vector, NULL
|
|
145 | 123 | 917B | 197 |
Background : Draw a single column of a furniture bitmap.
|
|
146 | 64 | 9240 | 146 |
Draws a pair of digits onto a door.
|
|
146 | 210 | 92D2 | 19 |
Data block at 92D2
|
|
146 | 229 | 92E5 | 335 |
BG: Draw correct part of a background item at a given column.
|
|
148 | 52 | 9434 | 88 |
Blits a column of a background bitmap based on its index value.
|
|
148 | 140 | 948C | 28 |
Draw an empty black column.
|
|
148 | 168 | 94A8 | 88 |
Handle description string control values.
|
|
149 | 0 | 9500 | 46 |
Point to and draw description's sub-string.
|
|
149 | 46 | 952E | 90 |
Draws the picture for a gallery.
|
|
149 | 136 | 9588 | 20 |
Background : Next door number.
|
|
149 | 156 | 959C | 12 |
Background : Next sign text
|
|
149 | 168 | 95A8 | 109 |
Set up and blit a door.
|
|
150 | 21 | 9615 | 7 |
Blit a single word into a bitmap.
|
|
150 | 28 | 961C | 9 |
Routine at 961C
|
|
150 | 37 | 9625 | 28 |
Blit string.
|
|
150 | 65 | 9641 | 51 |
Adds a torch to the current background.
|
|
150 | 116 | 9674 | 17 |
Store item index number into background index table.
|
|
150 | 133 | 9685 | 4 |
Store the value for a shopkeeper at current column
|
|
150 | 137 | 9689 | 17 |
Data block at 9689
|
|
150 | 154 | 969A | 699 |
Background : Draws a single column, including paths.
|
|
153 | 85 | 9955 | 90 |
Reverses the image of a bitmap.
|
|
153 | 175 | 99AF | 21 |
Test for keyboard and store results.
|
|
153 | 196 | 99C4 | 186 |
Tests keyboard and convert presses into command bit flag.
|
|
154 | 126 | 9A7E | 112 |
Redraws an object, on stage. If the object is already there then it is Xor'd out.
|
|
154 | 238 | 9AEE | 51 |
Decode a word index string into a readable string.
|
|
155 | 33 | 9B21 | 125 |
Draws a string, as a bitmap, into another bitmap, such as a sign.
|
|
155 | 158 | 9B9E | 47 |
Blits an character bitmap to memory.
|
|
155 | 205 | 9BCD | 1 |
Data block at 9BCD
|
|
155 | 206 | 9BCE | 88 |
Blit bitmap, at (Y,X), aligning to nearest character position.
|
|
156 | 38 | 9C26 | 30 |
Clears the stage.
|
|
156 | 68 | 9C44 | 2 |
Holds the address of any extra string of the selected object.
|
|
156 | 70 | 9C46 | 301 |
Updates the whole inventory text.
|
|
157 | 115 | 9D73 | 77 |
Redraws an object, on stage. If the object is already there then it is Xor'd out.
|
|
157 | 192 | 9DC0 | 1 |
Data block at 9DC0
|
|
157 | 193 | 9DC1 | 144 |
Hero; Handle pick up an object / money.
|
|
158 | 81 | 9E51 | 165 |
Hero; Handle dropping an object / money.
|
|
158 | 246 | 9EF6 | 7 |
Inventory : Select next pocket.
|
|
158 | 253 | 9EFD | 22 |
Indices to bitmap data for the hero's masks.
|
|
159 | 19 | 9F13 | 211 |
Stage: Draw everyone including Cuchulain and everything on stage.
|
|
159 | 230 | 9FE6 | 49 |
Update the backgrounds of actors / hero.
|
|
160 | 23 | A017 | 99 |
Paths : Finds a path based on a given coordinates (Axis, Vector).
|
|
160 | 122 | A07A | 160 |
Actor : Check distance of nearest junctions.
|
|
161 | 26 | A11A | 38 |
People : Get coordinate (Axis, Vector) for testing against paths.
|
|
161 | 64 | A140 | 28 |
Routine at A140
|
|
161 | 92 | A15C | 55 |
Actor : Create a door event for a person.
|
|
161 | 147 | A193 | 10 |
Data block at A193
|
|
161 | 157 | A19D | 1 |
Data block at A19D
|
|
161 | 158 | A19E | 1 |
Data block at A19E
|
|
161 | 159 | A19F | 99 |
Move a character forward by one step.
|
|
162 | 2 | A202 | 32 |
People action call table.
|
|
162 | 34 | A222 | 40 |
People : Determine persons next action.
|
|
162 | 74 | A24A | 18 |
Action:
|
|
162 | 92 | A25C | 87 |
Action:
|
|
162 | 179 | A2B3 | 60 |
Action:
|
|
162 | 239 | A2EF | 14 |
Action:
|
|
162 | 253 | A2FD | 33 |
Action:
|
|
163 | 30 | A31E | 52 |
Action:
|
|
163 | 82 | A352 | 55 |
Action:
|
|
163 | 137 | A389 | 42 |
Routine at A389
|
|
163 | 179 | A3B3 | 3 |
Action:
|
|
163 | 182 | A3B6 | 2 |
Action:
|
|
163 | 184 | A3B8 | 18 |
Action:
|
|
163 | 202 | A3CA | 2 |
Action:
|
|
163 | 204 | A3CC | 4 |
Action:
|
|
163 | 208 | A3D0 | 303 |
Action:
|
|
164 | 255 | A4FF | 62 |
Routine at A4FF
|
|
165 | 61 | A53D | 230 |
Routine at A53D
|
|
166 | 35 | A623 | 13 |
Data block at A623
|
|
166 | 48 | A630 | 5 |
Data block at A630
|
|
166 | 53 | A635 | 3 |
Data block at A635
|
|
166 | 56 | A638 | 4 |
Data block at A638
|
|
166 | 60 | A63C | 2 |
Pointers to the characters currently visible on screen.
|
|
166 | 62 | A63E | 1 |
Data block at A63E
|
|
166 | 63 | A63F | 12 |
Table of attributes values to use when colouring an identity badge.
|
|
166 | 75 | A64B | 606 |
Handle all actors.
|
|
168 | 169 | A8A9 | 57 |
Replies from people.
|
|
168 | 226 | A8E2 | 75 |
Decides if a visible person should greet the player.
|
|
169 | 45 | A92D | 7 |
Indices to objects that cannot be stolen.
|
|
169 | 52 | A934 | 90 |
Check to see if thief can steal from player.
|
|
169 | 142 | A98E | 4 |
Blit Shift data.
|
|
169 | 146 | A992 | 641 |
Blit an object (from object data node), correctly on screen adjusting for compass and position.
|
|
172 | 19 | AC13 | 26 |
Blits a block of data onto the offscreen.
|
|
172 | 45 | AC2D | 45 |
Replaces the background for a moving (onscreen) actor.
|
|
172 | 90 | AC5A | 12 |
ABS(hl-de)
|
|
172 | 102 | AC66 | 45 |
Translate stored x,y position into screen and attribute address.
|
|
172 | 147 | AC93 | 45 |
Creates a new node, copies the content of 'TempStore' into it and adds to Bg Link List.
|
|
172 | 192 | ACC0 | 29 |
Remove a link from a link list.
|
|
172 | 221 | ACDD | 20 |
Copies bitmap info into cache.
|
|
172 | 241 | ACF1 | 11 |
Retrieves the bitmap index of an object.
|
|
172 | 252 | ACFC | 17 |
Searches for start of object noun string.
|
|
173 | 13 | AD0D | 13 |
Prints a string.
|
|
173 | 26 | AD1A | 5 |
Prints a string taking ptr from the stack.
|
|
173 | 31 | AD1F | 44 |
Displays message above stage.
|
|
173 | 75 | AD4B | 9 |
Prints message above stage at (5,10)
|
|
173 | 84 | AD54 | 71 |
Displays object extra string in correct place.
|
|
173 | 155 | AD9B | 19 |
Prints a character with char. set selection.
|
|
173 | 174 | ADAE | 12 |
Add two values together and adjust for BCD.
|
|
173 | 186 | ADBA | 13 |
Add to values together, with carry, and adjust to BCD.
|
|
173 | 199 | ADC7 | 26 |
BCD Subtract (hl,4) from (de,4).
|
|
173 | 225 | ADE1 | 9 |
BCD adds DE from (HL)
|
|
173 | 234 | ADEA | 17 |
BCD Subtracts DE from (HL)
|
|
173 | 251 | ADFB | 49 |
Prints a decimal BCD string onto screen.
|
|
174 | 44 | AE2C | 10 |
Displays a decimal held in DE as BCD.
|
|
174 | 54 | AE36 | 16 |
Clears a block of memory, ptr held in data {ptr, len}, by copying from $5c92.
|
|
174 | 70 | AE46 | 16 |
Search through data looking for first non zero byte.
|
|
174 | 86 | AE56 | 30 |
Finds the address of a word using an index.
|
|
174 | 116 | AE74 | 12 |
Prints dictionary word
|
|
174 | 128 | AE80 | 13 |
Hide area name text.
|
|
174 | 141 | AE8D | 154 |
Checks for area and displays name.
|
|
175 | 39 | AF27 | 21 |
Save / Load file data.
|
|
175 | 60 | AF3C | 362 |
Menu, display and handle.
|
|
176 | 166 | B0A6 | 48 |
Asks save / load letter from user.
|
|
176 | 214 | B0D6 | 35 |
Main stats and variables.
|
|
176 | 249 | B0F9 | 36 |
Background : Picture frame matrices.
|
|
177 | 29 | B11D | 80 |
Data block at B11D
|
|
177 | 109 | B16D | 7 |
Room : Current Details
|
|
177 | 116 | B174 | 8 |
Room : Current room type structure.
|
|
177 | 124 | B17C | 55 |
Data block at B17C
|
|
177 | 179 | B1B3 | 283 |
Paths : Paths and descriptions for rooms.
|
|
178 | 206 | B2CE | 68 |
Table of pointers to all of the background description strings.
|
|
179 | 18 | B312 | 555 |
Background description strings
|
|
181 | 61 | B53D | 135 |
Messages displayed in a room.
|
|
181 | 196 | B5C4 | 897 |
Rooms : Main Data.
|
|
185 | 69 | B945 | 41 |
People Data, Skar
|
|
185 | 110 | B96E | 41 |
People Data, Ryde
|
|
185 | 151 | B997 | 41 |
People Data, Kara
|
|
185 | 192 | B9C0 | 41 |
People Data, Keli
|
|
185 | 233 | B9E9 | 41 |
People Data, Kahn
|
|
186 | 18 | BA12 | 41 |
People Data, Dain
|
|
186 | 59 | BA3B | 41 |
People Data, Mhor
|
|
186 | 100 | BA64 | 41 |
People Data, Teth
|
|
186 | 141 | BA8D | 41 |
People Data, Pita
|
|
186 | 182 | BAB6 | 41 |
People Data, Bren
|
|
186 | 223 | BADF | 41 |
People Data, Loeg
|
|
187 | 8 | BB08 | 39 |
People Data, rat
|
|
187 | 47 | BB2F | 15 |
Room : Details of room being entered.
|
|
187 | 62 | BB3E | 36 |
Combination locks
|
|
187 | 98 | BB62 | 38 |
Information for each of the dice.
|
|
187 | 136 | BB88 | 4 |
Data block at BB88
|
|
187 | 140 | BB8C | 444 |
Table of pointers for bitmaps.
|
|
189 | 72 | BD48 | 50 |
Message at BD48
|
|
189 | 122 | BD7A | 178 |
Furniture bitmap table of pointers.
|
|
190 | 44 | BE2C | 36 |
Data block at BE2C
|
|
190 | 80 | BE50 | 148 |
Furniture bitmap table of pointers.
|
|
190 | 228 | BEE4 | 170 |
Link List
|
|
191 | 142 | BF8E | 8 |
Bitmap scratchpad.
|
|
191 | 150 | BF96 | 3256 |
Hero's bitmaps.
|
|
204 | 78 | CC4E | 1680 |
Hero's mask.
|
|
210 | 222 | D2DE | 2800 |
Women bitmap
|
|
221 | 206 | DDCE | 96 |
[36] Rat
|
|
222 | 46 | DE2E | 32 |
Block
|
|
222 | 78 | DE4E | 2800 |
Man bitmap
|
|
233 | 62 | E93E | 872 |
Object bitmaps
|
|
236 | 166 | ECA6 | 320 |
Bitmap of the shop window with sign.
|
|
237 | 230 | EDE6 | 320 |
Bitmap of the shop triple window with sign.
|
|
239 | 38 | EF26 | 224 |
Bitmap of the picture frames found in galleries.
|
|
240 | 6 | F006 | 64 |
Skinny window
|
|
240 | 70 | F046 | 32 |
Brick
|
|
240 | 102 | F066 | 8 |
Edging
|
|
240 | 110 | F06E | 64 |
Secure Grid Window
|
|
240 | 174 | F0AE | 96 |
Left hand of large window
|
|
241 | 14 | F10E | 96 |
Left hand of medium window
|
|
241 | 110 | F16E | 64 |
Half of roundel
|
|
241 | 174 | F1AE | 64 |
Patterned glass window
|
|
241 | 238 | F1EE | 64 |
Bitmap of sign.
|
|
242 | 46 | F22E | 48 |
Left hand side of Arch.
|
|
242 | 94 | F25E | 280 |
Numbered door
|
|
243 | 118 | F376 | 280 |
Inner Door
|
|
244 | 142 | F48E | 40 |
Secret Door
|
|
244 | 182 | F4B6 | 280 |
Portal
|
|
245 | 206 | F5CE | 128 |
Data block at F5CE
|
|
246 | 78 | F64E | 112 |
Left hand edge of wall.
|
|
246 | 190 | F6BE | 16 |
Data block at F6BE
|
|
246 | 206 | F6CE | 160 |
Left hand edge of wall when looking in.
|
|
247 | 110 | F76E | 152 |
[9E] Left Half of shopkeeper.
|
|
248 | 6 | F806 | 16 |
Data block at F806
|
|
248 | 22 | F816 | 48 |
[A4] Left handside of counter.
|
|
248 | 70 | F846 | 24 |
[A5] Centre of counter.
|
|
248 | 94 | F85E | 72 |
[A6] Left hand of Shelf.
|
|
248 | 166 | F8A6 | 120 |
Bitmap of chair.
|
|
249 | 30 | F91E | 8 |
|
|
249 | 38 | F926 | 32 |
|
|
249 | 70 | F946 | 80 |
|
|
249 | 150 | F996 | 8 |
|
|
249 | 158 | F99E | 80 |
|
|
249 | 238 | F9EE | 232 |
|
|
250 | 214 | FAD6 | 80 |
[C6] Torch.
|
|
251 | 38 | FB26 | 200 |
(C9) Bitmap of compass
|
|
251 | 238 | FBEE | 16 |
Bitmap of road leading into screen.
|
|
251 | 254 | FBFE | 32 |
Bitmap of road leading into screen.
|
|
252 | 30 | FC1E | 32 |
Bitmap of road leading out of screen.
|
|
252 | 62 | FC3E | 16 |
Bitmap of road edge.
|
|
252 | 78 | FC4E | 16 |
Bitmap of road edge.
|
|
252 | 94 | FC5E | 48 |
(D0) Vertical border ornament
|
|
252 | 142 | FC8E | 152 |
(D1) Horizontal border ornament
|
|
253 | 38 | FD26 | 40 |
Digit character set.
|
|
253 | 78 | FD4E | 32 |
Identifier used for people
|
|
253 | 110 | FD6E | 658 |
Bitmaps : 8x8 bitmaps and letters.
|