Intel XENIX 286 Programmers Guide (86) - Tenox.tc

Intel XENIX 286 Programmers Guide (86) - Tenox.tc Intel XENIX 286 Programmers Guide (86) - Tenox.tc

09.06.2013 Views

XENIX Programming Programming Commands adb (continued) The format letters available are as follows: o 2 Prints 2 bytes in octal. All octal numbers output by adb are preceded by 0. 0 4 Prints 4 bytes in octal. q 2 Prints in signed octal. Q 4 Prints long signed octal. d 2 Prints in decimal. D 4 Prints long decimal. x 2 Prints 2 bytes in hexadecimal. X 4 Prints 4 bytes in hexadecimal. u 2 Prints a an unsigned decimal number. U 4 Prints long unsigned decimal. f 4 Prints the 32-bit value as a floating-point nu mber. F 8 Prints double floating point. b 1 Prints the addressed byte in octal. c 1 Prints the addressed character. C 1 Prints the addressed character using the following escape convention. Character values 000 to 040 are printed as an at sign (@.) followed by the corresponding character in the octal range 0100 to 0140. The at sign character itself is printed as @.@.. s n Prints the addressed characters until a zero character is reached. S n Prints a string using the at sign (@.) escape convention. Here, n is the length of the string including its zero terminator. Y 4 Prints 4 bytes in date format. (See ctime in "System Functions" in the XENIX 286 C Library Guide.) i n Prints as machine instructions. n is the nu mber of bytes occupied by the instruction. This style of printing causes variables 1 and 2 to be set to the offset parts of the source and destination respectively. B-5

Programming Commands XENIX Programming adb (continued) a 0 Prints the value of dot in symbolic form. Symbols are checked to ensure that they have an appropriate type as indicated below. I local or global data symbol ? local or global text symbol = local or global absolute symbol A 0 Prints the value of dot in absolute form. p 2 Prints the addressed value in symbolic form using the same rules for symbol lookup as a. t 0 Tabs to the next appropriate tab stop when preceded by an integer. For example, 8t moves to the next 8-space tab stop. r 0 Prints a space. n 0 Prints a newline. 'string' 0 Prints the enclosed string. Decrements dot by the current increment. Nothing is printed. + Increments dot by 1. Nothing is printed. Decrements dot by 1. Nothing is printed. newline If the previous command temporarily incremented dot, makes the increment permanent. Repeat the previous command with a count of 1. [?/]1 value [ mask ] Words starting at dot are masked with mask and compared with value until a match is found. If L is used, then the match is for 4 bytes at a time instead of 2. If no match is found, then dot is unchanged; otherwise, dot is set to the matched location. If mask is omitted, then -1 is used. [?l]w value ••• Writes the 2-byte value into the addressed location. If the command is W, writes 4 bytes. Odd addresses are not allowed when writing to the subprocess address space. [?/]m segnum fpos [ size ] Sets new values for the given segment's file position and size. If size is not given, then only the file position is changed. segnum must be the segment nu mber of a segment already in the memory map. (See the "Addresses" section later in this entry.) If ? is given, a text segment is affected; if I is given, a data segment is affected. B-6

Programming Commands <strong>XENIX</strong> Programming<br />

adb (continued)<br />

a 0 Prints the value of dot in symbolic form. Symbols are checked to ensure that they<br />

have an appropriate type as indicated below.<br />

I local or global data symbol<br />

? local or global text symbol<br />

= local or global absolute symbol<br />

A 0 Prints the value of dot in absolute form.<br />

p 2 Prints the addressed value in symbolic form using the same rules for symbol<br />

lookup as a.<br />

t 0 Tabs to the next appropriate tab stop when preceded by an integer. For example,<br />

8t moves to the next 8-space tab stop.<br />

r 0 Prints a space.<br />

n 0 Prints a newline.<br />

'string' 0<br />

Prints the enclosed string.<br />

Decrements dot by the current increment. Nothing is printed.<br />

+ Increments dot by 1. Nothing is printed.<br />

Decrements dot by 1. Nothing is printed.<br />

newline<br />

If the previous command temporarily incremented dot, makes the increment<br />

permanent. Repeat the previous command with a count of 1.<br />

[?/]1 value [ mask ]<br />

Words starting at dot are masked with mask and compared with value until a<br />

ma<strong>tc</strong>h is found. If L is used, then the ma<strong>tc</strong>h is for 4 bytes at a time instead of 2.<br />

If no ma<strong>tc</strong>h is found, then dot is unchanged; otherwise, dot is set to the ma<strong>tc</strong>hed<br />

location. If mask is omitted, then -1 is used.<br />

[?l]w value •••<br />

Writes the 2-byte value into the addressed location. If the command is W, writes<br />

4 bytes. Odd addresses are not allowed when writing to the subprocess address<br />

space.<br />

[?/]m segnum fpos [ size ]<br />

Sets new values for the given segment's file position and size. If size is not<br />

given, then only the file position is changed. segnum must be the segment<br />

nu mber of a segment already in the memory map. (See the "Addresses" section<br />

later in this entry.) If ? is given, a text segment is affected; if I is given, a data<br />

segment is affected.<br />

B-6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!