Prev: 26699 Up: Map Next: 26861
26707: Routine at 6853
Used by the routine at 26624.
26707 LD IX,26839 IX=26839.
Fetch the source address.
26711 LD L,(IX+0) L=*IX+0.
26714 LD H,(IX+1) H=*IX+1.
Check for the terminator.
26717 LD A,H Return if HL is zero.
26718 OR L
26719 RET Z
26720 LD C,(IX+2) C=*IX+2.
26723 SRL C Shift C right.
Fetch the destination address.
26725 LD E,(IX+3) E=*IX+3.
26728 LD D,(IX+4) D=*IX+4.
26731 LD A,1 A=1.
26733 LD (26789),A Write A to *26789.
26736 SRL C Shift C right.
26738 PUSH BC Stash BC on the stack.
26739 CALL C,26763 Call 26763 is lower.
26742 POP BC Restore BC from the stack.
26743 LD A,C A=C.
26744 AND A Jump to 26756 if A is zero.
26745 JR Z,26756
26747 LD A,(26789) A=*26789.
26750 INC A Increment A by one.
26751 LD (26789),A Write A to *26789.
26754 JR 26736 Jump to 26736.
26756 LD DE,5 DE=0005.
26759 ADD IX,DE IX+=DE.
26761 JR 26711 Jump to 26711.
26763 PUSH HL Stash HL on the stack.
26764 LD A,(HL) A=*HL.
26765 LD (26778),A Write A to *26778.
26768 INC A Increment A by one.
26769 LD (DE),A Write A to *DE.
26770 INC HL Increment HL by one.
26771 INC DE Increment DE by one.
26772 LD A,(HL) A=*HL.
26773 LD (DE),A Write A to *DE.
26774 INC HL Increment HL by one.
26775 INC DE Increment DE by one.
26776 EX AF,AF' Exchange the AF register with the shadow AF register.
26777 LD B,4 B=0.
26779 PUSH BC Stash BC and DE on the stack.
26780 PUSH DE
26781 LD A,(HL) A=*HL.
26782 INC HL Increment HL by one.
26783 LD E,(HL) E=*HL.
26784 INC HL Increment HL by one.
26785 LD D,0 D=0.
26787 LD C,D C=D.
26788 LD B,4 B=0.
26790 SRL E Shift E right.
26792 RR D Rotate D right.
26794 SRL A Shift A right.
26796 RR C Rotate C right.
26798 DJNZ 26790 Decrease counter by one and loop back to 26790 until counter is zero.
26800 LD B,A B=A.
26801 LD A,D A=D.
26802 LD (26825),A Write A to *26825.
26805 LD A,E A=E.
26806 LD (26816),A Write A to *26816.
26809 POP DE Restore DE from the stack.
26810 LD A,(DE) A=*DE.
26811 OR B Set the bits from B.
26812 LD (DE),A Write A to *DE.
26813 INC DE Increment DE by one.
26814 LD A,(DE) A=*DE.
26815 OR %00000000 Set bits .
26817 LD (DE),A Write A to *DE.
26818 INC DE Increment DE by one.
26819 LD A,(DE) A=*DE.
26820 OR C Set the bits from C.
26821 LD (DE),A Write A to *DE.
26822 INC DE Increment DE by one.
26823 LD A,(DE) A=*DE.
26824 OR %00000000 Set bits .
26826 LD (DE),A Write A to *DE.
26827 DEC DE Decrease DE by one.
26828 POP BC Restore BC from the stack.
26829 DJNZ 26779 Decrease counter by one and loop back to 26779 until counter is zero.
26831 INC DE Increment DE by two.
26832 INC DE
26833 EX AF,AF' Exchange the AF register with the shadow AF register.
26834 DEC A Decrease A by one.
26835 JR NZ,26776 Jump to 26776 until A is zero.
26837 POP HL Restore HL from the stack.
26838 RET Return.
26839 DEFW Graphics_Ball Source.
26841 DEFB 255
26842 DEFW Graphics_Empty_1 Destination.
26844 DEFW Graphics_Bat Source.
26846 DEFB 16
26847 DEFW 32078 Destination.
26849 DEFW Graphics_BatBig Source.
26851 DEFB 16
26852 DEFW 33418 Destination.
26854 DEFW Graphics_BatGun Source.
26856 DEFB 16
26857 DEFW 33266 Destination.
26859 DEFW 0 Terminator.
Prev: 26699 Up: Map Next: 26861