Here's a description of FileCore hard disc boot blocks:

The boot block is at location &c00-&e00 on the disc.

The PRM page 1014 gives a description of the boot block and defect list
contained in it, but does not explain the check byte at the end of the boot
block. The last byte of the boot block is a check sum byte whose value is
calculated as follows:
Perform an 8 bit add with carry on each of the other bytes in the block,
starting with value 0.

In assembler this is what it looks like:
; entry: R0=start, R1=block length
; exit:  R0,R1 preserved, R2=checksum

CheckSum ROUT
        STMFD   R13!, {R1, LR}

        ADDS    LR, R0, R1      ;->end+1      C=0
        SUB     R1, LR, #1      ;->check byte
        MOV     R2, #0
        B       %FT20
10
        LDRB    LR, [R1,#-1] !  ;get next byte
        ADC     R2, R2, LR      ;add into checksum
        MOVS    R2, R2, LSL #24 ;bit 8 = carry
        MOV     R2, R2, LSR #24
20
        TEQS    R0, R1
        BNE     %BT10           ;loop until done

        LDMFD   R13!, {R1, LR}

Note that the checksum doesn't include the last byte!
