Prev: 44741 Up: Map Next: 44778
44742: Walk The Saved Clause List
Used by the routines at InitialiseCharacterSearch and ProcessCharacterData.
Follows the clause list from 40944 until the pointer meets 40944+2 or bit 6 of the clause marker is clear.
WalkSavedClauseList 44742 PUSH IY Keep the previous clause record in IX.
44744 POP IX
44746 PUSH HL Call IncrementPointerAndCompare to step pointer and compare, saving pointer and the source.
44747 PUSH DE
WalkSavedClauseList_Loop 44748 PUSH IY
44750 POP DE
44751 LD IY,40944
44755 CALL IncrementPointerAndCompare
44758 PUSH IY Point HL at this clause record and DE at 40944+2 and clear the carry.
44760 POP HL
44761 LD DE,40946
44764 AND A
44765 SBC HL,DE See whether this pointer matches 40944+2.
44767 JR Z,WalkSavedClauseList_Next Jump ahead to WalkSavedClauseList_Next if the two pointers meet.
44769 BIT 6,(IY+1) Jump to WalkSavedClauseList_Loop if bit 6 of IY+1 is set.
44773 JR NZ,WalkSavedClauseList_Loop
WalkSavedClauseList_Next 44775 POP DE Restore the saved source and the saved pointer from the stack.
44776 POP HL
44777 RET Return.
Prev: 44741 Up: Map Next: 44778