The boot command will load and start a program.
boot [options] path [args]...
|path||path to the file to be loaded|
|args||arguments sent to the started program as argv|
The boot command is similar to the load command except that it also starts execution of the program that has been loaded.
The command can read raw binary files, S-Record files and files in the ELF format as used in:
- Algorithmics SDE-MIPS
- newer SGI compilers
- systems compliant with the MIPS/ABI standard
- older MIPS ECOFF format
- OpenBSD PowerPC, ARM and MIPS 32Bit ELF.
- Some Linux for PowerPC implementations
PMON2000 extracts any symbol table information from these files, and adds it to the target symbol table. Optionally the symbol table can be loaded after the loaded program image in a way suitable for for example OpenBSD and other operating systems built in debuggers. This function is activated by using the -k option.
The boot command normally clears the symbol table, exception handlers, and all breakpoints. The -s and -b options suppress the clearing of the symbol table and breakpoints, respectively. The value of the cpc register is set automatically to the entry point of the program. Therefore, to execute the downloaded program, only the g command is required. This is particularly useful when an mage has been loaded into flash ROM.
The boot command may return a large number of different error messages, relating to network problems or file access permissions on the remote host. For a file to be loaded via TFTP it must be publicly readable, and it may have to be in a directory which is acceptable to the remote server.
The -f (flash_load) option tells the boot wrapper to network load an image into the flash ROM area designated as an address argument. The area specified must be large enough to accept the image. The are specified will first be erased, then the image loaded and then verified. PMON2000 uses some temporary RAM to hold the image so it is important that the amount of free RAM exceed the size of the image (and the the flash area). This is rarely violated.
The boot command will detect cases where the program being loaded would overwrite PMON2000s crucial data or heap. Re-linking your program at a different (higher) address usually solves the problem.
The boot command uses bootfile environment variable.
The load command.