Hallo !
Wenn du mit Adcsrb.mux5 = 1 umschaltetst, darfst du nicht wieder mit GetAdc(10) die Daten holen !
sondern mit GetAdc(0) für ADC8, usw. !
Der max. Wert für GetADC ist 7 !

Also entweder MUX5 = 0 dann bekommt man mit GetADC(0) den ADC0-wert eingelesen, oder mit MUX5 = 1 dann bekommt man mit GetAdc(0) den ADC8-Wert eingelesen.

Die andern Bitsetzereien, die Du gemacht hast, kannst mal weglassen, da es ja vorher ansonsten auch geklappt hat !

Code:
getadc(x) |  Mux5 = 0   |  Mux5 = 1
----------+-------------+-----------
  0       |       0     |      8
  1       |       1     |      9
  2       |       2     |     10
  3       |       3     |     11
  4       |       4     |     12
  5       |       5     |     13
  6       |       6     |     14
  7       |       7     |     15
Aber trotzdem ohne Gewähr, hab mein ASM noch nicht angeworfen

Edit:

Adcsrb.acme ist für den Analog Comparator, das können wir hier nicht brauchen ! [-X
Noch einer:
Adcsrb.aden gibts garnicht, deswegen hats nicht geschadet