Prev: 77C9 Up: Map Next: 7809
77D1: Parse a noun
Used by the routine at PARSE_PREPOSITION.
PARSE_NOUN 77D1 LD HL,PHRASE_NOUN The noun into PHRASE
77D4 LD (HL),C
77D5 INC HL
77D6 LD (HL),B
This entry point is used by the routine at PARSE_PREPOSITION.
AS_NOUN 77D7 LD D,$50
77D9 LD A,(ALL_EXCEPT) In mode 2, after ALL EXCEPT...
77DC CP $02
77DE JR NZ,PARSE_NOUN_2
77E0 LD HL,(PHRASE_PREPOSITIONS) ...with no preposition...
77E3 LD A,H
77E4 OR L
77E5 JR NZ,PARSE_NOUN_1
77E7 BIT 6,(IY+$19) ...the noun goes into the frame below, cleared first if need be...
77EB JR NZ,PARSE_NOUN_0
77ED LD BC,$FFE8
77F0 ADD IY,BC
77F2 CALL CLEAR_FRAME
PARSE_NOUN_0 77F5 CALL FILE_FIRST_PHRASE ...as its first phrase, and that frame is marked with $40 in its verb's second byte
77F8 LD (IY+$01),$40
77FC JP NEW_NOUN_PHRASE
PARSE_NOUN_1 77FF CALL NEW_SENTENCE_FRAME Not yet worked out
PARSE_NOUN_2 7802 CALL FILE_PHRASE File the phrase; on to the next word unless that failed
7805 JP Z,NEW_NOUN_PHRASE
7808 RET
Prev: 77C9 Up: Map Next: 7809