Prev: 2535 Up: Map Next: 2596
2580: THE 'SCANNING ATTRIBUTES' SUBROUTINE
Used by the routine at S_ATTR.
Input
Output
S_ATTR_S 2580 CALL STK_TO_BC x to C, y to B. Again, 0<=x<=23; 0<=y<=31.
2583 LD A,C x is copied to A and the number 32*(x mod 8)+y is formed in A. 32*(x mod 8)+INT (x/8) is also copied to C.
2584 RRCA
2585 RRCA
2586 RRCA
2587 LD C,A
2588 AND $E0
258A XOR B
258B LD L,A L holds low byte of attribute address.
258C LD A,C 32*(x mod 8)+INT (x/8) is copied to A.
258D AND $03 88+INT (x/8) is formed in A.
258F XOR $58
2591 LD H,A H holds high byte of attribute address.
2592 LD A,(HL) The attribute byte is copied to A.
2593 JP STACK_A Exit, stacking the required byte.
Prev: 2535 Up: Map Next: 2596