several memset work, but 1 doesn't???

so I just really don’t understand why my memset’s work but one doesn’t.
they are ran in the setup()
and they all work except for this one : memset (ADD_testdata, 0xFF00FF00, 100);
I have verified that it is not working by printing the arrays after the memsets.
code included and serial printout to.
using arduino 1.8.7
Sparkfun SAMD21 Mini Breakout

any help would be great.

UPDATE: as i was putting this post together, I noticed that it wrote data to only the first 25 elements of the array… does memset only work with bytes?

also i will have to put the serial output in another post.

bool ADD_assigned[100];   //is the address number assigned - stored in eeprom
unsigned long ADD_serial[100];   //the stored serial number of the xbee module
byte ADD_model[100];    //the model type of the assigned address
bool ADD_active[100];   //is the address currently active
unsigned long ADD_timestamp[100];   //the last time the address checked in
byte ADD_status[100];   //status of the module assigned to the address
byte ADD_channel[100];    //the channel of the address
unsigned long ADD_testdata[100];    //the test data of the address
byte ADD_channelB[100];    //the second channel for the RF64
unsigned long ADD_testdataB[100];   //second bank of test data for the RF64
byte ADD_loopcnt;   //keeps track of what address to look at


unsigned long CH_Combinedtestdata[100];   //the combined test data for the channel
unsigned long CH_cursor[100];   //where the cursor is for each channel
byte CH_addsPERchannel[100];    //stores how many addresses are on each channel
unsigned long CH_red[100];    //the red led data for each channel
unsigned long CH_green[100];    //the green led data for each channel
unsigned long CH_blue[100];   //the blue led data for each channel

byte CH_activechannel;    //store the active channel number

//memory used for the display
byte DSPLY_green[4];    //the green led data
byte DSPLY_red[4];    //the red led data
byte DSPLY_blue[4];   //the blue led data
const byte DSPLY_latch = 2;   //latch pin for the shift out registers for the display
const byte DSPLY_oe = 3;    //display output enable pin
//const byte DSPLY_statusled = A0;    //output pin for the status led

//memory used for the main system loop that changes the positive voltage drives
unsigned long SYS_timestamp;   //the last time we ran thru the loop
byte SYS_cnt;   //keeps track of what positives buss thats on for led display and button reads
unsigned long SYS_activecues;   //stores what cue buttons have been pushed so that we start transmitting
const byte SYS_pos1 = 6;    //pin that controls the pos 1 buss
const byte SYS_pos2 = 7;    //pin that controls the pos 1 buss
const byte SYS_pos3 = 8;    //pin that controls the pos 1 buss
const byte SYS_pos4 = 9;    //pin that controls the pos 1 buss
const byte SYS_mosi = 11;   //shift out data pin
const byte SYS_miso = 12;   //shift in data pin
const byte SYS_clk = 13;    //clock pin for SPI data
bool SYS_Armed = false;
unsigned long lastsyscue;

//memory used for the buttons
const byte BUTN_load = 5;   //load pin for the shift in register
const byte BUTN_select = 4;   //the chip select pin for the shift in register
byte BUTN_state[4];   //stores the read data of the bank of switches
byte BUTN_paststate[4];   //used in the debouncing of the switch
byte BUTN_bankcnt[4];   //stores how many times we had good duplicate button reads
byte BUTN_bankdebounce = 9;   //decounce timer
byte BUTN_bankactive;   //stores what bank had an active switch

//memory used for the eeprom
const byte EPRM_select = 10;    //chip select pin for the EEPROM

//memory used for heartbeat LED
const int HB_led = PIN_LED_RXL;    //pin 25 we will use this for the heartbeat / its fixed and cant be used for anything else
unsigned long HB_timestamp;   //stores the last time we went to the heartbeat function
byte HB_cnt;
int HB_duration;

//*******************************************
//temp for development  
//*******************************************
//*******************************************
 unsigned long DEBUG_timestamp;
 int DEBUG_duration = 1000;

 unsigned long DEBUG2_timestamp;
 int DEBUG2_duration = 10000;
 byte DEBUG2_cnt;
//***************************************************
//***************************************************
 
