21 void il3820_updateDisplay(
screen_t *dev)
24 int mask_cs = (1 << dev->
dev_id);
25 int mask_sdi = (1 << dev->
sdi_pin);
26 int mask_clk = (1 << dev->
clk_pin);
27 int mask_dc = (1 << dev->
dc_pin);
29 il3820_writeLockSet(dev->
dev_id);
31 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_SET_RAM_X_ADDRESS_POSITION, 0);
34 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
35 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, ((dev->
width - 1) >> 3) & 0xFF, 1);
36 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_SET_RAM_Y_ADDRESS_POSITION, 0);
37 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
38 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
39 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, (dev->
height - 1) & 0xFF, 1);
40 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, ((dev->
height - 1) >> 8) & 0xFF, 1);
41 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_SET_RAM_X_ADDRESS_COUNTER, 0);
44 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
45 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_SET_RAM_Y_ADDRESS_COUNTER, 0);
46 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
47 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0, 1);
51 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_WRITE_RAM, 0);
57 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_DISPLAY_UPDATE_2, 0);
58 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, 0xC4, 1);
59 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_MASTER_ACTIVATION, 0);
60 il3820_spiWrite(mask_cs, mask_sdi, mask_clk, mask_dc, IL3820_TERMINATE_FRAME_READ_WRITE, 0);
62 il3820_writeLockClear(dev->
dev_id);