PadInit: addiu sp, sp, -24 li v0, -1 sw ra, 16(sp) lui at, _hi(PadIdentifier) sw a0, _lo(PadIdentifier)(at) lui at, _hi(sectbase(.bss)) jal ResetCallback sw v0, _lo(sectbase(.bss))(at) lui a0, $2000 lui a1, _hi(sectbase(.bss)) addiu a1, a1, _lo(sectbase(.bss)) jal PAD_init ori a0, a0, $0001 jal ChangeClearPAD move a0, zero lw ra, 16(sp) addiu sp, sp, 24 jr ra nop |
static u_long pad_buf; int PadIdentifier; void PadInit(int mode) { PadIdentifier = mode; pad_buf = -1; ResetCallback(); PAD_init(0x20000001, &pad_buf); ChangeClearPAD(0); } |
PadInit: subu sp, sp, 24 li v0, -1 sw ra, 16(sp) sw a0, PadIdentifier sw v0, pad_buf jal ResetCallback li a0, 0x20000000 la a1, pad_buf jal PAD_init ori a0, a0, 0x0001 jal ChangeClearPAD move a0, zero lw ra, 16(sp) addu sp, sp, 24 jr ra nop |