Code for PIC18F452.

Code:
subMSSP:  for 32 bits send/receive 4x
Low CS

SSPBUF = send_byte3 ' SEND DATA BYTE
While SSPSTAT.0 = 0: Wend ' WHILE TX/RX COMPLETE
receive_byte3 = SSPBUF

SSPBUF = send_byte2 ' SEND DATA BYTE
While SSPSTAT.0 = 0: Wend ' WHILE TX/RX COMPLETE
receive_byte2 = SSPBUF

SSPBUF = send_byte1 ' SEND DATA BYTE
While SSPSTAT.0 = 0: Wend ' WHILE TX/RX COMPLETE
receive_byte1 = SSPBUF

SSPBUF = send_byte0 ' SEND DATA BYTE
While SSPSTAT.0 = 0: Wend ' WHILE TX/RX COMPLETE
receive_byte0 = SSPBUF
        
High CS  

Return
See page 130 of 452 data sheet for your SPI configuration of
SSPSTAT = %01000000
SSPCON1 = %00100010

Norm