quill | Routines |
Prev: 25640 | Up: Map | Next: 25712 |
Used by the routine at PROCESS_ENTRY_MATCH.
|
||||
EXECUTE_CONDACTS | 25672 | INC HL | ||
25673 | LD C,(HL) | C=LSB of CondActs entry | ||
25674 | INC HL | |||
25675 | LD B,(HL) | B=MSB of CondActs entry | ||
25676 | INC HL | HL points at next process table entry | ||
This entry point is used by the routine at COND_NOTZERO.
|
||||
NEXT_COND | 25677 | LD A,(BC) | A=condition | |
25678 | CP 255 | End of conditions? | ||
25680 | JP Z,PROCESS_ACTIONS | If so, process actions | ||
25683 | LD D,0 | |||
25685 | LD E,A | DE=condition to check | ||
25686 | INC BC | BC=address of parameter | ||
25687 | LD A,(BC) | A=parameter | ||
25688 | PUSH HL | |||
25689 | LD HL,25845 | HL=Condition routines table | ||
25692 | ADD HL,DE | |||
25693 | ADD HL,DE | Calculate table entry | ||
25694 | LD E,(HL) | E=LSB of condition to execute | ||
25695 | INC HL | |||
25696 | LD D,(HL) | D=MSB of condition to execute | ||
25697 | PUSH DE | Store address of routine on stack | ||
25698 | LD D,0 | |||
25700 | LD E,A | |||
25701 | LD HL,23333 | HL=object location table | ||
25704 | ADD HL,DE | If parameter refers to an object, this is the object location entry | ||
25705 | PUSH HL | Store object location pointer onto stack | ||
25706 | LD HL,23296 | HL=flag table | ||
25709 | ADD HL,DE | HL=flag entry, if this parameter refers to a flag | ||
25710 | POP DE | DE=object location entry calculated earlier | ||
25711 | RET | Will execute condition |
Prev: 25640 | Up: Map | Next: 25712 |