Prev: ACA6 Up: Map Next: ACFB
ACCC: Handle A Class A0 Word
Skips class A0 tokens, saves the word pointer and this clause record, and carries on at the class B0 matcher (MatchWordAgainstEarlierClause). When the parser count at A019+01 is 02 it sets bit 6 of the clause record first.
Input
E Flags (bit 3 is reset)
HandleClassAWord ACCC RES 3,E Run text token and save state.
ACCE PUSH DE
HandleClassAWord_Loop ACCF CALL SaveTextPointer Jump back to HandleClassAWord_Loop if the character code is A0.
ACD2 CP $A0
ACD4 JR Z,HandleClassAWord_Loop
ACD6 LD HL,($A029) Copy the word at SavedTextPointer into DisplayBytes.
ACD9 LD ($AAA1),HL
ACDC LD ($A02B),HL Store HL in the word at ActiveTextPointer.
ACDF POP DE Store the low byte in the display byte at AAA3.
ACE0 LD A,E
ACE1 LD ($AAA3),A
ACE4 LD ($AAA4),IY Store the record pointer at AAA4.
ACE8 LD A,($A012) Remember whether pictures are enabled, in the display byte at AAA6.
ACEB LD ($AAA6),A
ACEE LD A,($A01A) Jump to MatchWordAgainstEarlierClause if the parser is not 02.
ACF1 CP $02
ACF3 JR NZ,MatchWordAgainstEarlierClause
ACF5 SET 6,(IY+$01) Set bit 6 of the clause record and jump to MatchWordAgainstEarlierClause.
ACF9 JR MatchWordAgainstEarlierClause
View the equivalent code in;
Prev: ACA6 Up: Map Next: ACFB