TM1637 colon problem

There are two common version of this display. One has a colon display, one has four individual decimals. It is one or the other

Which one is yours? What actually happens when you code to show all four decimals?

// "ricc" with dots display on TM1637
//  By Paul__B on Arduino forum
#include <Arduino.h>
#include <TM1637Display.h>

// Module connection pins (Digital Pins)
#define CLK 2
#define DIO 3

// The amount of time (in milliseconds) between tests
#define TEST_DELAY   1000

const uint8_t SEG_DONE[] = {
  SEG_B | SEG_C | SEG_D | SEG_E | SEG_G,           // d
  SEG_C | SEG_D | SEG_E | SEG_G,                   // o
  SEG_C | SEG_E | SEG_G,                           // n
  SEG_A | SEG_D | SEG_E | SEG_F | SEG_G            // E
};

TM1637Display display(CLK, DIO);

int k;
uint8_t data[] = { 0xff, 0xff, 0xff, 0xff };
uint8_t blank[] = { 0x00, 0x00, 0x00, 0x00 };

void wipe() {
  display.clear();
  for (k = 0; k < 4; k++)
    data[k] = 0x00;
  display.setSegments(data);
}

void barr() {
  display.clear();
  for (k = 0; k < 4; k++)
    data[k] = 0x49;
  display.setSegments(data);
  delay(4000);
}

void cshow (uint8_t ix, uint8_t pattern)
{
  data[ix] = pattern;
  display.setSegments(data);
  delay(TEST_DELAY);
}

void setup()
{
  barr();
}

void loop()
{
  display.setBrightness(0x0f);

  wipe();
  delay(TEST_DELAY);
  cshow (0, 0xd0);
  cshow (0, 0x50);
  cshow (1, 0x90);
  cshow (1, 0x10);
  cshow (2, 0xd8);
  cshow (2, 0x58);
  cshow (3, 0xd8);
  cshow (3, 0x58);
}