Prev: 27648 Up: Map Next: 27884
27853: Squiggle Line
This section draws the "Squiggle" line which separates the windows.
squiggle
SquiggleLine 27853 CALL ClearScreen Call ClearScreen.
27856 LD HL,20800 HL=20800 (screen buffer position).
27859 LD DE,28108 DE=SquiggleGFX.
27862 LD C,5 C=5.
SquiggleGFX_Outer_Loop 27864 LD B,16 Set a counter of 16.
27866 PUSH HL Stash HL (the screen buffer pointer) temporarily - this is because the line is a repeated pattern.
SquiggleGFX_Inner_Loop 27867 LD A,(DE) Copy one byte from DE (the squiggle graphics data), to HL (the screen buffer).
27868 LD (HL),A
27869 INC HL Increase both pointers by one.
27870 INC DE
27871 LD A,(DE) Copy one byte from DE (the squiggle graphics data), to HL (the screen buffer).
27872 LD (HL),A
27873 INC HL Increase HL (the screen buffer) pointer by one.
27874 DEC DE Decrease DE (the squiggle graphics data) pointer by one.
27875 DJNZ SquiggleGFX_Inner_Loop Decrease counter by one and loop back to SquiggleGFX_Inner_Loop until counter is zero.
27877 INC DE Increase DE (the squiggle graphics data) pointer by two.
27878 INC DE
27879 POP HL Restore HL (the screen buffer position) from the stack.
27880 INC H Increase H by one (i.e. move down a line).
27881 DEC C Decrease C by one and loop back to SquiggleGFX_Outer_Loop until counter is zero.
27882 JR NZ,SquiggleGFX_Outer_Loop
Continue on to 27884.
Prev: 27648 Up: Map Next: 27884