aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--helpers/ChangeLog1
-rw-r--r--helpers/fixdump.awk142
2 files changed, 72 insertions, 71 deletions
diff --git a/helpers/ChangeLog b/helpers/ChangeLog
index ed6b7adc..7ffbe62e 100644
--- a/helpers/ChangeLog
+++ b/helpers/ChangeLog
@@ -2,6 +2,7 @@
* fixdump.awk (translate): Remove extraneous spaces in
prints of code targets.
+ * fixdump.awk: Convert to normal Unix line endings.
2015-08-28 Daniel Richard G. <skunk@iSKUNK.ORG>
diff --git a/helpers/fixdump.awk b/helpers/fixdump.awk
index d0190969..3ec502d2 100644
--- a/helpers/fixdump.awk
+++ b/helpers/fixdump.awk
@@ -1,71 +1,71 @@
-#! /usr/bin/gawk -f
-
-BEGIN {
- address_re = "0x[[:xdigit:]]+"
- bracketed_address = "\\[(([[:space:]]*[[:digit:]]*:)?|[[:alpha:]_]+ = )0x[[:xdigit:]]+\\]"
-}
-
-{
- line[NR] = $0
- extract_addresses($0, NR)
-}
-
-END {
- for (i = 1; i <= NR; i++) {
- if (line[i] !~ address_re) {
- print line[i]
- continue
- }
-
- translate(line[i])
- }
-}
-
-# Global arrays
-#
-# Address[line] --- Address of instruction - first hex number
-# Target[address] = 1 --- Address is target of a jump
-# Newaddr[address] --- Replacement address, counting from 1
-
-function extract_addresses(line, num, data, i, n, seps, addr)
-{
- if (line !~ address_re)
- return
-
- split(line, data, bracketed_address, seps)
- n = length(seps)
-
- for (i = 1; i <= n; i++) {
- addr = gensub(".*(" address_re ").*", "\\1", 1, seps[i])
- if (i == 1)
- Address[num] = addr
- else {
- Target[addr]++
- if (! (addr in Newaddr))
- Newaddr[addr] = new_address()
- }
- }
-}
-
-function new_address()
-{
- return sprintf("%8d", ++Address_seed)
-}
-
-function translate(line, n, data, seps, i, newline)
-{
- split(line, data, address_re, seps)
- n = length(seps)
- newline = line
- for (i = 1; i <= n; i++) {
- if (! (seps[i] in Target)) {
- gsub(seps[i], " ", newline)
- continue
- }
- gsub(seps[i], Newaddr[seps[i]], newline)
- }
-
- gsub(/ = +/, " = ", newline)
-
- print newline
-}
+#! /usr/bin/gawk -f
+
+BEGIN {
+ address_re = "0x[[:xdigit:]]+"
+ bracketed_address = "\\[(([[:space:]]*[[:digit:]]*:)?|[[:alpha:]_]+ = )0x[[:xdigit:]]+\\]"
+}
+
+{
+ line[NR] = $0
+ extract_addresses($0, NR)
+}
+
+END {
+ for (i = 1; i <= NR; i++) {
+ if (line[i] !~ address_re) {
+ print line[i]
+ continue
+ }
+
+ translate(line[i])
+ }
+}
+
+# Global arrays
+#
+# Address[line] --- Address of instruction - first hex number
+# Target[address] = 1 --- Address is target of a jump
+# Newaddr[address] --- Replacement address, counting from 1
+
+function extract_addresses(line, num, data, i, n, seps, addr)
+{
+ if (line !~ address_re)
+ return
+
+ split(line, data, bracketed_address, seps)
+ n = length(seps)
+
+ for (i = 1; i <= n; i++) {
+ addr = gensub(".*(" address_re ").*", "\\1", 1, seps[i])
+ if (i == 1)
+ Address[num] = addr
+ else {
+ Target[addr]++
+ if (! (addr in Newaddr))
+ Newaddr[addr] = new_address()
+ }
+ }
+}
+
+function new_address()
+{
+ return sprintf("%8d", ++Address_seed)
+}
+
+function translate(line, n, data, seps, i, newline)
+{
+ split(line, data, address_re, seps)
+ n = length(seps)
+ newline = line
+ for (i = 1; i <= n; i++) {
+ if (! (seps[i] in Target)) {
+ gsub(seps[i], " ", newline)
+ continue
+ }
+ gsub(seps[i], Newaddr[seps[i]], newline)
+ }
+
+ gsub(/ = +/, " = ", newline)
+
+ print newline
+}