acidportal- 😈 Worlds smallest Evil Portal on a LilyGo T-QT |
git clone git://git.acid.vegas/acidportal.git |
Log | Files | Refs | Archive | README | LICENSE |
pio_16bit_parallel.pio.h (2227B)
1 // -------------------------------------------------- // 2 // This file is autogenerated by pioasm; do not edit! // 3 // 16 bit parallel // 4 // -------------------------------------------------- // 5 6 #pragma once 7 8 #if !PICO_NO_HARDWARE 9 #include "hardware/pio.h" 10 #endif 11 12 // ------ // 13 // tft_io // 14 // ------ // 15 16 #define tft_io_wrap_target 7 17 #define tft_io_wrap 20 18 #define tft_io_offset_block_fill 0u 19 #define tft_io_offset_start_8 7u 20 #define tft_io_offset_start_tx 7u 21 #define tft_io_offset_set_addr_window 10u 22 23 static const uint16_t tft_io_program_instructions[] = { 24 0x98a0, // 0: pull block side 1 25 0xa027, // 1: mov x, osr 26 0x80a0, // 2: pull block 27 0xa047, // 3: mov y, osr 28 0xb8e1, // 4: mov osr, x side 1 29 0x7100, // 5: out pins, 32 side 0 [1] 30 0x1884, // 6: jmp y--, 4 side 1 31 // .wrap_target 32 0x98a0, // 7: pull block side 1 33 0x7100, // 8: out pins, 32 side 0 [1] 34 0x1807, // 9: jmp 7 side 1 35 0xf822, // 10: set x, 2 side 1 36 0xe000, // 11: set pins, 0 37 0x80a0, // 12: pull block 38 0x7000, // 13: out pins, 32 side 0 39 0x0033, // 14: jmp !x, 19 40 0x98a0, // 15: pull block side 1 41 0xe001, // 16: set pins, 1 42 0x7108, // 17: out pins, 8 side 0 [1] 43 0x19f1, // 18: jmp !osre, 17 side 1 [1] 44 0x184b, // 19: jmp x--, 11 side 1 45 0xe001, // 20: set pins, 1 46 // .wrap 47 }; 48 49 #if !PICO_NO_HARDWARE 50 static const struct pio_program tft_io_program = { 51 .instructions = tft_io_program_instructions, 52 .length = 21, 53 .origin = -1, 54 }; 55 56 static inline pio_sm_config tft_io_program_get_default_config(uint offset) { 57 pio_sm_config c = pio_get_default_sm_config(); 58 sm_config_set_wrap(&c, offset + tft_io_wrap_target, offset + tft_io_wrap); 59 sm_config_set_sideset(&c, 2, true, false); 60 return c; 61 } 62 #endif