code: func (s *cScreen) mapStyle(style Style) uint16 {
  	f, b, a := style.Decompose()
  	fa := s.oscreen.attrs & 0xf
  	ba := (s.oscreen.attrs) >> 4 & 0xf
  	if f != ColorDefault {
  		fa = mapColor2RGB(f)
  	}
  	if b != ColorDefault {
  		ba = mapColor2RGB(b)
  	}
  	var attr uint16
  	// We simulate reverse by doing the color swap ourselves.
  	// Apparently windows cannot really do this except in DBCS
  	// views.
  	if a&AttrReverse != 0 {
  		attr = ba
  		attr |= (fa << 4)
  	} else {
  		attr = fa
  		attr |= (ba << 4)
  	}
  	if a&AttrBold != 0 {
  		attr |= 0x8
  	}
  	if a&AttrDim != 0 {
  		attr &^= 0x8
  	}
  	if a&AttrUnderline != 0 {
  		// Best effort -- doesn't seem to work though.
  		attr |= 0x8000
  	}
  	// Blink is unsupported
  	return attr
  }
docs: // Map a tcell style to Windows attributes