Prev: 51651 Up: Map Next: 51735
51657: Shift View Left Byte
Shifts the screen buffer to the left by one byte, by using the stack pointer to copy it. The part from ShiftViewLeftByte_Copy is also used to move rows up by MoveRowsUp.
ShiftViewLeftByte 51657 LD HL,58812 Point HL at the second byte of the screen buffer.
51660 LD (23770),SP Save the stack pointer.
51664 LD SP,HL Point the stack at that byte.
51665 DEC HL Point HL at the byte to its left.
51666 LD B,128 Set the row count to 128.
This entry point is used by the routine at MoveRowsUp.
ShiftViewLeftByte_Copy 51668 POP DE Copy the twenty-four bytes of the next row from the stack.
51669 LD (HL),E
51670 INC HL
51671 LD (HL),D
51672 INC HL
51673 POP DE
51674 LD (HL),E
51675 INC HL
51676 LD (HL),D
51677 INC HL
51678 POP DE
51679 LD (HL),E
51680 INC HL
51681 LD (HL),D
51682 INC HL
51683 POP DE
51684 LD (HL),E
51685 INC HL
51686 LD (HL),D
51687 INC HL
51688 POP DE
51689 LD (HL),E
51690 INC HL
51691 LD (HL),D
51692 INC HL
51693 POP DE
51694 LD (HL),E
51695 INC HL
51696 LD (HL),D
51697 INC HL
51698 POP DE
51699 LD (HL),E
51700 INC HL
51701 LD (HL),D
51702 INC HL
51703 POP DE
51704 LD (HL),E
51705 INC HL
51706 LD (HL),D
51707 INC HL
51708 POP DE
51709 LD (HL),E
51710 INC HL
51711 LD (HL),D
51712 INC HL
51713 POP DE
51714 LD (HL),E
51715 INC HL
51716 LD (HL),D
51717 INC HL
51718 POP DE
51719 LD (HL),E
51720 INC HL
51721 LD (HL),D
51722 INC HL
51723 POP DE
51724 LD (HL),E
51725 INC HL
51726 LD (HL),D
51727 INC HL
51728 DJNZ ShiftViewLeftByte_Copy Decrease the row count and jump back until every row has been copied.
51730 LD SP,(23770) Restore the stack pointer.
51734 RET Return.
Prev: 51651 Up: Map Next: 51735