| Routines

30097: Insert a pixel column into a graphic buffer

Used by the routine at 30042. Slides the current contents of a row of the graphic buffer (at 60160, 60416 or 60672) one pixel to the left, and places the new pixel column into the slot freed up on the right.
Input
A | Pixel column byte
DE | Graphic buffer address
30097 | PUSH DE |
30098 | EXX |
30099 | POP HL | HL'=graphic buffer address
30100 | LD C,8 | There are 8 pixels to insert into the column
30102 | LD B,8 | There are 8 bytes per row in the buffer
30104 | RRCA | Push a pixel into the carry flag
30105 | RL (HL) | Drag the pixel from the carry flag into the buffer, and slide all the other pixels in the row one to the left
30107 | DEC HL
30108 | DJNZ 30105
30110 | DEC C | Next pixel
30111 | JR NZ,30102 | Jump back until all 8 pixels have been inserted
30113 | EXX |
30114 | RET |