Titus, вот готовый фрагмент для подсчета КС в формате РК/Специалиста из исходников emu80:
Код:
uint16_t cs = 0;                                       
for (uint16_t i = 0; i < fileSize - 1; i++) {          
    cs += buf[i];                                      
    cs += (buf[i] << 8);                               
}                                                      
cs = (cs & 0xff00) | ((cs + buf[fileSize - 1]) & 0xff);
Попозже могу посмотреть, что используется для Микроши - нужно найти в Мониторе и дизассемблировать...