= Сообщение: 10511 из 14939 ====================================== R50.SYSOP = От : Ivan Novikov 2:5080/31.1 28 Oct 20 22:40:44 Кому : All 28 Oct 20 22:40:44 Тема : Разыскивается поинтлистчекер FGHI : area://R50.SYSOP?msgid=2:5080/31.1+5f99ad1d На : area://R50.SYSOP?msgid=2:5030/1997@fidonet+5f65dba4 = Кодировка сообщения определена как: CP866 ================================== ============================================================================== Привет, All!
IN>> В Husky и GoldEd+ используется CRC-CCITT Implementation AF> Насколько я понял, даже этих есть несколько вариантов. [хрумъ]
Докладываю о текущих результатах.
Имеющиеся исходники удалось собрать с соответственной версией компилятора в работоспособные бинарники под 32-битные Linux, Windows и FreeBSD. Под DOS тоже кое-как собралось, но программа ничего не делает. Hо не очень-то и хотелось. Далее я стал пробовать более новые версии. Примерно к версии 1.98 произошли какие-то серьёзные изменения и пришлось ковыряться в исходниках. Удалось доковырять до успешной сборки в актуальной версии, но всё под ту же 32-битную платформу. Стал искать замену ассемблерному коду. А вот тут началось самое интересное. Во-первых, функция подсчёта CRC-16 в чекере, как оказалось, считает что-то совсем непонятное, не подпадающее ни под один известный вариант. Подозреваю просто ошибку в коде. Во-вторых, оказалось, что считает она совсем не так, как положено считать чексумму в нодлисте. В FTS вычитал следующее: === rezat tuta === Beginning with the first character of the second line, a 16-bit cyclic redundancy check (CRC) is calculated for the entire file, including carriage return and line feed characters, but not including the terminating EOF character. === rezat' tuta === Тогда как функция считывает файл построчно. Решил проверить как с этим делом на нормальном нодлисте дело обстоит. Отрезал первую строку, символ EOF в конце и посчитал различными вариантами. А вот никак не совпадает с указанным в первой строке.
Теперь пребываю в некотором замешательстве и размышлениях. Изучать исходники makenl на предмет изучения того, как там реализован подсчёт, я явно не осилю.
С приветом, Ivan.
--- Дед Мастдай и Саксы (1.1.5-b20170303 штук) * Origin: Мы с Tresorом на границе... (2:5080/31.1)