void setup() {

  pinMode(HB_led, OUTPUT);    //set the hb led to an output
  pinMode(DSPLY_latch, OUTPUT);    //
  digitalWrite(DSPLY_latch, HIGH);    //pull low, then send data, then set high
  pinMode(DSPLY_oe, OUTPUT);    //
  digitalWrite(DSPLY_oe, LOW);    //active low
  pinMode(BUTN_load, OUTPUT);    //
  digitalWrite(BUTN_load, HIGH);    //pull low and delay 5 microseconds to load
  pinMode(BUTN_select, OUTPUT);    //
  digitalWrite(BUTN_select, HIGH);    //clock pin must start high, then pull this pin low to shift data
  pinMode(EPRM_select, OUTPUT);    //
  digitalWrite(EPRM_select, HIGH);    //
  pinMode(SYS_pos1, OUTPUT);    //
  digitalWrite(SYS_pos1, LOW);    //
  pinMode(SYS_pos2, OUTPUT);    //
  digitalWrite(SYS_pos2, HIGH);    //
  pinMode(SYS_pos3, OUTPUT);    //
  digitalWrite(SYS_pos3, HIGH);    //
  pinMode(SYS_pos4, OUTPUT);    //
  digitalWrite(SYS_pos4, HIGH);    //
  pinMode(SYS_mosi, OUTPUT);    //
  pinMode(SYS_miso, INPUT);    //
  pinMode(SYS_clk, OUTPUT);    //
  digitalWrite(SYS_clk, HIGH);    //
  
  memset (DSPLY_green, 0xFF, 4);   //set the green led RAM to off
  memset (DSPLY_red, 0xFF, 4);   //set the red led RAM to off
  memset (DSPLY_blue, 0xFF, 4);   //set the blue led RAM to off

 memset (ADD_assigned, true, 100);
 memset (ADD_active, true, 100);
 memset (ADD_testdata, 0xFF00FF00, 100);
 memset (ADD_channel, 20, 100);
 ADD_testdata[0] =  0xCC33F0FF;
 ADD_testdata[10] = 0xCC330FF0;
 ADD_channel[0] = 10;
 ADD_channel[10] = 10;
 CH_activechannel = 10;
 ADD_testdata[55] = 0xCC33FFFF;
 ADD_testdata[75] = 0x3C33FFF0;
 ADD_channel[55] = 35;
 ADD_channel[75] = 35;
 
  SerialUSB.begin(115200);    // Initialize Serial Monitor USB
  Serial1.begin(57600);   // Initialize hardware serial port, pins 0/1
   while (!SerialUSB) ; // Wait for Serial monitor to open

for (byte i = 0; i < 100; i++) {
  SerialUSB.print("ADD=");
  SerialUSB.print(i);
  SerialUSB.print("//ADD_assigned=");
  SerialUSB.print(ADD_assigned[i]);
  SerialUSB.print("//ADD_active=");
  SerialUSB.print(ADD_active[i]);
  SerialUSB.print("//ADD_channel=");
  SerialUSB.print(ADD_channel[i]);
  SerialUSB.print("//ADD_testdata=");
  SerialUSB.println(ADD_testdata[i],HEX);
}  



}

void loop() {

  if (CheckTime(HB_timestamp, HB_duration) == true) Heartbeat();   //update the heartbeat LED
  if (CheckTime(SYS_timestamp, 5) == true) {

here is the serial output

ADD=0//ADD_assigned=1//ADD_active=1//ADD_channel=10//ADD_testdata=CC33F0FF
ADD=1//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=2//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=3//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=4//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=5//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=6//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=7//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=8//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=9//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=10//ADD_assigned=1//ADD_active=1//ADD_channel=10//ADD_testdata=CC330FF0
ADD=11//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=12//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=13//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=14//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=15//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=16//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=17//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=18//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=19//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=20//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=21//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=22//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=23//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=24//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=F9F9F9F9
ADD=25//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=26//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=27//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=28//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=29//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=30//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=31//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=32//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=33//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=34//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=35//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=36//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=37//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=38//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=39//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=40//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=41//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=42//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=43//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=44//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=45//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=46//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=47//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=48//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=49//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=50//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=51//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=52//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=53//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=54//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=55//ADD_assigned=1//ADD_active=1//ADD_channel=35//ADD_testdata=CC33FFFF
ADD=56//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=57//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=58//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=59//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=60//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=61//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=62//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=63//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=64//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=65//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=66//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=67//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=68//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=69//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=70//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=71//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=72//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=73//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=74//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=75//ADD_assigned=1//ADD_active=1//ADD_channel=35//ADD_testdata=3C33FFF0
ADD=76//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=77//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=78//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=79//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=80//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=81//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=82//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=83//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=84//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=85//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=86//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=87//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=88//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=89//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=90//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=91//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=92//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=93//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=94//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=95//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=96//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=97//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=98//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0
ADD=99//ADD_assigned=1//ADD_active=1//ADD_channel=25//ADD_testdata=0

Pyrogeek:
UPDATE: as i was putting this post together, I noticed that it wrote data to only the first 25 elements of the array........... does memset only work with bytes?

Here's what Mr Google found for me: memset - C++ Reference

Pyrogeek:
does memset only work with bytes?

Looks like it. group__avr__string. memmove() in a loop may work for you.

Thanks for the reply,

yes, it seems to only work in byte size.
I switched the data to a byte and told it to write 200 and filled up the first 50 elements of the array in the print out.

now i know, lol

 memset (ADD_testdata, 0xFF00FF00, 100);

And that, everyone, is why magic numbers are bad. There’s a couple of ways to do this. First, you could just use sizeof(ADD_testdata) or you could define your number of datapoints somewhere else and then use NUM_DATAPOINTS * sizeof(ADD_testdata[0]) which multiplies by the size of the first item in the array.

Since you’ve got the magic number “100” scattered throughout your code, such as here:

for (byte i = 0; i < 100; i++) {

then you definitely need a named constant for that.