home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of A1200
/
World_Of_A1200.iso
/
programs
/
disk
/
misc
/
tracked
/
tracked.doc
< prev
next >
Wrap
Text File
|
1995-02-27
|
12KB
|
262 lines
The program TrackEd is Freeware. You may copy and use TrackEd if
you stick with the following rules:
1) No profit is made by selling TrackEd to others. A small fee
for copying, disk costs etc. may be asked. This should not
be more than $5.
2) TrackEd is distributed in its original form. No changes are
made and this file must be distributed with it. If possible,
distribute also the source files with it.
3) TrackEd is not distributed as part of a commercial product,
unless you have the written permission of the author.
4) When you modify the source code and release a new version of
TrackEd, the author should be notified and his name has to
remain mentioned in the 'About'-text in the program.
5) The author can not be held responsible for damage or data
loss, which are caused by failures in the program, incorrect
use of the program, errors in the manual or any other
reason.
6) TrackEd is Freeware. This means you need not to pay for
using it. However, if you appreciate this program and like
to see new versions or other improvements, it is not
forbidden to send cash of any kind to the author. If you
have any bug reports or suggestions for improvement then
they are even more welcome and you can send me a letter to
the address at the end of this file.
1 Introduction
TrackEd is a program which allows you to read, edit and write
sectors of Amiga floppy disks. One sector at a time can be read
into the buffer and can be edited in hexadecimal or ASCII mode.
Sectors can be saved and loaded to disk files, or can be put in a
second buffer. You can read sectors from all DFx: devices that
are connected to your Amiga system.
Data and strings can be searched on the whole disk or just a part
of it. String search can be executed in three different modes.
This program requires OS Release 2 or higher to operate.
2 How to use TrackEd
You can start TrackEd from the Workbench by double-clicking on
its icon, or from the CLI by just giving the command 'TrackEd'. A
window will be opened which shows a big box with numbers, four
buttons for the drives df0: to df3: (the buttons belonging to not
connected drives will be disabled) and three button sets to
change current track, sector and block. If no DFx: units are
found the program will terminate. (This is possible if you have a
harddrive or a RAD:-disk and you disabled your internal and
external drives with the setup-menu in OS2.0). The program will
read block 880 (the root-block) of the first connected drive
unit, generally df0:. You can change drive by clicking on the
drive buttons. The current block displayed can be changed by
changing the number in the track, sector or block gadgets. Note
that the maximum track value is 159, the maximum sector value is
10 and the maximum block value is 1759. You can change these
numbers also by pressing the arrow buttons next to the number
gadgets. The block number is not independent of the track and
sector's values. The block number can be calculated with the
formula:
block = 11*track + sector.
On the other hand, if you change the value in the block gadget,
the track and sector gadget will be changed to match this
formula.
To read the desired sector, you can change the track and sector
values or the block value, whatever seems to be the easiest.
Whenever you change one of these values, the new sector will be
read into the buffer and displayed in the window. Only half of
the buffer contents can be showed in the window at a time. To see
more, use the proportional gadget right to the buffer-window.
The buffer contents can be edited by typing hexadecimal digits in
the number part of the window, or by typing ASCII-characters in
the most right column. If you have entered a character, the
cursor will proceed to the character right from the one you just
entered. If you reach the end of the row, or if you pressed the
return-key, the cursor will proceed to the next line, but will
remain in the same column you were in. So if you want to type a
long string in the ASCII-part, you can just keep typing until the
string is complete, or you have reached the end of the buffer.
The cursor can be moved with the cursor keys, the backspace key
and the return key. You can also get to a certain position
quickly, by clicking on the desired position with the mouse.
3 Menu functions
The menu has four main menus:
- Project | About
| Quit
- Sector | Read again
| Write back
| Load from file
| Save to file
| Calculate Checksum
- Buffer | Read from buffer
| Write to buffer
- Search | Search string
| Search number
3.1 Project
'About' shows the current version of TrackEd, when it was last
changed and the author's name.
'Quit' closes the window and exits TrackEd. 'Quit' will not ask
you to confirm if you really want to quit, so do not select this
menuitem if you made important changes in the buffer that were
not updated to disk.
3.2 Sector
'Read again' will the selected sector again. Use this as an undo
function.
'Write back' will write the buffer back to the selected sector.
If you want to write the buffer to another sector or to another
disk, see the 'Buffer'-menu.
'Load from file' will load data from a file into the buffer. If
the size of the file is greater than one sector (= 512 bytes)
only the first 512 bytes will be read. If the size is smaller,
the whole file will be read and a warning will be displayed.
'Load from file' uses the ASL filerequester. If you want to use
this function, you'll need to have "asl.library" installed in
your LIBS: directory.
'Save to file' will save the contents of the buffer to a file.
The size of this file will always be 512 bytes.
'Calculate checksum' will calculate the checksum of the buffer.
the Checksum will be placed into the fifth longword. Use this
function only if you are sure the sector needs a Checksum.
IMPORTANT NOTE: the bootblock uses a different checksum formula.
NEVER use the 'Calculate checksum' on a bootblock.
(Unfortunately, I could nowhere find documentation on the formula
for the bootblock checksum. If someone knows this formula, please
send me a letter with the formula explained to the address
displaced below).
3.3 Buffer
'Read from buffer' will load data from a second buffer into the
sector buffer. This second buffer will initially contain only
zeroes.
'Write to buffer' will copy the contents from the sector-buffer
into the second buffer.
You can use these read/write functions to store an edited track
before you make uncertain changes. The main reason why I
implemented these functions, is that it allows you to transfer a
sector to a different track or disk.
For example, you could read block 880 into the buffer and place
it into the second buffer with "Write to buffer'. The you could
select another drive or another block, let's say block 1759. This
block will be read into the buffer and displayed in the window.
You can now use 'Read from buffer' to copy the contents of block
880 into the buffer. If you would select 'Write back' now, you
would have copied block 880 to 1759.
3.4 Search
Search has two items: 'Search string' and 'Search number'. These
work roughly in a similar way.
'Search string' opens a requester. You can change the start and
end track, the string and the mode. To start searching press
'Start' or press 'Cancel' to abort the search.
The start and end track define the tracks that are to be
searched. These are by default 0 and 159, so if you do not change
them, the whole disk will be searched.
In the string box type the string you want to search. In what
manner this one will be interpreted is dependent of the search
mode.
If you select 'A = a' then no distinction will be made between
capital and non-capital characters. "aMIgA" could be found with
"AMIGA" as search string.
However if you select "A <> a" then this distinction will be
made. If your search string is "Amiga" then "amiga" will not be
found. If you are not sure if the searched word contains capital
characters, use 'A = a' mode or search only the last characters
of a word. For example you could find "Amiga" and "amiga" with
the search string "miga".
The most complex mode is the 'Relative' mode. In this mode a
series of characters will be searched that have the same mutual
differences between each other, but that do not need to have the
same absolute values. For example, if your search string is
"AMIGA" you could also find "amiga" or "BNJHB", but you will not
find "Amiga" or "aMIgA". Use this mode if you suspect the
searched string is not stored using ASCII-code, but another code
in which the characters a-z are numbered in increasing order.
If you have pressed 'Start' the search will begin. A requester
will show the current track that is examined. Pressing the
'Abort' button will cause the search to be aborted without any
result.
If the string is found a message will be displayed and the sector
it was found in will be read into the buffer. The data from the
sector previously stored in the buffer will be lost! The cursor
will be placed at the first character of the search string in the
ASCII-column.
If the last track was examined and the string wa still not found
a message will be displayed and the buffer will still contain the
sector it contained before the search.
'Search number' works the same as 'Search string' apart from the
fact that it searches integer values instead of text. Therefore
'Search number' works in only one mode. The number(s) to be
searched have to be entered in the same box as in which the
search string in 'String search' was entered. You are allowed to
use three different data formats: hexadecimal, decimal and ASCII.
To search a decimal value, just enter the value in the box. For a
hexadecimal value, the value should be preceded by a dollar sign
($). An ASCII value is inserted between two quotes (').
A decimal vaule will be converted to a byte, word or longword,
depending on its value. So if you want to search a word with the
value 27, you have to enter two decimal values: 0 and 27.
The hexadecimale values will be split in seperate bytes. If the
number of digits after the $-sign is odd, then an extra 0 will be
placed in front of the other digits. So if you search a word
with the value of 260, you could enter $0104 or just $104, or
even $1 $4.
The ASCII values will be converted to their ASCII-codes. More
ASCII characters may be inserted between the quotes. 'ABC' will
be converted to three bytes: 65 66 67.
In one search more formats may be used. I will give some examples
of legimate search values and the converted values:
$43 -> $43
43 -> $2B
$143 143 -> $01 $43 $8F
$434445 -> $43 $44 $45
4425797 (= $434445) -> $00 $43 $44 $45 (!)
'C' 'c' -> $43 $63
'Amiga' -> $41 $6D $69 $67 $61
67 $43 'C' -> $43 $43 $43
$0043 -> $00 $43
$00043 -> $00 $00 $43
If the number is found, the sector it is in will be read into the
buffer and the cursor will be placed at the first searched byte
in the hexadecimal column.
It is possible as well in string as in number search that the
searched data is stored in two adjacent sectors. Then the sector
will be read in which the first byte of the data was found.
4
I hope I have informed you clear enough how to work with TrackEd.
If you have any suggestions about improvements or if you have
discovered any bugs or errors, I would be pleased to know about
them and you can send me a letter to:
Camiel Rouweler
Weldam 2
5655 JG Eindhoven
the Netherlands