OpenBoot 3.x Command Reference Manual

Using dload to Load From Ethernet

dload loads files over Ethernet at a specified address, as shown below.

ok 4000 dload filename

In the above example, filename must be relative to the server's root. Use 4000 (hex) as the address for dload input. dload uses the trivial file transfer protocol (TFTP), so the server may need to have its permissions adjusted for this to work.

Forth Programs

Forth programs loaded with dload must be ASCII files beginning with the two characters "\ " (backslash and space). To execute the loaded Forth program, type:

ok 4000 file-size @ eval

In the above example, file-size contains the size of the loaded image.

FCode Programs

FCode programs loaded with dload must be Client program header files. To execute the loaded FCode program, type:

ok 4000 1 byte-load

byte-load is used by OpenBoot to interpret FCode programs on expansion boards such as SBus. The 1 in the example is a specific value of a parameter that specifies the separation between FCode bytes in the general case. Since dload loads into system memory, 1 is the correct spacing.

Binary Executables

dload requires binary programs to be in Client program header. Executable binary programs loaded must be either linked to dload's input address (e.g., 4000) or be position independent. To execute the binary program, type:

ok go

To run the program again, type:

ok init-program go

dload does not use intermediate booters (unlike the boot command). Thus, any symbol information included in the Client program header file is available to the User Interface's symbolic debugging capability. (See Chapter 6, Debugging for more information on symbolic debugging.)