Prev: 7288 Up: Map Next: 72BA
728C: Message interpreter control-code jump table
Addresses of the handlers for message control codes $00 to $16, used by 72D4:
Code Handler Meaning
$00 735E print the object whose address the caller pushed on the stack
$01 736D print the word the caller pushed on the stack
$02 7375 jump forwards or backwards by the signed byte that follows
$03 7384 print the noun of the instrument in the current command ($B5ED)
$04 738B print the pushed word with an article (a/an/the/some)
$05, $0A, $0F, $12 7382 do nothing
$06 739A print the actor's name
$07 73A6 print the target with its article
$08 73B4 print a backspace (to join a word to the previous one)
$09 73B9 print the instrument with its article
$0B 73D7 call a sub-message at a relative address
$0C 73F0 print HIS or YOUR for the actor
$0D 72BA new line
$0E 73FE print HIS or YOUR for the target
$10 7403 print the actor's name and IS or ARE
$11 741C the same for the target
$13 7424 the same for an object pushed on the stack
$14 7337 end the message with a new line
$15 733B end the message with a full stop and a new line
$16 7352 end the message
The IS/ARE and HIS/YOUR codes are what let one message serve both the player and the characters: 'you are dead' and 'thorin is dead' are the same message.
728C DEFW $735E Handlers for codes $00-$16
728E DEFW $736D
7290 DEFW $7375
7292 DEFW $7384
7294 DEFW $738B
7296 DEFW $7382
7298 DEFW $739A
729A DEFW $73A6
729C DEFW $73B4
729E DEFW $73B9
72A0 DEFW $7382
72A2 DEFW $73D7
72A4 DEFW $73F0
72A6 DEFW $72BA
72A8 DEFW $73FE
72AA DEFW $7382
72AC DEFW $7403
72AE DEFW $741C
72B0 DEFW $7382
72B2 DEFW $7424
72B4 DEFW $7337
72B6 DEFW $733B
72B8 DEFW $7352
Prev: 7288 Up: Map Next: 72BA