![]() |
Routines |
| Prev: 64599 | Up: Map | Next: 64738 |
|
Used by the routine at 64338 to scroll the screen up and down a row 7 times when Sam hits the ground after being dropped from the roof of a building by a gangster.
|
||||
| 64618 | LD HL,59552 | Change the instruction at 59552 to RET | ||
| 64621 | LD (HL),201 | |||
| 64623 | LD L,220 | Change the instruction at 59612 to RET | ||
| 64625 | LD (HL),201 | |||
| 64627 | LD HL,59372 | Set the instruction at 59371 to 'LD BC,32' | ||
| 64630 | LD (HL),32 | |||
| 64632 | LD L,239 | Set the instruction at 59374 to 'LDIR' | ||
| 64634 | LD (HL),176 | |||
| 64636 | LD H,7 | We will scroll the screen up and down a row 7 times | ||
| 64638 | PUSH HL | Save the scroll counter | ||
| 64639 | LD HL,16384 | Save the top 8 rows of pixels on the screen in page 126 | ||
| 64642 | LD DE,32256 | |||
| 64645 | LD BC,32 | |||
| 64648 | LD A,8 | |||
| 64650 | LDIR | |||
| 64652 | INC H | |||
| 64653 | LD L,B | |||
| 64654 | LD C,32 | |||
| 64656 | DEC A | |||
| 64657 | JR NZ,64650 | |||
| 64659 | LD H,88 | Save the top row of attribute bytes (22528-22559) in the first 32 bytes of the screen refresh buffer at 32512 | ||
| 64661 | LDIR | |||
| 64663 | CALL 59528 | Scroll the screen up a row | ||
| 64666 | LD HL,20576 | Fill the top line of bytes on the 20th row of the screen with 9s; this is a bug | ||
| 64669 | LD B,32 | |||
| 64671 | LD (HL),9 | |||
| 64673 | INC L | |||
| 64674 | DJNZ 64671 | |||
| 64676 | POP HL | Restore the scroll counter (1-7) to H | ||
| 64677 | PUSH HL | Save the scroll counter again | ||
| 64678 | LD A,H | Prepare the sound effect parameters | ||
| 64679 | LD DE,384 | |||
| 64682 | LD C,192 | |||
| 64684 | CALL 64740 | Make a sound effect | ||
| 64687 | CALL 59587 | Scroll the screen down a row | ||
| 64690 | LD HL,32256 | Restore the top 8 rows of pixels on the screen from page 126 | ||
| 64693 | LD DE,16384 | |||
| 64696 | LD A,8 | |||
| 64698 | LD C,32 | |||
| 64700 | LDIR | |||
| 64702 | INC D | |||
| 64703 | LD E,B | |||
| 64704 | LD C,32 | |||
| 64706 | DEC A | |||
| 64707 | JR NZ,64700 | |||
| 64709 | LD D,88 | Restore the top row of attribute bytes (22528-22559) from where they were saved earlier | ||
| 64711 | LDIR | |||
| 64713 | POP HL | Restore the scroll counter (1-7) to H | ||
| 64714 | LD DE,256 | Prepare the sound effect parameters | ||
| 64717 | LD C,96 | |||
| 64719 | LD A,H | |||
| 64720 | CALL 64740 | Make a sound effect | ||
| 64723 | DEC H | Decrement the scroll counter | ||
| 64724 | JR NZ,64638 | Jump back until we've scrolled the screen up and down 7 times | ||
| 64726 | LD HL,59552 | Change the instruction at 59552 back to 'LD HL,32767' | ||
| 64729 | LD (HL),33 | |||
| 64731 | LD L,220 | Change the instruction at 59612 back to 'LD HL,32767' | ||
| 64733 | LD (HL),33 | |||
| 64735 | JP 64582 | Regenerate the table of mirrored values of 0-255 at 32256 | ||
| Prev: 64599 | Up: Map | Next: 64738 |