splat64 0.34.0__tar.gz → 0.34.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {splat64-0.34.0 → splat64-0.34.2}/CHANGELOG.md +15 -3
- {splat64-0.34.0 → splat64-0.34.2}/PKG-INFO +2 -2
- {splat64-0.34.0 → splat64-0.34.2}/README.md +1 -1
- {splat64-0.34.0 → splat64-0.34.2}/pyproject.toml +1 -1
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/__init__.py +1 -1
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/scripts/split.py +5 -2
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/segment.py +20 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/log.py +12 -1
- {splat64-0.34.0 → splat64-0.34.2}/test.py +9 -10
- {splat64-0.34.0 → splat64-0.34.2}/.gitattributes +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/black.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/mypy.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/publish_docs_to_wiki.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/pypi.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/test_lib.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.github/workflows/unit_tests.yml +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/.gitignore +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/LICENSE +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/create_config.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Adding-Symbols.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Advanced.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Configuration.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Examples.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/General-Workflow.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Home.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Quickstart.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/Segments.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/docs/VramClasses.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/mypy.ini +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/requirements.txt +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/split.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/__main__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/disassembler.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/disassembler_instance.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/disassembler_section.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/null_disassembler.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/disassembler/spimdisasm_disassembler.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/platforms/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/platforms/n64.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/platforms/ps2.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/platforms/psp.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/platforms/psx.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/py.typed +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/scripts/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/scripts/capy.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/scripts/create_config.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/asm.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/asmtu.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/bin.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/bss.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/c.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/code.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/codesubsegment.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/cpp.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/data.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/databin.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/eh_frame.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/gcc_except_table.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/group.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/hasm.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/header.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/lib.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/linker_offset.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/pad.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/rdata.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/rodata.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/rodatabin.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/sbss.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/sdata.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/segment.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/common/textbin.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/linker_entry.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ci.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ci4.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ci8.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/decompressor.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/gfx.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/header.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/i1.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/i4.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/i8.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ia16.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ia4.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ia8.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/img.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/ipl3.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/mio0.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/palette.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/rgba16.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/rgba32.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/rsp.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/vtx.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/n64/yay0.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/ps2/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/ps2/ctor.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/ps2/lit4.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/ps2/lit8.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/ps2/vtables.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/psp/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/psx/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/segtypes/psx/header.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/cache_handler.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/color.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/compiler.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/conf.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/n64/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/n64/find_code_length.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/n64/rominfo.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/options.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/palettes.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/progress_bar.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/psx/__init__.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/psx/psxexeinfo.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/relocs.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/statistics.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/symbols.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/utils.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/src/splat/util/vram_classes.py +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/Dockerfile +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/README.md +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/.gitignore +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/Makefile +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/build/basic_app.bin +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/dummy_ipl3.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/.splache +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/data/main.bss.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/data/main.data.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/data/main.rodata.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/handwritten.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/header.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/main.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/assets/dummy_ipl3.bin +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/basic_app.d +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/build/test/basic_app/split/src/main.asmproc.d +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/src/main.c +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/undefined_funcs_auto.txt +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/undefined_syms_auto.txt +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/handwritten.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/header.s +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/basic_app/main.c +0 -0
- {splat64-0.34.0 → splat64-0.34.2}/test/test_gen_expected.sh +0 -0
|
@@ -1,14 +1,26 @@
|
|
|
1
1
|
# splat Release Notes
|
|
2
2
|
|
|
3
|
+
### 0.34.2
|
|
4
|
+
|
|
5
|
+
* Emit an error if a top-level segment containing bss sections does not specify a `bss_size` value.
|
|
6
|
+
* Emit an error if a bss section is outside the address space of its parent segment.
|
|
7
|
+
|
|
8
|
+
### 0.34.1
|
|
9
|
+
|
|
10
|
+
* Deprecate `--stdout-only` cli flag. Changed output such that errors and warnings go to stderr and all other output goes to stdout.
|
|
11
|
+
|
|
3
12
|
### 0.34.0
|
|
4
|
-
|
|
5
|
-
*
|
|
13
|
+
|
|
14
|
+
* Add new global option `is_unsupported_platform`. If enabled, disable checks on platform option.
|
|
15
|
+
* Add new global option `allow_segment_overrides`. If enabled, allows to take precedence over the splat builtin platform segments via splat extension.
|
|
6
16
|
|
|
7
17
|
### 0.33.2
|
|
18
|
+
|
|
8
19
|
* Change `make_full_disasm_for_code` to output other sections for the TU in addition to .text.
|
|
9
20
|
|
|
10
21
|
### 0.33.1
|
|
11
|
-
|
|
22
|
+
|
|
23
|
+
* Fix `hasm` segments overwriting files already on disk.
|
|
12
24
|
|
|
13
25
|
### 0.33.0
|
|
14
26
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: splat64
|
|
3
|
-
Version: 0.34.
|
|
3
|
+
Version: 0.34.2
|
|
4
4
|
Summary: A binary splitting tool to assist with decompilation and modding projects
|
|
5
5
|
Project-URL: Repository, https://github.com/ethteck/splat
|
|
6
6
|
Project-URL: Issues, https://github.com/ethteck/splat/issues
|
|
@@ -76,7 +76,7 @@ The brackets corresponds to the optional dependencies to install while installin
|
|
|
76
76
|
If you use a `requirements.txt` file in your repository, then you can add this library with the following line:
|
|
77
77
|
|
|
78
78
|
```txt
|
|
79
|
-
splat64[mips]>=0.34.
|
|
79
|
+
splat64[mips]>=0.34.2,<1.0.0
|
|
80
80
|
```
|
|
81
81
|
|
|
82
82
|
### Optional dependencies
|
|
@@ -21,7 +21,7 @@ The brackets corresponds to the optional dependencies to install while installin
|
|
|
21
21
|
If you use a `requirements.txt` file in your repository, then you can add this library with the following line:
|
|
22
22
|
|
|
23
23
|
```txt
|
|
24
|
-
splat64[mips]>=0.34.
|
|
24
|
+
splat64[mips]>=0.34.2,<1.0.0
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
### Optional dependencies
|
|
@@ -452,7 +452,8 @@ def main(
|
|
|
452
452
|
make_full_disasm_for_code=False,
|
|
453
453
|
):
|
|
454
454
|
if stdout_only:
|
|
455
|
-
|
|
455
|
+
log.write("--stdout-only flag is deprecated", status="warn")
|
|
456
|
+
progress_bar.out_file = sys.stdout
|
|
456
457
|
|
|
457
458
|
# Load config
|
|
458
459
|
global config
|
|
@@ -538,7 +539,9 @@ def add_arguments_to_parser(parser: argparse.ArgumentParser):
|
|
|
538
539
|
help="Skips the disassembler's version check",
|
|
539
540
|
)
|
|
540
541
|
parser.add_argument(
|
|
541
|
-
"--stdout-only",
|
|
542
|
+
"--stdout-only",
|
|
543
|
+
help="Print all output to stdout (deprecated)",
|
|
544
|
+
action="store_true",
|
|
542
545
|
)
|
|
543
546
|
parser.add_argument(
|
|
544
547
|
"--disassemble-all",
|
|
@@ -414,6 +414,26 @@ class Segment:
|
|
|
414
414
|
|
|
415
415
|
ret.parent = parent
|
|
416
416
|
|
|
417
|
+
# Import here to avoid circular imports
|
|
418
|
+
from .common.code import CommonSegCode
|
|
419
|
+
from .common.bss import CommonSegBss
|
|
420
|
+
|
|
421
|
+
if options.opts.ld_bss_is_noload and isinstance(ret, CommonSegBss):
|
|
422
|
+
# We need to know the bss space for the segment.
|
|
423
|
+
if isinstance(parent, CommonSegCode):
|
|
424
|
+
if parent.bss_size <= 0:
|
|
425
|
+
log.error(
|
|
426
|
+
f"Top-level segment '{parent.name}' is missing a `bss_size` value.\n A non-zero `bss_size` value must be defined on the top-level segments that contain '{ret.type}' sections (produced by the '{ret.name}' section)."
|
|
427
|
+
)
|
|
428
|
+
if (
|
|
429
|
+
isinstance(ret.vram_start, int)
|
|
430
|
+
and isinstance(parent.vram_end, int)
|
|
431
|
+
and ret.vram_start >= parent.vram_end
|
|
432
|
+
):
|
|
433
|
+
log.error(
|
|
434
|
+
f"The section '{ret.name}' (vram 0x{ret.vram_start:08X}) is outside its parent's address range '{parent.name}' (0x{parent.vram_start:08X} ~ 0x{parent.vram_end:08X}).\n This may happen when the specified `bss_size` value is too small."
|
|
435
|
+
)
|
|
436
|
+
|
|
417
437
|
ret.given_section_order = parse_segment_section_order(yaml)
|
|
418
438
|
ret.given_subalign = parse_segment_subalign(yaml)
|
|
419
439
|
|
|
@@ -18,7 +18,12 @@ def write(*args, status=None, **kwargs):
|
|
|
18
18
|
print("")
|
|
19
19
|
newline = True
|
|
20
20
|
|
|
21
|
-
print(
|
|
21
|
+
print(
|
|
22
|
+
status_to_ansi(status) + str(args[0]),
|
|
23
|
+
*args[1:],
|
|
24
|
+
**kwargs,
|
|
25
|
+
file=output_file(status),
|
|
26
|
+
)
|
|
22
27
|
|
|
23
28
|
|
|
24
29
|
def error(*args, **kwargs) -> NoReturn:
|
|
@@ -44,3 +49,9 @@ def status_to_ansi(status: Status):
|
|
|
44
49
|
return Style.DIM
|
|
45
50
|
else:
|
|
46
51
|
return ""
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
def output_file(status: Status):
|
|
55
|
+
if status == "warn" or status == "error":
|
|
56
|
+
return sys.stderr
|
|
57
|
+
return sys.stdout
|
|
@@ -456,11 +456,11 @@ class InitializeSpimContext(unittest.TestCase):
|
|
|
456
456
|
|
|
457
457
|
all_segments: List["Segment"] = [
|
|
458
458
|
CommonSegCode(
|
|
459
|
-
rom_start=
|
|
460
|
-
rom_end=
|
|
459
|
+
rom_start=0x1000,
|
|
460
|
+
rom_end=0x1140,
|
|
461
461
|
type="code",
|
|
462
462
|
name="main",
|
|
463
|
-
vram_start=
|
|
463
|
+
vram_start=0x80000400,
|
|
464
464
|
args=[],
|
|
465
465
|
yaml=yaml,
|
|
466
466
|
)
|
|
@@ -472,7 +472,7 @@ class InitializeSpimContext(unittest.TestCase):
|
|
|
472
472
|
symbols.initialize_spim_context(all_segments)
|
|
473
473
|
# spim should have added something to overlaySegments
|
|
474
474
|
assert (
|
|
475
|
-
type(symbols.spim_context.overlaySegments["overlay"][
|
|
475
|
+
type(symbols.spim_context.overlaySegments["overlay"][0x1000])
|
|
476
476
|
== spimdisasm.common.SymbolsSegment
|
|
477
477
|
)
|
|
478
478
|
|
|
@@ -485,22 +485,21 @@ class InitializeSpimContext(unittest.TestCase):
|
|
|
485
485
|
"name": "boot",
|
|
486
486
|
"type": "code",
|
|
487
487
|
"start": 0x1000,
|
|
488
|
-
"vram":
|
|
488
|
+
"vram": 0x100,
|
|
489
489
|
"bss_size": 0x80,
|
|
490
|
-
"exclusive_ram_id": "overlay",
|
|
491
490
|
"subsegments": [
|
|
492
491
|
[0x1000, "c", "main"],
|
|
493
492
|
[0x10F0, "hasm", "handwritten"],
|
|
494
493
|
[0x1100, "data", "main"],
|
|
495
494
|
[0x1110, ".rodata", "main"],
|
|
496
|
-
{"start": 0x1140, "type": "bss", "vram":
|
|
495
|
+
{"start": 0x1140, "type": "bss", "vram": 0x240, "name": "main"},
|
|
497
496
|
],
|
|
498
497
|
}
|
|
499
498
|
|
|
500
499
|
all_segments: List["Segment"] = [
|
|
501
500
|
CommonSegCode(
|
|
502
|
-
rom_start=
|
|
503
|
-
rom_end=
|
|
501
|
+
rom_start=0x1000,
|
|
502
|
+
rom_end=0x1140,
|
|
504
503
|
type="code",
|
|
505
504
|
name="main",
|
|
506
505
|
vram_start=0x100,
|
|
@@ -513,7 +512,7 @@ class InitializeSpimContext(unittest.TestCase):
|
|
|
513
512
|
assert symbols.spim_context.globalSegment.vramEnd == 0x80001000
|
|
514
513
|
symbols.initialize_spim_context(all_segments)
|
|
515
514
|
assert symbols.spim_context.globalSegment.vramStart == 0x100
|
|
516
|
-
assert symbols.spim_context.globalSegment.vramEnd ==
|
|
515
|
+
assert symbols.spim_context.globalSegment.vramEnd == 0x2C0
|
|
517
516
|
|
|
518
517
|
|
|
519
518
|
if __name__ == "__main__":
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s
RENAMED
|
File without changes
|
{splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s
RENAMED
|
File without changes
|
{splat64-0.34.0 → splat64-0.34.2}/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|