The use of dials is described in the manual under 2.4 and commands 3.17.6-8. I'm not sure if i can make it clearer. There are 20 logical inputs; 8 are permanently assigned. When a user activates a command that needs dial input, then the other logical inputs get assigned on the fly. It is not a simple matter of using the next free one, e.g. the move_zon command needs 6 inputs, but the programs assigns 4 and 4 to get the moves and the rotations all on the same 4 dials of the box. When a command finishes, it releases its allocated dials. Therfore, you cannot be sure that a particular command will ALWAYS use the same logical dial values !
The program resets the mapping of logical/physical dials as best it can by the use of 'dial boxes'. There are 4 of them, needed to map to the total of 20 logical dials. In O 5.9 these are controlled by the .boxI datablock where I has the value 1/2/3/4. The user can set up ANY mapping between physical dials and logical ones. Since the program uses .box1-4 it is wise to call your personal preferences .boxJ where j>4.