View difference between Paste ID: ZLrR6Mz7 and XADSPT2y
SHOW: | | - or go back to the newest paste.
1
seg000:E8DF do_planeBits:                           ; CODE XREF: draw_sprite_whiteflash+8Fj
2
seg000:E8DF                 lods    byte ptr es:[si] ; get the first byte of the plane (i.e., the planeBits), which
3
seg000:E8DF                                         ; determines to which planes data should be written
4
seg000:E8E1                 xchg    ax, bx          ; bl = planeBits; bh = sprite height (from function start)
5
seg000:E8E1                                         ; al = Bytes per plane, if it's bit-1 image
6
seg000:E8E2                 lds     di, page_1_address
7
seg000:E8E6                 add     di, dx          ; di = offset from start addres
8
seg000:E8E8                 mov     word ptr [bp+sprite_drawstruct.planeBits], bx
9
seg000:E8EB                 add     dx, ss:page_2_offset
10
seg000:E8F0                 mov     [bp+sprite_drawstruct.page2_offset], dx
11
seg000:E8F3                 mov     [bp+sprite_drawstruct.page1_offset], di
12
seg000:E8F6                 mov     ch, bh
13
seg000:E8F8                 mov     dl, ch          ; dl = ch = sprite height
14
seg000:E8FA                 xor     dh, dh
15
seg000:E8FC                 xor     bh, bh
16
seg000:E8FE                 shl     bx, 1           ; Jump to plane-bit dependent drawing code
17
seg000:E900                 and     cl, 7           ; cl = left edge of source sprite x-coord MOD 8
18
seg000:E903                 jz      short draw_left_aligned
19
seg000:E905