We use bitmap_addr to calculate the memory address from drawing coordinates. Address calculation requires three cycles, so we delay write enable (we) to match. We need to delay the colour index (cidx) similarly.
Current examples use a single colour for a shape, and the initialisation steps hide this issue. However, this bug is evident when a shape is drawn with multiple colours.
We use
bitmap_addrto calculate the memory address from drawing coordinates. Address calculation requires three cycles, so we delay write enable (we) to match. We need to delay the colour index (cidx) similarly.Current examples use a single colour for a shape, and the initialisation steps hide this issue. However, this bug is evident when a shape is drawn with multiple colours.