#include "portselection.h"
#include "functions.h"
volatile char x,i;
volatile long t_delay;
char input_k(){
volatile char *port_k_in = 0x106;
return *port_k_in;
}
void setup() {
init_port();
/*while(1){
x = input_k();
if ((x & 0x01) == 0x01){
output_f(1);
}
else{
output_f(0);
}
}*/
}
void loop() {
x = input_k();
if ((x & 0x01) == 0x01){
output_f(0xFF);
}
else if((x & 0x02) == 0x02){
output_f(0xFF);
for(t_delay = 0;t_delay<100000;t_delay++);
output_f(0);
for(t_delay = 0;t_delay<100000;t_delay++);
}
else if((x & 0x04) == 0x04){
for(i =0;i<=7;i++){
output_f(power(2,i));
for(t_delay = 0;t_delay<100000;t_delay++);
}
}
else if((x & 0xF8) != 0x00){
for(i =7;i>=0;i--){
output_f(power(2,i));
for(t_delay = 0;t_delay<100000;t_delay++);
}
}
else{
output_f(0);
}
}