Prev: 29681 Up: Map Next: 29806
29736: Draw Horizontal Run
Used by the routine at DispatchShape.
Opcode 240 draws a horizontal run of pixels, patching its own length and shift bytes, then steps on by five.
HorizontalRun 29736 LD C,(IX+1)
29739 LD B,(IX+2)
29742 LD A,(IX+3)
29745 LD (29732),A
29748 LD A,(IX+4)
29751 LD (29694),A
29754 CALL PixelRow_3
29757 LD DE,5
29760 ADD IX,DE
29762 JP PictureRecord
HorizontalRun_0 29765 PUSH BC
29766 PUSH HL
29767 LD B,0
29769 PUSH HL
29770 POP DE
HorizontalRun_1 29771 RR (HL)
29773 INC HL
29774 DJNZ HorizontalRun_1
29776 EX DE,HL
29777 RES 7,(HL)
29779 JR NC,HorizontalRun_2
29781 SET 7,(HL)
HorizontalRun_2 29783 POP HL
29784 POP BC
29785 INC H
29786 DJNZ HorizontalRun_0
29788 RET
This entry point is used by the routine at VerticalRun.
HorizontalRun_3 29789 PUSH BC
29790 CALL PixelRow
29793 LD B,8
29795 CALL HorizontalRun_0
29798 POP BC
29799 INC B
29800 LD A,B
29801 CP 0
29803 JR NZ,HorizontalRun_3
29805 RET
Prev: 29681 Up: Map Next: 29806