Prev: 40647 Up: Map Next: 40712
40662: Message: Choose The Noun Byte
Chooses which noun byte to print. A set 46851 prints the class token; otherwise the object's name tokens are printed.
Message_ChooseTheNounByte 40662 PUSH AF If 46851 is not zero then jump to Message_ChooseTheNounByte_PrintTheFirstWord.
40663 PUSH DE
40664 LD A,(46851)
40667 CP 0
40669 JR NZ,Message_ChooseTheNounByte_PrintTheFirstWord
40671 LD D,(IY+1) Read the high byte of the first name word.
40674 LD E,(IY+0) Read the low byte of the first name word.
40677 CALL Message_ChooseAClassToken Call Message_ChooseAClassToken to turn the class token into a word.
40680 LD E,(IY+2) Read the low byte of the second name word.
40683 LD D,(IY+3) Read the high byte of the second name word.
40686 CALL PrintToken Call PrintToken to print a dictionary token.
40689 LD E,(IY+4) Read the low byte of the third name word.
40692 LD D,(IY+5) Read the high byte of the third name word.
40695 CALL PrintToken Call PrintToken to print a dictionary token.
Message_ChooseTheNounByte_PrintTheFirstWord 40698 LD E,(IY+0) Read the low byte of the first name word.
40701 LD D,(IY+1) Read the high byte of the first name word.
40704 LD A,D If DE is not zero call Message_PrintTheClassToken.
40705 OR E
40706 CALL NZ,Message_PrintTheClassToken
40709 POP DE Restore DE and AF from the stack.
40710 POP AF
40711 RET Return.
View the equivalent code in;
Prev: 40647 Up: Map Next: 40712