Commit Graph

27 Commits

Author SHA1 Message Date
Gabriel Wang
ccc0ba5649
elf2uf2: correctly parse ELF files where the program header is not directly following the file header
fixes #506
2021-07-14 15:59:09 -05:00
graham sanderson
529d7087eb fix operatore precedence of */ vs +- in pioasm 2021-07-06 16:00:02 +01:00
Uri Shaked
4328b2c75f
fix pioasm python output (#479)
While working on the [online pioasm](https://wokwi.com/tools/pioasm), I found several PIO instructions that result in invalid python code. Here is a small program that demonstrate the issue:

```
.program python_issue

    push block
    wait 0 irq 1 rel
    irq clear 1 rel
```

And the resulting Python program:

```python
# -------------------------------------------------- #
# This file is autogenerated by pioasm; do not edit! #
# -------------------------------------------------- #

import rp2
from machine import Pin
# ----------- #
# python_test #
# ----------- #

@rp2.asm_pio()
def python_test():
    wrap_target()
    push(, block)                         # 0
    wait(0, irq, 1 rel)                   # 1
    irq(clear 1 rel)                      # 2
    wrap()
```

After this fix, the above program compiles to a valid python syntax:

```python
# -------------------------------------------------- #
# This file is autogenerated by pioasm; do not edit! #
# -------------------------------------------------- #

import rp2
from machine import Pin
# ----------- #
# python_test #
# ----------- #

@rp2.asm_pio()
def python_test():
    wrap_target()
    push(block)                           # 0
    wait(0, irq, rel(1))                  # 1
    irq(clear, rel(1))                    # 2
    wrap()
```
2021-06-07 22:02:04 -05:00
Jonathan Reichelt Gjertsen
a531123080
Prevent the literal string DEBUG from being appended to some messages in CMake < 3.15 (#433)
Fixes issue #422
2021-05-25 17:10:55 -05:00
Graham Sanderson
b6f812f647
Change various (confusing to user) message to be DEBUG only (#365) 2021-05-04 08:01:11 -05:00
Graham Sanderson
fd16563f8f
Merge pull request #299 from raspberrypi/back-merge-1.1.1
Back merge 1.1.1
2021-04-01 17:32:02 -05:00
Graham Sanderson
260128a725
fixup elf2uf2 to allow blocked_ram (flash) binaries (#294) 2021-04-01 15:03:04 -05:00
Christian Flach
090c5cd83b
pio: Add 'pragma once' to generated header files (#237)
We can't really use traditional include guards, because the header file may be piped to stdout (which means we might not have a file name).
2021-03-08 12:21:36 -06:00
Andrew Scheller
20b9823aca
Delete some redundant CMake parts (#240) 2021-03-08 12:02:22 -06:00
Andrew Scheller
f3ee2f311c Modify extract_configs.py to deal with _u(X) macros (#222) 2021-03-04 21:22:48 -06:00
Andrew Scheller
1413a4f470 Fixup PICO_CONFIG entries (#208)
* remove default=undefined
 * fix a couple of typos / syntax "errors"
 * perform even better default-value-checking in extract_configs.py
2021-03-04 21:22:48 -06:00
Andrew Scheller
a53b3a2ff0 extract_configs: Do better matching-up of default values (regex was too strict)
also error if PICO_CONFIG says there's a default but no matching #define is found
2021-03-04 21:22:48 -06:00
Peter Lawrence
173d63ef8d elf2uf2: fix address range bug 2021-03-04 21:22:48 -06:00
graham sanderson
1822d113d9 elf2uf2: fix breakage for no_flash builds; removep 0xFFFFFFFF constantds and error messsage 2021-03-04 21:22:48 -06:00
Peter Lawrence
cfff23c5a3 elf2uf2: determine entry address selected by Boot ROM (Plan B) 2021-03-04 21:22:48 -06:00
Peter Lawrence
ef030701c9 elf2uf2: determine entry address selected by Boot ROM 2021-03-04 21:22:48 -06:00
Jeremy Grosser
4639e75d0d pioasm: Ada output format 2021-03-04 21:22:48 -06:00
Luke Wren
df3e9c9536 Missing comma in pioasm python wait output 2021-03-04 21:22:48 -06:00
Graham Sanderson
0828178561 fixup not/reverse for pioasm python output (#146) 2021-03-04 21:22:48 -06:00
graham sanderson
2d5789eca8 remove static order dependency 2021-02-01 14:46:45 -06:00
graham sanderson
d131919a09 Fix python output of IN instruction in pioasm 2021-02-01 14:46:45 -06:00
Charlie Birks
dd2b7039a5 Remove a dependecy on Pioasm
This fixes the "'pioasm/pioasm.exe', needed by '...', missing and no known rule to make it" error with ninja.
2021-02-01 14:46:45 -06:00
graham sanderson
3e52e57f5f Standardise references to the Raspberry Pi Pico SDK 2021-02-01 14:46:45 -06:00
majbthrd
76b385bc26 elf2uf2: add the cache memory range described in Section 2.8.4.2 (#14)
* elf2uf2: add the cache memory range described in Section 2.8.4.2 of datasheet

* elf2uf2: update memory region nomenclature

* elf2uf2: update ROM size

* elf2uf2: use existing metadata to evaluate ram_style

Authored-by: Peter Lawrence <12226419+majbthrd@users.noreply.github.com>
2021-02-01 14:46:45 -06:00
Tristan Miller
7b97967fe4 Move irq rel flag to setting bit 4 instead of bit 5 2021-02-01 14:46:45 -06:00
Tristan Miller
da22bf95de Push/Pull disassembly no longer incorrectly concatenates operands in disassembly 2021-02-01 14:46:45 -06:00
graham sanderson
26653ea81e Initial Release 2021-01-20 10:44:27 -06:00