Prev: 1C4E Up: Map Next: 1C6C
1C56: THE 'FETCH A VALUE' SUBROUTINE
Used by the routines at CLASS_02 and READ_3.
This subroutine is used by LET, READ and INPUT statements to first evaluate and then assign values to the previously designated variable.
The main entry point is used by LET and READ and considers FLAGS, whereas the entry point VAL_FET_2 is used by INPUT and considers FLAGX.
Input
Output
VAL_FET_1 1C56 LD A,($5C3B) Use FLAGS.
This entry point is used by the routine at IN_ASSIGN with A holding the contents of FLAGX.
VAL_FET_2 1C59 PUSH AF Save FLAGS or FLAGX.
1C5A CALL SCANNING Evaluate the next expression.
1C5D POP AF Fetch the old FLAGS or FLAGX.
1C5E LD D,(IY+$01) Fetch the new FLAGS.
1C61 XOR D The nature - numeric or string - of the variable and the expression must match.
1C62 AND $40
1C64 JR NZ,REPORT_C Give report C if they do not.
1C66 BIT 7,D Jump forward to make the actual assignment unless checking syntax (in which case simply return).
1C68 JP NZ,LET
1C6B RET
Prev: 1C4E Up: Map Next: 1C6C