Prev: 25845 Up: Map Next: 25917
25877: Process actions
Used by the routine at EXECUTE_CONDACTS.
PROCESS_ACTIONS 25877 INC BC
This entry point is used by the routine at ACTION_CLEAR.
PROCESS_ACTIONS_0 25878 LD A,(BC) A=action code
25879 CP 255 Have we reach end of action table?
25881 JP Z,PROCESS_RESPONSE_ENTRY If yes, process next response entry
25884 SET 4,(IY+8) Actions being processed
25888 LD D,0
25890 LD E,A E=action to be taken
25891 INC BC
25892 LD A,(BC) A=first parameter supplied to action
25893 PUSH HL
25894 LD HL,26652 HL=action routines table
25897 ADD HL,DE
25898 ADD HL,DE HL now points to address of action required
25899 LD E,(HL) E=LSB of action code
25900 INC HL
25901 LD D,(HL) D=MSB of action code
25902 PUSH DE Store action routine address on stack
25903 LD D,0
25905 LD E,A E=first parameter supplied to action
25906 LD HL,23333 HL=object location table
25909 ADD HL,DE HL now points at object location entry
25910 PUSH HL
25911 LD HL,23296 HL=flag table
25914 ADD HL,DE HL now points at flag entry
25915 POP DE DE now contains object location entry
25916 RET Pulls action routine address from the stack and executes it
Prev: 25845 Up: Map Next: 25917