Prev: 57856 Up: Map Next: 57913
57885: Fill Buffer
Used by the routine at CopyBuffersToScreen.
Fills a buffer with a word, by pushing it onto the stack. The buffer is filled downwards from the address in HL.
Input
B Number of rows of 24 bytes
DE Word to fill the buffer with
HL Address after the end of the buffer
Output
HL Address of the start of the buffer
Keep the stack pointer, and point it at the end of the buffer.
FillBuffer 57885 LD (48046),SP Save the stack pointer.
57889 LD SP,HL Point the stack pointer at the end of the buffer.
Fill a row.
FillBuffer_Row 57890 PUSH DE Fill a row of 24 bytes by pushing twelve words onto the stack.
57891 PUSH DE
57892 PUSH DE
57893 PUSH DE
57894 PUSH DE
57895 PUSH DE
57896 PUSH DE
57897 PUSH DE
57898 PUSH DE
57899 PUSH DE
57900 PUSH DE
57901 PUSH DE
57902 DJNZ FillBuffer_Row Loop back until all of the rows have been filled.
Keep the start of the buffer, and restore the stack pointer.
57904 LD HL,0 Fetch the address of the start of the buffer.
57907 ADD HL,SP
57908 LD SP,(48046) Get the stack pointer back.
57912 RET Return.
View the equivalent code in;
Prev: 57856 Up: Map Next: 57913