Prev: 44198 Up: Map Next: 44283
44236: Handle A Class 160 Word
Skips class 160 tokens, saves the word pointer and this clause record, and carries on at the class 176 matcher (MatchWordAgainstEarlierClause). When the parser count at 40985+1 is 2 it sets bit 6 of the clause record first.
Input
E Flags (bit 3 is reset)
HandleClassAWord 44236 RES 3,E Run text token and save state.
44238 PUSH DE
HandleClassAWord_Loop 44239 CALL SaveTextPointer Jump back to HandleClassAWord_Loop if the character code is 160.
44242 CP 160
44244 JR Z,HandleClassAWord_Loop
44246 LD HL,(41001) Copy the word at SavedTextPointer into DisplayBytes.
44249 LD (43681),HL
44252 LD (41003),HL Store HL in the word at ActiveTextPointer.
44255 POP DE Store the low byte in the display byte at 43683.
44256 LD A,E
44257 LD (43683),A
44260 LD (43684),IY Store the record pointer at 43684.
44264 LD A,(40978) Remember whether pictures are enabled, in the display byte at 43686.
44267 LD (43686),A
44270 LD A,(40986) Jump to MatchWordAgainstEarlierClause if the parser is not 2.
44273 CP 2
44275 JR NZ,MatchWordAgainstEarlierClause
44277 SET 6,(IY+1) Set bit 6 of the clause record and jump to MatchWordAgainstEarlierClause.
44281 JR MatchWordAgainstEarlierClause
View the equivalent code in;
Prev: 44198 Up: Map Next: 44283