mirror of
https://github.com/espruino/Espruino.git
synced 2025-12-08 19:06:15 +00:00
fix hex parsing code in helpful scripts
This commit is contained in:
parent
e8f7e9c1e5
commit
4b1301f8ed
@ -16,16 +16,17 @@ if (process.argv.length!=3) {
|
||||
var inputFile = process.argv[2];
|
||||
|
||||
var hex = require("fs").readFileSync(inputFile).toString().split("\n");
|
||||
var addrHi = 0;
|
||||
function parseLines(dataCallback) {
|
||||
var addrHi = 0;
|
||||
hex.forEach(function(hexline) {
|
||||
var cmd = hexline.substr(1,2);
|
||||
if (cmd=="02") {
|
||||
var subcmd = hexline.substr(7,2);
|
||||
if (subcmd=="02") addrHi = parseInt(hexline.substr(9,4),16) << 4; // Extended Segment Address
|
||||
if (subcmd=="04") addrHi = parseInt(hexline.substr(9,4),16) << 16; // Extended Linear Address
|
||||
} else if (cmd=="10") {
|
||||
var addr = addrHi + parseInt(hexline.substr(3,4),16);
|
||||
if (DEBUG) console.log(hexline);
|
||||
var bytes = hexline.substr(1,2);
|
||||
var addrLo = parseInt(hexline.substr(3,4),16);
|
||||
var cmd = hexline.substr(7,2);
|
||||
if (cmd=="02") addrHi = parseInt(hexline.substr(9,4),16) << 4; // Extended Segment Address
|
||||
else if (cmd=="04") addrHi = parseInt(hexline.substr(9,4),16) << 16; // Extended Linear Address
|
||||
else if (cmd=="00") {
|
||||
var addr = addrHi + addrLo;
|
||||
var data = [];
|
||||
for (var i=0;i<16;i++) data.push(parseInt(hexline.substr(9+(i*2),2),16));
|
||||
dataCallback(addr,data);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user