![]()  | 
Routines | 
| Prev: 24503 | Up: Map | Next: 24891 | 
| 
 
Used by the routine at 28039.
 
 | 
||||
| 24545 | LD HL,24366 | Increase 1UP_Lives by one. | ||
| 24548 | INC (HL) | |||
| 24549 | CALL 28669 | Call 28669. | ||
| 
 
This entry point is used by the routine at 26820.
 
 | 
||||
| 24552 | LD A,(24365) | A=1UP_Level. | ||
| 24555 | INC A | |||
| 24556 | RET Z | |||
| 24557 | CALL CreateWindow | Call CreateWindow. | ||
| 24560 | CALL 24599 | Call 24599. | ||
| 24563 | CALL 29560 | Call 29560. | ||
| 
 
Self modifying code; this updates the command at 29973 to "CP 26".
 
 | 
||||
| 24566 | LD A,26 | Write 26 to 29974. | ||
| 24568 | LD (29974),A | |||
| 24571 | LD A,(23672) | Write FRAMES to LastFrame. | ||
| 24574 | LD (24354),A | |||
| 24577 | RET | Return. | ||
| 24578 | LD A,B | A=B. | ||
| 24579 | EXX | Switch to the shadow registers. | ||
| 24580 | LD C,A | Create an offset in BC'. | ||
| 24581 | LD B,0 | |||
| 24583 | LD HL,24593 | Calculate the address using the offset and 24593. | ||
| 24586 | ADD HL,BC | |||
| 24587 | LD A,(HL) | Write the data from the offset to 24359. | ||
| 24588 | LD (24359),A | |||
| 24591 | EXX | Switch to the normal registers. | ||
| 24592 | RET | Return. | ||
| 24593 | DEFB 0,67,70,66,68,70 | |||
| 
 
The pantry is constructed like it is a font.
 
 | 
