make client functions parameterizable by version

This commit is contained in:
Martin Michelsen
2025-06-01 20:50:48 -07:00
parent 1a6b26e56b
commit bee4c55446
453 changed files with 3636 additions and 21378 deletions
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x48027985 # 8000BF48 => bl +0x00027984 /* 800338CC */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80111038 (4 bytes)
.data 0x80111038 # address
.data 0x00000004 # size
.data 0x4BEFAEF8 # 80111038 => b -0x00105108 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x48027985 # 8000BF48 => bl +0x00027984 /* 800338CC */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80111038 (4 bytes)
.data 0x80111038 # address
.data 0x00000004 # size
.data 0x4BEFAEF8 # 80111038 => b -0x00105108 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x4802794D # 8000BF48 => bl +0x0002794C /* 80033894 */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80110F30 (4 bytes)
.data 0x80110F30 # address
.data 0x00000004 # size
.data 0x4BEFB000 # 80110F30 => b -0x00105000 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x48027765 # 8000BF48 => bl +0x00027764 /* 800336AC */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80110D94 (4 bytes)
.data 0x80110D94 # address
.data 0x00000004 # size
.data 0x4BEFB19C # 80110D94 => b -0x00104E64 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x48027795 # 8000BF48 => bl +0x00027794 /* 800336DC */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80110F94 (4 bytes)
.data 0x80110F94 # address
.data 0x00000004 # size
.data 0x4BEFAF9C # 80110F94 => b -0x00105064 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x480277B1 # 8000BF48 => bl +0x000277B0 /* 800336F8 */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80111080 (4 bytes)
.data 0x80111080 # address
.data 0x00000004 # size
.data 0x4BEFAEB0 # 80111080 => b -0x00105150 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x48027745 # 8000BF48 => bl +0x00027744 /* 8003368C */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80110F20 (4 bytes)
.data 0x80110F20 # address
.data 0x00000004 # size
.data 0x4BEFB010 # 80110F20 => b -0x00104FF0 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -1,32 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
# region @ 8000BF30 (44 bytes)
.data 0x8000BF30 # address
.data 0x0000002C # size
.data 0x9421FFF0 # 8000BF30 => stwu [r1 - 0x0010], r1
.data 0x7C0802A6 # 8000BF34 => mflr r0
.data 0x90010014 # 8000BF38 => stw [r1 + 0x0014], r0
.data 0x3C600002 # 8000BF3C => lis r3, 0x0002
.data 0x60632825 # 8000BF40 => ori r3, r3, 0x2825
.data 0x38800000 # 8000BF44 => li r4, 0x0000
.data 0x480279C5 # 8000BF48 => bl +0x000279C4 /* 8003390C */
.data 0x80010014 # 8000BF4C => lwz r0, [r1 + 0x0014]
.data 0x7C0803A6 # 8000BF50 => mtlr r0
.data 0x38210010 # 8000BF54 => addi r1, r1, 0x0010
.data 0x4E800020 # 8000BF58 => blr
# region @ 80111114 (4 bytes)
.data 0x80111114 # address
.data 0x00000004 # size
.data 0x4BEFAE1C # 80111114 => b -0x001051E4 /* 8000BF30 */
# end sentinel
.data 0x00000000 # address
.data 0x00000000 # size
@@ -0,0 +1,33 @@
.meta name="Mag alert"
.meta description="Plays a sound when\nyour Mag is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
.versions 3OJ2 3OJ3 3OJ4 3OJ5 3OE0 3OE1 3OE2 3OP0
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksGC
.label play_sound, <VERS 0x800336AC 0x800336DC 0x800336F8 0x8003368C 0x800338CC 0x800338CC 0x80033894 0x8003390C>
.data 0x8000BF30
.deltaof code_start, code_end
.address 0x8000BF30
code_start:
lis r3, 0x0002
ori r3, r3, 0x2825
li r4, 0
b play_sound
code_end:
.data <VERS 0x80110D94 0x80110F94 0x80111080 0x80110F20 0x80111038 0x80111038 0x80110F30 0x80111114>
.data 0x00000004
.address <VERS 0x80110D94 0x80110F94 0x80111080 0x80110F20 0x80111038 0x80111038 0x80110F30 0x80111114>
b code_start
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181065
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x00181202
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181261
.data 0x0000000F
.binary 048D50BA90B12E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181095
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x00181232
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181291
.data 0x0000000F
.binary 048D50BAB0B32E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00180EF5
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x00181092
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x001810F1
.data 0x0000000F
.binary 048D50BA30922E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181075
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x00181212
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181271
.data 0x0000000F
.binary 048D50BAB09D2E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181125
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x001812C2
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181321
.data 0x0000000F
.binary 048D50BA90B32E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181085
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x00181222
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181281
.data 0x0000000F
.binary 048D50BAC0B12E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -1,27 +0,0 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data 0x00181055
.data 0x0000000A
.binary E998010000CCCC83C410
.data 0x001811F2
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data 0x00181251
.data 0x0000000F
.binary 048D50BAE0B32E00FFD2E9FCFDFFFF
.data 0x00000000
.data 0x00000000
@@ -0,0 +1,29 @@
.meta name="MAG alert"
.meta description="Plays a sound when\nyour MAG is hungry"
# Original code by Ralf @ GC-Forever and Aleron Ives
# https://www.gc-forever.com/forums/viewtopic.php?t=2050
# https://www.gc-forever.com/forums/viewtopic.php?t=2049
# Xbox port by fuzziqersoftware
.versions 4OJB 4OJD 4OJU 4OED 4OEU 4OPD 4OPU
entry_ptr:
reloc0:
.offsetof start
start:
.include WriteCodeBlocksXB
.data <VERS 0x00180EF5 0x00181075 0x00181125 0x00181065 0x00181095 0x00181085 0x00181055>
.data 0x0000000A
.binary E998010000CCCC83C410
.data <VERS 0x00181092 0x00181212 0x001812C2 0x00181202 0x00181232 0x00181222 0x001811F2>
.data 0x0000000D
.binary 31C0898694010000505050EB52
.data <VERS 0x001810F1 0x00181271 0x00181321 0x00181261 0x00181291 0x00181281 0x00181251>
.data 0x0000000F
.binary <VERS 048D50BA30922E00FFD2E9FCFDFFFF 048D50BAB09D2E00FFD2E9FCFDFFFF 048D50BA90B32E00FFD2E9FCFDFFFF 048D50BA90B12E00FFD2E9FCFDFFFF 048D50BAB0B32E00FFD2E9FCFDFFFF 048D50BAC0B12E00FFD2E9FCFDFFFF 048D50BAE0B32E00FFD2E9FCFDFFFF>
.data 0x00000000
.data 0x00000000