change a function in the atari punk 8 step sequencer code

hi,
i am a beginner so any help to get me started is great thx,

i would like to do this on my arduino micro

I would like to change the below code so that instead of inputing a frequency for the choices of musical notes,
it scrolls through this part of the ascii list:

48 060 30 00110000 0 0 Zero
49 061 31 00110001 1 1 One
50 062 32 00110010 2 2 Two
51 063 33 00110011 3 3 Three
52 064 34 00110100 4 4 Four
53 065 35 00110101 5 5 Five
54 066 36 00110110 6 6 Six
55 067 37 00110111 7 7 Seven
56 070 38 00111000 8 8 Eight
57 071 39 00111001 9 9 Nine
58 072 3A 00111010 : : Colon
59 073 3B 00111011 ; ; Semicolon
60 074 3C 00111100 < < < Less than (or open angled bracket)
61 075 3D 00111101 = = Equals
62 076 3E 00111110 > > > Greater than (or close angled bracket)
63 077 3F 00111111 ? ? Question mark
64 100 40 01000000 @ @ At symbol
65 101 41 01000001 A A Uppercase A
66 102 42 01000010 B B Uppercase B
67 103 43 01000011 C C Uppercase C
68 104 44 01000100 D D Uppercase D
69 105 45 01000101 E E Uppercase E
70 106 46 01000110 F F Uppercase F
71 107 47 01000111 G G Uppercase G
72 110 48 01001000 H H Uppercase H
73 111 49 01001001 I I Uppercase I
74 112 4A 01001010 J J Uppercase J
75 113 4B 01001011 K K Uppercase K
76 114 4C 01001100 L L Uppercase L
77 115 4D 01001101 M M Uppercase M
78 116 4E 01001110 N N Uppercase N
79 117 4F 01001111 O O Uppercase O
80 120 50 01010000 P P Uppercase P
81 121 51 01010001 Q Q Uppercase Q
82 122 52 01010010 R R Uppercase R
83 123 53 01010011 S S Uppercase S
84 124 54 01010100 T T Uppercase T
85 125 55 01010101 U U Uppercase U
86 126 56 01010110 V V Uppercase V
87 127 57 01010111 W W Uppercase W
88 130 58 01011000 X X Uppercase X
89 131 59 01011001 Y Y Uppercase Y
90 132 5A 01011010 Z Z Uppercase Z
91 133 5B 01011011 [ [ Opening bracket
92 134 5C 01011100 \ \ Backslash
93 135 5D 01011101 ] ] Closing bracket
94 136 5E 01011110 ^ ^ Caret - circumflex
95 137 5F 01011111 _ _ Underscore
96 140 60 01100000 ` ` Grave accent
97 141 61 01100001 a a Lowercase a
98 142 62 01100010 b b Lowercase b
99 143 63 01100011 c c Lowercase c
100 144 64 01100100 d d Lowercase d
101 145 65 01100101 e e Lowercase e
102 146 66 01100110 f f Lowercase f
103 147 67 01100111 g g Lowercase g
104 150 68 01101000 h h Lowercase h
105 151 69 01101001 i i Lowercase i
106 152 6A 01101010 j j Lowercase j
107 153 6B 01101011 k k Lowercase k
108 154 6C 01101100 l l Lowercase l
109 155 6D 01101101 m m Lowercase m
110 156 6E 01101110 n n Lowercase n
111 157 6F 01101111 o o Lowercase o
112 160 70 01110000 p p Lowercase p
113 161 71 01110001 q q Lowercase q
114 162 72 01110010 r r Lowercase r
115 163 73 01110011 s s Lowercase s
116 164 74 01110100 t t Lowercase t
117 165 75 01110101 u u Lowercase u
118 166 76 01110110 v v Lowercase v
119 167 77 01110111 w w Lowercase w
120 170 78 01111000 x x Lowercase x
121 171 79 01111001 y y Lowercase y
122 172 7A 01111010 z z Lowercase z

and sends those number/letters sequenced through a usb cable on a arduino micro to a computer

is this possible?
thx

