quill | Routines |
Prev: 25378 | Up: Map | Next: 25592 |
Used by the routine at START_TURN.
|
||||
NOUN_CHECK | 25518 | LD (IX+34),255 | Set noun to 'no noun' | |
NOUN_CHECK_0 | 25522 | LD A,(HL) | Get next character | |
25523 | INC HL | |||
25524 | CP 13 | Is it newline? | ||
25526 | JR Z,NOUN_CHECK_4 | If so, process verb only | ||
25528 | CP 32 | Is it space? | ||
25530 | JR NZ,NOUN_CHECK_0 | If not, process next character | ||
NOUN_CHECK_1 | 25532 | CALL LOOKUP_WORD | Lookup word in vocabulary (A contains id of word) | |
25535 | CP 0 | Was word found? | ||
25537 | JR NZ,NOUN_CHECK_2 | |||
25539 | DEC A | If no word found, set id to 255 | ||
NOUN_CHECK_2 | 25540 | LD (23330),A | Set current noun | |
25543 | CP 255 | Was word found? | ||
25545 | JR NZ,NOUN_CHECK_4 | If not, process words | ||
NOUN_CHECK_3 | 25547 | LD A,(HL) | ||
25548 | INC HL | |||
25549 | CP 32 | Is it space? | ||
25551 | JR Z,NOUN_CHECK_1 | If so, lookup word in vocab | ||
25553 | CP 13 | Is it newline? | ||
25555 | JR NZ,NOUN_CHECK_3 | If not, process next character | ||
NOUN_CHECK_4 | 25557 | LD HL,(27555) | HL = Address of connections table | |
25560 | LD BC,(23331) | BC = current location | ||
25564 | ADD HL,BC | |||
25565 | ADD HL,BC | Find connections entry for current location | ||
25566 | LD E,(HL) | E=LSB of connections entry | ||
25567 | INC HL | |||
25568 | LD D,(HL) | D=MSB of connections entry | ||
25569 | EX DE,HL | HL=address of connections entry | ||
This entry point is used by the routine at NOUN_CHECK_6.
|
||||
NOUN_CHECK_5 | 25570 | LD A,(HL) | Read direction | |
25571 | CP 255 | End of connections table | ||
25573 | JR Z,PROCESS_RESPONSE_TABLE | If so, skip to response processing | ||
25575 | CP (IX+33) | Does it match the curtent verb? | ||
25578 | JR NZ,NOUN_CHECK_6 | |||
25580 | INC HL | Point to destination location | ||
25581 | LD A,(HL) | A=destination location | ||
25582 | LD (23331),A | Set current location to A | ||
25585 | JP DESC_LOCATION | Describe location | ||
NOUN_CHECK_6 | 25588 | INC HL | ||
25589 | INC HL | Increment HL to point at next connection entry | ||
25590 | JR NOUN_CHECK_5 | Process next connection entry |
Prev: 25378 | Up: Map | Next: 25592 |