Can the remaining developers chime in and settle a debate?
Does anybody have a working 16 chip klondike running at 333*16?
To clarify on this, it would be a 16 chip Klondike at 282*16 (4.5GH as Advertised) with low HW Errors.
Also if whoever did this, did so using Terrahash's code.
You are using 260pF for C274 right?
In order to hash with 16 chips, you need to make the following modifications in klondike.c, from line 159:
Status.ChipCount = 16;
// pre-calc nonce range values
BankSize = (Status.ChipCount+1)/2;
Status.MaxCount = WORK_TICKS / BankSize / 2;
NonceRanges[0] = 0;
for(BYTE x = 1; x < BankSize; x++)
NonceRanges[x] = NonceRanges[x-1] + BankRanges[BankSize-1];
If you look at that code, you see, that only 8 nonce ranges are defined.
How could this work with 16 chips? Any idea?
Also, the NonceRanges were defined as NonceRanges[8].
And for everyone here, fully populated board with 16 chips IS NOT WORKING with those firmware modifications that Terrahash posted above.
Look at asic.c especially in SendAsicData function. You will get your answer there and in the end of send32 function. But it is a bit tricky how its done there... In fact you only need 8 nonce ranges
What are you implying

The question is: Does it work?
I can find NO ONE that can get the K16 to work.
Okay so i will clarify this:
This code
NonceRanges[0] = 0;
for(BYTE x = 1; x < BankSize; x++)
NonceRanges[x] = NonceRanges[x-1] + BankRanges[BankSize-1];
generates the following nonce ranges for 8 chips (in hex):
Nonce[0]:00000000
Nonce[1]:10000000
Nonce[2]:20000000
Nonce[3]:30000000
Nonce[4]:40000000
Nonce[5]:50000000
Nonce[6]:60000000
Nonce[7]:70000000
Then in SendAsicData you see:
last_bit0 = last_bit1 = split;
send32_data = (WORD)&NonceRanges; send32_count = BankSize;
Send32();
and in Send32:
MOVF _last_bit0 & 0x7F,W
CLRF LATC & 0x7F
BTFSC INDF1,7
MOVF _last_bit1 & 0x7F,W
MOVWF LATC & 0x7F
This changes the highest bit in nonce value to 1 and then you get the remaining 8 nonces.
And between those instructions, is there a one, which changes what PORTC pins to use, when sending data out? Except the DATA_ONE and DATA_ZERO defines?