0000000000100000
0100000000110100
0100000010110010
-0011000101010010
+0011000101100000
0100000000110110
0100000010110010
-0011000101100010
+0011000101110000
0100000000111000
0100000010110010
-0011000101110000
+0011000101111110
0100000000111010
0100001110000010
0100010001011010
0100000000111111
0100000000100100
0001001010110000
-0011001111101010
+0011001111111000
+0001001010110000
+0011101101001000
+1001000000111111
+0000000000101010
+0010001111001101
+0100000000111111
+0011110010000010
0001001010110000
-0011101100111010
-0011111111001111
+0011000101111110
+0011111111001000
0100000000110000
-0011110001110000
+0011110010000000
0100000000110001
1111111100000000
0100000000110000
0011110000000100
0100111001001111
0001001010110000
-0011000101010010
+0011000101100000
0100101101101110
0101001100011011
1001001101001110
0100000001111111
0000000000001101
0001001010110000
-0011000101010010
+0011000101100000
0100000001111111
0000000000001010
0001001010110000
-0011000101010010
+0011000101100000
0100000100111011
0100000100110000
1000001100100110
0000000000001010
0100101100001111
0001001010110000
-0011101110101010
+0011101110111010
0101000001111111
0000000000110000
0100111111001001
0000000000001010
0100101100001111
0001001010110000
-0011101110010000
+0011101110100000
0100111100001011
0101001100011010
1001001100001111
0100111100001011
0000110101011111
0001001010110000
-0011001100011000
+0011001100100110
0100101100001111
0001001010110000
-0011001100011000
+0011001100100110
0100000100111011
0100000100110000
0100011000101111
1101100011110000
0000001001011110
0100111000011011
-0011110100010110
+0011110110010110
0011110000000100
0000001001011110
0101001000011110
1001001100011111
0010010000000100
0001001010110000
-0011001101000100
+0011001101010010
1001001100001111
0010000000000010
0100101110000010
1001001101001111
0010000000001011
0001001010110000
-0011000110111100
+0011000111001010
0100001000011110
0100000000001010
0100001000011111
0100001110000010
0100000000001010
0100000000111111
-0011110001110010
+0011110011110010
0001001010001110
0100000100110000
0001010100101011
0000000001001110
0010100000000010
0100000000110000
-0011101100110110
+0011101101000100
0000001001011111
0100111100010000
-0011110001111010
+0011110011111010
0100001110010010
0100000000000100
0100000000110000
-0011101100110110
+0011101101000100
0101011010100110
0000000000000010
0011110000000010
1000011010100110
0000000000000010
0001001010110000
-0011001101000100
+0011001101010010
0100000000110000
-0011101100110110
+0011101101000100
1100001000110010
0100011010010010
0000000000000010
0000000000000000
1101001000110010
0100000000110000
-0011101100110110
+0011101101000100
0100011000001011
0100011000011010
0000000000000010
0100100100001110
0100101000001111
0001001010110000
-0011101110110010
+0011101111000010
0100111110001011
0000000000000010
0100100100001110
0100101000001111
0001001010110000
-0011101111100100
+0011101111110100
0100000000110000
-0011100101101010
+0011100101111000
0001001010110000
-0011001101000100
+0011001101010010
0001001010110000
-0011001010110100
+0011001011000010
0100000000110000
-0011101100110110
+0011101101000100
0100011000101111
0011110011110101
0100011000101110
0100111010000110
0000000000000010
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
1001111110000110
0000000000000000
0011010000010000
0011110000001011
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
1001011000101111
0011010000001010
0011110000000101
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
1001011000101111
0010000000000100
0100001110011110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0100001110001110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011001101000100
+0011001101010010
0011110011011100
0001001010110000
-0011001110001100
+0011001110011010
1001000001111111
0000000000100001
0010101111111011
0011110000010010
0001001010110000
-0011001110001100
+0011001110011010
1001000001111111
0000000000101001
0010001111111011
0001001010110000
-0011001110001100
+0011001110011010
1001000001111111
0000000000100001
0010101111111011
0011110000000111
0001001010110000
-0011000110111100
+0011000111001010
0001001010110000
-0011001110001100
+0011001110011010
1001000001111111
0000000000100001
0010101111111011
0100001111001111
0000000000000000
0001001010110000
-0011001110001100
+0011001110011010
1001000001111111
0000000000100001
0010110000000010
0100000000110000
-0011101100110110
+0011101101000100
1001001000011011
0100000000001110
0011101111101011
0100000000110000
-0011101100110110
+0011101101000100
0101111100001101
0100110011001101
0000000000000000
0100001000011111
0100000000000110
0001001010110000
-0011001001101000
+0011001001110110
0000001001011111
0101001000011111
0100000000100000
0100000000100010
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0100011000101110
1001001100001110
0011100000000010
0100000000110000
-0011101100110110
+0011101101000100
1110001100111110
0100111010000110
0000000000000000
0101001110010110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0100001000011010
0100000000100010
0100101000001011
0101001000011011
0100000000001000
0001001010110000
-0011001101000100
+0011001101010010
0100111110001011
0000000000000000
0101001100011010
0100101010000010
0100000000100010
0100000000110000
-0011101100110110
+0011101101000100
0100011000101111
0000001001011111
0101001000011111
0100111110100110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011001101000100
+0011001101010010
0100111100001011
0001001010110000
-0011001101000100
+0011001101010010
0100101100001110
0000001001011110
0101001000011110
0100000000001000
0100000000110000
-0011101001000110
+0011101001010100
0100011000001111
1001001110000110
0000000000000000
0010010000000010
0100000000110000
-0011101100100110
+0011101100110100
0100001110010110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0100000000111111
-0011111001001111
+0011111011001111
0001001010010010
0100000000011000
0100000000111111
-0011111001000110
+0011111011000110
0001001010010010
0100000000011000
0100001000011111
0100000000011110
0100000000110000
-0011100001001100
+0011100001011010
0100001100001111
0011110010001110
0100001000011111
0100000000011100
0100000000110000
-0011100010101100
+0011100010111010
0100011100101011
0101001100100111
0001001010110000
-0011001101000100
+0011001101010010
1001001100001111
0010010000000010
0100000000110000
-0011101100110110
+0011101101000100
1000001100100111
0100101110000010
0100000000011100
0100000000110000
-0011101100110110
+0011101101000100
0100001000011010
0100000000010110
0100101000001111
0001000000001110
0100111000001111
0001001010110000
-0011000110011010
+0011000110101000
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011001101000100
+0011001101010010
0100111100001011
0001000010001111
0100111101001111
0001001010110000
-0011001100110000
+0011001100111110
0100101100001111
0001001010110000
-0011001100110000
+0011001100111110
0100000000110000
-0011101100010010
+0011101100100000
0100001000011110
0100000000000110
0100111001101100
0011110000000001
0100001100011011
0001001010110000
-0011000110011010
+0011000110101000
0100101100001111
0011111110011100
0100001100001111
0011111110011010
0100001100011111
0001001010110000
-0011001101010000
+0011001101011110
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011001101000100
+0011001101010010
0100111100001011
1001000000111111
0100111000100000
0101000000111111
1011000111100000
0100000000110000
-0011010001011010
+0011010001101000
0100001000011111
0100000000011100
1001000000111011
0010011100010000
0011100000001010
0001001010110000
-0011000110110100
+0011000111000010
0101000000111011
1101100011110000
0000001001011011
0100101110010010
-0011111000111110
+0011111010111110
0100000000011100
0100000000110000
-0011101100110110
+0011101101000100
0001001010110000
-0011000110110100
+0011000111000010
0000001001011011
0101001000011011
0100000000100000
0100101110100010
0100000000011100
0100000000110000
-0011101100110110
+0011101101000100
0100001000011011
0100000000000110
0100000000111110
-0011111001001111
+0011111011001111
0100101100001111
0001001010110000
-0011001001101000
+0011001001110110
1001001100001111
0010010000000011
0101000000111111
0100111000100000
0011110000001001
0100000000111110
-0011111001000110
+0011111011000110
0100101100001111
0001001010110000
-0011001001101000
+0011001001110110
1001001100001111
0010010000000110
0101000000111111
0010011100010000
0001001010110000
-0011000110011010
+0011000110101000
0100001100011111
0011111101011010
0100001000011110
0100000000011110
0100101100001111
0001001010110000
-0011001001101000
+0011001001110110
1001001100001111
0010011101010011
0011111111110100
1101100011110000
0000001001011111
0100111100011111
-0011110100010110
+0011110110010110
0011110000000100
0000001001011111
0101001000011111
0001001010010010
0100000000011000
0100000000110000
-0011101100110110
+0011101101000100
0100001000011011
0100000000000010
0001001010110000
-0011001101000100
+0011001101010010
0001001010001011
0100000000110000
-0011101100110110
+0011101101000100
0100011100101111
0101001100100111
0100111110000010
0100000000011100
0100000000110000
-0011101100110110
+0011101101000100
0100011000001111
0100011000101110
1111000000111110
1111111111111110
0100000000110000
-0011101100110010
+0011101101000000
0001001010110000
-0011001101000100
+0011001101010010
0100111100001011
0001001010110000
-0011001101000100
+0011001101010010
0100101100001110
1111000000111110
1111111111111110
0100000000100010
0011111100010110
0001001010110000
-0011001101000100
+0011001101010010
0100111100001010
0001001010110000
-0011001101000100
+0011001101010010
0100001000011011
0100000000011100
0001001010110000
-0011000110110100
+0011000111000010
0100101000001111
0001001010110000
-0011000110110100
+0011000111000010
0100101100001111
0001001010110000
-0011000110110100
+0011000111000010
0100000000110000
-0011101100110110
+0011101101000100
0100001100011111
0011110000000010
0001001010110000
-0011001101000100
+0011001101010010
0001001010110000
-0011001110111010
+0011001111001000
0100000000110000
-0011101100110110
+0011101101000100
0100011100011111
0000000000000010
0100000000110000
-0011011010111110
+0011011011001100
0100011100011111
0000000000001000
0100000000110000
-0011011010111110
+0011011011001100
0100011100011111
0000000000001110
0100000000110000
-0011011010111110
+0011011011001100
1110001110110110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
1110011010100110
0000000000000010
0100000000110000
-0011010001111110
+0011010010001100
1111011010100110
0000000000000010
0100000000110000
-0011010001111110
+0011010010001100
1101011010100110
0000000000000010
0100000000110000
-0011010001111110
+0011010010001100
0001001010110000
-0011001101000100
+0011001101010010
0100111100001100
0001001000000010
1100001000110010
0001000010001101
0001000110001101
0001001010110000
-0011101111101100
+0011101111111100
0100111000001011
0001001010110000
-0011001101000100
+0011001101010010
0100101110000110
0000000000000000
0100000000110000
-0011101100110110
+0011101101000100
0001001010010010
0100000000010000
0100111101001111
0100000000110000
-0011011010111110
+0011011011001100
0100000001111111
0000000000001101
0001001010010010
0100111110001011
0000000000000010
0100000000110000
-0011010001111110
+0011010010001100
0100011000001011
0100011000011110
0000000000000010
0100001000101111
0011110000000010
0001001010110000
-0011001101000100
+0011001101010010
0001001010110000
-0011000110100010
+0011000110110000
0011110010110001
0001000010000110
0011110010101111
0001001010110000
-0011001101000100
+0011001101010010
0100111100001011
0001001010110000
-0011001101000100
+0011001101010010
0100101100001110
0000001001011110
0101111110001110
0000000000000000
0011110010100101
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
0000001001011111
0101011000001111
0000000000000000
0011110010010101
0001001010110000
-0011001101000100
+0011001101010010
0000001001011111
0101011000001111
0100111100101111
0100000000110000
-0011011010111110
+0011011011001100
0100011000011011
0000000000000010
0100011000101111
0001001010110000
-0011000110011010
+0011000110101000
0100011010100110
0000000000000100
0100101110000110
0000000000000010
0011110010000100
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
1001111110000110
0000000000000000
0011010001111110
0011110000000101
0001001010110000
-0011001101000100
+0011001101010010
0100011000001110
1001011000101111
0011010001111000
0011110000000100
0100101100101111
0001001010110000
-0011001010110100
+0011001011000010
1000001100101011
1001011000001011
0010111111111010
0001000010001111
0100111101001111
0001001010110000
-0011001100110000
+0011001100111110
0100101000001111
0001001010110000
-0011001100110000
+0011001100111110
0100000001111111
0000000000100000
0001001010010010
0000000000000000
0011110001010001
0001001010110000
-0011001101000100
+0011001101010010
0100111110000010
0100000000001100
0011110001001100
0100001111001111
0000000000000000
0001001010110000
-0011001101000100
+0011001101010010
0001001010110000
-0011001111101010
+0011001111111000
0011110001000011
0001001010110000
-0011001101000100
+0011001101010010
1001000000111111
0100111000100000
0011100000000101
0101000000111111
1011000111100000
0100000000111011
-0011111001001111
+0011111011001111
0011110000001010
1001000000111111
0010011100010000
0101000000111111
1101100011110000
0100000000111011
-0011111001000110
+0011111011000110
0011110000000010
0100001000011011
0100000000011110
1101100011110000
0000001001011110
0100111000011011
-0011110100010110
+0011110110010110
0011110000000100
0000001001011110
0101001000011110
0101000000111111
1011000111100000
0001001010110000
-0011010001011000
+0011010001100110
0011110000001000
0001001010110000
-0011000110110100
+0011000111000010
0100101100001111
0000001001011111
0101001000011111
1001001110000010
0100000000000100
0010011111011001
+0100011000101111
0100000100111011
0100000100110000
0100000001111100
0010001111111000
0100000100110000
0001001010110000
-0011101110010000
+0011101110100000
0100111000001111
0100000100110000
0100001100001101
0101001100011110
0001001000001101
0001001010110000
-0011101110010000
+0011101110100000
0100000100111101
1011001101101101
0010010000000010
0101001100011111
0100000100110000
0001001010110000
-0011101110110010
+0011101111000010
0100111000001111
0100000100110000
0001001000001011
0101001100011100
0110001100001101
0001001010110000
-0011110000111000
+0011110001001000
1011001101101011
0010010000000100
1110001100111100
0100000100111011
0100000100110000
0001001010110000
-0011101111101100
+0011101111111100
0100110000001110
0100110100001111
0100000100110000
0001011100101001
0100000100110000
0001001010110000
-0011110000111000
+0011110001001000
0100110000001110
0100110100001111
0100000100110000
0001001100000000
+0100110101000001
+0101000001010011
+0010000000110001
+0011111000101101
+0111000000100000
+0111001001101001
+0110111001100001
+0110000101101000
+0010110100100000
+0010000000111110
+0110100001100011
+0110010101100101
+0110000101110100
+0000110101101000
+0111101100001010
+0000101000001101
+0100001000100000
+0110110001100001
+0110100101101011
+0000110101110010
+0010000000001010
+0110100001000111
+0111001001100001
+0110000101111010
+0000110101101001
+0010000000001010
+0110111101001000
+0110011001100110
+0110000101101101
+0000110101101110
+0010000000001010
+0110001101010011
+0110010101101000
+0110110101101101
+0000101000001101
+0101001100100000
+0110100001100011
+0110100101101101
+0111101001110100
+0000101000001101
+0101011100100000
+0110100101101000
+0110010101110100
+0000101000001101
+0000110101111101
+0011001000001010
+0011000100110000
+0010000000110101
+0100111001010101
+0000110101001100
+0110001100001010
+0110010101101000
+0111010001100101
+0110100001100001
+0000101000001101
+0000000000000000
0111001101101101
0011010001110000
0110100001110100
0000000000100001
-0011010001101100
-0011010001110100
0011010001111010
-0011010010000110
-0011010010100100
-0011010011000100
-0011010011010000
-0011010001111110
-0011010011010100
-0011010011100100
+0011010010000010
+0011010010001000
+0011010010010100
+0011010010110010
+0011010011010010
+0011010011011110
+0011010010001100
+0011010011100010
0011010011110010
-0011010011111110
-0011010100011000
-0011010100011110
-0011010110011010
-0011010111100100
-0011010111111100
-0011011000011010
-0011011000101010
-0011011001000000
-0011011001010100
-0011011001101100
-0011101100110110
-0011101100110110
-0011011001110000
-0011011001111000
-0011011010010010
-0011011011000110
-0011101100110110
-0011011011011110
-0011011110000110
-0011011110001010
+0011010100000000
+0011010100001100
+0011010100100110
+0011010100101100
+0011010110101000
+0011010111110010
+0011011000001010
+0011011000101000
+0011011000111000
+0011011001001110
+0011011001100010
+0011011001111010
+0011101101000100
+0011101101000100
+0011011001111110
+0011011010000110
+0011011010100000
+0011011011010100
+0011101101000100
+0011011011101100
0011011110010100
-0011011111011000
-0011100000011010
-0011100001000010
-0011100000000110
-0011100001001000
-0011100001010100
+0011011110011000
+0011011110100010
+0011011111100110
+0011100000101000
+0011100001010000
+0011100000010100
+0011100001010110
0011100001100010
-0011100001101110
-0011100001111010
-0011100010001100
-0011100010010010
-0011100010110100
-0011100010111000
-0011100011000100
-0011100011001100
-0011100011010100
-0011100011011100
-0011100011100100
-0011100011101100
-0011100011110100
-0011100011111100
-0011100100111110
-0011100101001000
+0011100001110000
+0011100001111100
+0011100010001000
+0011100010011010
+0011100010100000
+0011100011000010
+0011100011000110
+0011100011010010
+0011100011011010
+0011100011100010
+0011100011101010
+0011100011110010
+0011100011111010
+0011100100000010
+0011100100001010
+0011100101001100
0011100101010110
-0011100101011100
-0011100101100110
-0011100101110000
-0011100110000000
-0011100110010100
-0011100110101110
-0011100111001010
-0011100111010100
+0011100101100100
+0011100101101010
+0011100101110100
+0011100101111110
+0011100110001110
+0011100110100010
+0011100110111100
0011100111011000
-0011100111101100
-0011101000001100
+0011100111100010
+0011100111100110
+0011100111111010
0011101000011010
-0011101000101110
+0011101000101000
0011101000111100
-0011101001001100
-0011101001100000
-0011101010001000
-0011101010010100
-0011101010011110
-0011101010110000
-0011101100011100
+0011101001001010
+0011101001011010
+0011101001101110
+0011101010010110
+0011101010100010
+0011101010101100
+0011101010111110
+0011101100101010
0100111000111001
0100111000101110
0100111000111110
0011001001101111
0010000001110000
0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
-0000000000000000
#define WORD_BUFFER_SIZE 32
+const uint8_t chip_id[] = {
+ "AMSP1 -> piranha -> cheetah\r\n"
+ "{\r\n"
+ " Balkir\r\n"
+ " Gharzai\r\n"
+ " Hoffman\r\n"
+ " Schemm\r\n"
+ " Schmitz\r\n"
+ " White\r\n"
+ "}\r\n"
+ "2015 UNL\r\n"
+ "cheetah\r\n"
+};
+
+
+
/*
* Re-define the startup/reset behavior to this. GCC normally uses this
* - any EOT character in the input ('^D', control-D, 0x04)
* - any 0xff character in the input
*/
+ int16_t x;
+
while (1) {
setup_default_msp4th();
msp4th_init(&default_config);
- msp4th_processLoop();
+ x = msp4th_processLoop();
+
+ if (x == 42) {
+ uart_puts((uint8_t *)chip_id);
+ }
}
return 0;
}
-void msp4th_processLoop(void) // this processes the forth opcodes.
+int16_t msp4th_processLoop(void) // this processes the forth opcodes.
{
uint16_t opcode;
uint16_t tmp;
progCounter = progOpcodes[opcode];
}
} // while ()
+ return(TOS);
}
};
void msp4th_init(struct msp4th_config *);
-void msp4th_processLoop(void);
+int16_t msp4th_processLoop(void);
/* Suppress specific warnings (callX words use function pointers)
*
}
+uint8_t chip_id[] = "msp4th, PC edition\r\n";
int main(void)
{
+ int16_t x;
config_msp4th();
msp4th_init(&config);
- msp4th_processLoop();
+ x = msp4th_processLoop();
+
+ if (x == 42) {
+ my_puts(chip_id);
+ }
return 0;
}