Prev: FA5A Up: Map Next: FA9E
FA6A: Clip Rectangle
Used by the routines at Draw_Box, Erase_Entity, Fill_Tiles and Draw_Actor.
Clips the print rectangle against *ClipWindow.
Next_PrintCell FA6A LD A,($6419) Jump to Next_PrintCell_Branch if this row is inside *ClipWindow.
FA6D CP B
FA6E JR NC,Next_PrintCell_Branch
Next_PrintCell_Continue FA70 DEC D Skip down until the row is inside the clip window.
FA71 RET Z
FA72 DEC B
FA73 CP B
FA74 JR NZ,Next_PrintCell_Continue
Next_PrintCell_Branch FA76 LD A,B L=the bottom row of this rectangle.
FA77 SUB D
FA78 INC A
FA79 LD L,A
FA7A LD A,($641A)
Next_PrintCell_Target FA7D CP L Shrink the height until the bottom is inside *ClipWindow_MaximumRow.
FA7E JR C,Next_PrintCell_Branch2
FA80 INC L
FA81 DEC D
FA82 RET Z
FA83 JR Next_PrintCell_Target
Next_PrintCell_Branch2 FA85 LD A,($641B) A=*ClipWindow_MinimumColumn.
Next_PrintCell_Target2 FA88 CP C Skip left until the column is inside *ClipWindow_MinimumColumn.
FA89 JR NC,Next_PrintCell_Branch3
FA8B DEC E
FA8C RET Z
FA8D DEC C
FA8E JR Next_PrintCell_Target2
Next_PrintCell_Branch3 FA90 LD A,C L=the right-hand column of this rectangle.
FA91 SUB E
FA92 INC A
FA93 LD L,A
FA94 LD A,($641C)
Next_PrintCell_Target3 FA97 CP L Shrink the width until the right edge is inside *641C.
FA98 RET C
FA99 INC L
FA9A DEC E
FA9B RET Z
FA9C JR Next_PrintCell_Target3
Prev: FA5A Up: Map Next: FA9E