View Single Post
Old 18 March 2022, 16:24   #30
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,423
Quote:
Originally Posted by axilmar View Post
No, I have not added 2 bytes to the source start address.

If I also add 2 bytes to the source start address, it blits the white background.
Appologies, I made an error here. In descending mode, all pointers should start at the very last word of the blit. Assuming you've already done this for the source, the same goes for the destination.

Setting up for a position which takes into account shifting is then done by moving the destination pointer only, not the source. So you indeed don't need to add 2 bytes to the source.
Quote:
Here is the code:

https://pastebin.com/eiAeXVgm

For ascending mode, it works perfectly, for all positions and blit sizes.
Looking at the code, it seems like you might not be setting the correct masking values. In descending mode, the two masks are reversed in order (i.e. ALFWM masks the last word instead of the first and vice versa).
Quote:
Originally Posted by HRM
...
the first word mask masks the last word in a row (which is still the first word fetched), and the last word mask masks the first word in a row
...
roondar is offline  
 
Page generated in 0.06100 seconds with 11 queries