Address Length Description
AD76 135
Table: Item Locations
One byte per item. The value is the room the item is in, 00 when the item is inactive, and the inventory room when the player is carrying it.
AE76 1
Flags: Room Change
Bit 0 and bit 1 gate the special move out of room 37.
AE77 1
Flag: Beach Dug
Bit 0 is set once the player has dug on the beach in room 3C.
AE78 1
Flag: Turn Scratch
Cleared at the start of every pass round the game loop.
AE79 1
Room: Pour Return
Holds the room ID to restore after pouring.
AE7E 2
Table: Already Seen Room Images
Corresponds to whether the player has already seen the image for the following rooms:
Bit Room ID Room Name
00 03 In the Field
01 0E The Monastery
02 1C The King's Chamber
03 27 The Oil Room
04 28 The Acid Room
05 3D The Sea Cavern
06 12 Within the Long Barrow
07 2B The Hall of the Black Knight
Bit Room ID Room Name
00 29 The Treasury
01 13 At the Edge of the Sea
02 N/A N/A
03 N/A N/A
04 N/A N/A
05 N/A N/A
06 N/A N/A
07 N/A N/A
HandlerDisplayRoomImage tests and sets the bit for the current room. The bit number is the room's place in Table_RoomsWithImages.
AE88 1
Flags: Turn-Based Event States
Holds a single byte, where each bit relates to a turn-based event. GameEventsProcessor decrements the matching counter in Counter_Unused_0 and, when a counter reaches zero, would call through Pointer_TurnBasedEvents_Jump. The shipped image leaves Pointer_TurnBasedEvents_Jump as 00 and never sets these bits.
AE89 8
Turn-Based Event Counters
One countdown per bit of *Flag_TurnBasedEventState. GameEventsProcessor decrements a set counter each turn. The shipped image never arms any of them.
AE91 1
Flag: Following Heroes
Each set bit makes the matching item in Table_FollowingItems follow the player when the room changes (MovePlayerToRoom). Bits 0-3 default to "Beren,the King." (Beren), "Istar,the wizard." (Istar), "Haldir,the minstrel." (Haldir) and "Khadim,the dwarf." (Khadim). Bits 4-7 are never set. Handler_ChangeRoom also reads this byte when checking the ruined cottage.
AE92 8
Table: Following Items
Each bit of *Flag_FollowingHeroes makes the item at the same position here follow the player when the room changes.
AE9A 1
Number Of Items In The Players Inventory
The number of items the player is currently holding.
AE9B 50
Load/ Save Buffer
Save Game copies the configurable-exit bytes here before writing the tape block. The buffer is 32 bytes, ending at the current room.
AECD 1
Current Room ID
The room the player starts the game in is room 03: In the Field.
AECE 2
Score
BCD score. Add To Score accumulates into this word.
AED0 2
Pointer: Vocabulary Table
Pointer to the table containing the game vocabulary.
AED2 2
Pointer: Turn-Based Events Jump Table
Pointer to the jump table containing turn-based events. The initial image stores 00.
AED4 2
Pointer: Room Map Table
Pointer to the table containing the relationships between rooms.
AED6 2
Pointer: Item Description Table
Pointer to the table containing item descriptions.
AED8 2
Pointer: Rooms With Images Table
Pointer to the table containing all the rooms which have an image to display.
AEDA 2
Pointer: Room Image Jump Table
Pointer to the jump table for displaying an image relating to a room.
AEDC 2
Pointer: Room Description Table
Pointer to the table containing room descriptions.
AEDE 2
Pointer: Item Grouping Table
Pointer to the table containing item groupings.
AEE0 2
Pointer: Object Noun Phrases
Pointer to the object noun-phrase table.
AEE2 2
Pointer: Character Set
Pointer to the character set used when expanding vocabulary tokens.
AEE4 2
Pointer: Verbs Jump Table
Pointer to the jump table of verb handlers.
AEE6 2
Pointer: Configurable Exits Table
Pointer to the configurable-exit address table.
AEE8 2
Pointer: Scenic Events Jump Table
Pointer to the jump table of scenic-event handlers. The initial image stores 00; this game ships with no scenic-event handlers.
AEEA 2
Pointer: Verb Word Tokens Table
Pointer to the verb word-token table.
AEEC 2
Pointer: Spare
Unused pointer. The initial image stores 00.
AEEE 2
Pointer: Spare 2
Unused pointer. The initial image stores 00.
AEF0 2
Number Of Items
The total number of items in the game.
AEF2 2
Number Of Objects
The total number of objects in the game.
AEF4 2
Number Of Verb Tokens
The total number of verb word tokens the game has.
AEF6 2
Number Of Rooms With Images
The total number of rooms which have related images in the game. 0A room slots have a picture; the oil room and the acid room share one.
AEF8 2
Number Of Scenic Events
The total number of scenic events in the game. The initial image stores 00.
AEFA 2
Number Of "Configurable Exits"
The total number of configurable exits in the game.
AEFC 50
Command Buffer
The line the player is typing. The input handler clears all 32 bytes.
AF2E 10
User Input: Word Tokens
AF38 1
Line Number
The entry point writes 18 here.
AF39 4
Four Letter Buffer
The four-character word UserInput_Enter is matching. The routine fills it with ASCII spaces (20) and then copies up to 04 characters of the next command word into it.
AF3D 8
Graphics: Room Image Row
Eight bytes assembled by PrintRoomGraphic for one character row of a room image, then passed to the ROM print routine.
AF45 2
Temporary Storage Table Pointer
AF47 2
Temporary Storage Table Index
AF49 2
Temporary Storage Word Count
CD58 270
Table: Item Descriptions
One word per item. Each entry points at an FF-terminated name.
CE66 132
Table: Room Descriptions
One word per room. Rooms 00 and 01 are unused. The rest point at the room text.
CEEA 144
Table: Object Noun Phrases
One word per object. Each entry points at the noun text.
FBDC 135
Table: Item Locations
Starting places for the items. GameStart copies this table to Table_ItemLocations at the start of every game.
FCDC 1
Flags: Room Change
Copied to Flags_RoomChange. Bit 0 and bit 1 gate the special move out of room 37.
FCDD 1
Flag: Beach Dug
Copied to Flag_BeachDug. Bit 0 is clear until the beach in room 3C is dug.
FCDE 1
Flag: Turn Scratch
Copied to Flag_TurnScratch. Cleared at the start of every pass round the game loop.
FCDF 1
Room: Pour Return
Copied to Room_PourReturn. Holds the room ID to restore after pouring.
FCE4 2
Table: Already Seen Room Images
Copied to Table_RoomImagesAlreadySeen. No room picture has been shown yet.
FCEE 1
Flags: Turn-Based Event States
Copied to Flag_TurnBasedEventState. No turn-based event has started.
FCEF 8
Turn-Based Event Counters
Copied to Counter_Unused_0. One countdown per bit of *Flag_TurnBasedEventState.
FCF7 1
Flag: Following Heroes
Copied to Flag_FollowingHeroes. No following bits are set at the start of a game.
FCF8 8
Table: Following Items
Copied to Table_FollowingItems. Default item IDs for bits 0-3: "Beren,the King.", "Istar,the wizard.", "Haldir,the minstrel." and "Khadim,the dwarf.".
FD00 1
Number Of Items In The Players Inventory
Copied to Count_InventoryItems. The player starts holding 00 item(s).
FD01 50
Load/ Save Buffer
Copied to LoadSaveBuffer. Initial bytes for the configurable-exit save area.
FD33 1
Current Room ID
Copied to CurrentRoom. The player starts in room 03: In the Field.
FD34 2
Score
Copied to Score. BCD score starts at 00.
FD36 2
Pointer: Vocabulary Table
Copied to Pointer_Vocabulary. Points at the vocabulary table.
FD38 2
Pointer: Turn-Based Events Jump Table
Copied to Pointer_TurnBasedEvents_Jump. Initial image stores 00.
FD3A 2
Pointer: Room Map Table
Copied to Pointer_RoomMap.
FD3C 2
Pointer: Item Description Table
FD3E 2
Pointer: Rooms With Images Table
FD40 2
Pointer: Room Image Jump Table
Copied to Pointer_RoomImage.
FD42 2
Pointer: Room Description Table
FD44 2
Pointer: Item Grouping Table
FD46 2
Pointer: Object Noun Phrases
FD48 2
Pointer: Character Set
FD4A 2
Pointer: Verbs Jump Table
FD4C 2
Pointer: Configurable Exits Table
FD4E 2
Pointer: Scenic Events Jump Table
Copied to Pointer_JumpTable_ScenicEvents. Initial image stores 00.
FD50 2
Pointer: Verb Word Tokens Table
FD52 2
Pointer: Spare
Copied to Pointer_Spare. Unused; initial image stores 00.
FD54 2
Pointer: Spare 2
Copied to Pointer_Spare2. Unused; initial image stores 00.
FD56 2
Number Of Items
Copied to Count_Items.
FD58 2
Number Of Objects
Copied to Count_Objects.
FD5A 2
Number Of Verb Tokens
Copied to Count_VerbTokens.
FD5C 2
Number Of Rooms With Images
FD5E 2
Number Of Scenic Events
Copied to Count_ScenicEvents. Initial image stores 00.
FD60 2
Number Of "Configurable Exits"