Advertisement
Guest User

Untitled

a guest
Nov 18th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.69 KB | None | 0 0
  1. Type1:
  2. mov ax, [y1] ; if dx and dy are both same exit
  3. cmp ax, [y0]
  4. je done
  5. mov cx, [err]
  6. add cx, [err]
  7. mov [e2], cx
  8.  
  9. neg word[difY]
  10. cmp [difY],cx ; compare e2 with negative difference of Y
  11. jg ErrMinusDY ; if e2 greater than -dy, err now equals dx - 2dy
  12. return1:
  13. mov dx, [x0]
  14. add dx, [sx] ; add 1 to x0
  15. mov [x0], dx
  16. cmp [difX], cx
  17. jl ErrPlusDX
  18. return2:
  19. mov dx, [y0]
  20. add dx, [sy] ;
  21. mov [y0], dx
  22. jmp goloop
  23.  
  24. ErrMinusDY:
  25. mov dx,[difY]
  26. sub [err],dx
  27. jmp return1
  28.  
  29.  
  30. ErrPlusDX:
  31. mov dx,[difX]
  32. add [err],dx
  33. jmp return2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement