Prev: 60810 Up: Map Next: 60910
60847: Advance Input Pointer
Used by the routines at JumpTable and ScanInputSpaces.
Jump-table target JumpTable_AdvanceInputPointer: advance InputBuffer_TokenStart / InputBuffer_NextToken through InputBuffer. Skips a leading THE via Token_THE, then leaves ParserState_TokenDelimiter holding the delimiter that ended the token.
AdvanceInputPointer 60847 LD HL,(23463) Fetch the current token and compare it with end-of-line.
60850 LD A,(HL)
60851 CP 13
60853 RET Z Return if the current token is already at end-of-line.
60854 LD HL,(23465) Promote InputBuffer_NextToken to InputBuffer_TokenStart and test for an empty token.
60857 LD (23463),HL
60860 LD A,(HL)
60861 LD (23467),A
60864 CP 13
60866 RET Z Return if that token is empty.
AdvanceInputPointer_Scan 60867 INC HL Jump to AdvanceInputPointer_Store at end-of-line or a quote.
60868 LD A,(HL)
60869 CP 13
60871 JR Z,AdvanceInputPointer_Store
60873 CP 34 Jump to AdvanceInputPointer_Store on a quote.
60875 JR Z,AdvanceInputPointer_Store
60877 CP 32 Keep scanning until a space.
60879 JR NZ,AdvanceInputPointer_Scan
AdvanceInputPointer_SkipSpaces 60881 INC HL Skip any run of spaces.
60882 LD A,(HL)
60883 CP 32
60885 JR Z,AdvanceInputPointer_SkipSpaces
AdvanceInputPointer_Store 60887 LD (23468),A Store the delimiter and next-token pointer; require 3 matching characters for "THE".
60890 LD (23465),HL
60893 LD A,3
60895 LD (23460),A
60898 LD HL,(23463) Skip a leading "THE" via Token_THE.
60901 LD DE,64420
60904 CALL CompareTokenToWord
60907 JR NC,AdvanceInputPointer
60909 RET Return if "THE" was not skipped.
Prev: 60810 Up: Map Next: 60910