| The Hobbit (v1.0) | Routines |
| Prev: 806B | Up: Map | Next: 808A |
|
EXCEPT (or BUT) is only allowed straight after ALL ($B609=1). It sets $B609 to 2 and bit 7 of the current frame's verb, so that the command applies to everything except the objects that follow.
|
||||
| 8072 | LD A,($B609) | Is ALL actually in force? | ||
| 8075 | CP $01 | |||
| 8077 | JP NZ,$7FF3 | No: EXCEPT makes no sense here - syntax error | ||
| 807A | LD A,$02 | Yes: switch to ALL EXCEPT | ||
| 807C | LD ($B609),A | |||
| 807F | LD A,(IY+$01) | Mark the CURRENT frame's verb with the EXCEPT bit... | ||
| 8082 | OR $80 | |||
| 8084 | LD (IY+$01),A | ...so 7E6C knows any further noun phrases are exceptions, not extra targets | ||
| 8087 | JP $7C7E | Go back to reading the next word | ||
| Prev: 806B | Up: Map | Next: 808A |