/* ======================================================================
Arduino Punk Console
A simple programmable 8 step tone sequencer
by dano/beavisaudio.com
Revs

15 Sept djh initial version
======================================================================*/
// Map all the input and output pins
#define AnalogInFrequency 1
#define AnalogInTempo 2
#define AnalogInDuration 0
#define DigitalOutSignal 11
#define DigitalInSwitch0 2
#define DigitalInSwitch1 3
#define DigitalInSwitch2 4
#define DigitalInSwitch3 5
#define DigitalInSwitch4 6
#define DigitalInSwitch5 7
#define DigitalInSwitch6 8
#define DigitalInSwitch7 9
#define DigitalInStartStop 10
#define DigitalOutLED 12
// Set up the array for each step
int steps = {100,120,140,160,180,200,220,240};
// misc housekeeping
int duration = 50;
int pitchval = 1;
int fPlayMode = true;
int lastPushedStep = -1;
// Initialize the tempo
int tempo = 100;
void setup()
{
// setup pin modes (Digital pins are input by default, but
// I like to set 'em explicitly just so the code is clear.
pinMode (DigitalInSwitch0, INPUT);
pinMode (DigitalInSwitch1, INPUT);
pinMode (DigitalInSwitch2, INPUT);
pinMode (DigitalInSwitch3, INPUT);
pinMode (DigitalInSwitch4, INPUT);
pinMode (DigitalInSwitch5, INPUT);
pinMode (DigitalInSwitch6, INPUT);
pinMode (DigitalInSwitch7, INPUT);
pinMode (DigitalInStartStop, INPUT);
pinMode (DigitalOutSignal, OUTPUT);
pinMode (DigitalOutLED, OUTPUT);

}

void loop()
{
// Main sequence loop
for (int i=0; i<8; i++)
{
// Are we playing or stopping?
fPlayMode = digitalRead (DigitalInStartStop);
digitalWrite (DigitalOutLED, HIGH);
// Check the Hardware
readSwitches();
readPots();

// update the display
updateDisplay();

// Make the noise
if (fPlayMode)
{
freqout (steps*, duration);*

  • }*
  • digitalWrite (DigitalOutLED, LOW);*
  • // Pause between steps*
  • delay (tempo); *
  • }*
    }
    void updateDisplay()
    {
  • Serial.print (254, BYTE);*
  • Serial.print (192, BYTE);*
  • Serial.print (“T:”);*
  • Serial.print (tempo);*
  • Serial.print (" d:");*
  • Serial.print (duration);*
    if (lastPushedStep != -1)
    {
    _ Serial.print ("*");_
  • Serial.print (lastPushedStep);*
    }
    }
    // Read the current values of the pots, called from the loop.
    void readPots ()
    {
    _ tempo = (analogRead (AnalogInTempo) * 1.9);_
  • duration = (analogRead (AnalogInDuration)); *
    }
    // Read the current values of the switches and
    // if pressed, replace the switch’s slot frequency
    // by reading the frequency pot.
    void readSwitches()
    {
  • // reset last pushed button number*
  • lastPushedStep = -1;*
  • // check switch 0, if pressed, get the current freq into step 0, etc. etc.*
  • if (digitalRead (DigitalInSwitch0) == HIGH)*
  • {*
  • steps[0] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 1;*
  • }*
  • else if (digitalRead (DigitalInSwitch1) == HIGH)*
  • {*
  • steps[1] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 2;*
  • }*
  • else if (digitalRead (DigitalInSwitch2) == HIGH)*
  • {*
  • steps[2] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 3;*
  • }*
  • else if (digitalRead (DigitalInSwitch3) == HIGH)*
  • {*
  • steps[3] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 4;*
  • }*
  • else if (digitalRead (DigitalInSwitch4) == HIGH)*
  • {*
  • steps[4] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 5;*
  • }*
  • else if (digitalRead (DigitalInSwitch5) == HIGH)*
  • {*
  • steps[5] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 6;*
  • }*
  • else if (digitalRead (DigitalInSwitch6) == HIGH)*
  • {*
  • steps[6] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 7;*
  • }*
  • else if (digitalRead (DigitalInSwitch7) == HIGH)*
  • {*
  • steps[7] = analogRead(AnalogInFrequency);*
  • lastPushedStep = 8;*
  • }*
    }
    //freqout code by Paul Badger
    // freq - frequency value
    // t - time duration of tone
    void freqout(int freq, int t)
    {
  • int hperiod; //calculate 1/2 period in us*
  • long cycles, i;*
  • // subtract 7 us to make up for digitalWrite overhead - determined empirically*
    _ hperiod = (500000 / ((freq - 7) * pitchval)); _
  • // calculate cycles*
    _ cycles = ((long)freq * (long)t) / 1000; // calculate cycles_
  • for (i=0; i<= cycles; i++)*
  • { // play note for t ms*
  • digitalWrite(DigitalOutSignal, HIGH);*
  • delayMicroseconds(hperiod);*
  • digitalWrite(DigitalOutSignal, LOW);*
  • delayMicroseconds(hperiod - 1); // - 1 to make up for fractional microsecond in digitaWrite overhead*
  • }*
    }

Start by reading the sticky post at the top of the forum about how to properly post your code using code tags. Then go back and edit your post and do that. Then go back and edit your post and put that giant ASCII table inside code tags as well.

If you want your program to send information back to the PC, you will need to read up on using the Serial library to print() items to the PC