### Keyboard and Batch Commands

Following is a list of commands recognized in keyboard and batch modes. Note that the `radio` command must be given before any command, other than `gain`, `port`, `quit`, `trace` or `verbose`. Other than this, there are no restrictions on the order of these commands. The commands recognized in batch mode are any that are recognized in keyboard mode, except the `keypad` command, which puts the program in keypad mode. Note that several commands shown in the `?` help billboard, but not documented here, have not been tested.

`am [ offset ]`
  Select AM mode and set the BFO compensation to the argument given. If no argument is given, report the current offset, but only if it is nonzero. This is the same function as the keypad `m` command.
`ant [ antenna ]`
  Select one of the antennas listed by the help menu. If no argument is given, report the previous selection. This is identical to the keypad `a` command.
`atten [ code ]`
  Select one of the trace functions listed by the help menu. If no argument is given, report the previous selection.
`band [ lowfreq ] [ highfreq ]`
  Set the low and high band edges for step-scanning. If stepped above the high band edge, the frequency is set to the low band edge. If stepped below the low band edge, the frequency is set to the high band edge.
`chan [ channel ]`
  Select the memory channel and set the VFO frequency, mode and offset to its contents. If the argument is missing, refresh the last channel selected. This is the same function as the keypad `c` command and the channel selection buttons or knobs on the radio.
`clear [ channel ]`
  Clear the memory channel. If the argument is missing, clear the last channel selected. This is the same function as the keypad `x` command and the `CLEAR` button on the radio.
`comp [ frequency ]`
  Set the VFO compensation, in parts per million (PPM). If no argument is given, report the previous value.
`control [ code ]`
  Select the control function, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`cw [ offset ]`
  Select CW mode and set the BFO compensation to the argument given. If no argument is given, report the current offset, but only if it is nonzero.
`down`
  Shift the current frequency down one step and report the new value and current mode. This is the same function as the keypad DOWN arrow key.
`duplex [ offset ]`
  Set the transmit duplex offset for ICOM VHF/UHF transceivers. It is not clear how to set the `+-DUPLEX` switch.
`fm [ offset ]`
  Select FM mode and set the BFO compensation to the argument given. If no argument is given, report the current offset, but only if it is nonzero.
`freq [ frequency ] [ mode ]`
  Set the VFO frequency and select the mode/filter combination. The mode argument must be a member of the list displayed by the `mode ?` command. If no argument is given, report the current values. Note: In some ICOM radios it is not possible to set the frequency of the last channel less than that of the next-to-last channel. Presumably, this is to avoid abusing the internal scan feature of the radio.
`key [ text ]`
  Transmit the ASCII text of the argument in CW.
`keypad`
  Switch to keypad mode.
`lsb [ offset ]`
  Select LSB mode and set the BFO compensation to the argument given. If no argument is given, report the current offset, but only if it is nonzero. This is the same function as the keypad `l` command.
`meter [ code ]`
  Select the meter mode, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`mode [ mode ]`
  Select one of the mode/filter combinations listed by the help menu. If no argument is given, report the current selection.
`offset [ mode ]`
  Select one of the mode/filter combinations listed by the help menu. If no argument is given, report the current selection.
`probe [ mode ]`
  Select one of the functions listed by the help menu. If no argument is given, report the last selected function.
`quit`
  Exit the program and return control to the shell.
`rate [ rate ]`
  Set the tuning rate to a value between 0 and 12 corresponding to rates from the minimum tuning step to that value times 10,000. If no argument is given, report the current value.
`radio [ name ]`
  Select one of the radios listed by the help menu and display its capabilities, including the and upper and lower band limits, minimum tuning step and related data. This must be the first command in keyboard or batch modes. If the argument is missing, the description and band limits of the current selection are displayed.
`restore file [ first ] [ last ]`
  Restore the block of memory channels numbered from first to last, inclusive, from the named file, or until the end of file. If last is missing, restore only the channel number first. If both first and last are missing, restore all memory channels from channel 1 to the highest channel number, or until the end of file.
`rsplit [ offset ]`
  Set the receive VFO frequency from the transmit VFO frequency with optional offset in kHz; the transmitter will continue on the original frequency.
`rtty [ offset ]`
  Select CW mode and set the BFO compensation to the argument given. If no argument is given, report the current offset.
`save file [ first ] [ last ]`
  Save the block of memory channels numbered from first to last, inclusive, to the named file. If last is missing, save only the channel number first. If both first and last are missing, save all memory channels from channel 1 to the highest channel number. Note that cleared memory channels are not saved.
`say [ code ]`
  Select the announce function, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`meter [ code ]`
  Select the meter mode, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`scan [ code ]`
  Select the scan mode, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`step [ step ]`
  Set the tuning step used in keypad mode by the `UP` and `DOWN` keyboard arrow keys. The value temporarily replaces previous value set by the keyboard mode `rate` command or keypad mode `LEFT` and `RIGHT` keyboard keys. If the argument is missing, report the current step value.
`trace [ code ]`
  Select the CI-V bus trace function from the list displayed by the help menu. If no argument is given, report the previous selection command.
`tune [ code ]`
  Select the main radio dial tuning step, where the argument corresponds to a member in the list displayed by the help menu. If no argument is given, report the previous selection.
`up`
  Shift the current frequency down one step and report the new value and current mode. This is the same function as the keypad UP arrow key.
`usb [ offset ]`
  Select USB mode and set the BFO compensation to the argument given. If no argument is given, report the current offset, but only if it is nonzero. This is the same function as the keypad `u` command.
`verbose on | off ]`
  Set the verbose mode on or off. The default for batch mode is off; for keyboard and keypad modes, the default is on.
`write [ channel ]`
  Write the memory channel with the contents of the VFO, mode and transmit duplex offset, if present. If the argument is missing, write the last channel selected. This is the same function as the keypad `w` command and the `WRITE` button on the radio.
`xsplit [ offset ]`
  Set the transmit VFO frequency from the receive VFO frequency with optional offset in kHz; the receiver will continue on the original frequency.