Ok, I did a little searching, and I think I found two more spawn functions. Take a look and see if they are the same you know. The 0x802F2C84 call of the "Hidden Red Coin Star Behavior" (Behav 0x3E8C) actually spawns many objects:
802F2CA0: LUI A0, 0x8036 <- A question about this. Is this the base address used when writing/reading from memory? That is, 0x80360000
802F2CA4: LUI A2, 0x1300 <- Behavior bank. This is a quite nice string to search when looking for spawn functions. Another way is to look for all the "JALs" below, they happen quite often.
802F2CA8: ADDIU A2, A2, 0x556C <- "Unknown" Behavior, but at least now we know it is related to the Hidden Red Coin Star Behavior.
802F2CAC: LW A0, 0x1160 (A0)
802F2CB0: JAL 0x8029EDCC
802F2CB4: ADDIU A1, R0, 0x0079 <- Model 79 = "Transparent Star". Hmm, so probably Behavior 0x556C is linked to the Transparent Star?
Maybe there is a branch code earlier, so the transparent star is actually skipped (ie, checks if you don't have the star).
802F2CB8: LUI A0, 0x1300
802F2CBC: JAL 0x8029FBDC <- Hmm, could this be another spawn function ? I found this one also on one of the "check points" code.
802F2CC0: ADDIU A0, A0, 0x3EAC <- Red coin behavior!
802F2CC4: SH V0, 0x0036 (SP)
802F2CC8: LH T7, 0x0036 (SP)
802F2CCC: BNEZ T7, 0x802F2D5C
802F2CD0: NOP
802F2CD4: LUI T8, 0x8036
802F2CD8: LW T8, 0x1160 (T8)
802F2CDC: LUI A3, 0x1300 <- Here we go again.
802F2CE0: ADDIU A3, A3, 0x3E3C <- Collect Star Behavior. It probably doesn't a model ID because the Collect Star behavior has it already hardcoded, hardcoded in one of its 0x0C calls.
[...] lots of code here [...]
802F2D30: JAL 0x8029E9AC -> Used a lot, probably another spawn function |