diff --git a/CHANGELOG.md b/CHANGELOG.md index 5aa72f34..a1ee058d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ # splat Release Notes +* `spimdisasm` 1.36.1 or above is now required. + ### 0.35.2 * Miscellaneous updates to generated macro labels. diff --git a/pyproject.toml b/pyproject.toml index e2b78806..ffe71b92 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ dependencies = [ [project.optional-dependencies] mips = [ - "spimdisasm>=1.36.0,<2.0.0", # This value should be keep in sync with the version listed on disassembler/spimdisasm_disassembler.py + "spimdisasm>=1.36.1,<2.0.0", # This value should be keep in sync with the version listed on disassembler/spimdisasm_disassembler.py "rabbitizer>=1.12.0,<2.0.0", "pygfxd", "n64img>=0.3.3", diff --git a/requirements.txt b/requirements.txt index ccd1701d..9a5eb194 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ tqdm intervaltree colorama # This value should be keep in sync with the version listed on disassembler/spimdisasm_disassembler.py and pyproject.toml -spimdisasm>=1.36.0 +spimdisasm>=1.36.1 rabbitizer>=1.10.0 pygfxd n64img>=0.1.4 diff --git a/src/splat/disassembler/spimdisasm_disassembler.py b/src/splat/disassembler/spimdisasm_disassembler.py index a3a3d7fb..ee9ace98 100644 --- a/src/splat/disassembler/spimdisasm_disassembler.py +++ b/src/splat/disassembler/spimdisasm_disassembler.py @@ -7,7 +7,7 @@ class SpimdisasmDisassembler(disassembler.Disassembler): # This value should be kept in sync with the version listed on requirements.txt and pyproject.toml - SPIMDISASM_MIN = (1, 36, 0) + SPIMDISASM_MIN = (1, 36, 1) def configure(self): # Configure spimdisasm diff --git a/test/basic_app/expected/asm/data/main.bss.s b/test/basic_app/expected/asm/data/main.bss.s index a52bad12..5d552de0 100644 --- a/test/basic_app/expected/asm/data/main.bss.s +++ b/test/basic_app/expected/asm/data/main.bss.s @@ -2,6 +2,7 @@ .section .bss, "wa" -dlabel D_80000540 nonmatching D_80000540, 0x80 + +dlabel D_80000540 /* 80000540 */ .space 0x80 diff --git a/test/basic_app/expected/asm/data/main.data.s b/test/basic_app/expected/asm/data/main.data.s index 6e40e7c2..098ce2df 100644 --- a/test/basic_app/expected/asm/data/main.data.s +++ b/test/basic_app/expected/asm/data/main.data.s @@ -2,13 +2,15 @@ .section .data, "wa" -dlabel D_80000500 nonmatching D_80000500 + +dlabel D_80000500 /* 1100 80000500 00000001 */ .word 0x00000001 enddlabel D_80000500 -dlabel D_80000504 nonmatching D_80000504 + +dlabel D_80000504 /* 1104 80000504 00000000 */ .word 0x00000000 /* 1108 80000508 00000000 */ .word 0x00000000 /* 110C 8000050C 00000000 */ .word 0x00000000 diff --git a/test/basic_app/expected/asm/data/main.rodata.s b/test/basic_app/expected/asm/data/main.rodata.s index c4fe23d6..68041003 100644 --- a/test/basic_app/expected/asm/data/main.rodata.s +++ b/test/basic_app/expected/asm/data/main.rodata.s @@ -2,15 +2,17 @@ .section .rodata, "a" -dlabel D_80000510 nonmatching D_80000510 + +dlabel D_80000510 /* 1110 80000510 00010203 */ .word 0x00010203 /* 1114 80000514 04050607 */ .word 0x04050607 enddlabel D_80000510 .align 3 -dlabel jtbl_80000518 nonmatching jtbl_80000518 + +dlabel jtbl_80000518 /* 1118 80000518 80000448 */ .word .L80000448 /* 111C 8000051C 80000450 */ .word .L80000450 /* 1120 80000520 80000458 */ .word .L80000458 diff --git a/test/basic_app/expected/asm/handwritten.s b/test/basic_app/expected/asm/handwritten.s index 1190b276..4496e004 100644 --- a/test/basic_app/expected/asm/handwritten.s +++ b/test/basic_app/expected/asm/handwritten.s @@ -7,8 +7,9 @@ .section .text, "ax" /* Handwritten function */ -glabel func_800004F0 nonmatching func_800004F0, 0xC + +glabel func_800004F0 /* 10F0 800004F0 00851020 */ add $v0, $a0, $a1 /* handwritten instruction */ /* 10F4 800004F4 03E00008 */ jr $ra /* 10F8 800004F8 00000000 */ nop diff --git a/test/basic_app/expected/asm/main.s b/test/basic_app/expected/asm/main.s index 6340ffd2..586411ca 100644 --- a/test/basic_app/expected/asm/main.s +++ b/test/basic_app/expected/asm/main.s @@ -6,8 +6,9 @@ .section .text, "ax" -glabel func_80000400 nonmatching func_80000400, 0xA0 + +glabel func_80000400 /* 1000 80000400 27BDFFF8 */ addiu $sp, $sp, -0x8 /* 1004 80000404 AFBE0000 */ sw $fp, 0x0($sp) /* 1008 80000408 03A0F021 */ addu $fp, $sp, $zero @@ -60,8 +61,9 @@ nonmatching func_80000400, 0xA0 /* 109C 8000049C 27BD0008 */ addiu $sp, $sp, 0x8 endlabel func_80000400 -glabel func_800004A0 nonmatching func_800004A0, 0x4C + +glabel func_800004A0 /* 10A0 800004A0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 10A4 800004A4 AFBF0014 */ sw $ra, 0x14($sp) /* 10A8 800004A8 AFBE0010 */ sw $fp, 0x10($sp) diff --git a/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s b/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s index 46029c2d..a0aec0fc 100644 --- a/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s +++ b/test/basic_app/expected/asm/nonmatchings/main/D_80000510.s @@ -1,7 +1,8 @@ .section .rodata -dlabel D_80000510 nonmatching D_80000510 + +dlabel D_80000510 /* 1110 80000510 00010203 */ .word 0x00010203 /* 1114 80000514 04050607 */ .word 0x04050607 enddlabel D_80000510 diff --git a/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s b/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s index 7654daad..5888aa3f 100644 --- a/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s +++ b/test/basic_app/expected/asm/nonmatchings/main/func_80000400.s @@ -1,7 +1,8 @@ .section .rodata .align 3 -dlabel jtbl_80000518 nonmatching jtbl_80000518 + +dlabel jtbl_80000518 /* 1118 80000518 80000448 */ .word .L80000448 /* 111C 8000051C 80000450 */ .word .L80000450 /* 1120 80000520 80000458 */ .word .L80000458 @@ -16,8 +17,9 @@ enddlabel jtbl_80000518 .section .text -glabel func_80000400 nonmatching func_80000400, 0xA0 + +glabel func_80000400 /* 1000 80000400 27BDFFF8 */ addiu $sp, $sp, -0x8 /* 1004 80000404 AFBE0000 */ sw $fp, 0x0($sp) /* 1008 80000408 03A0F021 */ addu $fp, $sp, $zero diff --git a/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s b/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s index 3e7e3012..a59deb3b 100644 --- a/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s +++ b/test/basic_app/expected/asm/nonmatchings/main/func_800004A0.s @@ -1,5 +1,6 @@ -glabel func_800004A0 nonmatching func_800004A0, 0x4C + +glabel func_800004A0 /* 10A0 800004A0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 10A4 800004A4 AFBF0014 */ sw $ra, 0x14($sp) /* 10A8 800004A8 AFBE0010 */ sw $fp, 0x10($sp)