|
@@ -1,3 +1,5 @@
|
|
|
|
+#!/usr/bin/env python3
|
|
|
|
+
|
|
from __future__ import print_function
|
|
from __future__ import print_function
|
|
#
|
|
#
|
|
# Option ROM signing utility
|
|
# Option ROM signing utility
|
|
@@ -44,14 +46,8 @@
|
|
|
|
|
|
checksum = 0
|
|
checksum = 0
|
|
for b in data:
|
|
for b in data:
|
|
- # catch Python 2 vs. 3 differences
|
|
|
|
- if isinstance(b, int):
|
|
|
|
- checksum += b
|
|
|
|
- else:
|
|
|
|
- checksum += ord(b)
|
|
|
|
-checksum = (256 - checksum) % 256
|
|
|
|
-
|
|
|
|
-# Python 3 no longer allows chr(checksum)
|
|
|
|
|
|
+ checksum = (checksum - b) & 255
|
|
|
|
+
|
|
fout.write(struct.pack('B', checksum))
|
|
fout.write(struct.pack('B', checksum))
|
|
|
|
|
|
fin.close()
|
|
fin.close()
|