void setup() {
volatile char *dir_f,*dir_b,*dir_a,*dir_d,*in_f,*out_b,*out_a,*out_d;
volatile long i,j;
dir_f=(char*)0x30; dir_b=(char*)0x24;
dir_a=(char*)0x21; dir_d=(char*)0x2a;
in_f=(char*)0x2f; out_b=(char*)0x25;
out_a=(char*)0x22; out_d=(char*)0x2b;
while(1){
for(i=0;i<4;i++){
*out_b = 1<<i;
if(*in_f != 0){
*out_d=*out_b;
*out_a=*in_f;
for(j=0;j<200000;j++);
}
}
}
}
void loop() {
}