--- /dev/null
+// Generated by CoffeeScript 1.9.2
+var Buffer, create;
+
+Buffer = require('buffer').Buffer;
+
+create = require('./create');
+
+module.exports = create('xmodem', function(buf, previous) {
+ var code, count, crc, i;
+ if (!Buffer.isBuffer(buf)) {
+ buf = Buffer(buf);
+ }
+ crc = previous != null ? ~~previous : 0x0;
+ count = buf.length;
+ i = 0;
+ while (count > 0) {
+ code = crc >>> 8 & 0xFF;
+ code ^= buf[i++] & 0xFF;
+ code ^= code >>> 4;
+ crc = crc << 8 & 0xFFFF;
+ crc ^= code;
+ code = code << 5 & 0xFFFF;
+ crc ^= code;
+ code = code << 7 & 0xFFFF;
+ crc ^= code;
+ count--;
+ }
+ return crc;
+});