I am trying to write some code in PBPpro from an example in C.
I have got so far but am not familiar with C.
They give the packet structure and an example, but I cannot decipher what the code is doing before retrieving a value from a lookup table, and hopefully someone will be able to assist me here.

Any help greatly appreciated.

By the way, attachment is copyright Atomos Pty, Australia.


Code:
CHKSUM		VAR LONG
VALUE		VAR LONG
COMMAND		VAR WORD
SIZE		        VAR WORD
TEMP_W		VAR WORD
TEMP_B		VAR BYTE
BUFFER		VAR BYTE [21]

SEND:		 SIZE = $14
			COMMAND = 0
			VALUE = 1
			
			BUFFER [1] = SIZE.BYTE1
			BUFFER [2] = SIZE.BYTE0
			BUFFER [3] = COMMAND.BYTE1
			BUFFER [4] = COMMAND.BYTE0
			BUFFER [5] = $FF
			BUFFER [6] = $FF
			BUFFER [7] = $FF
			BUFFER [8] = $FF
			BUFFER [9] = $FF
			BUFFER [10] = $FF
			BUFFER [11] = $FF
			BUFFER [12] = $FF
			BUFFER [13] = VALUE.BYTE3
			BUFFER [14] = VALUE.BYTE2
			BUFFER [15] = VALUE.BYTE1
			BUFFER [16] = VALUE.BYTE0
			
			SOMEVALUE = ' <insert converted C code here >
			GOSUB LOOK_CHKSUM
			
			BUFFER [17] = CHKSUM.BYTE3
			BUFFER [18] = CHKSUM.BYTE2
			BUFFER [19] = CHKSUM.BYTE1
			BUFFER [20] = CHKSUM.BYTE0
			
			
			FOR TEMP_W = 1 TO SIZE
				TEMP_B = BUFFER [TEMP_W]
				HSEROUT [TEMP_B]
			NEXT
			GOTO MAIN_LOOP
			
			
LOOK_CHKSUM:
                        LOOKUP2 SOMEVALUE,_
				[$0000, $1021, $2042, etc ], CHKSUM
			RETURN