1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
|
Hexedit version 0.9.3 by Adam Rogoyski <apoc@laker.net> Temperanc on EFNet
Copyright (C) 1998, 1999 Adam Rogoyski
--- GNU General Public License Disclaimer ---
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
** THIS IS NOT THE OFFICIAL DOCUMENTATION **
I forget to update this file. The Texinfo or LaTeX documentation is what
is really worth reading. Look in docs/ directory.
Hexedit Version 0.9.3 is a full screen text mode Hex editor using the
curses library.
Hexedit needs to be run in a screen with at least 80 columns or it will
not look very good. At least an 80x10 screen minimum. It will look fine
at any larger modes. It should resize fine in an xterm.
I've built and tested this on the following systems:
Linux 2.0.36 i386 ncurses 4.2 (gcc)
Linux 2.2.3 i386 ncurses 4.2 (gcc)
OpenBSD 2.4 i386 ncurses (gcc)
SunOS 5.6 Sparc curses (gcc)
AIX 4.3.2 rs6000 curses (gcc and cc)
AIX 4.3.2 ppc curses (gcc and cc)
DOS 6.22 i386 pdcurses (djgpp gcc)
IRIX 6.3 mips curses (gcc)
HP-UX B.10.20 curses (gcc)
SunOS 5.5.1 sparc curses (gcc)
OSF V4.0 alpha curses (gcc)
COLOR:
SunOS/Solaris:
For color, try TERM=AT386, else vt100.
AIX Users:
You can use TERM=aixterm for color, but when not in X it seems
to get the colors mixed up.
LINUX USERS:
If the editor is not using the last line of the screen, you probably
didn't set your TERM environment to linux.
in bash: export TERM=linux
in tcsh: setenv TERM linux
Also try vt100 if linux doesn't work. Color seems to work with
TERM=linux.
Controls:
Maneuver Arrow Keys (or h,j,k.l), Home, End
Page Up Control-y, Control-b, Alt-v, Page Up, u, y
Page Down Control-v, Control-f, Page Down, v, space
Bytes <=> Text Tab, Control-i
Insert/Add Byte Control-a, Insert
Delete byte control-d, Delete
goTo Offset Control-t, t
Offset + Jump +, -, n (jump again)
Help Control-g
Redraw Screen Control-l
Save Control-o
Save and Quit Control-x
Quit (no save) Control-c
viEw as text Control-e
Search Control-w, w
find Next Control-n
Undo Control-u
ASCII <=> EBCDIC Control-R
Switch Spacing Control-P
Binary Calculator Control-/
NOTE:
- For some commands, Control-x, Control-g and Escape are cancel.
Escape may take a second to work. This is normal, it is how curses
works and deals with input I believe.
- Viewing as text may seem messed up when looking at big binary
chunks (why do you want to view this as text anyways?), but
it's fine. When looking at binary in text, I had to decide how
to display files with little or no newlines so that text
portions look ok and the same each time. So it looks back to the
last new line and starts from there. So the part you may want
to look at may not even be on the screen. To me, this isn't
a problem - It's a binary file, look at it in hex! Also, all non
printable characters, even newlines, are represented as "." even
in the full screen text mode.
NOTE: This only takes a snapshot of the current section, you cannot
use this feature as a file viewer of text. It just lets you see
a quick snapshot of what it would look like in text.
- Goto Offset command takes input as either Hex (i.e. 0xFF), Octal
(i.e. 0377) or Base 10 (i.e. 255). I know what you're thinking,
but no, strtol () does this for you.
- I put a few different ways to page up and down because most
people are used to vi or emacs. I personally like how pico is
set up. Any other resemblances to pico are purely my doing.
- Year 2000 compliant. =)
- Searching uses the Boyer-Moore search algorithm, and the whole
file is in memory, so it's fast. Real fast.
- Changes are highlighted in bold. If you insert or delete a byte,
all bold is removed until you change something else. This seems
like the best thing to do here. Or else I'd be highlighting all
the rest of the file.
- Undo: for undo, if the modified byte is on the screen, it is reverted
to its previous state. If it is not on the screen, you are brought
to the byte's location so it is viewable on the screen. The next
Undo command will revert the byte back to its previous state.
- Environment variable HEXEDIT can be used to save your command line
options. Example, export HEXEDIT=-8r would put hexedit into
read-only mode with 8-bit printing on by default.
BUGS - DRAWBACKS
- You currently can only edit files and disks up to 4.2 gigs.
- On SunOS if you use control-v for page down you have to do it
twice. This has to do with the terminal driver interpreting
Control-v for its purposes. If there is a portable way to
changes this let me know.
*** I've been informed that this is a normal terminal driver thingy.
Still, how do I get around it?
- I've had different results with older versions of ncurses. Tell
me if anything breaks. It should work though.
If there are any problems and bugs please send me mail so I can fix
them. If you have any extra computer stuff, money, guitar stuff,
or anything Stevie Ray Vaughan that you don't want please contact me.
Shameless plugs:
Video Game Expresss! http://www.vgeonline.com
Lisa Loeb Web Shrine http://www.lisaloeb.org
Author:
Adam Rogoyski <apoc@laker.net>
As of January 1999, I am a sophomore of Computer Science at the
Univeristy of Texas at Austin.
|