![]() |
Routines |
| Prev: $176F | Up: Map | Next: $184E |
| $17E5 | DEC $FE | Decrement ERIC's action timer at $FE. | ||
| $17E7 | BNE $17EC | Branch unless it's zero now. | ||
| $17E9 | JMP $191F | Otherwise restore ERIC's animatory state to what it was before he threw the punch. | ||
| $17EC | LDA $FE | Pick up ERIC's action timer from $FE. | ||
| $17EE | CMP #$0C | Is it time to raise the fist to eye level? | ||
| $17F0 | BNE $17F5 | Branch if not. | ||
| $17F2 | JMP $2B47 | Raise ERIC's fist to eye level. | ||
| $17F5 | CMP #$0B | Is it time to check whether anyone was hit? | ||
| $17F7 | BNE $184D | Branch if not. | ||
| $17F9 | LDY $FB | Pick up ERIC's y-coordinate from $FB. | ||
| $17FB | LDA $26 | Pick up ERIC's animatory state from $26. | ||
| $17FD | ASL A | Is ERIC facing right? | ||
| $17FE | BCS $1808 | Branch if so. | ||
| $1800 | LDA $FC | Pick up ERIC's x-coordinate from $FC. | ||
| $1802 | SEC | Subtract 2 from it to get the x-coordinate of ERIC's fist. | ||
| $1803 | SBC #$02 | |||
| $1805 | JMP $180D | Jump forward. | ||
| $1808 | LDA $FC | Pick up ERIC's x-coordinate from $FC. | ||
| $180A | CLC | Add 2 to it to get the x-coordinate of ERIC's fist. | ||
| $180B | ADC #$02 | |||
| $180D | TAX | Transfer the x-coordinate of ERIC's fist to X. | ||
| $180E | JSR $27D2 | Did ERIC hit anyone? | ||
| $1811 | BCC $182F | Branch if not. | ||
| $1813 | CMP #$0F | Character number $0F is ANGELFACE. | ||
| $1815 | STA $C1 | Store the character number of ERIC's victim at $C1. | ||
| $1817 | BNE $181E | Branch unless ERIC hit ANGELFACE. | ||
| $1819 | LDA #$03 | Add 30 to the score and print it. | ||
| $181B | JSR $1D37 | |||
| $181E | JSR $33BF | Restore the character's buffer from page 0. | ||
| $1821 | LDA $60 | Pick up the current character number from $60 and copy it to $2F. | ||
| $1823 | STA $2F | |||
| $1825 | LDA $C1 | Pick up the character number of ERIC's victim from $C1 and copy it to $60. | ||
| $1827 | STA $60 | |||
| $1829 | JSR $3279 | Copy the victim's character buffer into page 0. | ||
| $182C | JSR $2A19 | Knock the victim to the floor. | ||
| $182F | LDA #$10 | Set voice #2 frequency to $1000. | ||
| $1831 | STA $D408 | |||
| $1834 | LDA #$00 | |||
| $1836 | STA $D407 | |||
| $1839 | LDA #$34 | Set voice #2 attack length to 24ms and decay length to 114ms. | ||
| $183B | STA $D40C | |||
| $183E | LDA #$00 | Set voice #2 sustain volume to 0 and release length to 6ms. | ||
| $1840 | STA $D40D | |||
| $1843 | LDA #$81 | Set voice #2 control register: voice on, attack-decay-sustain cycle; noise enabled. | ||
| $1845 | STA $D40B | |||
| $1848 | LDA #$0E | Lines reprimand $0E: DON'T HIT YOUR MATES. | ||
| $184A | JMP $1972 | Make any nearby teacher give ERIC lines. | ||
| $184D | RTS | |||
| Prev: $176F | Up: Map | Next: $184E |