aboutsummaryrefslogtreecommitdiff
path: root/samyle/hexedit.ey
diff options
context:
space:
mode:
authorDrahflow <drahflow@gmx.de>2014-05-28 00:21:19 +0200
committerDrahflow <drahflow@gmx.de>2014-05-28 00:21:19 +0200
commit8df51c3d165c9c225e51d502b8816998f25ea2a2 (patch)
tree932d37ece575157b33bc33273d6c2218778a447d /samyle/hexedit.ey
parent67450c10e3cce51ea1204cee511902c25b725fad (diff)
Initial commit.
Diffstat (limited to 'samyle/hexedit.ey')
-rw-r--r--samyle/hexedit.ey34
1 files changed, 34 insertions, 0 deletions
diff --git a/samyle/hexedit.ey b/samyle/hexedit.ey
new file mode 100644
index 0000000..170c3eb
--- /dev/null
+++ b/samyle/hexedit.ey
@@ -0,0 +1,34 @@
+<
+ terminal "$" via $styling "$:" via
+ utils "$$" via
+ locations .cursor "<>" via
+
+ 1 neg ==CRAPFILE
+
+ {
+ locations .cursor .byte _ ==addr 16 div 16 mul 128 sub ==base
+
+ $clear
+ 0 16 range { ==y
+ 0 16 range { ==x
+ x 3 mul 1 add y 1 add $goto
+
+ { $$memory $$toHexSave $out } base y 16 mul add x add _ addr eq $:reverseIf
+ } each
+ } each
+ } /display deffd
+
+ { ==k
+ [
+ { 0 k * 106 eq } { <>byte 16 add <>gotoByte }
+ { 0 k * 107 eq } { <>byte 16 sub <>gotoByte }
+ { 0 k * 108 eq } { <>byte 1 add <>gotoByte }
+ { 0 k * 104 eq } { <>byte 1 sub <>gotoByte }
+ ] conds
+ display
+ } /handle deffd
+
+ { _ "" eq |display |handle ? * }
+> -- /hexedit deffd
+
+# vim: syn=elymas