acid-drop

- Hacking the planet from a LilyGo T-Deck using custom firmware
git clone git://git.acid.vegas/acid-drop.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