ZXNet эхоконференция «code.zx»


тема: CRC-16 bit



от: Kirill Frolov
кому: All
дата: 03 Dec 2006
Hello, Orionsoft Ori> кто подскажет процедуру которая считает сабж , но не ограничена 256 Ori> байтами как в извесном исходнике ... Для X-modem; ┌─-; code ─── crc=0; for (i=0; i= sizeof(buff)) { debug0("buffer overflow! "); send_break("buffer overflow!"); return 0; } while (1) { CHECK_TIMEOUT; if (kbhit()) { buff[ptr+i] = c = getch(); crc^=((unsigned)c<<8)&0xff00; b=8; do { if (crc&0x8000) crc<<=1, crc^=0x1021; else crc<<=1; } while (--b!=0); break; } } } └── code ─── А вообще в своё время в CODE.ZX этот вопрос был рассмотрен, приведено всяческих процедур, и по-моему даже объяснено, что та табличка строится просто через безтабличный алгоритм и может запросто генерироваться динамически, когда нужна скорость и компактность. И даже в моей zxlib есть такой алгоритм: Только вставить мне его не получилось. Сообщение понимаешь-ли длинное. И мучаться в окошке размером в 1/16 монитора тоже удовольствия мало. Поэтому не буду я тут больше ничего осмысленного писать. Только бредить и абастряться. Спрашивай в fido7.zx.spectrum.

от: Orionsoft
кому: All
дата: 03 Dec 2006
Hello, All кто подскажет процедуру которая считает сабж , но не ограничена 256 байтами как в извесном исходнике ...

от: Orionsoft
кому: All
дата: 03 Dec 2006
Hello, Orionsoft о нашел и проверил , она правильно расчитывает в формате cciit CRC16; ;Borrowed; from http://zilog.sh.cvut.cz/~base/misc/z80bits.html ; and moddified to be a loop ;The arrow comments show what lines I added or commented out from the original. ;Inputs; de->data; bc=number of bytes ;Outputs; hl=CRC16; push bc ;<---<<< push de ;<---<<< push af ;<---<<< ld hl,$FFFF push bc ;<---<<< CRC16_Read; ld; a,(de) inc de xor h ld h,a ld b,8 CRC16_CrcByte; add; hl,hl jr nc,CRC16_Next ld a,h xor $10 ld h,a ld a,l xor $21 ld l,a CRC16_Next; djnz; CRC16_CrcByte ; dec c ;>>>---> pop bc ;<---<<< dec bc ;<---<<< push bc ;<---<<< ld a,b ;<---<<< or c ;<---<<< jr nz,CRC16_Read pop bc ;<---<<< pop af ;<---<<< pop de ;<---<<< pop bc ;<---<<< ret

от: Марк Антонов
кому: All
дата: 03 Dec 2006
Hello, Orionsoft Ori> кто подскажет процедуру которая считает сабж , но не ограничена 256 Ori> байтами как в извесном исходнике ... исходник hrust2.x

от: Александр Шушков
кому: All
дата: 15 Dec 2006
Hello, fk0 Вот от fk0. Файл: zxlib_crc_fk0.zip http://zx.pk.ru/attachment.php?attachmentid=4300




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Мозамбик - реклама.
Реклама - Реклама и объявления...
От авторов - Я рад приветствовать вас мои дорогие (по)читатели ;))))
График - схемка подключки COMPACT+ девайся для принтера.
Intro - Здравствуйте, наши читатели!

В этот день...   8 мая