 static int d6 = 6;
 static int d7 = 7;
 
-#define LETTER_DELAY 150
-#define CHAR_DELAY 150
+#define LETTER_DELAY 170
+#define CARRIAGE_WAIT_BASE 300
+#define CARRIAGE_WAIT_MULTIPLIER 10
 
 QueueArray<int> q; // holds the bytes we will send to the bus
 

        // byte, although the byte needs to be shifted
        // left by one (not sure why)
        // the numbers are calculated above for timing reasons
        sendByteOnPin(byte1);
        delayMicroseconds(200);
        // wait for response of 0b000000000

        sendByteOnPin(byte2); // each char is worth 10
        delayMicroseconds(200);
        // wait for response of 0b000000000
        
        sendByteOnPin(0b100100001);
        // right now, the platten is moving, maybe?
        delayMicroseconds(1000); // not sure how long to wait
        // wait for response of 0b000000000
    } else if (numChars <= 25) {
        // not sure why this is so different
        sendByteOnPin(0b000001101);
        delayMicroseconds(200);
        // wait for response of 0b000000000

        sendByteOnPin(0b000000111);
        delayMicroseconds(200);
        // wait for response of 0b000000000

        sendByteOnPin(0b100100001); // each char is worth 10
        delayMicroseconds(200);
        // wait for response of 0b000000000
        
        sendByteOnPin(0b000000110);
        delayMicroseconds(200);
        // wait for response of 0b000000000

        sendByteOnPin(0b000000000);
        delayMicroseconds(200);
        // wait for response of 0b000000000

        sendByteOnPin(numChars * 10); // each char is worth 10
        delayMicroseconds(200);
        // wait for response of 0b000000000
        
        sendByteOnPin(0b100100001);
        // right now, the platten is moving, maybe?
        delayMicroseconds(1000); // not sure how long to wait
        // wait for response of 0b000000000
    }
    
    sendByteOnPin(0b000000101);
    delayMicroseconds(200);
    // wait for response of 0b000000000
    
    
    sendByteOnPin(0b010010000); // missing???
    delayMicroseconds(200);
    // wait for response of 0b000000000
    
    // 87ms wait!
    delay(87);
    
    sendByteOnPin(0b100100001);
    delayMicroseconds(200);
    // wait for response of 0b000000000
    
    
    sendByteOnPin(0b000001011);
    delayMicroseconds(200);
    // wait for final response of 0b001010000

    delay(2000); // wait for carriage

}

void sendBytes() {

        send_return(10);

        print_str(",./?");
        send_return(4);*/

        print_str("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
        send_return(52);

        print_str("done.");
        send_return(5);
        /*
        sendByteOnPin(0b00000000);
        delayMicroseconds(60);*/
