inmarket Posted May 9, 2022 Report Share Posted May 9, 2022 The divide by 2 when calling xyaddr() is incorrect. It is the xyaddr() macro itself that needs the divide by 2. As indicated by the macro name, it is supposed to take (x,y) as it's parameters. Link to comment Share on other sites More sharing options...
AnSc Posted May 11, 2022 Author Report Share Posted May 11, 2022 On 5/9/2022 at 10:25 AM, inmarket said: The divide by 2 when calling xyaddr() is incorrect. It is the xyaddr() macro itself that needs the divide by 2. As indicated by the macro name, it is supposed to take (x,y) as it's parameters. Hi, thanks for this tip. As I wrote it was a crude first try. I changed the macro to this: #define xyaddr(x, y) ((x/2) + (y)*SSD1322_ROW_WIDTH) and did see the same correct behaviour after reverting the code line to: ram = RAM(g)+xyaddr(x,y); Link to comment Share on other sites More sharing options...
Joel Bodenmann Posted May 11, 2022 Report Share Posted May 11, 2022 Would you be able to provide a diff/patch-file (as an attachment) so we can have a look at your "final" changes to the driver? This way we can more easily review them and decide whether the driver should be modified for the next release. Link to comment Share on other sites More sharing options...
AnSc Posted May 18, 2022 Author Report Share Posted May 18, 2022 Hi, sorry for the delay, was busy elsewhere… Please find attached the diff of my changes. gdisp_lld_SSD1322.diff Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now