Comparing version 4.0.0 to 4.1.0
@@ -17,2 +17,4 @@ export interface IOptions { | ||
wasPseudoOpCreated: boolean; | ||
definitionFilename: string | undefined; | ||
definitionLineNumber: number; | ||
} | ||
@@ -19,0 +21,0 @@ export interface ILine { |
@@ -23,7 +23,7 @@ var dasm = require("./dasm"); | ||
var lineNumberFind = /^\s+([0-9]+)\s/; | ||
var unknownFind = /^\s*[0-9]+\s*[0-9A-Fa-f]{4,5}\s\?{4}/; | ||
var addressFind = /^\s*[0-9]+\s*([0-9A-Fa-fU]{4,5})/; | ||
var unknownFind = /^\s*[0-9]+\s*[0-9A-Fa-fUuDd%]{4,5}\s\?{4}/; | ||
var addressFind = /^\s*[0-9]+\s*([0-9A-Fa-fUuDd%]{4,5})/; | ||
var commentFind = /;(.*)$/; | ||
var byteCodeFind = /^.*\t\t *([0-9a-fA-F ]+)\t/; | ||
var commandFind = /.*?\t\t.*?\t([^;]*)/; | ||
var byteCodeFind = /^\s+[0-9]+\s+[0-9a-fFuUdD%]{4,5}(\s\?{4}|\t)\t *([^;\t]*)/; | ||
var commandFind = /^\s+[0-9]+\s+[0-9a-fFuUdD%]{4,5}(\s\?{4}|\t)\t *([^;\t]*)\t([^;\n]*)(;|$)/; | ||
var errorFind = /^[\w\.]* \(([0-9]+)\): error: (.*)/; | ||
@@ -84,3 +84,3 @@ var abortFind = /^Aborting assembly/; | ||
if (byteMatches) { | ||
bytes = parseBytes(byteMatches[1]); | ||
bytes = parseBytes(byteMatches[2]); | ||
} | ||
@@ -90,3 +90,3 @@ // Commands | ||
if (commandMatches) { | ||
command = commandMatches[1]; | ||
command = commandMatches[3]; | ||
if (!command.trim()) | ||
@@ -274,3 +274,3 @@ command = undefined; | ||
} | ||
function parseSymbols(symbolsFile) { | ||
function parseSymbols(symbolsFile, list) { | ||
var symbols = []; | ||
@@ -280,7 +280,17 @@ var lines = symbolsFile.split("\n"); | ||
if (line.length === 47 && line.substr(0, 3) !== "---") { | ||
var name_1 = line.substr(0, 25).trim(); | ||
var value = line.substr(25, 4).trim(); | ||
var isLabel = value.substr(0, 1) === "f"; | ||
var flags = line.substr(44, 2).trim(); | ||
var definitionFilename = undefined; | ||
var definitionLineNumber = -1; | ||
if (list) { | ||
var definitionLine = list.find(function (listLine) { return Boolean(listLine.command) && listLine.command.trim().substr(0, name_1.length) === name_1; }); | ||
if (definitionLine) { | ||
definitionFilename = definitionLine.filename; | ||
definitionLineNumber = definitionLine.number; | ||
} | ||
} | ||
symbols.push({ | ||
name: line.substr(0, 25).trim(), | ||
name: name_1, | ||
isLabel: isLabel, | ||
@@ -291,2 +301,4 @@ isConstant: !isLabel, | ||
wasPseudoOpCreated: Boolean(flags.match(/s/i)), | ||
definitionFilename: definitionFilename, | ||
definitionLineNumber: definitionLineNumber, | ||
}); | ||
@@ -394,3 +406,3 @@ } | ||
listRaw: listFile, | ||
symbols: symbolsFile ? parseSymbols(symbolsFile) : undefined, | ||
symbols: symbolsFile ? parseSymbols(symbolsFile, list) : undefined, | ||
symbolsRaw: symbolsFile, | ||
@@ -397,0 +409,0 @@ exitStatus: Module.getStatus(), |
{ | ||
"name": "dasm", | ||
"version": "4.0.0", | ||
"version": "4.1.0", | ||
"description": "An emscripten-compiled version of the dasm macro assembler", | ||
@@ -5,0 +5,0 @@ "main": "./lib/index.js", |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
723126
17599