;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Normal SPI for W55RP20 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .program wiznet_spi_write_read .side_set 1 public write_bits: out pins, 1 side 0 jmp x-- write_bits side 1 set pins 0 side 0 public write_end: read_byte_delay: set pindirs 0 side 0 read_byte: set x 6 side 1 read_bits: in pins, 1 side 0 jmp x-- read_bits side 1 in pins, 1 side 0 jmp y-- read_byte side 0 public read_end: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; QSPI Single for W6300 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .program wizchip_pio_spi_single_write_read .side_set 1 public write_bits: out pins, 1 side 0 jmp x-- write_bits side 1 set pins 0 side 0 public write_bits_end: read_byte_delay: set pindirs 0 side 0 read_byte: set x 6 side 1 read_bits: in pins, 1 side 0 jmp x-- read_bits side 1 in pins, 1 side 0 jmp y-- read_byte side 0 public read_bits_end: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; QSPI Dual for W6300 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .program wizchip_pio_spi_dual_write_read .side_set 1 public write_bits: out pins, 2 side 0 jmp x-- write_bits side 1 set pins 0 side 0 public write_bits_end: read_byte_delay: set pindirs 0 side 0 read_byte: set x 2 side 1 read_bits: in pins, 2 side 0 jmp x-- read_bits side 1 in pins, 2 side 0 jmp y-- read_byte side 0 public read_bits_end: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; QSPI Quad for W6300 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .program wizchip_pio_spi_quad_write_read .side_set 1 write_bits: out pins, 4 side 0 jmp x-- write_bits side 1 set pins 0 side 0 public write_bits_end: read_byte_delay: set pindirs 0 side 0 read_byte: set x 0 side 1 read_bits: in pins, 4 side 0 jmp x-- read_bits side 1 in pins, 4 side 0 jmp y-- read_byte side 0 public read_bits_end: