1
0
Fork 0
mirror of https://github.com/notwa/mm synced 2024-11-04 22:49:03 -08:00

misc asm cleanup

This commit is contained in:
Connor Olding 2016-04-14 17:02:37 -07:00
parent beac40d4c6
commit c8dbc6dd98
3 changed files with 2 additions and 65 deletions

View file

@ -42,32 +42,6 @@ str:
.include "simple text.asm"
ObjectSpawnWrap:
// keep track of which objects we're spawning
// TODO: reset count on scene change
push 4, ra, 1
// stuff for jump-only hook
//li a0, 0x802237C4
//mov a1, a3
//beqi a1, 2, + // don't bother loading gameplay_field_keep
lwu t0, spawn_count
sll t2, t0, 1
la t1, spawned
addu t1, t1, t2
addiu t0, t0, 1
sw t0, spawn_count
sh a1, 0(t1)
jal @ObjectSpawn
nop
+:
jpop 4, ra, 1
spawn_count:
.word 0
spawned:
.halfword 0, 0, 0, 0, 0, 0, 0, 0
// keep track of where we are in the buffer
buffer_pos:
.word 0
@ -93,39 +67,3 @@ copy_loop:
sw t0, buffer_pos
jr
nop
// force objects to load
/* jump-only hook
.org 0x80098180
j ObjectSpawnWrap
nop
*/
.org @ObjectIndex
// we have space for 22 instructions
push 4, ra, 1
//sll a1, a1, 0x10
//sra a1, a1, 0x10
mov t0, a0
lbu t1, 8(a0) // remaining items
cl v0
-:
lh t2, 12(t0) // item's object number
// t2 = abs(t2)
bgez t2, +
nop
subu t2, r0, t2
+:
beq a1, t2, +
subi t1, t1, 1
addiu v0, v0, 1
addi t0, t0, 68
bnez t1, -
nop
jal ObjectSpawnWrap
nop
//subiu v0, r0, -1
+:
jpop 4, ra, 1
// 19 words

View file

@ -2,7 +2,7 @@
require "lib.setup"
require "boilerplate"
local buffer = 0x700070
local buffer = 0x700180
local vfc = A(0x168960, 4)

View file

@ -1,5 +1,4 @@
; note: we check the first byte here to determine if we've been loaded already
.word 0xDEADBEEF ; so this can't be 0x00xxxxxx
.word 0xDEADBEEF
whatever: ; debugging stuff
.word 0