Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Buffer } from 'buffer';
- import createBuffer from './create_buffer';
- import defineCrc from './define_crc';
- const crc16xmodem = defineCrc('xmodem', function(buf, previous) {
- if (!Buffer.isBuffer(buf)) buf = createBuffer(buf);
- let t_crc = 0 ;
- for (let index = 0; index < buf.length; index++) {
- t_crc = (t_crc ^ ((buffer[index] << 8) & 0xffff)) & 0xffff;
- let j = 8;
- do
- {
- if (t_crc & 0x8000)
- t_crc = (((t_crc << 1)& 0xffff) ^ 0x1021) & 0xffff;
- else
- t_crc = ((t_crc << 1)& 0xffff);
- } while(--j);
- }
- return crc;
- });
- export default crc16xmodem;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement