To my understanding you want to make some sort of device that will count X min. To get X you configure the 4 dip switches to get the time (0000 - 1111 or 0 - 15). The easiest way is to configure 4 pins to INPUT_PULLUP then you wire your switch to those pins and to ground. If the pin is grounded (switch in the on state) it will register a 0 and if the pin is NOT grounded (switch in the off state) it will register a 1.
note: if all switch are "off" you will get a max value of 15 based on my example.
long startTime;
void setup(){
pinMode(7, INPUT_PULLUP); //8bit
pinMode(6, INPUT_PULLUP); //4bit
pinMode(5, INPUT_PULLUP); //2bit
pinMode(4, INPUT_PULLUP); //1bit
startTime = millis();
}
void loop(){
long inputTime = 0;
if(digitalRead(7))
inputTime += 8;
if(digitalRead(6))
inputTime += 4;
if(digitalRead(5))
inputTime += 2;
if(digitalRead(4))
inputTime += 1;
inputTime = 60000*inputTime;
if(millis() - startTime <= inputTime){
//X min has passed -- Do something here if you like
startTime = millis(); //reset the timer
}else{
//Time not yet reached -- Do something here if you like
}
}