||||
| 24599 | LD HL,(23606) | Stash CHARS on the stack. | ||
| 24602 | PUSH HL | |||
| 24603 | LD HL,31562 | Write CupboardGraphic to CHARS. | ||
| 24606 | LD (23606),HL | |||
| 24609 | LD A,(24365) | A=1UP_Level. | ||
| 24612 | AND %00000111 | Keep only bits 0-2. | ||
| 24614 | LD B,A | Store the result in B. | ||
| 24615 | LD A,32 | A=32. | ||
| 24617 | JR Z,24623 | |||
| 24619 | SRL A | |||
| 24621 | DJNZ 24619 | |||
| 24623 | LD (24362),A | |||
| 24626 | LD DE,24891 | DE=CupboardData. | ||
| 24629 | LD HL,4304 | HL=4304. | ||
| 24632 | CALL PrintString | Call PrintString. | ||
| 24635 | EXX | |||
| 24636 | INC DE | |||
| 24637 | LD HL,6352 | |||
| 24640 | CALL PrintString | |||
| 24643 | EXX | |||
| 24644 | LD HL,8400 | |||
| 24647 | INC DE | |||
| 24648 | LD B,5 | |||
| 24650 | CALL 24765 | |||
| 24653 | DJNZ 24650 | |||
| 24655 | LD DE,24941 | |||
| 24658 | LD HL,39120 | |||
| 24661 | CALL PrintString | |||
| 24664 | LD DE,24948 | |||
| 24667 | LD HL,8400 | |||
| 24670 | LD B,5 | |||
| 24672 | CALL 24578 | |||
| 24675 | CALL 24829 | |||
| 24678 | DJNZ 24672 | |||
| 24680 | LD HL,40960 | |||
| 24683 | LD DE,24984 | |||
| 24686 | LD C,4 | |||
| 24688 | LD A,32 | |||
| 24690 | CALL 24802 | |||
| 24693 | LD DE,25112 | |||
| 24696 | LD HL,40960 | |||
| 24699 | LD C,4 | |||
| 24701 | CALL 24740 | |||
| 24704 | POP HL | |||
| 24705 | LD (23606),HL | |||
| 24708 | LD B,0 | |||
| 24710 | CALL 27784 | |||
| 24713 | LD A,(24368) | |||
| 24716 | LD C,A | |||
| 24717 | RRA | |||
| 24718 | RRA | |||
| 24719 | RRA | |||
| 24720 | RRA | |||
| 24721 | AND 15 | |||
| 24723 | ADD A,48 | |||
| 24725 | LD HL,20732 | |||
| 24728 | CALL PrintScreen | |||
| 24731 | LD A,C | |||
| 24732 | AND 15 | |||
| 24734 | ADD A,48 | |||
| 24736 | CALL PrintScreen | |||
| 24739 | RET | |||
| 24740 | LD A,(24360) | |||
| 24743 | LD B,A | |||
| 24744 | PUSH HL | |||
| 24745 | PUSH BC | |||
| 24746 | CALL AttributeAddress | |||
| 24749 | POP BC | |||
| 24750 | LD A,(DE) | |||
| 24751 | LD (HL),A | |||
| 24752 | INC HL | |||
| 24753 | INC DE | |||
| 24754 | DJNZ 24750 | |||
| 24756 | POP HL | |||
| 24757 | LD A,H | |||
| 24758 | ADD A,8 | |||
| 24760 | LD H,A | |||
| 24761 | DEC C | |||
| 24762 | JR NZ,24740 | |||
| 24764 | RET | |||
| 24765 | PUSH BC | |||
| 24766 | PUSH DE | |||
| 24767 | LD A,B | |||
| 24768 | RLCA | |||
| 24769 | RLCA | |||
| 24770 | RLCA | |||
| 24771 | AND 56 | |||
| 24773 | OR 71 | |||
| 24775 | LD (24782),A | |||
| 24778 | LD A,(24362) | |||
| 24781 | RLC B | |||
| 24783 | JR Z,24792 | |||
| 24785 | PUSH HL | |||
| 24786 | LD HL,18 | |||
| 24789 | ADD HL,DE | |||
| 24790 | EX DE,HL | |||
| 24791 | POP HL | |||
| 24792 | LD C,3 | |||
| 24794 | LD A,6 | |||
| 24796 | CALL 24802 | |||
| 24799 | POP DE | |||
| 24800 | POP BC | |||
| 24801 | RET | |||
| 24802 | LD (24360),A | |||
| 24805 | LD A,(24360) | |||
| 24808 | LD B,A | |||
| 24809 | PUSH HL | |||
| 24810 | CALL ScreenAddress | |||
| 24813 | LD A,(DE) | |||
| 24814 | CALL PrintScreen | |||
| 24817 | INC DE | |||
| 24818 | DJNZ 24813 | |||
| 24820 | POP HL | |||
| 24821 | LD A,H | |||
| 24822 | ADD A,8 | |||
| 24824 | LD H,A | |||
| 24825 | DEC C | |||
| 24826 | JR NZ,24805 | |||
| 24828 | RET | |||
| 24829 | PUSH BC | |||
| 24830 | PUSH DE | |||
| 24831 | LD A,B | |||
| 24832 | RLCA | |||
| 24833 | RLCA | |||
| 24834 | RLCA | |||
| 24835 | AND 56 | |||
| 24837 | OR 71 | |||
| 24839 | LD (24846),A | |||
| 24842 | LD A,(24362) | |||
| 24845 | BIT 0,A | |||
| 24847 | JR Z,24856 | |||
| 24849 | PUSH HL | |||
| 24850 | LD HL,18 | |||
| 24853 | ADD HL,DE | |||
| 24854 | EX DE,HL | |||
| 24855 | POP HL | |||
| 24856 | LD C,3 | |||
| 24858 | LD B,6 | |||
| 24860 | PUSH HL | |||
| 24861 | PUSH BC | |||
| 24862 | CALL AttributeAddress | |||
| 24865 | POP BC | |||
| 24866 | LD A,(DE) | |||
| 24867 | AND A | |||
| 24868 | CALL Z,24887 | |||
| 24871 | LD (HL),A | |||
| 24872 | INC DE | |||
| 24873 | INC HL | |||
| 24874 | DJNZ 24866 | |||
| 24876 | POP HL | |||
| 24877 | LD A,H | |||
| 24878 | ADD A,8 | |||
| 24880 | LD H,A | |||
| 24881 | DEC C | |||
| 24882 | JR NZ,24858 | |||
| 24884 | POP DE | |||
| 24885 | POP BC | |||
| 24886 | RET | |||
| 24887 | LD A,(24359) | |||
| 24890 | RET | |||
| Prev: 24503 | Up: Map | Next: 24891 |