Routines
Address
Description
23323
Game Entry Point Alias
23344
Tape Loader: Game
23435
Tape Loader: LD_BYTES
39420
Action: Print The Hurry And Catch Line
39429
Action: Set The State Mark And Say It Is Not Seen
39443
Action: Print The Sale Remark
39485
Action: Arm The Later Exit And Print Tomorrow
39499
Action: Print The Conclusion
39513
Action: Move Mrs Jones
39540
Mark Action Taken
39552
Action: Print Opening Text
39587
Read The Room Display Parameter
39717
Measure Character Distance
39760
Place Character Beside Match
39943
Search Pair Table
40003
Mark Object And Jump
40022
Set The Object Held Mark
40032
Clear The Object Held Mark
40042
Handler: Find Character Action
40055
Execute Character Action
40098
Character Action: Basil Phipps
40142
Check Object In Character Location
40169
Process Character Action With Text
40178
Process Character Action Parameter
40211
Character Action: Watson
40240
Character Action: Chief Constable Strak
40264
Character Action: First Local Police Man
40293
Store A Set Mark And Print The Police Line
40307
Character Action: Second Local Police Man
40341
Character Action: Inspector Lestrade Helper
40390
Print The Surprised Remark Once
40408
Store A Set Mark At The Pointer
40447
Character Action: Inspector Lestrade
40522
Check Character State
40544
Read Sherlock's Disguise
40556
Test The Police Flag
40564
Report Success
40583
Test The Busy Flag
40612
Test The Action-Taken Flag
40641
Character Action: Daphne Strachan
40651
Character Action: Cook
40657
Character Action: Gardener
40660
Read The Character Being Processed
40663
Read The Character Being Processed
40734
Update Character State And Location
40905
Print Text Token And Return
41024
Game Entry Point
41060
Run The Game Loop
41179
Check Character Schedule
41191
Load Or Save The Game
41195
Load The Game
41201
Save The Game
41207
Fetch Object Pointer From Stack
41220
Increment Pointer And Compare
41244
Allocate Memory
41354
Store That Byte In The Link Ahead
41391
Follow Record Pointer
41415
Process Memory Entry
41484
Calculate Pointer Offset
41565
Check Text Token Match
41591
Process Text Token
41622
Clear Display Lines
41634
Print Newline
41643
Clear Buffer
41649
Calculate Object Table Offset
41661
Extract Object Attributes
41700
Process Object Display
41824
Check And Reset Character State
41853
Process Object Display
42004
Print A Full Stop
42009
Shift The Text Pointer And Print A Space
42078
Print A Hyphen
42089
Print The Letter D
42102
Divide By Repeated Subtraction
42112
Print One Decimal Digit
42128
Print Hundreds, Tens And Units
42155
Point To Location Data Plus One
42172
Point To Object Attribute Byte
42189
Compare Location Data
42208
Leave Success For The Script
42267
Read The Script Position
42294
Wait For A Key With Timeout
42399
Print Text And Handle Control Characters
42435
Dispatch Looked-Up Handler
42436
Process Text Stream
42445
Process Text Command
42474
Mark Success For The Script
42482
Test For A Space
42554
Print This Character
42559
Choose The Line Break
42567
Print Character With Time Period
42570
Leave A Full Stop As The Result
42589
Process Text Token And Call Handler
42604
Fetch Next Text Token
42617
Step The Record By Its Length
42628
Continue At The Next Token
42683
Skip Text Token Based On Type
42707
Print A Random Alternative
42754
Read The Parser Workspace
42761
Print The Next Token
42769
Run A Text Token Entry
42784
Clear The Object Source
42788
Read The Character Being Processed
42796
Check The Room Display Parameter
42806
Print The Control Character
42811
Check The Room Graphics Parameter
42821
Process Location Data If Valid
42833
Process Object Attribute
42843
Print Text At An Offset
42865
Print The Token Text
42880
Pronoun For This Character
42894
Pronoun For The Room
42899
Describe This Character
42924
Describe The Displayed Room
42932
Describe The Next Token
42938
Check Object Attribute With Flag
42949
Check Object Has Special Description
42960
Check Token Match And Set Flag
42987
Print Token Based On Parameters
43022
Process Text Token With Attributes
43029
Read The High Byte Of The Token
43055
Process Object Or Print Token
43066
Get Common Word And Process
43072
Get Common Word
43090
Toggle Lowercase Handling
43136
Extract Token From Text
43143
Print A Dictionary Word
43311
Process Text Token Format
43341
Handle Nested Format Processing Recursive Call
43355
Process Format Data Byte
43408
Rotate And Extract Character Code
43447
Print Character
43540
Print One Character And Remember The Line
43698
Prepare Character For Display
43709
Force The Display Marker On
43716
Choose The Display Path From The Initialised Flag
43729
Start Picture Mode When The Screen Is Idle
43852
Read Object Processing Flag
43858
Copy Display If Needed
43921
Check Display Mode
44019
Match Character Pair
44068
Clear Co-ordinate Buffer
44175
Point At The Picture Origin
44180
Read The Next Coordinate Pair
44198
Copy Display Data To Display Buffer
44236
Handle A Class 160 Word
44283
Apply The Saved Clause
44375
Match A Class 176 Word
44633
Copy Display Data If Zero
44650
Initialise Character Data Structure
44671
Save Text Pointer
44713
Follow Character Link
44726
Step To The Next Clause Record
44741
Step Through The Saved Clause List
44742
Walk The Saved Clause List
44778
Initialise Character Search
44785
Merge Character Flags
44839
Read The Schedule Field
44856
Copy Schedule Entry
44882
Set Copy Length 10
44886
Set Copy Length 2
44888
Copy Bytes For The Given Length
44979
Search Command Handler Table
45025
Check Bit And Jump
45032
Test Bit 1 Of The Source
45050
Remember The Display Page
45055
Save Display State
45067
Clear The Display Lines
45074
Record The Result In The Input Flag
45084
Step Display State
45107
Step Display State When Parser Clear
45129
Link Character When Flagged
45210
Wait For A Key
45219
Reset Clock
45228
Initialise Character Timer
45254
Start A Fresh Script Cycle
45271
Load Game State
45284
Save Game State
45294
Calculate Location Offset
45309
Process Character Data
45365
Set Display Mode 2
45375
Follow Link When Flagged
45393
Select Picture Mode Alternate
45403
Initialise When Flagged
45457
Initialise Display Buffer
45791
Read The Room Graphics Parameter
45832
Read The Display Setup Flag
45869
Read The Secondary Display Flag
45903
Report An Empty Display Step
45931
Report The Next Empty Display Step
45959
Read The Object Attribute
45981
Process Display Pointer
46085
Swap The Object Display Pointers
46184
Copy Six Display Bytes
46211
Copy The Character Into The Display
46240
Dispatch Looked-Up Handler
46243
Check Flag And Set Display
46273
Find The First Noun
46333
Process Display Pointer
46359
Check And Process Objects
46410
Check Flag And Set Display Parameter
46440
Match The Second Noun
46500
Test For The End Marker
46518
Unlink The Next Display Record
46639
Select Jump If Zero
46643
Select Jump If Not Zero
46810
Process Display Entry
46821
Print Object Message
46832
Process Display Entry Alternate
46845
Process Location Display
46962
Read Dictionary High Nibble
46975
Process Text Token Stream
47164
Restore The Saved Character Record
47210
Follow The Link Pointer
47274
Read The Pointer At The First Display
47374
Read The Object Attribute
47391
Check The Character Being Processed
47414
Process Script Display
47562
Copy The Link Ahead Of This Record
47610
Copy Pointer To Stack
47648
Process Character Display
47678
Record The Result In The Character Script
47942
Save The Object State
47964
Read The Action Flags
48101
Print Text Based On Flag
48161
Check Object Attribute
48198
Process Game Status Entries
48244
Process Game Status Entries With Counter
48284
Process Game Status Entries Alternate
48329
Check Bit And Process
48390
Process Object Pointer
48459
Set Object Table Pointer
48465
Search Object Table
48469
Read The Record Flag
48489
See Whether It Matches The Moved Marker
48510
Calculate Object Pointer Offset
48578
Point The Object List At This Room
48674
Copy The Object Picture Link
48700
Read The Next Object On The Display List
48715
Read The Next Object On The Saved List
48730
Advance Pointer And Check Bit
48754
Process Entry With Counter
48785
Test The Action Taken Flag
48904
Check Bit And Process Entry
48924
Process Text Token Entry
48965
Process Text Token Data
49017
Handler: Date Bar
49060
Convert Number To ASCII
49066
Store It In The Record Flag
49072
Convert Number To String
49083
Make One Decimal Digit
49094
Populate Day Of The Week
49113
Handler: Game Clock
49164
Get Time Period
49211
Check Input Port
49216
Save Game
49289
Load The Saved Game Block
49375
Load Game
49423
Clear Screen
49449
Initialise Screen Display
49474
Reset Screen Display
49482
Draw Decorative Line
49576
Print Date Bar
49600
Print String And Wait For Keypress
49611
Print String
49624
Error: Out Of Memory
49633
Check TV Flag And Process
49660
Process Character Input
49661
Read The Pointer At The Storage Decorative
49709
Record The Result In The Storage Decorative
49728
Validate Keypress
49737
Handle Backspace Key
49767
Subtract Seven
49777
Scroll Screen Up
49805
Print A Row Of Spaces
49820
Scroll Screen Down
49850
Process Screen Character
49926
Scroll Screen And Reset Display
49942
Update Screen Display
50045
Advance Screen Position
50056
Print Character
50148
Redraw The Screen When Input Is Waiting
50179
Set The Printer Motor Speed Via Port 251
50197
Wait For Keypress
50207
Get Keypress
50270
Check Display Parameter
50275
Read The Display Mode
50323
Check Display Flag Bits 3 And 7
50354
Check Display Flag Bits 2 And 6
50385
Process Display Action
50498
Accept The Graphics Parameter
50522
Record The Result In The Room Graphics
50528
Record The Result In The Room Graphics
50545
Copy The Record Flag Nibble
50554
Copy The Record's Value Nibble
50563
Look Up The Display Record For The Moved Marker
50577
Process Display Record From Script
50684
Accept A Set Graphics Parameter
50701
Record The Result In The Room Graphics
50707
Record The Result In The Room Graphics
50728
Test The Character Field Of The Display Record
50878
Test The Graphics Field Of The Display Record
51022
Read The Object Attribute
51043
Read The High Byte Of The Source
51110
Test For The Seventh Marker
51233
Check Object Location Match
51299
Get Object Location
51310
Check Object Mother
51358
Exchange The Character Record With The Schedule
51367
Get Object Attribute
51375
Get Object Mother ID
51390
Test Object Has Special Description
51398
Process Object Attribute
51439
Set Object Pointers
51497
Process Object Display Logic
51593
Process Object Display With Pointer
51606
Process Object Display Entry
51647
Process Display Record
51830
Read The Saved Character
51839
Read The Character Timetable
51870
Dispatch On The Schedule Marker
51887
Process Object Display Entry
52012
Run Display Record Code
52020
Run Handler Keeping Pointers
52032
Dispatch Looked-Up Handler
52035
Process Display With Location Check
52056
Select Sherlock After Clearing The Parser
52071
Report Success
52091
Get Display Address Based On Flag
52135
Check Flag And Jump To Newline
52162
Process Character Display
52238
Find Character
52265
Set Character Pointer And ID
52279
Process Character Action
52314
Read The Character Timetable
52344
Script Interpreter
52354
Dispatch The Character Script
52619
Terminate Character Script
52625
Terminate Character Script
52629
Print The Command Message
52641
Show The Room Description
52671
Record The Result In The Room Display
52760
Read The Character's Room
52795
Handle Room Display
52815
Clear Room Display Parameters
52823
Read The Character's Room
52842
Run A Simple Action
52867
Get Current Script State
52879
Continue Script Execution
52920
Process Script Command With Counter
52958
Process Room Display Parameter
52990
Advance Script Pointer By Command Size
52995
Advance By Command Type
53056
Step To The Next Byte
53059
Clear Script Command Flags
53107
Clear The Record Flag
53113
Clear The Record Flag
53120
Allocate Memory And Store Character
53174
Find Character Script Entry
53177
Walk The Character Script Entries
53199
Get Script Pointer
53256
Get Script Pointer From Timetable
53286
Update Script Pointer
53317
Is Sherlock Wearing The China Man Disguise?
53327
Adjust Object Table For Sum
53368
Check Object Visibility
53456
Write Token To Buffer
53469
Process Location Token
53506
Process Location Token Display
53523
Describe The Current Room
53624
Read The Count
53634
Print The Set Message
53639
Print The Location Text
53682
Process Object Display With Check
53702
Record The Result In The Object Processing
53723
Jump To Handler
53724
Calculate Handler Offset
53766
Fetch Next Object
53788
Fetch Next Object With ID
53796
Fetch Location Data Pointer
53815
Fetch Object Data Pointer
53833
Process Object Location Recursively
53868
Look Up The Room Display Parameter
53877
Check Character ID Range
53880
Test For The End Marker
53896
Look Up Object And Test Moved Marker
53917
Get Character Attribute
53924
Random Number
53933
Scale The Roll
53997
Start The Attribute Count
54002
Get Object Attribute Value
54005
Count The Matching Attributes
54021
Scan Objects For This Id
54076
Fetch Current Character Location
54089
Search Two-Byte Length Table
54094
Search Three-Byte Length Table
54097
Search The Table
54122
Process Object Entry
54171
Process Object Entry Alternate
54229
Take The Found Object
54248
Check Object Has Special Description
54277
Check Object Attribute With Flag
54294
Read The Schedule Field
54311
Read The Schedule Field
54344
Read The Character's Room
54380
Find Object By Field One
54385
Find Object By Field Two
54388
Find Object By Field
54421
Get Object First Location
54439
Print Object List
54476
Count Objects In Location
54511
Check Object Match Criteria
54554
Print Object List With Formatting
54566
Print Formatted Object List
54652
Find Next Matching Object
54653
Find The Next Matching Object
54672
Print Object Description
54739
Print Object Attribute Description
54767
Get Location Exit Data
54779
Get Direction Token
54791
Read The Room Graphics Link
54795
Print Location Exits
54897
Find Next Valid Exit
54924
Print Location Exits With Formatting
54977
Parse Input
55349
Release The Next Display Record
55387
Record A Parser Failure
55421
Read First Display Link
55434
Read Next Display Link
55448
Read Command Line
55469
Read A Command Line
55644
Leave A Quote As The Result
55656
Test For A Full Stop
55672
Map The Cursor Keys
55710
Ignore Input Until The Game Has Started
55735
Delete Input Character
55749
Skip Spaces In The Input
55860
Find The Dictionary Entry For This Token
55933
Match The Dictionary Word
56006
Test For A Common Word
56040
Test For A Digit
56047
Parse A Time
56150
Test For A Full Stop
56153
Test For A Comma
56196
Start A Number
56311
Parse An Input Number
56428
Check Character ID
56461
Copy The Saved Character Id
56487
Apply The Room Display Parameter
56541
Read The Schedule Entry From The Current Character
56583
Read Matched Character Room
56587
Compare Current Character
56590
Match The Character And Store Its Room
56629
Describe Object If Present
56904
Scale The High Byte By Sixty
56928
Measure The Gap Between The Two Pointers
56996
Set Bit Five Of The Current Object
57014
Clear Bit Five Of The Current Object
57025
Store The Character Attribute
57060
Combine The Result With The Character's Room
57179
Print Object Description Text
57292
Special Case Object 6
57402
Place Character
57581
Set The Held Mark
57599
Set The Other Held Mark
57681
Lookup And Print Display Text
57723
Dispatch Room Graphics
57852
Print The Line About You
57857
Test For The End Marker
57863
Find The Response For This Id
57997
Test This Character Against The Room
58094
Record The Result In The Room Display
58191
Read The Character's Text Pointers
58255
Store The Shifted Text Pointer
58268
Read The Text Pointer's Low Byte
58281
Read The Source At The Display Pointer
58357
Check The Character For Room Graphics
58619
Dispatch Looked-Up Handler
58640
Store The Result In The High Byte
58720
Find The Character On The Saved Pointer
58764
Copy The Clock Link
58819
Look Up The Current Object
58905
Scan Objects
59014
Reject Low Character Attribute
59025
Process Character Attribute
59114
Store The Action Flags
59126
Compare The Character With The Room
59152
Print The Action Message
60152
Copy The Character Onto Both Records
60179
Point At The First Character
60187
Point At The Other Character
60731
Set Bit Six Of The Current Object
61342
Set The Print Flag And Print
61358
Print This Handler's Message
61365
Store The Character's Text Pointer
61385
Match Sherlock Disguise
61701
Set Bit 1 Of The Indexed Character
61853
Reject A Lower Character Id
61866
Print The Lower-Id Message
61889
Update Object Location
61910
Action: Room And Character Flags
62345
Compare The Room Parameters
62402
Drawing
62608
Drawing Fill
62733
Keep Only The Bits That Are Set
62740
Attribute Up
62757
Attribute Down
62774
Attribute Left
62784
Attribute Right
62794
Step Pen Up
62805
Step Pen Down
62814
Step Pen Right
62821
Step Pen Left
62830
Drawing Line
62930
Plot A Pixel
62971
Pixel Address