View difference between Paste ID: aF43Sipw and ZLrR6Mz7
SHOW: | | - or go back to the newest paste.
1-
seg000:E8DF do_planeBits:                           ; CODE XREF: draw_sprite_whiteflash+8Fj
1+
                 xor     bh, bh
2-
seg000:E8DF                 lods    byte ptr es:[si] ; get the first byte of the plane (i.e., the planeBits), which
2+
3-
seg000:E8DF                                         ; determines to which planes data should be written
3+
4-
seg000:E8E1                 xchg    ax, bx          ; bl = planeBits; bh = sprite height (from function start)
4+
5-
seg000:E8E1                                         ; al = Bytes per plane, if it's bit-1 image
5+
seg000:E905
6-
seg000:E8E2                 lds     di, page_1_address
6+
seg000:E905 draw_non_left_aligned:                  ; draw sprite where source is
7-
seg000:E8E6                 add     di, dx          ; di = offset from start addres
7+
seg000:E905                 mov     [bp+sprite_drawstruct.planeBits], al ; not aligned on a byte boundary
8-
seg000:E8E8                 mov     word ptr [bp+sprite_drawstruct.planeBits], bx
8+
seg000:E908                 mov     bp, di
9-
seg000:E8EB                 add     dx, ss:page_2_offset
9+
seg000:E90A                 jmp     word ptr cs:off_E888[bx-2]
10-
seg000:E8F0                 mov     [bp+sprite_drawstruct.page2_offset], dx
10+
seg000:E90F ; ---------------------------------------------------------------------------
11-
seg000:E8F3                 mov     [bp+sprite_drawstruct.page1_offset], di
11+
seg000:E90F
12-
seg000:E8F6                 mov     ch, bh
12+
seg000:E90F draw_left_aligned:                      ; CODE XREF: draw_sprite_whiteflash+58j
13-
seg000:E8F8                 mov     dl, ch          ; dl = ch = sprite height
13+
seg000:E90F                 mov     bp, di          ; draw sprite whose source is aligned
14-
seg000:E8FA                 xor     dh, dh
14+
seg000:E90F                                         ; on a left boundary
15-
seg000:E8FC                 xor     bh, bh
15+
seg000:E90F                                         ; This includes shifted sprites
16
seg000:E911                 jmp     cs:off_E896[bx]
17
seg000:E916 ; ----------------------------------------