With certain restrictions, it is also possible to analyze files which are not stored in the BS2000 dump format. This function is provided primarily intended for an “emergency analysis” of damaged dump files.
The statement OPEN-DIAGNOSIS-OBJECT filename(KIND-OF-OBJECT=*PAM)
can be used to open any disk file in PAM format. The file itself can, of course, also be a SAM or ISAM file.
During processing, all DAMP functions which do not require the file to be diagnosed to have a normal BS2000 structure can be used, i.e. it is possible
to display PAM pages of the file in the usual formats (D, H, C, ...) in various dump windows
to (manually) assign any symbol file for symbolic editing
to search for strings (
START-PATTERN-SEARCH
) using wildcards, with restriction of the search area also being possibleto output edited PAM page ranges to SYSLST
to use procedures written in the diagnostic language PRODAMP.
With respect to addressing, PAM files differ from BS2000 files in the following respects:
PAM page numbers
PAM page numbers are used instead of the module-relative addresses normally used for BS2000 dumps. The PAM page is entered in the form P-XXXXXX (hexadecimal page number) as of column 1 of the title line of a dump window. The first page of a file is the page P-000001.
Absolute addresses
For absolute addressing, the entire file is regarded as an unstructured “stream” of bytes. The absolute address numbers these bytes (starting with 0) throughout the file. The absolute address of the first byte on page P is thus A = ( P - 1 ) * 2048. Absolute addresses may be entered in column 40 of the title line of a dump window.
When address fields are marked, addressing via PAM pages is used, i.e. the rightmost three bytes of the marked word are interpreted as a page number and this page is assigned to the appropriate window. This corresponds, for example, to the method used to represent chaining in dump files via PAM pages.
When memory segments are output to SYSLST, only entire PAM pages are output. For this reason, page numbers (without “P-”) must be entered in LIST windows.
There are two ways of searching for strings:
within a single page whose page number is specified
as absolute addresses within a segment whose limits are specified.
In the case of large files, the length of a data section may exceed the 4-GB boundary. Since the absolute addresses used in DAMP cannot be greater than this, an internal segment number is used to distinguish between the 4-GB segments. When a PAM page number is specified, the correct segment is selected automatically. The absolute addresses are then relative to the start of the segment. With
START-PATTERN-SEARCH
, it is possible to enter a segment number for the search explicitly.
The stack window (W3) and most of the function-specific windows of DAMP assume that the object to be diagnosed has a BS2000 structure. Consequently, these windows cannot be used to process files in PAM format.
When processing PAM files, the status window (W2) contains information on the currently open file itself, e.g. the file size and the last-page pointer.