Set palette
(&mut self, pal: Palette)
| 349 | |
| 350 | // Set palette |
| 351 | pub fn setpal(&mut self, pal: Palette) |
| 352 | { |
| 353 | let mut address: Port<u8> = Port::new(DAC_ADDRESS_WRITEMODE_REG); |
| 354 | let mut data: Port<u8> = Port::new(DAC_DATA_REG); |
| 355 | |
| 356 | for (i, (r, g, b)) in pal.color.iter().enumerate() |
| 357 | { |
| 358 | if i < 16 |
| 359 | { |
| 360 | let reg = std_color::fromidx(i as usize).to_vga_reg(); |
| 361 | |
| 362 | unsafe |
| 363 | { |
| 364 | address.write(reg); |
| 365 | data.write(vga_color(*r)); |
| 366 | data.write(vga_color(*g)); |
| 367 | data.write(vga_color(*b)); |
| 368 | } |
| 369 | } |
| 370 | } |
| 371 | } |
| 372 | |
| 373 | |
| 374 |
no test coverage detected