URL
https://opencores.org/ocsvn/usb_nand_reader/usb_nand_reader/trunk
Subversion Repositories usb_nand_reader
[/] [usb_nand_reader/] [trunk/] [mini32/] [MINI32_NAND_Controller.lst] - Rev 7
Compare with Previous | Blame | View Log
; LST file generated by mikroListExporter - v.2.0
; Date/Time: 17.10.2016 9:31:28
;----------------------------------------------
;Address Opcode ASM
____SysVT:
0x9FC01180 0x0B401086 J ___GenExcept
0x9FC01184 0x70000000 NOP
; end of ____SysVT
____BootVT:
0xBFC00380 0x3C1E9D00 LUI R30, 40192
0xBFC00384 0x37DE4230 ORI R30, R30, 16944
0xBFC00388 0x03C00008 JR R30
0xBFC0038C 0x70000000 NOP
; end of ____BootVT
_main:
;main.c, 48 :: void main(void)
0x9D004248 0x27BDFFFC ADDIU SP, SP, -4
0x9D00424C 0x0F40128F JAL 2634041916
0x9D004250 0x70000000 NOP
;main.c, 50 :: char hasId = 0;
0x9D004254 0x0000F00A MOVZ R30, R0, R0
0x9D004258 0xA3BE0002 SB R30, 2(SP)
0x9D00425C 0x0000F00A MOVZ R30, R0, R0
0x9D004260 0xA3BE0003 SB R30, 3(SP)
;main.c, 51 :: char hasOnfiParameterPage = 0;
;main.c, 53 :: AD1PCFG = 0xFFFF;
0x9D004264 0x3402FFFF ORI R2, R0, 65535
0x9D004268 0x3C1EBF81 LUI R30, 49025
0x9D00426C 0xAFC29060 SW R2, -28576(R30)
;main.c, 54 :: TRISG6_bit = 0;
0x9D004270 0x34020040 ORI R2, R0, 0x0040
0x9D004274 0x3C1EBF88 LUI R30, 49032
0x9D004278 0xA3C26184 SB R2, 24964(R30)
;main.c, 55 :: LATG6_bit = 0;
0x9D00427C 0x34020040 ORI R2, R0, 0x0040
0x9D004280 0x3C1EBF88 LUI R30, 49032
0x9D004284 0xA3C261A4 SB R2, 24996(R30)
;main.c, 56 :: TRISD6_bit = 0;
0x9D004288 0x34020040 ORI R2, R0, 0x0040
0x9D00428C 0x3C1EBF88 LUI R30, 49032
0x9D004290 0xA3C260C4 SB R2, 24772(R30)
;main.c, 57 :: LATD6_bit = 0;
0x9D004294 0x34020040 ORI R2, R0, 0x0040
0x9D004298 0x3C1EBF88 LUI R30, 49032
;main.c, 59 :: init_nand_data_line();
0x9D00429C 0x0F400FEF JAL _init_nand_data_line+0
0x9D0042A0 0xA3C260E4 SB R2, 24804(R30)
;main.c, 60 :: init_nand_control_line();
0x9D0042A4 0x0F401015 JAL _init_nand_control_line+0
0x9D0042A8 0x70000000 NOP
;main.c, 62 :: MM_Init();
0x9D0042AC 0x0F400E83 JAL _MM_Init+0
0x9D0042B0 0x70000000 NOP
;main.c, 64 :: HID_Enable(&readbuff,&writebuff);
0x9D0042B4 0x3C1AA000 LUI R26, hi_addr(_writebuff+0)
0x9D0042B8 0x375A1FE1 ORI R26, R26, lo_addr(_writebuff+0)
0x9D0042BC 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D0042C0 0x0F400EFF JAL _HID_Enable+0
0x9D0042C4 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
;main.c, 65 :: if(U1CON.JSTATE == 0)
0x9D0042C8 0x3C1EBF88 LUI R30, 49032
0x9D0042CC 0x93C25250 LBU R2, 21072(R30)
0x9D0042D0 0x7C4201C0 EXT R2, R2, 7, 1
0x9D0042D4 0x1440000D BNE R2, R0, L_main0
0x9D0042D8 0x70000000 NOP
L__main61:
;main.c, 67 :: LATG6_bit = 1;
0x9D0042DC 0x34020040 ORI R2, R0, 0x0040
0x9D0042E0 0x3C1EBF88 LUI R30, 49032
0x9D0042E4 0xA3C261A8 SB R2, 25000(R30)
;main.c, 68 :: Delay_ms(1000);
0x9D0042E8 0x3C180196 LUI R24, 406
0x9D0042EC 0x3718E6AA ORI R24, R24, 59050
L_main1:
0x9D0042F0 0x2718FFFF ADDIU R24, R24, -1
0x9D0042F4 0x1700FFFE BNE R24, R0, L_main1
0x9D0042F8 0x70000000 NOP
;main.c, 69 :: LATG6_bit = 0;
0x9D0042FC 0x34020040 ORI R2, R0, 0x0040
0x9D004300 0x3C1EBF88 LUI R30, 49032
;main.c, 70 :: }
0x9D004304 0x0B4010CE J L_main3
0x9D004308 0xA3C261A4 SB R2, 24996(R30)
L_main0:
;main.c, 73 :: LATD6_bit = 1;
0x9D00430C 0x34020040 ORI R2, R0, 0x0040
0x9D004310 0x3C1EBF88 LUI R30, 49032
0x9D004314 0xA3C260E8 SB R2, 24808(R30)
;main.c, 74 :: Delay_ms(1000);
0x9D004318 0x3C180196 LUI R24, 406
0x9D00431C 0x3718E6AA ORI R24, R24, 59050
L_main4:
0x9D004320 0x2718FFFF ADDIU R24, R24, -1
0x9D004324 0x1700FFFE BNE R24, R0, L_main4
0x9D004328 0x70000000 NOP
;main.c, 75 :: LATD6_bit = 0;
0x9D00432C 0x34020040 ORI R2, R0, 0x0040
0x9D004330 0x3C1EBF88 LUI R30, 49032
0x9D004334 0xA3C260E4 SB R2, 24804(R30)
;main.c, 76 :: }
L_main3:
;main.c, 79 :: while(1)
L_main6:
;main.c, 81 :: USB_Polling_Proc();
0x9D004338 0x0F400FE8 JAL _USB_Polling_Proc+0
0x9D00433C 0x70000000 NOP
;main.c, 83 :: kk = HID_Read();
0x9D004340 0x0F400F7D JAL _HID_Read+0
0x9D004344 0x70000000 NOP
0x9D004348 0xA0229FE0 SB R2, Offset(_kk+0)(GP)
;main.c, 84 :: if(kk != 0)
0x9D00434C 0x304200FF ANDI R2, R2, 255
0x9D004350 0x10400185 BEQ R2, R0, L_main8
0x9D004354 0x70000000 NOP
L__main63:
;main.c, 86 :: switch(readbuff[0])
0x9D004358 0x0B40121C J L_main9
0x9D00435C 0x70000000 NOP
;main.c, 88 :: case NAND_CHIP_ENABLE:
L_main11:
;main.c, 89 :: cmd_chip_enable(readbuff);
0x9D004360 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D004364 0x0F400FBC JAL _cmd_chip_enable+0
0x9D004368 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
;main.c, 90 :: CE_ON = 1;
0x9D00436C 0x34020040 ORI R2, R0, 0x0040
0x9D004370 0x3C1EBF88 LUI R30, 49032
;main.c, 91 :: break;
0x9D004374 0x0B40125A J L_main10
0x9D004378 0xA3C261A8 SB R2, 25000(R30)
;main.c, 93 :: case NAND_CHIP_DISABLE:
L_main12:
;main.c, 94 :: cmd_chip_disable();
0x9D00437C 0x0F400FC8 JAL _cmd_chip_disable+0
0x9D004380 0x70000000 NOP
;main.c, 95 :: CE_ON = 0;
0x9D004384 0x34020040 ORI R2, R0, 0x0040
0x9D004388 0x3C1EBF88 LUI R30, 49032
;main.c, 96 :: break;
0x9D00438C 0x0B40125A J L_main10
0x9D004390 0xA3C261A4 SB R2, 24996(R30)
;main.c, 98 :: case NAND_CHIP_RESET:
L_main13:
;main.c, 99 :: DAT_ON = 1;
0x9D004394 0x34020040 ORI R2, R0, 0x0040
0x9D004398 0x3C1EBF88 LUI R30, 49032
;main.c, 100 :: cmd_chip_reset();
0x9D00439C 0x0F400FCF JAL _cmd_chip_reset+0
0x9D0043A0 0xA3C260E8 SB R2, 24808(R30)
;main.c, 101 :: DAT_ON = 0;
0x9D0043A4 0x34020040 ORI R2, R0, 0x0040
0x9D0043A8 0x3C1EBF88 LUI R30, 49032
;main.c, 102 :: break;
0x9D0043AC 0x0B40125A J L_main10
0x9D0043B0 0xA3C260E4 SB R2, 24804(R30)
;main.c, 104 :: case NAND_CHIP_READ_ID:
L_main14:
;main.c, 105 :: DAT_ON = 1;
0x9D0043B4 0x34020040 ORI R2, R0, 0x0040
0x9D0043B8 0x3C1EBF88 LUI R30, 49032
0x9D0043BC 0xA3C260E8 SB R2, 24808(R30)
;main.c, 106 :: cmd_chip_read_id(writebuff, 0);
0x9D0043C0 0x0000D00A MOVZ R26, R0, R0
0x9D0043C4 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D0043C8 0x0F400F8C JAL _cmd_chip_read_id+0
0x9D0043CC 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 107 :: nandId[0] = writebuff[0];
0x9D0043D0 0x90229FE1 LBU R2, Offset(_writebuff+0)(GP)
0x9D0043D4 0xA022ABE9 SB R2, Offset(_nandId+0)(GP)
;main.c, 108 :: nandId[1] = writebuff[1];
0x9D0043D8 0x90229FE2 LBU R2, Offset(_writebuff+1)(GP)
0x9D0043DC 0xA022ABEA SB R2, Offset(_nandId+1)(GP)
;main.c, 109 :: nandId[2] = writebuff[2];
0x9D0043E0 0x90229FE3 LBU R2, Offset(_writebuff+2)(GP)
0x9D0043E4 0xA022ABEB SB R2, Offset(_nandId+2)(GP)
;main.c, 110 :: nandId[3] = writebuff[3];
0x9D0043E8 0x90229FE4 LBU R2, Offset(_writebuff+3)(GP)
0x9D0043EC 0xA022ABEC SB R2, Offset(_nandId+3)(GP)
;main.c, 111 :: nandId[4] = writebuff[4];
0x9D0043F0 0x90229FE5 LBU R2, Offset(_writebuff+4)(GP)
0x9D0043F4 0xA022ABED SB R2, Offset(_nandId+4)(GP)
;main.c, 112 :: HID_Write(&writebuff, 64);
0x9D0043F8 0x341A0040 ORI R26, R0, 64
0x9D0043FC 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004400 0x0F401059 JAL _HID_Write+0
0x9D004404 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 113 :: hasId = 1;
0x9D004408 0x34020001 ORI R2, R0, 1
0x9D00440C 0xA3A20002 SB R2, 2(SP)
;main.c, 114 :: DAT_ON = 0;
0x9D004410 0x34020040 ORI R2, R0, 0x0040
0x9D004414 0x3C1EBF88 LUI R30, 49032
;main.c, 115 :: break;
0x9D004418 0x0B40125A J L_main10
0x9D00441C 0xA3C260E4 SB R2, 24804(R30)
;main.c, 117 :: case NAND_CHIP_READ_ID_ONFI:
L_main15:
;main.c, 118 :: DAT_ON = 1;
0x9D004420 0x34020040 ORI R2, R0, 0x0040
0x9D004424 0x3C1EBF88 LUI R30, 49032
0x9D004428 0xA3C260E8 SB R2, 24808(R30)
;main.c, 119 :: cmd_chip_read_id(writebuff, 0x20);
0x9D00442C 0x341A0020 ORI R26, R0, 32
0x9D004430 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004434 0x0F400F8C JAL _cmd_chip_read_id+0
0x9D004438 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 120 :: if('O' == writebuff[0] && 'N' == writebuff[1] && 'F' == writebuff[2] && 'I' == writebuff[3])
0x9D00443C 0x90239FE1 LBU R3, Offset(_writebuff+0)(GP)
0x9D004440 0x3402004F ORI R2, R0, 79
0x9D004444 0x14620014 BNE R3, R2, L__main55
0x9D004448 0x70000000 NOP
L__main64:
0x9D00444C 0x90239FE2 LBU R3, Offset(_writebuff+1)(GP)
0x9D004450 0x3402004E ORI R2, R0, 78
0x9D004454 0x14620010 BNE R3, R2, L__main54
0x9D004458 0x70000000 NOP
L__main65:
0x9D00445C 0x90239FE3 LBU R3, Offset(_writebuff+2)(GP)
0x9D004460 0x34020046 ORI R2, R0, 70
0x9D004464 0x1462000C BNE R3, R2, L__main53
0x9D004468 0x70000000 NOP
L__main66:
0x9D00446C 0x90239FE4 LBU R3, Offset(_writebuff+3)(GP)
0x9D004470 0x34020049 ORI R2, R0, 73
0x9D004474 0x14620008 BNE R3, R2, L__main52
0x9D004478 0x70000000 NOP
L__main67:
L__main51:
;main.c, 122 :: isOnfi = 1;
0x9D00447C 0x34020001 ORI R2, R0, 1
0x9D004480 0xA0228046 SB R2, Offset(_isOnfi+0)(GP)
;main.c, 123 :: onfiParamPage = Malloc(0x100);
0x9D004484 0x0F401062 JAL _Malloc+0
0x9D004488 0x34190100 ORI R25, R0, 256
;main.c, 124 :: if(0 == onfiParamPage)
0x9D00448C 0x14400002 BNE R2, R0, L_main19
0x9D004490 0xAC228048 SW R2, Offset(_onfiParamPage+0)(GP)
L__main68:
;main.c, 125 :: isOnfi = 0;
0x9D004494 0xA0208046 SB R0, Offset(_isOnfi+0)(GP)
L_main19:
;main.c, 120 :: if('O' == writebuff[0] && 'N' == writebuff[1] && 'F' == writebuff[2] && 'I' == writebuff[3])
L__main55:
L__main54:
L__main53:
L__main52:
;main.c, 127 :: HID_Write(&writebuff, 64);
0x9D004498 0x341A0040 ORI R26, R0, 64
0x9D00449C 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D0044A0 0x0F401059 JAL _HID_Write+0
0x9D0044A4 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 128 :: DAT_ON = 0;
0x9D0044A8 0x34020040 ORI R2, R0, 0x0040
0x9D0044AC 0x3C1EBF88 LUI R30, 49032
;main.c, 129 :: break;
0x9D0044B0 0x0B40125A J L_main10
0x9D0044B4 0xA3C260E4 SB R2, 24804(R30)
;main.c, 131 :: case NAND_CHIP_READ_PARAM_PAGE:
L_main20:
;main.c, 132 :: DAT_ON = 1;
0x9D0044B8 0x34020040 ORI R2, R0, 0x0040
0x9D0044BC 0x3C1EBF88 LUI R30, 49032
0x9D0044C0 0xA3C260E8 SB R2, 24808(R30)
;main.c, 133 :: if(0 != onfiParamPage)
0x9D0044C4 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0044C8 0x10400030 BEQ R2, R0, L_main21
0x9D0044CC 0x70000000 NOP
L__main70:
;main.c, 136 :: cmd_chip_read_param_page(onfiParamPage);
0x9D0044D0 0x0F400DB3 JAL _cmd_chip_read_param_page+0
0x9D0044D4 0x8C398048 LW R25, Offset(_onfiParamPage+0)(GP)
;main.c, 137 :: for(i = 0; i < 4; i++)
; i start address is: 20 (R5)
0x9D0044D8 0x0000280A MOVZ R5, R0, R0
; i end address is: 20 (R5)
L_main22:
; i start address is: 20 (R5)
0x9D0044DC 0x7C051620 SEH R2, R5
0x9D0044E0 0x28420004 SLTI R2, R2, 4
0x9D0044E4 0x1040001E BEQ R2, R0, L_main23
0x9D0044E8 0x70000000 NOP
L__main71:
;main.c, 139 :: for(j = 0; j < 64; j++)
; j start address is: 24 (R6)
0x9D0044EC 0x0000300A MOVZ R6, R0, R0
; j end address is: 24 (R6)
; i end address is: 20 (R5)
L_main25:
; j start address is: 24 (R6)
; i start address is: 20 (R5)
0x9D0044F0 0x7C061620 SEH R2, R6
0x9D0044F4 0x28420040 SLTI R2, R2, 64
0x9D0044F8 0x10400010 BEQ R2, R0, L_main26
0x9D0044FC 0x70000000 NOP
L__main72:
;main.c, 141 :: writebuff[j] = onfiParamPage[i * 64 + j];
0x9D004500 0x7C061E20 SEH R3, R6
0x9D004504 0x3C02A000 LUI R2, hi_addr(_writebuff+0)
0x9D004508 0x34421FE1 ORI R2, R2, lo_addr(_writebuff+0)
0x9D00450C 0x00432021 ADDU R4, R2, R3
0x9D004510 0x7C051620 SEH R2, R5
0x9D004514 0x00021180 SLL R2, R2, 6
0x9D004518 0x00461021 ADDU R2, R2, R6
0x9D00451C 0x7C021E20 SEH R3, R2
0x9D004520 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D004524 0x00431021 ADDU R2, R2, R3
0x9D004528 0x90420000 LBU R2, 0(R2)
0x9D00452C 0xA0820000 SB R2, 0(R4)
;main.c, 139 :: for(j = 0; j < 64; j++)
0x9D004530 0x24C20001 ADDIU R2, R6, 1
;main.c, 142 :: }
; j end address is: 24 (R6)
0x9D004534 0x0B40113C J L_main25
0x9D004538 0x7C023620 SEH R6, R2
L_main26:
;main.c, 143 :: HID_Write(&writebuff, 64);
0x9D00453C 0xA7A50000 SH R5, 0(SP)
0x9D004540 0x341A0040 ORI R26, R0, 64
0x9D004544 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004548 0x0F401059 JAL _HID_Write+0
0x9D00454C 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
0x9D004550 0x87A50000 LH R5, 0(SP)
;main.c, 137 :: for(i = 0; i < 4; i++)
0x9D004554 0x24A20001 ADDIU R2, R5, 1
;main.c, 144 :: }
; i end address is: 20 (R5)
0x9D004558 0x0B401137 J L_main22
0x9D00455C 0x7C022E20 SEH R5, R2
L_main23:
;main.c, 145 :: hasOnfiParameterPage = 1;
0x9D004560 0x34020001 ORI R2, R0, 1
0x9D004564 0xA3A20003 SB R2, 3(SP)
;main.c, 146 :: busWidth = 8 << (onfiParamPage[6] & 1);
0x9D004568 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D00456C 0x24420006 ADDIU R2, R2, 6
0x9D004570 0x90420000 LBU R2, 0(R2)
0x9D004574 0x30420001 ANDI R2, R2, 1
0x9D004578 0x304300FF ANDI R3, R2, 255
0x9D00457C 0x34020008 ORI R2, R0, 8
0x9D004580 0x00621004 SLLV R2, R2, R3
;main.c, 147 :: }
0x9D004584 0x0B401168 J L_main28
0x9D004588 0xA4228044 SH R2, Offset(_busWidth+0)(GP)
L_main21:
;main.c, 150 :: writebuff[0] = 0;
0x9D00458C 0xA0209FE1 SB R0, Offset(_writebuff+0)(GP)
;main.c, 151 :: HID_Write(&writebuff, 64);
0x9D004590 0x341A0040 ORI R26, R0, 64
0x9D004594 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004598 0x0F401059 JAL _HID_Write+0
0x9D00459C 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 152 :: }
L_main28:
;main.c, 153 :: DAT_ON = 0;
0x9D0045A0 0x34020040 ORI R2, R0, 0x0040
0x9D0045A4 0x3C1EBF88 LUI R30, 49032
;main.c, 154 :: break;
0x9D0045A8 0x0B40125A J L_main10
0x9D0045AC 0xA3C260E4 SB R2, 24804(R30)
;main.c, 156 :: case NAND_CHIP_READ_PAGE:
L_main29:
;main.c, 158 :: if(0 == hasId && 0 == hasOnfiParameterPage)
0x9D0045B0 0x93A20002 LBU R2, 2(SP)
0x9D0045B4 0x14400008 BNE R2, R0, L__main57
0x9D0045B8 0x70000000 NOP
L__main73:
0x9D0045BC 0x93A20003 LBU R2, 3(SP)
0x9D0045C0 0x14400005 BNE R2, R0, L__main56
0x9D0045C4 0x70000000 NOP
L__main74:
L__main50:
;main.c, 160 :: DAT_ON = 0;
0x9D0045C8 0x34020040 ORI R2, R0, 0x0040
0x9D0045CC 0x3C1EBF88 LUI R30, 49032
;main.c, 161 :: break;
0x9D0045D0 0x0B40125A J L_main10
0x9D0045D4 0xA3C260E4 SB R2, 24804(R30)
;main.c, 158 :: if(0 == hasId && 0 == hasOnfiParameterPage)
L__main57:
L__main56:
;main.c, 164 :: if(hasOnfiParameterPage)
0x9D0045D8 0x93A20003 LBU R2, 3(SP)
0x9D0045DC 0x10400014 BEQ R2, R0, L_main33
0x9D0045E0 0x70000000 NOP
L__main76:
;main.c, 166 :: pageSize = *(unsigned int*)(onfiParamPage + 80) + *(unsigned short*)(onfiParamPage + 84);
0x9D0045E4 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0045E8 0x24420050 ADDIU R2, R2, 80
0x9D0045EC 0x94430000 LHU R3, 0(R2)
0x9D0045F0 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0045F4 0x24420054 ADDIU R2, R2, 84
0x9D0045F8 0x90420000 LBU R2, 0(R2)
0x9D0045FC 0x304200FF ANDI R2, R2, 255
0x9D004600 0x00621021 ADDU R2, R3, R2
0x9D004604 0xA4228042 SH R2, Offset(_pageSize+0)(GP)
;main.c, 167 :: addressCycles = (*(onfiParamPage + 101) & 0x0f) + (*(onfiParamPage + 101) >> 4);
0x9D004608 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D00460C 0x24420065 ADDIU R2, R2, 101
0x9D004610 0x90420000 LBU R2, 0(R2)
0x9D004614 0x3044000F ANDI R4, R2, 15
0x9D004618 0x304200FF ANDI R2, R2, 255
0x9D00461C 0x00021102 SRL R2, R2, 4
0x9D004620 0x304300FF ANDI R3, R2, 255
0x9D004624 0x308200FF ANDI R2, R4, 255
0x9D004628 0x00431021 ADDU R2, R2, R3
0x9D00462C 0xA4228040 SH R2, Offset(_addressCycles+0)(GP)
;main.c, 168 :: }
L_main33:
;main.c, 169 :: DAT_ON = 1;
0x9D004630 0x34020040 ORI R2, R0, 0x0040
0x9D004634 0x3C1EBF88 LUI R30, 49032
0x9D004638 0xA3C260E8 SB R2, 24808(R30)
;main.c, 170 :: cmd_chip_read_page(readbuff, /*pageBuffer*/ writebuff, pageSize, addressCycles);
0x9D00463C 0x843C8040 LH R28, Offset(_addressCycles+0)(GP)
0x9D004640 0x843B8042 LH R27, Offset(_pageSize+0)(GP)
0x9D004644 0x3C1AA000 LUI R26, hi_addr(_writebuff+0)
0x9D004648 0x375A1FE1 ORI R26, R26, lo_addr(_writebuff+0)
0x9D00464C 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D004650 0x0F400DD1 JAL _cmd_chip_read_page+0
0x9D004654 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
;main.c, 171 :: DAT_ON = 0;
0x9D004658 0x34020040 ORI R2, R0, 0x0040
0x9D00465C 0x3C1EBF88 LUI R30, 49032
;main.c, 172 :: break;
0x9D004660 0x0B40125A J L_main10
0x9D004664 0xA3C260E4 SB R2, 24804(R30)
;main.c, 174 :: case NAND_SET_CONFIG_DATA:
L_main34:
;main.c, 175 :: DAT_ON = 1;
0x9D004668 0x34020040 ORI R2, R0, 0x0040
0x9D00466C 0x3C1EBF88 LUI R30, 49032
0x9D004670 0xA3C260E8 SB R2, 24808(R30)
;main.c, 176 :: pageSize = *(int*)(readbuff + 1);
0x9D004674 0x98229FA1 LWR R2, Offset(_readbuff+1)(GP)
0x9D004678 0x88229FA4 LWL R2, Offset(_readbuff+4)(GP)
0x9D00467C 0xA4228042 SH R2, Offset(_pageSize+0)(GP)
;main.c, 177 :: addressCycles = *(readbuff + 5);
0x9D004680 0x90229FA5 LBU R2, Offset(_readbuff+5)(GP)
0x9D004684 0xA4228040 SH R2, Offset(_addressCycles+0)(GP)
;main.c, 178 :: busWidth = *(readbuff + 6);
0x9D004688 0x90229FA6 LBU R2, Offset(_readbuff+6)(GP)
0x9D00468C 0xA4228044 SH R2, Offset(_busWidth+0)(GP)
;main.c, 179 :: DAT_ON = 0;
0x9D004690 0x34020040 ORI R2, R0, 0x0040
0x9D004694 0x3C1EBF88 LUI R30, 49032
;main.c, 180 :: break;
0x9D004698 0x0B40125A J L_main10
0x9D00469C 0xA3C260E4 SB R2, 24804(R30)
;main.c, 182 :: case NAND_CHIP_READ_CACHE_SEQ:
L_main35:
;main.c, 184 :: if(0 == hasId && 0 == hasOnfiParameterPage)
0x9D0046A0 0x93A20002 LBU R2, 2(SP)
0x9D0046A4 0x14400008 BNE R2, R0, L__main59
0x9D0046A8 0x70000000 NOP
L__main77:
0x9D0046AC 0x93A20003 LBU R2, 3(SP)
0x9D0046B0 0x14400005 BNE R2, R0, L__main58
0x9D0046B4 0x70000000 NOP
L__main78:
L__main49:
;main.c, 186 :: DAT_ON = 0;
0x9D0046B8 0x34020040 ORI R2, R0, 0x0040
0x9D0046BC 0x3C1EBF88 LUI R30, 49032
;main.c, 187 :: break;
0x9D0046C0 0x0B40125A J L_main10
0x9D0046C4 0xA3C260E4 SB R2, 24804(R30)
;main.c, 184 :: if(0 == hasId && 0 == hasOnfiParameterPage)
L__main59:
L__main58:
;main.c, 190 :: if(hasOnfiParameterPage)
0x9D0046C8 0x93A20003 LBU R2, 3(SP)
0x9D0046CC 0x10400014 BEQ R2, R0, L_main39
0x9D0046D0 0x70000000 NOP
L__main80:
;main.c, 192 :: pageSize = *(unsigned int*)(onfiParamPage + 80) + *(unsigned short*)(onfiParamPage + 84);
0x9D0046D4 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0046D8 0x24420050 ADDIU R2, R2, 80
0x9D0046DC 0x94430000 LHU R3, 0(R2)
0x9D0046E0 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0046E4 0x24420054 ADDIU R2, R2, 84
0x9D0046E8 0x90420000 LBU R2, 0(R2)
0x9D0046EC 0x304200FF ANDI R2, R2, 255
0x9D0046F0 0x00621021 ADDU R2, R3, R2
0x9D0046F4 0xA4228042 SH R2, Offset(_pageSize+0)(GP)
;main.c, 193 :: addressCycles = (*(onfiParamPage + 101) & 0x0f) + (*(onfiParamPage + 101) >> 4);
0x9D0046F8 0x8C228048 LW R2, Offset(_onfiParamPage+0)(GP)
0x9D0046FC 0x24420065 ADDIU R2, R2, 101
0x9D004700 0x90420000 LBU R2, 0(R2)
0x9D004704 0x3044000F ANDI R4, R2, 15
0x9D004708 0x304200FF ANDI R2, R2, 255
0x9D00470C 0x00021102 SRL R2, R2, 4
0x9D004710 0x304300FF ANDI R3, R2, 255
0x9D004714 0x308200FF ANDI R2, R4, 255
0x9D004718 0x00431021 ADDU R2, R2, R3
0x9D00471C 0xA4228040 SH R2, Offset(_addressCycles+0)(GP)
;main.c, 194 :: }
L_main39:
;main.c, 195 :: DAT_ON = 1;
0x9D004720 0x34020040 ORI R2, R0, 0x0040
0x9D004724 0x3C1EBF88 LUI R30, 49032
0x9D004728 0xA3C260E8 SB R2, 24808(R30)
;main.c, 196 :: if(0 != pageSize)
0x9D00472C 0x84228042 LH R2, Offset(_pageSize+0)(GP)
0x9D004730 0x1040000A BEQ R2, R0, L_main40
0x9D004734 0x70000000 NOP
L__main82:
;main.c, 198 :: USB_Polling_Proc();
0x9D004738 0x0F400FE8 JAL _USB_Polling_Proc+0
0x9D00473C 0x70000000 NOP
;main.c, 199 :: cmd_chip_read_page_cache_sequential(readbuff, /*pageBuffer*/ writebuff, pageSize, addressCycles);
0x9D004740 0x843C8040 LH R28, Offset(_addressCycles+0)(GP)
0x9D004744 0x843B8042 LH R27, Offset(_pageSize+0)(GP)
0x9D004748 0x3C1AA000 LUI R26, hi_addr(_writebuff+0)
0x9D00474C 0x375A1FE1 ORI R26, R26, lo_addr(_writebuff+0)
0x9D004750 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D004754 0x0F400E21 JAL _cmd_chip_read_page_cache_sequential+0
0x9D004758 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
;main.c, 200 :: }
L_main40:
;main.c, 201 :: DAT_ON = 0;
0x9D00475C 0x34020040 ORI R2, R0, 0x0040
0x9D004760 0x3C1EBF88 LUI R30, 49032
;main.c, 202 :: break;
0x9D004764 0x0B40125A J L_main10
0x9D004768 0xA3C260E4 SB R2, 24804(R30)
;main.c, 204 :: case NAND_CHIP_READ_STATUS:
L_main41:
;main.c, 205 :: writebuff[0] = cmd_chip_read_status();
0x9D00476C 0x0F400EA3 JAL _cmd_chip_read_status+0
0x9D004770 0x70000000 NOP
0x9D004774 0xA0229FE1 SB R2, Offset(_writebuff+0)(GP)
;main.c, 206 :: HID_Write(&writebuff, 64);
0x9D004778 0x341A0040 ORI R26, R0, 64
0x9D00477C 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004780 0x0F401059 JAL _HID_Write+0
0x9D004784 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 207 :: break;
0x9D004788 0x0B40125A J L_main10
0x9D00478C 0x70000000 NOP
;main.c, 209 :: case NAND_CHIP_READ_UNIQUE_ID:
L_main42:
;main.c, 210 :: DAT_ON = 1;
0x9D004790 0x34020040 ORI R2, R0, 0x0040
0x9D004794 0x3C1EBF88 LUI R30, 49032
0x9D004798 0xA3C260E8 SB R2, 24808(R30)
;main.c, 211 :: cmd_chip_read_unique_id(writebuff);
0x9D00479C 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D0047A0 0x0F400F2D JAL _cmd_chip_read_unique_id+0
0x9D0047A4 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 212 :: HID_Write(&writebuff, 64);
0x9D0047A8 0x341A0040 ORI R26, R0, 64
0x9D0047AC 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D0047B0 0x0F401059 JAL _HID_Write+0
0x9D0047B4 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 213 :: DAT_ON = 0;
0x9D0047B8 0x34020040 ORI R2, R0, 0x0040
0x9D0047BC 0x3C1EBF88 LUI R30, 49032
;main.c, 214 :: break;
0x9D0047C0 0x0B40125A J L_main10
0x9D0047C4 0xA3C260E4 SB R2, 24804(R30)
;main.c, 216 :: case NAND_CHIP_BLOCK_ERASE:
L_main43:
;main.c, 217 :: DAT_ON = 1;
0x9D0047C8 0x34020040 ORI R2, R0, 0x0040
0x9D0047CC 0x3C1EBF88 LUI R30, 49032
0x9D0047D0 0xA3C260E8 SB R2, 24808(R30)
;main.c, 218 :: cmd_chip_block_erase(readbuff);
0x9D0047D4 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D0047D8 0x0F400F52 JAL _cmd_chip_block_erase+0
0x9D0047DC 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
;main.c, 219 :: DAT_ON = 0;
0x9D0047E0 0x34020040 ORI R2, R0, 0x0040
0x9D0047E4 0x3C1EBF88 LUI R30, 49032
;main.c, 220 :: break;
0x9D0047E8 0x0B40125A J L_main10
0x9D0047EC 0xA3C260E4 SB R2, 24804(R30)
;main.c, 222 :: case NAND_CHIP_TOGGLE_WP:
L_main44:
;main.c, 223 :: nand_toggle_wp();
0x9D0047F0 0x0F400F6B JAL _nand_toggle_wp+0
0x9D0047F4 0x70000000 NOP
;main.c, 224 :: break;
0x9D0047F8 0x0B40125A J L_main10
0x9D0047FC 0x70000000 NOP
;main.c, 226 :: case NAND_CHIP_PAGE_PROGRAM:
L_main45:
;main.c, 227 :: DAT_ON = 1;
0x9D004800 0x34020040 ORI R2, R0, 0x0040
0x9D004804 0x3C1EBF88 LUI R30, 49032
0x9D004808 0xA3C260E8 SB R2, 24808(R30)
;main.c, 228 :: if(0 != pageSize)
0x9D00480C 0x84228042 LH R2, Offset(_pageSize+0)(GP)
0x9D004810 0x10400006 BEQ R2, R0, L_main46
0x9D004814 0x70000000 NOP
L__main84:
;main.c, 229 :: cmd_chip_page_program(readbuff, addressCycles, pageSize);
0x9D004818 0x843B8042 LH R27, Offset(_pageSize+0)(GP)
0x9D00481C 0x843A8040 LH R26, Offset(_addressCycles+0)(GP)
0x9D004820 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D004824 0x0F400EB5 JAL _cmd_chip_page_program+0
0x9D004828 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
L_main46:
;main.c, 230 :: DAT_ON = 0;
0x9D00482C 0x34020040 ORI R2, R0, 0x0040
0x9D004830 0x3C1EBF88 LUI R30, 49032
;main.c, 231 :: break;
0x9D004834 0x0B40125A J L_main10
0x9D004838 0xA3C260E4 SB R2, 24804(R30)
;main.c, 233 :: case NAND_CHIP_READ_STATUS_ENHANCED:
L_main47:
;main.c, 234 :: writebuff[0] = cmd_chip_read_status_enhanced(readbuff, addressCycles);
0x9D00483C 0x843A8040 LH R26, Offset(_addressCycles+0)(GP)
0x9D004840 0x3C19A000 LUI R25, hi_addr(_readbuff+0)
0x9D004844 0x0F400F12 JAL _cmd_chip_read_status_enhanced+0
0x9D004848 0x37391FA0 ORI R25, R25, lo_addr(_readbuff+0)
0x9D00484C 0xA0229FE1 SB R2, Offset(_writebuff+0)(GP)
;main.c, 235 :: HID_Write(&writebuff, 64);
0x9D004850 0x341A0040 ORI R26, R0, 64
0x9D004854 0x3C19A000 LUI R25, hi_addr(_writebuff+0)
0x9D004858 0x0F401059 JAL _HID_Write+0
0x9D00485C 0x37391FE1 ORI R25, R25, lo_addr(_writebuff+0)
;main.c, 236 :: break;
0x9D004860 0x0B40125A J L_main10
0x9D004864 0x70000000 NOP
;main.c, 238 :: default:
L_main48:
;main.c, 239 :: break;
0x9D004868 0x0B40125A J L_main10
0x9D00486C 0x70000000 NOP
;main.c, 240 :: }
L_main9:
0x9D004870 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004874 0x34020001 ORI R2, R0, 1
0x9D004878 0x1062FEB9 BEQ R3, R2, L_main11
0x9D00487C 0x70000000 NOP
L__main86:
0x9D004880 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004884 0x34020002 ORI R2, R0, 2
0x9D004888 0x1062FEBC BEQ R3, R2, L_main12
0x9D00488C 0x70000000 NOP
L__main88:
0x9D004890 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004894 0x34020003 ORI R2, R0, 3
0x9D004898 0x1062FEBE BEQ R3, R2, L_main13
0x9D00489C 0x70000000 NOP
L__main90:
0x9D0048A0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048A4 0x34020004 ORI R2, R0, 4
0x9D0048A8 0x1062FEC2 BEQ R3, R2, L_main14
0x9D0048AC 0x70000000 NOP
L__main92:
0x9D0048B0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048B4 0x34020005 ORI R2, R0, 5
0x9D0048B8 0x1062FED9 BEQ R3, R2, L_main15
0x9D0048BC 0x70000000 NOP
L__main94:
0x9D0048C0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048C4 0x34020006 ORI R2, R0, 6
0x9D0048C8 0x1062FEFB BEQ R3, R2, L_main20
0x9D0048CC 0x70000000 NOP
L__main96:
0x9D0048D0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048D4 0x34020007 ORI R2, R0, 7
0x9D0048D8 0x1062FF35 BEQ R3, R2, L_main29
0x9D0048DC 0x70000000 NOP
L__main98:
0x9D0048E0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048E4 0x34020008 ORI R2, R0, 8
0x9D0048E8 0x1062FF5F BEQ R3, R2, L_main34
0x9D0048EC 0x70000000 NOP
L__main100:
0x9D0048F0 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D0048F4 0x34020009 ORI R2, R0, 9
0x9D0048F8 0x1062FF69 BEQ R3, R2, L_main35
0x9D0048FC 0x70000000 NOP
L__main102:
0x9D004900 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004904 0x3402000A ORI R2, R0, 10
0x9D004908 0x1062FF98 BEQ R3, R2, L_main41
0x9D00490C 0x70000000 NOP
L__main104:
0x9D004910 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004914 0x3402000B ORI R2, R0, 11
0x9D004918 0x1062FF9D BEQ R3, R2, L_main42
0x9D00491C 0x70000000 NOP
L__main106:
0x9D004920 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004924 0x3402000C ORI R2, R0, 12
0x9D004928 0x1062FFA7 BEQ R3, R2, L_main43
0x9D00492C 0x70000000 NOP
L__main108:
0x9D004930 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004934 0x3402000D ORI R2, R0, 13
0x9D004938 0x1062FFAD BEQ R3, R2, L_main44
0x9D00493C 0x70000000 NOP
L__main110:
0x9D004940 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004944 0x3402000E ORI R2, R0, 14
0x9D004948 0x1062FFAD BEQ R3, R2, L_main45
0x9D00494C 0x70000000 NOP
L__main112:
0x9D004950 0x90239FA0 LBU R3, Offset(_readbuff+0)(GP)
0x9D004954 0x3402000F ORI R2, R0, 15
0x9D004958 0x1062FFB8 BEQ R3, R2, L_main47
0x9D00495C 0x70000000 NOP
L__main114:
0x9D004960 0x0B40121A J L_main48
0x9D004964 0x70000000 NOP
L_main10:
;main.c, 241 :: }
L_main8:
;main.c, 242 :: }
0x9D004968 0x0B4010CE J L_main6
0x9D00496C 0x70000000 NOP
;main.c, 259 :: }
L_end_main:
L__main_end_loop:
0x9D004970 0x0B40125C J L__main_end_loop
0x9D004974 0x70000000 NOP
; end of _main
___CC2DW:
;__Lib_System.c, 4 ::
0x9D003F80 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_System.c, 6 ::
L_loopDW:
;__Lib_System.c, 7 ::
0x9D003F84 0x831E0000 LB R30, 0(R24)
;__Lib_System.c, 8 ::
0x9D003F88 0xA2FE0000 SB R30, 0(R23)
;__Lib_System.c, 9 ::
0x9D003F8C 0x26F70001 ADDIU R23, R23, 1
;__Lib_System.c, 10 ::
0x9D003F90 0x16F6FFFC BNE R23, R22, L_loopDW
;__Lib_System.c, 11 ::
0x9D003F94 0x27180001 ADDIU R24, R24, 1
;__Lib_System.c, 13 ::
L_end___CC2DW:
0x9D003F98 0x03E00008 JR RA
0x9D003F9C 0x27BD0004 ADDIU SP, SP, 4
; end of ___CC2DW
_init_nand_data_line:
;NandDataLine.c, 15 :: void init_nand_data_line()
;NandDataLine.c, 17 :: TRISE = 0;
0x9D003FBC 0x3C1EBF88 LUI R30, 49032
0x9D003FC0 0xAFC06100 SW R0, 24832(R30)
;NandDataLine.c, 18 :: TRISF = 0;
0x9D003FC4 0x3C1EBF88 LUI R30, 49032
0x9D003FC8 0xAFC06140 SW R0, 24896(R30)
;NandDataLine.c, 19 :: TRISG = 0;
0x9D003FCC 0x3C1EBF88 LUI R30, 49032
0x9D003FD0 0xAFC06180 SW R0, 24960(R30)
;NandDataLine.c, 21 :: LATE = 0;
0x9D003FD4 0x3C1EBF88 LUI R30, 49032
0x9D003FD8 0xAFC06120 SW R0, 24864(R30)
;NandDataLine.c, 22 :: LATF = 0;
0x9D003FDC 0x3C1EBF88 LUI R30, 49032
0x9D003FE0 0xAFC06160 SW R0, 24928(R30)
;NandDataLine.c, 23 :: LATG = 0;
0x9D003FE4 0x3C1EBF88 LUI R30, 49032
0x9D003FE8 0xAFC061A0 SW R0, 24992(R30)
;NandDataLine.c, 25 :: nand_b0 = 0;
0x9D003FEC 0x34020004 ORI R2, R0, 0x0004
0x9D003FF0 0x3C1EBF88 LUI R30, 49032
0x9D003FF4 0xA3C26124 SB R2, 24868(R30)
;NandDataLine.c, 26 :: nand_b1 = 0;
0x9D003FF8 0x34020008 ORI R2, R0, 0x0008
0x9D003FFC 0x3C1EBF88 LUI R30, 49032
0x9D004000 0xA3C26124 SB R2, 24868(R30)
;NandDataLine.c, 27 :: nand_b2 = 0;
0x9D004004 0x34020080 ORI R2, R0, 0x0080
0x9D004008 0x3C1EBF88 LUI R30, 49032
0x9D00400C 0xA3C261A4 SB R2, 24996(R30)
;NandDataLine.c, 28 :: nand_b3 = 0;
0x9D004010 0x34020001 ORI R2, R0, 0x0001
0x9D004014 0x3C1EBF88 LUI R30, 49032
0x9D004018 0xA3C261A5 SB R2, 24997(R30)
;NandDataLine.c, 29 :: nand_b4 = 0;
0x9D00401C 0x34020020 ORI R2, R0, 0x0020
0x9D004020 0x3C1EBF88 LUI R30, 49032
0x9D004024 0xA3C26164 SB R2, 24932(R30)
;NandDataLine.c, 30 :: nand_b5 = 0;
0x9D004028 0x34020010 ORI R2, R0, 0x0010
0x9D00402C 0x3C1EBF88 LUI R30, 49032
0x9D004030 0xA3C26164 SB R2, 24932(R30)
;NandDataLine.c, 31 :: nand_b6 = 0;
0x9D004034 0x34020010 ORI R2, R0, 0x0010
0x9D004038 0x3C1EBF88 LUI R30, 49032
0x9D00403C 0xA3C26124 SB R2, 24868(R30)
;NandDataLine.c, 32 :: nand_b7 = 0;
0x9D004040 0x34020020 ORI R2, R0, 0x0020
0x9D004044 0x3C1EBF88 LUI R30, 49032
0x9D004048 0xA3C26124 SB R2, 24868(R30)
;NandDataLine.c, 33 :: }
L_end_init_nand_data_line:
0x9D00404C 0x03E00008 JR RA
0x9D004050 0x70000000 NOP
; end of _init_nand_data_line
_init_nand_control_line:
;NandControl.c, 27 :: void init_nand_control_line()
;NandControl.c, 29 :: TRISB0_bit = 1;
0x9D004054 0x34020001 ORI R2, R0, 0x0001
0x9D004058 0x3C1EBF88 LUI R30, 49032
0x9D00405C 0xA3C26048 SB R2, 24648(R30)
;NandControl.c, 30 :: TRISD11_bit = 1;
0x9D004060 0x34020008 ORI R2, R0, 0x0008
0x9D004064 0x3C1EBF88 LUI R30, 49032
0x9D004068 0xA3C260C9 SB R2, 24777(R30)
;NandControl.c, 31 :: TRISB9_bit = 1;
0x9D00406C 0x34020002 ORI R2, R0, 0x0002
0x9D004070 0x3C1EBF88 LUI R30, 49032
0x9D004074 0xA3C26049 SB R2, 24649(R30)
;NandControl.c, 32 :: TRISD5_bit = 1;
0x9D004078 0x34020020 ORI R2, R0, 0x0020
0x9D00407C 0x3C1EBF88 LUI R30, 49032
0x9D004080 0xA3C260C8 SB R2, 24776(R30)
;NandControl.c, 34 :: TRISB14_bit = 0;
0x9D004084 0x34020040 ORI R2, R0, 0x0040
0x9D004088 0x3C1EBF88 LUI R30, 49032
0x9D00408C 0xA3C26045 SB R2, 24645(R30)
;NandControl.c, 35 :: TRISF0_bit = 0;
0x9D004090 0x34020001 ORI R2, R0, 0x0001
0x9D004094 0x3C1EBF88 LUI R30, 49032
0x9D004098 0xA3C26144 SB R2, 24900(R30)
;NandControl.c, 36 :: TRISF1_bit = 0;
0x9D00409C 0x34020002 ORI R2, R0, 0x0002
0x9D0040A0 0x3C1EBF88 LUI R30, 49032
0x9D0040A4 0xA3C26144 SB R2, 24900(R30)
;NandControl.c, 37 :: TRISB8_bit = 0;
0x9D0040A8 0x34020001 ORI R2, R0, 0x0001
0x9D0040AC 0x3C1EBF88 LUI R30, 49032
0x9D0040B0 0xA3C26045 SB R2, 24645(R30)
;NandControl.c, 39 :: TRISD4_bit = 0;
0x9D0040B4 0x34020010 ORI R2, R0, 0x0010
0x9D0040B8 0x3C1EBF88 LUI R30, 49032
0x9D0040BC 0xA3C260C4 SB R2, 24772(R30)
;NandControl.c, 40 :: TRISB15_bit = 0;
0x9D0040C0 0x34020080 ORI R2, R0, 0x0080
0x9D0040C4 0x3C1EBF88 LUI R30, 49032
0x9D0040C8 0xA3C26045 SB R2, 24645(R30)
;NandControl.c, 41 :: TRISD0_bit = 0;
0x9D0040CC 0x34020001 ORI R2, R0, 0x0001
0x9D0040D0 0x3C1EBF88 LUI R30, 49032
0x9D0040D4 0xA3C260C4 SB R2, 24772(R30)
;NandControl.c, 42 :: TRISE0_bit = 0;
0x9D0040D8 0x34020001 ORI R2, R0, 0x0001
0x9D0040DC 0x3C1EBF88 LUI R30, 49032
0x9D0040E0 0xA3C26104 SB R2, 24836(R30)
;NandControl.c, 43 :: TRISE1_bit = 0;
0x9D0040E4 0x34020002 ORI R2, R0, 0x0002
0x9D0040E8 0x3C1EBF88 LUI R30, 49032
0x9D0040EC 0xA3C26104 SB R2, 24836(R30)
;NandControl.c, 45 :: ctrl_nce0 = 1;
0x9D0040F0 0x34020001 ORI R2, R0, 0x0001
0x9D0040F4 0x3C1EBF88 LUI R30, 49032
0x9D0040F8 0xA3C26069 SB R2, 24681(R30)
;NandControl.c, 46 :: ctrl_nce1 = 1;
0x9D0040FC 0x34020002 ORI R2, R0, 0x0002
0x9D004100 0x3C1EBF88 LUI R30, 49032
0x9D004104 0xA3C26168 SB R2, 24936(R30)
;NandControl.c, 47 :: ctrl_nce2 = 1;
0x9D004108 0x34020001 ORI R2, R0, 0x0001
0x9D00410C 0x3C1EBF88 LUI R30, 49032
0x9D004110 0xA3C26168 SB R2, 24936(R30)
;NandControl.c, 48 :: ctrl_nce3 = 1;
0x9D004114 0x34020040 ORI R2, R0, 0x0040
0x9D004118 0x3C1EBF88 LUI R30, 49032
0x9D00411C 0xA3C26069 SB R2, 24681(R30)
;NandControl.c, 50 :: ctrl_nre = 1;
0x9D004120 0x34020010 ORI R2, R0, 0x0010
0x9D004124 0x3C1EBF88 LUI R30, 49032
0x9D004128 0xA3C260E8 SB R2, 24808(R30)
;NandControl.c, 51 :: ctrl_cle = 0;
0x9D00412C 0x34020080 ORI R2, R0, 0x0080
0x9D004130 0x3C1EBF88 LUI R30, 49032
0x9D004134 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 52 :: ctrl_ale = 0;
0x9D004138 0x34020001 ORI R2, R0, 0x0001
0x9D00413C 0x3C1EBF88 LUI R30, 49032
0x9D004140 0xA3C260E4 SB R2, 24804(R30)
;NandControl.c, 53 :: ctrl_nwe = 1;
0x9D004144 0x34020001 ORI R2, R0, 0x0001
0x9D004148 0x3C1EBF88 LUI R30, 49032
0x9D00414C 0xA3C26128 SB R2, 24872(R30)
;NandControl.c, 54 :: ctrl_nwp = 0;
0x9D004150 0x34020002 ORI R2, R0, 0x0002
0x9D004154 0x3C1EBF88 LUI R30, 49032
0x9D004158 0xA3C26124 SB R2, 24868(R30)
;NandControl.c, 55 :: }
L_end_init_nand_control_line:
0x9D00415C 0x03E00008 JR RA
0x9D004160 0x70000000 NOP
; end of _init_nand_control_line
_MM_Init:
;__Lib_MemManager.c, 30 :: void MM_Init() {
;__Lib_MemManager.c, 33 :: MM_FreeMemTable[0].Size = HEAP_SIZE;
0x9D003A0C 0x34021F40 ORI R2, R0, 8000
0x9D003A10 0xAC22ABFC SW R2, Offset(_MM_FreeMemTable+4)(GP)
;__Lib_MemManager.c, 34 :: MM_FreeMemTable[0].Pointer = HEAP_START;
0x9D003A14 0x3C02A000 LUI R2, 40960
0x9D003A18 0x34420058 ORI R2, R2, 88
0x9D003A1C 0xAC22ABF8 SW R2, Offset(_MM_FreeMemTable+0)(GP)
;__Lib_MemManager.c, 37 :: for(i=1; i<NR_FREE_BLOCKS; i++) {
; i start address is: 16 (R4)
0x9D003A20 0x34040001 ORI R4, R0, 1
; i end address is: 16 (R4)
L_MM_Init0:
; i start address is: 16 (R4)
0x9D003A24 0x308200FF ANDI R2, R4, 255
0x9D003A28 0x28420014 SLTI R2, R2, 20
0x9D003A2C 0x10400011 BEQ R2, R0, L_MM_Init1
0x9D003A30 0x70000000 NOP
L__MM_Init116:
;__Lib_MemManager.c, 38 :: MM_FreeMemTable[i].Pointer = NULL; // clear other table entries
0x9D003A34 0x308200FF ANDI R2, R4, 255
0x9D003A38 0x000218C0 SLL R3, R2, 3
0x9D003A3C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D003A40 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D003A44 0x00431021 ADDU R2, R2, R3
0x9D003A48 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 39 :: MM_FreeMemTable[i].Size = 0;
0x9D003A4C 0x308200FF ANDI R2, R4, 255
0x9D003A50 0x000218C0 SLL R3, R2, 3
0x9D003A54 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D003A58 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D003A5C 0x00431021 ADDU R2, R2, R3
0x9D003A60 0x24420004 ADDIU R2, R2, 4
0x9D003A64 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 37 :: for(i=1; i<NR_FREE_BLOCKS; i++) {
0x9D003A68 0x24820001 ADDIU R2, R4, 1
;__Lib_MemManager.c, 40 :: }
; i end address is: 16 (R4)
0x9D003A6C 0x0B400E89 J L_MM_Init0
0x9D003A70 0x304400FF ANDI R4, R2, 255
L_MM_Init1:
;__Lib_MemManager.c, 42 :: MM_NrFreeBlocksUsed = 1;
0x9D003A74 0x34020001 ORI R2, R0, 1
0x9D003A78 0xA022ABEE SB R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
;__Lib_MemManager.c, 43 :: MM_Error_ = 0;
0x9D003A7C 0xA020ABF4 SB R0, Offset(_MM_Error_+0)(GP)
;__Lib_MemManager.c, 44 :: MM_PossiblyFragmented = 0;
0x9D003A80 0xA020ABEF SB R0, Offset(_MM_PossiblyFragmented+0)(GP)
;__Lib_MemManager.c, 45 :: }
L_end_MM_Init:
0x9D003A84 0x03E00008 JR RA
0x9D003A88 0x70000000 NOP
; end of _MM_Init
_HID_Enable:
;__Lib_USB.c, 5446 ::
0x9D003BFC 0x27BDFFFC ADDIU SP, SP, -4
0x9D003C00 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5447 ::
0x9D003C04 0x0F400B57 JAL __Lib_USB_GetMaxStrignDscIndex+0
0x9D003C08 0x70000000 NOP
0x9D003C0C 0xA022ABE3 SB R2, Offset(__Lib_USB_maxDescriptorIndex+0)(GP)
;__Lib_USB.c, 5448 ::
0x9D003C10 0x34020001 ORI R2, R0, 1
0x9D003C14 0xA022ACF0 SB R2, Offset(__Lib_USB__Is_HID+0)(GP)
;__Lib_USB.c, 5449 ::
0x9D003C18 0xAC39AC98 SW R25, Offset(__Lib_USB_USB_Read_Buffer+0)(GP)
;__Lib_USB.c, 5450 ::
;__Lib_USB.c, 5451 ::
0x9D003C1C 0x0F400B6D JAL __Lib_USB_USB_Device_Init+0
0x9D003C20 0xAC3AABE4 SW R26, Offset(__Lib_USB_USB_Write_Buffer+0)(GP)
;__Lib_USB.c, 5452 ::
0x9D003C24 0x34030001 ORI R3, R0, 1
0x9D003C28 0x34020000 ORI R2, R0, 0
0x9D003C2C 0x14620003 BNE R3, R2, L_HID_Enable251
0x9D003C30 0x70000000 NOP
L__HID_Enable598:
;__Lib_USB.c, 5453 ::
0x9D003C34 0x0F400B3A JAL __Lib_USB_USB_Attach_Device+0
0x9D003C38 0x70000000 NOP
L_HID_Enable251:
;__Lib_USB.c, 5454 ::
L_end_HID_Enable:
0x9D003C3C 0x8FBF0000 LW RA, 0(SP)
0x9D003C40 0x03E00008 JR RA
0x9D003C44 0x27BD0004 ADDIU SP, SP, 4
; end of _HID_Enable
__Lib_USB_GetMaxStrignDscIndex:
;__Lib_USB.c, 5513 ::
0x9D002D5C 0x27BDFFF8 ADDIU SP, SP, -8
0x9D002D60 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5516 ::
0x9D002D64 0x0F40074E JAL __Lib_USB_GetMaxIndexInDevDsc+0
0x9D002D68 0xAFB90004 SW R25, 4(SP)
; dev start address is: 32 (R8)
0x9D002D6C 0x304800FF ANDI R8, R2, 255
;__Lib_USB.c, 5517 ::
0x9D002D70 0x3C029D00 LUI R2, hi_addr(_configDescriptor1+0)
0x9D002D74 0x344249A8 ORI R2, R2, lo_addr(_configDescriptor1+0)
0x9D002D78 0x0F400705 JAL __Lib_USB_GetMaxIndexInConfigDsc+0
0x9D002D7C 0x0040C80A MOVZ R25, R2, R0
; cfg start address is: 16 (R4)
0x9D002D80 0x304400FF ANDI R4, R2, 255
;__Lib_USB.c, 5518 ::
0x9D002D84 0x310300FF ANDI R3, R8, 255
0x9D002D88 0x304200FF ANDI R2, R2, 255
0x9D002D8C 0x0043102B SLTU R2, R2, R3
0x9D002D90 0x10400003 BEQ R2, R0, L___Lib_USB_GetMaxStrignDscIndex261
0x9D002D94 0x70000000 NOP
L___Lib_USB_GetMaxStrignDscIndex612:
; cfg end address is: 16 (R4)
;__Lib_USB.c, 5519 ::
; dev end address is: 32 (R8)
0x9D002D98 0x0B400B69 J L_end_GetMaxStrignDscIndex
0x9D002D9C 0x310200FF ANDI R2, R8, 255
;__Lib_USB.c, 5520 ::
L___Lib_USB_GetMaxStrignDscIndex261:
;__Lib_USB.c, 5521 ::
; cfg start address is: 16 (R4)
0x9D002DA0 0x308200FF ANDI R2, R4, 255
; cfg end address is: 16 (R4)
;__Lib_USB.c, 5524 ::
;__Lib_USB.c, 5521 ::
;__Lib_USB.c, 5524 ::
L_end_GetMaxStrignDscIndex:
0x9D002DA4 0x8FB90004 LW R25, 4(SP)
0x9D002DA8 0x8FBF0000 LW RA, 0(SP)
0x9D002DAC 0x03E00008 JR RA
0x9D002DB0 0x27BD0008 ADDIU SP, SP, 8
; end of __Lib_USB_GetMaxStrignDscIndex
__Lib_USB_GetMaxIndexInDevDsc:
;__Lib_USB.c, 5468 ::
0x9D001D38 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 5471 ::
0x9D001D3C 0x3C039D00 LUI R3, hi_addr(_device_dsc+0)
0x9D001D40 0x34634A16 ORI R3, R3, lo_addr(_device_dsc+0)
0x9D001D44 0x2462000E ADDIU R2, R3, 14
0x9D001D48 0x90440000 LBU R4, 0(R2)
; index start address is: 20 (R5)
0x9D001D4C 0x308500FF ANDI R5, R4, 255
;__Lib_USB.c, 5473 ::
0x9D001D50 0x2462000F ADDIU R2, R3, 15
0x9D001D54 0x90420000 LBU R2, 0(R2)
0x9D001D58 0x304300FF ANDI R3, R2, 255
0x9D001D5C 0x308200FF ANDI R2, R4, 255
0x9D001D60 0x0043102B SLTU R2, R2, R3
0x9D001D64 0x10400007 BEQ R2, R0, L___Lib_USB_GetMaxIndexInDevDsc304
0x9D001D68 0x70000000 NOP
L___Lib_USB_GetMaxIndexInDevDsc603:
; index end address is: 20 (R5)
;__Lib_USB.c, 5474 ::
0x9D001D6C 0x3C029D00 LUI R2, hi_addr(_device_dsc+0)
0x9D001D70 0x34424A16 ORI R2, R2, lo_addr(_device_dsc+0)
0x9D001D74 0x2442000F ADDIU R2, R2, 15
0x9D001D78 0x90420000 LBU R2, 0(R2)
; index start address is: 16 (R4)
; index end address is: 16 (R4)
;__Lib_USB.c, 5475 ::
0x9D001D7C 0x0B400762 J L___Lib_USB_GetMaxIndexInDevDsc252
0x9D001D80 0x304400FF ANDI R4, R2, 255
L___Lib_USB_GetMaxIndexInDevDsc304:
;__Lib_USB.c, 5473 ::
0x9D001D84 0x30A400FF ANDI R4, R5, 255
;__Lib_USB.c, 5475 ::
L___Lib_USB_GetMaxIndexInDevDsc252:
;__Lib_USB.c, 5477 ::
; index start address is: 16 (R4)
0x9D001D88 0x3C029D00 LUI R2, hi_addr(_device_dsc+0)
0x9D001D8C 0x34424A16 ORI R2, R2, lo_addr(_device_dsc+0)
0x9D001D90 0x24420010 ADDIU R2, R2, 16
0x9D001D94 0x90420000 LBU R2, 0(R2)
0x9D001D98 0x304300FF ANDI R3, R2, 255
0x9D001D9C 0x308200FF ANDI R2, R4, 255
0x9D001DA0 0x0043102B SLTU R2, R2, R3
0x9D001DA4 0x10400007 BEQ R2, R0, L___Lib_USB_GetMaxIndexInDevDsc305
0x9D001DA8 0x70000000 NOP
L___Lib_USB_GetMaxIndexInDevDsc604:
; index end address is: 16 (R4)
;__Lib_USB.c, 5478 ::
0x9D001DAC 0x3C029D00 LUI R2, hi_addr(_device_dsc+0)
0x9D001DB0 0x34424A16 ORI R2, R2, lo_addr(_device_dsc+0)
0x9D001DB4 0x24420010 ADDIU R2, R2, 16
0x9D001DB8 0x90420000 LBU R2, 0(R2)
; index start address is: 12 (R3)
; index end address is: 12 (R3)
;__Lib_USB.c, 5479 ::
0x9D001DBC 0x0B400772 J L___Lib_USB_GetMaxIndexInDevDsc253
0x9D001DC0 0x304300FF ANDI R3, R2, 255
L___Lib_USB_GetMaxIndexInDevDsc305:
;__Lib_USB.c, 5477 ::
0x9D001DC4 0x308300FF ANDI R3, R4, 255
;__Lib_USB.c, 5479 ::
L___Lib_USB_GetMaxIndexInDevDsc253:
;__Lib_USB.c, 5481 ::
; index start address is: 12 (R3)
0x9D001DC8 0x306200FF ANDI R2, R3, 255
; index end address is: 12 (R3)
;__Lib_USB.c, 5482 ::
L_end_GetMaxIndexInDevDsc:
0x9D001DCC 0x03E00008 JR RA
0x9D001DD0 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_GetMaxIndexInDevDsc
__Lib_USB_GetMaxIndexInConfigDsc:
;__Lib_USB.c, 5484 ::
0x9D001C14 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 5485 ::
; index start address is: 28 (R7)
0x9D001C18 0x0000380A MOVZ R7, R0, R0
;__Lib_USB.c, 5486 ::
; i start address is: 24 (R6)
0x9D001C1C 0x0000300A MOVZ R6, R0, R0
;__Lib_USB.c, 5489 ::
0x9D001C20 0x27220002 ADDIU R2, R25, 2
0x9D001C24 0x90440000 LBU R4, 0(R2)
0x9D001C28 0x27220003 ADDIU R2, R25, 3
0x9D001C2C 0x90420000 LBU R2, 0(R2)
0x9D001C30 0x304200FF ANDI R2, R2, 255
0x9D001C34 0x3042FFFF ANDI R2, R2, 65535
0x9D001C38 0x00021A00 SLL R3, R2, 8
0x9D001C3C 0x308200FF ANDI R2, R4, 255
0x9D001C40 0x00431021 ADDU R2, R2, R3
; totalLen start address is: 16 (R4)
0x9D001C44 0x3044FFFF ANDI R4, R2, 65535
;__Lib_USB.c, 5490 ::
; ptr start address is: 20 (R5)
0x9D001C48 0x0320280A MOVZ R5, R25, R0
; index end address is: 28 (R7)
; i end address is: 24 (R6)
; ptr end address is: 20 (R5)
;__Lib_USB.c, 5492 ::
L___Lib_USB_GetMaxIndexInConfigDsc254:
;__Lib_USB.c, 5493 ::
; ptr start address is: 20 (R5)
; totalLen start address is: 16 (R4)
; totalLen end address is: 16 (R4)
; i start address is: 24 (R6)
; index start address is: 28 (R7)
0x9D001C4C 0x24A20001 ADDIU R2, R5, 1
0x9D001C50 0x90420000 LBU R2, 0(R2)
0x9D001C54 0x304300FF ANDI R3, R2, 255
0x9D001C58 0x34020002 ORI R2, R0, 2
0x9D001C5C 0x1462000F BNE R3, R2, L___Lib_USB_GetMaxIndexInConfigDsc307
0x9D001C60 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc606:
; totalLen end address is: 16 (R4)
;__Lib_USB.c, 5494 ::
; totalLen start address is: 16 (R4)
0x9D001C64 0x24A20006 ADDIU R2, R5, 6
0x9D001C68 0x90420000 LBU R2, 0(R2)
0x9D001C6C 0x304300FF ANDI R3, R2, 255
0x9D001C70 0x30E200FF ANDI R2, R7, 255
0x9D001C74 0x0043102B SLTU R2, R2, R3
0x9D001C78 0x10400006 BEQ R2, R0, L___Lib_USB_GetMaxIndexInConfigDsc306
0x9D001C7C 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc607:
; index end address is: 28 (R7)
;__Lib_USB.c, 5495 ::
0x9D001C80 0x24A20006 ADDIU R2, R5, 6
0x9D001C84 0x90420000 LBU R2, 0(R2)
; index start address is: 12 (R3)
0x9D001C88 0x304300FF ANDI R3, R2, 255
; index end address is: 12 (R3)
;__Lib_USB.c, 5496 ::
0x9D001C8C 0x0B400725 J L___Lib_USB_GetMaxIndexInConfigDsc257
0x9D001C90 0x306700FF ANDI R7, R3, 255
L___Lib_USB_GetMaxIndexInConfigDsc306:
;__Lib_USB.c, 5494 ::
;__Lib_USB.c, 5496 ::
L___Lib_USB_GetMaxIndexInConfigDsc257:
;__Lib_USB.c, 5497 ::
; index start address is: 28 (R7)
; index end address is: 28 (R7)
0x9D001C94 0x0B400727 J L___Lib_USB_GetMaxIndexInConfigDsc256
0x9D001C98 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc307:
;__Lib_USB.c, 5493 ::
;__Lib_USB.c, 5497 ::
L___Lib_USB_GetMaxIndexInConfigDsc256:
;__Lib_USB.c, 5499 ::
; index start address is: 28 (R7)
0x9D001C9C 0x24A20001 ADDIU R2, R5, 1
0x9D001CA0 0x90420000 LBU R2, 0(R2)
0x9D001CA4 0x304300FF ANDI R3, R2, 255
0x9D001CA8 0x34020004 ORI R2, R0, 4
0x9D001CAC 0x1462000F BNE R3, R2, L___Lib_USB_GetMaxIndexInConfigDsc309
0x9D001CB0 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc608:
;__Lib_USB.c, 5500 ::
0x9D001CB4 0x24A20008 ADDIU R2, R5, 8
0x9D001CB8 0x90420000 LBU R2, 0(R2)
0x9D001CBC 0x304300FF ANDI R3, R2, 255
0x9D001CC0 0x30E200FF ANDI R2, R7, 255
0x9D001CC4 0x0043102B SLTU R2, R2, R3
0x9D001CC8 0x10400006 BEQ R2, R0, L___Lib_USB_GetMaxIndexInConfigDsc308
0x9D001CCC 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc609:
; index end address is: 28 (R7)
;__Lib_USB.c, 5501 ::
0x9D001CD0 0x24A20008 ADDIU R2, R5, 8
0x9D001CD4 0x90420000 LBU R2, 0(R2)
; index start address is: 12 (R3)
0x9D001CD8 0x304300FF ANDI R3, R2, 255
; index end address is: 12 (R3)
;__Lib_USB.c, 5502 ::
0x9D001CDC 0x0B400739 J L___Lib_USB_GetMaxIndexInConfigDsc259
0x9D001CE0 0x306700FF ANDI R7, R3, 255
L___Lib_USB_GetMaxIndexInConfigDsc308:
;__Lib_USB.c, 5500 ::
;__Lib_USB.c, 5502 ::
L___Lib_USB_GetMaxIndexInConfigDsc259:
;__Lib_USB.c, 5503 ::
; index start address is: 28 (R7)
; index end address is: 28 (R7)
0x9D001CE4 0x0B40073B J L___Lib_USB_GetMaxIndexInConfigDsc258
0x9D001CE8 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc309:
;__Lib_USB.c, 5499 ::
;__Lib_USB.c, 5503 ::
L___Lib_USB_GetMaxIndexInConfigDsc258:
;__Lib_USB.c, 5504 ::
; index start address is: 28 (R7)
0x9D001CEC 0x90A20000 LBU R2, 0(R5)
0x9D001CF0 0x304200FF ANDI R2, R2, 255
0x9D001CF4 0x00C21021 ADDU R2, R6, R2
0x9D001CF8 0x3046FFFF ANDI R6, R2, 65535
;__Lib_USB.c, 5505 ::
0x9D001CFC 0x3043FFFF ANDI R3, R2, 65535
0x9D001D00 0x3082FFFF ANDI R2, R4, 65535
0x9D001D04 0x0062102B SLTU R2, R3, R2
0x9D001D08 0x14400003 BNE R2, R0, L___Lib_USB_GetMaxIndexInConfigDsc260
0x9D001D0C 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc610:
; totalLen end address is: 16 (R4)
; i end address is: 24 (R6)
; ptr end address is: 20 (R5)
;__Lib_USB.c, 5506 ::
0x9D001D10 0x0B40074B J L___Lib_USB_GetMaxIndexInConfigDsc255
0x9D001D14 0x70000000 NOP
L___Lib_USB_GetMaxIndexInConfigDsc260:
;__Lib_USB.c, 5508 ::
; ptr start address is: 20 (R5)
; i start address is: 24 (R6)
; totalLen start address is: 16 (R4)
0x9D001D18 0x90A20000 LBU R2, 0(R5)
0x9D001D1C 0x304200FF ANDI R2, R2, 255
0x9D001D20 0x00A21021 ADDU R2, R5, R2
;__Lib_USB.c, 5509 ::
; totalLen end address is: 16 (R4)
; i end address is: 24 (R6)
; ptr end address is: 20 (R5)
0x9D001D24 0x0B400713 J L___Lib_USB_GetMaxIndexInConfigDsc254
0x9D001D28 0x0040280A MOVZ R5, R2, R0
L___Lib_USB_GetMaxIndexInConfigDsc255:
;__Lib_USB.c, 5510 ::
0x9D001D2C 0x30E200FF ANDI R2, R7, 255
; index end address is: 28 (R7)
;__Lib_USB.c, 5511 ::
L_end_GetMaxIndexInConfigDsc:
0x9D001D30 0x03E00008 JR RA
0x9D001D34 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_GetMaxIndexInConfigDsc
__Lib_USB_USB_Device_Init:
;__Lib_USB.c, 2752 ::
0x9D002DB4 0x27BDFFF8 ADDIU SP, SP, -8
0x9D002DB8 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 2756 ::
0x9D002DBC 0xAFB90004 SW R25, 4(SP)
0x9D002DC0 0x34020002 ORI R2, R0, 0x0002
0x9D002DC4 0x3C1EBF88 LUI R30, 49032
;__Lib_USB.c, 2757 ::
0x9D002DC8 0x0F40068D JAL _USB_Init_Desc+0
0x9D002DCC 0xA3C21077 SB R2, 4215(R30)
;__Lib_USB.c, 2759 ::
0x9D002DD0 0xAC20ACA4 SW R0, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
;__Lib_USB.c, 2760 ::
0x9D002DD4 0xAC20ACEC SW R0, Offset(__Lib_USB_USB_In_Handle+0)(GP)
;__Lib_USB.c, 2763 ::
0x9D002DD8 0x340200FF ORI R2, R0, 255
0x9D002DDC 0x3C1EBF88 LUI R30, 49032
0x9D002DE0 0xAFC25220 SW R2, 21024(R30)
;__Lib_USB.c, 2766 ::
0x9D002DE4 0x340200FF ORI R2, R0, 255
0x9D002DE8 0x3C1EBF88 LUI R30, 49032
0x9D002DEC 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 2769 ::
0x9D002DF0 0x3C1EBF88 LUI R30, 49032
0x9D002DF4 0xAFC05300 SW R0, 21248(R30)
;__Lib_USB.c, 2770 ::
0x9D002DF8 0x0F40061A JAL __Lib_USB_USB_Disable_Non_Zero_Endpoints+0
0x9D002DFC 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 2772 ::
0x9D002E00 0x0F400679 JAL __Lib_USB_USB_Configure+0
0x9D002E04 0x70000000 NOP
;__Lib_USB.c, 2775 ::
0x9D002E08 0x3C1EBF88 LUI R30, 49032
0x9D002E0C 0x83C25080 LB R2, 20608(R30)
0x9D002E10 0x34420001 ORI R2, R2, 0x0001
0x9D002E14 0x3C1EBF88 LUI R30, 49032
0x9D002E18 0xA3C25080 SB R2, 20608(R30)
;__Lib_USB.c, 2777 ::
0x9D002E1C 0x3C03A000 LUI R3, 40960
0x9D002E20 0x34630000 ORI R3, R3, 0
0x9D002E24 0x3C021FFF LUI R2, 8191
0x9D002E28 0x3442FFFF ORI R2, R2, 65535
0x9D002E2C 0x00621024 AND R2, R3, R2
0x9D002E30 0x00021602 SRL R2, R2, 24
0x9D002E34 0x3C1EBF88 LUI R30, 49032
0x9D002E38 0xAFC252D0 SW R2, 21200(R30)
;__Lib_USB.c, 2778 ::
0x9D002E3C 0x3C03A000 LUI R3, 40960
0x9D002E40 0x34630000 ORI R3, R3, 0
0x9D002E44 0x3C021FFF LUI R2, 8191
0x9D002E48 0x3442FFFF ORI R2, R2, 65535
0x9D002E4C 0x00621024 AND R2, R3, R2
0x9D002E50 0x00021402 SRL R2, R2, 16
0x9D002E54 0x3C1EBF88 LUI R30, 49032
0x9D002E58 0xAFC252C0 SW R2, 21184(R30)
;__Lib_USB.c, 2779 ::
0x9D002E5C 0x3C03A000 LUI R3, 40960
0x9D002E60 0x34630000 ORI R3, R3, 0
0x9D002E64 0x3C021FFF LUI R2, 8191
0x9D002E68 0x3442FFFF ORI R2, R2, 65535
0x9D002E6C 0x00621024 AND R2, R3, R2
0x9D002E70 0x00021202 SRL R2, R2, 8
0x9D002E74 0x3C1EBF88 LUI R30, 49032
0x9D002E78 0xAFC25270 SW R2, 21104(R30)
;__Lib_USB.c, 2784 ::
; i start address is: 16 (R4)
0x9D002E7C 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L___Lib_USB_USB_Device_Init7:
; i start address is: 16 (R4)
0x9D002E80 0x308200FF ANDI R2, R4, 255
0x9D002E84 0x2C420008 SLTIU R2, R2, 8
0x9D002E88 0x1040000B BEQ R2, R0, L___Lib_USB_USB_Device_Init8
0x9D002E8C 0x70000000 NOP
L___Lib_USB_USB_Device_Init327:
;__Lib_USB.c, 2786 ::
0x9D002E90 0x308200FF ANDI R2, R4, 255
0x9D002E94 0x000218C0 SLL R3, R2, 3
0x9D002E98 0x3C02A000 LUI R2, 40960
0x9D002E9C 0x34420000 ORI R2, R2, 0
0x9D002EA0 0x00431021 ADDU R2, R2, R3
0x9D002EA4 0xAC400000 SW R0, 0(R2)
0x9D002EA8 0xAC400004 SW R0, 4(R2)
;__Lib_USB.c, 2784 ::
0x9D002EAC 0x24820001 ADDIU R2, R4, 1
;__Lib_USB.c, 2787 ::
; i end address is: 16 (R4)
0x9D002EB0 0x0B400BA0 J L___Lib_USB_USB_Device_Init7
0x9D002EB4 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_Device_Init8:
;__Lib_USB.c, 2790 ::
0x9D002EB8 0x3C1EBF88 LUI R30, 49032
0x9D002EBC 0x83C25250 LB R2, 21072(R30)
0x9D002EC0 0x34420002 ORI R2, R2, 0x0002
0x9D002EC4 0x3C1EBF88 LUI R30, 49032
0x9D002EC8 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 2793 ::
0x9D002ECC 0x3C1EBF88 LUI R30, 49032
0x9D002ED0 0xAFC05260 SW R0, 21088(R30)
;__Lib_USB.c, 2796 ::
0x9D002ED4 0x3C1EBF88 LUI R30, 49032
0x9D002ED8 0x93C25250 LBU R2, 21072(R30)
0x9D002EDC 0x7C022944 INS R2, R0, 5, 1
0x9D002EE0 0x3C1EBF88 LUI R30, 49032
0x9D002EE4 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 2799 ::
0x9D002EE8 0x3C1EBF88 LUI R30, 49032
0x9D002EEC 0x83C25250 LB R2, 21072(R30)
0x9D002EF0 0x7C020844 INS R2, R0, 1, 1
0x9D002EF4 0x3C1EBF88 LUI R30, 49032
0x9D002EF8 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 2802 ::
L___Lib_USB_USB_Device_Init10:
0x9D002EFC 0x3C1EBF88 LUI R30, 49032
0x9D002F00 0x83C25200 LB R2, 20992(R30)
0x9D002F04 0x7C4200C0 EXT R2, R2, 3, 1
0x9D002F08 0x10400008 BEQ R2, 1, L___Lib_USB_USB_Device_Init11
0x9D002F0C 0x70000000 NOP
L___Lib_USB_USB_Device_Init329:
;__Lib_USB.c, 2804 ::
0x9D002F10 0x34020008 ORI R2, R0, 8
0x9D002F14 0x3C1EBF88 LUI R30, 49032
0x9D002F18 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 2806 ::
0x9D002F1C 0xA020ACC4 SB R0, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 2807 ::
0x9D002F20 0xA020ACD8 SB R0, Offset(__Lib_USB_outPipes+4)(GP)
;__Lib_USB.c, 2808 ::
;__Lib_USB.c, 2809 ::
0x9D002F24 0x0B400BBF J L___Lib_USB_USB_Device_Init10
0x9D002F28 0xA420ACDA SH R0, Offset(__Lib_USB_outPipes+6)(GP)
L___Lib_USB_USB_Device_Init11:
;__Lib_USB.c, 2813 ::
0x9D002F2C 0x34020001 ORI R2, R0, 1
0x9D002F30 0xA022ABE8 SB R2, Offset(_USBStatusStageEnabledFlag1+0)(GP)
;__Lib_USB.c, 2814 ::
0x9D002F34 0x34020001 ORI R2, R0, 1
0x9D002F38 0xA0229F99 SB R2, Offset(_USBStatusStageEnabledFlag2+0)(GP)
;__Lib_USB.c, 2816 ::
0x9D002F3C 0xA0209F9A SB R0, Offset(_USBDeferINDataStagePackets+0)(GP)
;__Lib_USB.c, 2817 ::
0x9D002F40 0xA0208057 SB R0, Offset(_USBDeferOUTDataStagePackets+0)(GP)
;__Lib_USB.c, 2818 ::
0x9D002F44 0xA020ACCB SB R0, Offset(_USBBusIsSuspended+0)(GP)
;__Lib_USB.c, 2822 ::
; i start address is: 16 (R4)
0x9D002F48 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L___Lib_USB_USB_Device_Init12:
; i start address is: 16 (R4)
0x9D002F4C 0x308200FF ANDI R2, R4, 255
0x9D002F50 0x2C420002 SLTIU R2, R2, 2
0x9D002F54 0x1040001A BEQ R2, R0, L___Lib_USB_USB_Device_Init13
0x9D002F58 0x70000000 NOP
L___Lib_USB_USB_Device_Init330:
;__Lib_USB.c, 2824 ::
0x9D002F5C 0x308200FF ANDI R2, R4, 255
0x9D002F60 0x00021880 SLL R3, R2, 2
0x9D002F64 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D002F68 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D002F6C 0x00431021 ADDU R2, R2, R3
0x9D002F70 0xAC400000 SW R0, 0(R2)
;__Lib_USB.c, 2825 ::
0x9D002F74 0x308200FF ANDI R2, R4, 255
0x9D002F78 0x00021880 SLL R3, R2, 2
0x9D002F7C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D002F80 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D002F84 0x00431021 ADDU R2, R2, R3
0x9D002F88 0xAC400000 SW R0, 0(R2)
;__Lib_USB.c, 2826 ::
0x9D002F8C 0x308300FF ANDI R3, R4, 255
0x9D002F90 0x3C02A000 LUI R2, hi_addr(_ep_data_in+0)
0x9D002F94 0x34422BE1 ORI R2, R2, lo_addr(_ep_data_in+0)
0x9D002F98 0x00431021 ADDU R2, R2, R3
0x9D002F9C 0xA0400000 SB R0, 0(R2)
;__Lib_USB.c, 2827 ::
0x9D002FA0 0x308300FF ANDI R3, R4, 255
0x9D002FA4 0x3C02A000 LUI R2, hi_addr(_ep_data_out+0)
0x9D002FA8 0x3442004E ORI R2, R2, lo_addr(_ep_data_out+0)
0x9D002FAC 0x00431021 ADDU R2, R2, R3
0x9D002FB0 0xA0400000 SB R0, 0(R2)
;__Lib_USB.c, 2822 ::
0x9D002FB4 0x24820001 ADDIU R2, R4, 1
;__Lib_USB.c, 2828 ::
; i end address is: 16 (R4)
0x9D002FB8 0x0B400BD3 J L___Lib_USB_USB_Device_Init12
0x9D002FBC 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_Device_Init13:
;__Lib_USB.c, 2832 ::
0x9D002FC0 0x3C02A000 LUI R2, 40960
0x9D002FC4 0x34420010 ORI R2, R2, 16
0x9D002FC8 0xAC22AC9C SW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 2834 ::
0x9D002FCC 0x3402000D ORI R2, R0, 13
0x9D002FD0 0x3C1EBF88 LUI R30, 49032
0x9D002FD4 0xAFC25300 SW R2, 21248(R30)
;__Lib_USB.c, 2836 ::
0x9D002FD8 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D002FDC 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D002FE0 0x3C021FFF LUI R2, 8191
0x9D002FE4 0x3442FFFF ORI R2, R2, 65535
0x9D002FE8 0x00621024 AND R2, R3, R2
0x9D002FEC 0x3C1EA000 LUI R30, 40960
0x9D002FF0 0xAFC20004 SW R2, 4(R30)
;__Lib_USB.c, 2837 ::
0x9D002FF4 0x34030008 ORI R3, R0, 8
0x9D002FF8 0x3C1EA000 LUI R30, 40960
0x9D002FFC 0x97C20002 LHU R2, 2(R30)
0x9D003000 0x7C624804 INS R2, R3, 0, 10
0x9D003004 0x3C1EA000 LUI R30, 40960
0x9D003008 0xA7C20002 SH R2, 2(R30)
;__Lib_USB.c, 2838 ::
0x9D00300C 0x34020084 ORI R2, R0, 132
0x9D003010 0x3C1EA000 LUI R30, 40960
0x9D003014 0xA7C20000 SH R2, 0(R30)
;__Lib_USB.c, 2841 ::
0x9D003018 0xA020ABF7 SB R0, Offset(__Lib_USB_USBActiveConfiguration+0)(GP)
;__Lib_USB.c, 2844 ::
0x9D00301C 0xA020ABF5 SB R0, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 2845 ::
L_end_USB_Device_Init:
0x9D003020 0x8FB90004 LW R25, 4(SP)
0x9D003024 0x8FBF0000 LW RA, 0(SP)
0x9D003028 0x03E00008 JR RA
0x9D00302C 0x27BD0008 ADDIU SP, SP, 8
; end of __Lib_USB_USB_Device_Init
_USB_Init_Desc:
;USBdsc.c, 164 :: void USB_Init_Desc(){
;USBdsc.c, 165 :: USB_config_dsc_ptr[0] = &configDescriptor1;
0x9D001A34 0x3C029D00 LUI R2, hi_addr(_configDescriptor1+0)
0x9D001A38 0x344249A8 ORI R2, R2, lo_addr(_configDescriptor1+0)
0x9D001A3C 0xAC22ACB4 SW R2, Offset(_USB_config_dsc_ptr+0)(GP)
;USBdsc.c, 166 :: USB_string_dsc_ptr[0] = (const char*)&strd1;
0x9D001A40 0x3C029D00 LUI R2, hi_addr(_strd1+0)
0x9D001A44 0x34424A34 ORI R2, R2, lo_addr(_strd1+0)
0x9D001A48 0xAC22ACA8 SW R2, Offset(_USB_string_dsc_ptr+0)(GP)
;USBdsc.c, 167 :: USB_string_dsc_ptr[1] = (const char*)&strd2;
0x9D001A4C 0x3C029D00 LUI R2, hi_addr(_strd2+0)
0x9D001A50 0x344249D2 ORI R2, R2, lo_addr(_strd2+0)
0x9D001A54 0xAC22ACAC SW R2, Offset(_USB_string_dsc_ptr+4)(GP)
;USBdsc.c, 168 :: USB_string_dsc_ptr[2] = (const char*)&strd3;
0x9D001A58 0x3C029D00 LUI R2, hi_addr(_strd3+0)
0x9D001A5C 0x34424978 ORI R2, R2, lo_addr(_strd3+0)
0x9D001A60 0xAC22ACB0 SW R2, Offset(_USB_string_dsc_ptr+8)(GP)
;USBdsc.c, 169 :: }
L_end_USB_Init_Desc:
0x9D001A64 0x03E00008 JR RA
0x9D001A68 0x70000000 NOP
; end of _USB_Init_Desc
__Lib_USB_USB_Disable_Non_Zero_Endpoints:
;__Lib_USB.c, 2720 ::
0x9D001868 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 2722 ::
; p start address is: 20 (R5)
0x9D00186C 0x3C1EBF88 LUI R30, hi_addr(U1EP1+0)
0x9D001870 0x37DE5310 ORI R30, R30, lo_addr(U1EP1+0)
0x9D001874 0x03C0280A MOVZ R5, R30, R0
;__Lib_USB.c, 2723 ::
; i start address is: 16 (R4)
0x9D001878 0x0000200A MOVZ R4, R0, R0
; p end address is: 20 (R5)
; i end address is: 16 (R4)
L___Lib_USB_USB_Disable_Non_Zero_Endpoints4:
; i start address is: 16 (R4)
; p start address is: 20 (R5)
0x9D00187C 0x308300FF ANDI R3, R4, 255
0x9D001880 0x332200FF ANDI R2, R25, 255
0x9D001884 0x0062102B SLTU R2, R3, R2
0x9D001888 0x10400007 BEQ R2, R0, L___Lib_USB_USB_Disable_Non_Zero_Endpoints5
0x9D00188C 0x70000000 NOP
L___Lib_USB_USB_Disable_Non_Zero_Endpoints325:
;__Lib_USB.c, 2725 ::
0x9D001890 0xACA00000 SW R0, 0(R5)
;__Lib_USB.c, 2726 ::
0x9D001894 0x24A20010 ADDIU R2, R5, 16
0x9D001898 0x0040280A MOVZ R5, R2, R0
;__Lib_USB.c, 2723 ::
0x9D00189C 0x24820001 ADDIU R2, R4, 1
;__Lib_USB.c, 2727 ::
; p end address is: 20 (R5)
; i end address is: 16 (R4)
0x9D0018A0 0x0B40061F J L___Lib_USB_USB_Disable_Non_Zero_Endpoints4
0x9D0018A4 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_Disable_Non_Zero_Endpoints5:
;__Lib_USB.c, 2728 ::
L_end_USB_Disable_Non_Zero_Endpoints:
0x9D0018A8 0x03E00008 JR RA
0x9D0018AC 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Disable_Non_Zero_Endpoints
__Lib_USB_USB_Configure:
;__Lib_USB.c, 2203 ::
0x9D0019E4 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 2204 ::
0x9D0019E8 0x3C1EBF88 LUI R30, 49032
0x9D0019EC 0xAFC052E0 SW R0, 21216(R30)
;__Lib_USB.c, 2205 ::
0x9D0019F0 0x3402009F ORI R2, R0, 159
0x9D0019F4 0x3C1EBF88 LUI R30, 49032
0x9D0019F8 0xAFC25230 SW R2, 21040(R30)
;__Lib_USB.c, 2206 ::
0x9D0019FC 0x3402009F ORI R2, R0, 159
0x9D001A00 0x3C1EBF88 LUI R30, 49032
0x9D001A04 0xAFC25210 SW R2, 21008(R30)
;__Lib_USB.c, 2207 ::
0x9D001A08 0x3C1EBF88 LUI R30, 49032
0x9D001A0C 0x8FC25070 LW R2, 20592(R30)
0x9D001A10 0x3042000F ANDI R2, R2, 15
0x9D001A14 0x3C1EBF88 LUI R30, 49032
0x9D001A18 0xAFC25070 SW R2, 20592(R30)
;__Lib_USB.c, 2208 ::
0x9D001A1C 0x3C1EBF88 LUI R30, 49032
0x9D001A20 0x8FC25070 LW R2, 20592(R30)
0x9D001A24 0x3C1EBF88 LUI R30, 49032
0x9D001A28 0xAFC25070 SW R2, 20592(R30)
;__Lib_USB.c, 2209 ::
L_end_USB_Configure:
0x9D001A2C 0x03E00008 JR RA
0x9D001A30 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Configure
__Lib_USB_USB_Attach_Device:
;__Lib_USB.c, 4800 ::
0x9D002CE8 0x27BDFFFC ADDIU SP, SP, -4
0x9D002CEC 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4802 ::
0x9D002CF0 0x9022ABF5 LBU R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D002CF4 0x14400016 BNE R2, R0, L___Lib_USB_USB_Attach_Device196
0x9D002CF8 0x70000000 NOP
L___Lib_USB_USB_Attach_Device525:
;__Lib_USB.c, 4806 ::
0x9D002CFC 0x3C1EBF88 LUI R30, 49032
0x9D002D00 0xAFC05250 SW R0, 21072(R30)
;__Lib_USB.c, 4809 ::
0x9D002D04 0x3C1EBF88 LUI R30, 49032
;__Lib_USB.c, 4813 ::
0x9D002D08 0x0F400679 JAL __Lib_USB_USB_Configure+0
0x9D002D0C 0xAFC05210 SW R0, 21008(R30)
;__Lib_USB.c, 4816 ::
0x9D002D10 0x34020002 ORI R2, R0, 0x0002
0x9D002D14 0x3C1EBF88 LUI R30, 49032
0x9D002D18 0xA3C2107B SB R2, 4219(R30)
;__Lib_USB.c, 4825 ::
L___Lib_USB_USB_Attach_Device198:
0x9D002D1C 0x3C1EBF88 LUI R30, 49032
0x9D002D20 0x83C25250 LB R2, 21072(R30)
0x9D002D24 0x7C420000 EXT R2, R2, 0, 1
0x9D002D28 0x14400007 BNE R2, R0, L___Lib_USB_USB_Attach_Device199
0x9D002D2C 0x70000000 NOP
L___Lib_USB_USB_Attach_Device526:
;__Lib_USB.c, 4826 ::
0x9D002D30 0x3C1EBF88 LUI R30, 49032
0x9D002D34 0x83C25250 LB R2, 21072(R30)
0x9D002D38 0x34420001 ORI R2, R2, 0x0001
0x9D002D3C 0x3C1EBF88 LUI R30, 49032
;__Lib_USB.c, 4827 ::
0x9D002D40 0x0B400B47 J L___Lib_USB_USB_Attach_Device198
0x9D002D44 0xA3C25250 SB R2, 21072(R30)
L___Lib_USB_USB_Attach_Device199:
;__Lib_USB.c, 4830 ::
0x9D002D48 0x34020001 ORI R2, R0, 1
0x9D002D4C 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 4833 ::
L___Lib_USB_USB_Attach_Device196:
;__Lib_USB.c, 4834 ::
L_end_USB_Attach_Device:
0x9D002D50 0x8FBF0000 LW RA, 0(SP)
0x9D002D54 0x03E00008 JR RA
0x9D002D58 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Attach_Device
_USB_Polling_Proc:
;__Lib_USB.c, 3097 ::
0x9D003FA0 0x27BDFFFC ADDIU SP, SP, -4
0x9D003FA4 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3099 ::
0x9D003FA8 0x0F400C0C JAL __Lib_USB_USB_Device_Service+0
0x9D003FAC 0x70000000 NOP
;__Lib_USB.c, 3100 ::
L_end_USB_Polling_Proc:
0x9D003FB0 0x8FBF0000 LW RA, 0(SP)
0x9D003FB4 0x03E00008 JR RA
0x9D003FB8 0x27BD0004 ADDIU SP, SP, 4
; end of _USB_Polling_Proc
__Lib_USB_USB_Device_Service:
;__Lib_USB.c, 2877 ::
0x9D003030 0x27BDFFEC ADDIU SP, SP, -20
0x9D003034 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 2888 ::
0x9D003038 0xAFB90004 SW R25, 4(SP)
0x9D00303C 0xAFBA0008 SW R26, 8(SP)
0x9D003040 0xAFBB000C SW R27, 12(SP)
0x9D003044 0x0000180A MOVZ R3, R0, R0
0x9D003048 0x34020000 ORI R2, R0, 0
0x9D00304C 0x14620016 BNE R3, R2, L___Lib_USB_USB_Device_Service15
0x9D003050 0x70000000 NOP
L___Lib_USB_USB_Device_Service332:
;__Lib_USB.c, 2911 ::
L___Lib_USB_USB_Device_Service16:
;__Lib_USB.c, 2914 ::
0x9D003054 0x9022ABF5 LBU R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D003058 0x14400013 BNE R2, R0, L___Lib_USB_USB_Device_Service17
0x9D00305C 0x70000000 NOP
L___Lib_USB_USB_Device_Service333:
;__Lib_USB.c, 2917 ::
0x9D003060 0x3C1EBF88 LUI R30, 49032
0x9D003064 0xAFC05250 SW R0, 21072(R30)
;__Lib_USB.c, 2920 ::
0x9D003068 0x3C1EBF88 LUI R30, 49032
;__Lib_USB.c, 2924 ::
0x9D00306C 0x0F400679 JAL __Lib_USB_USB_Configure+0
0x9D003070 0xAFC05210 SW R0, 21008(R30)
;__Lib_USB.c, 2927 ::
L___Lib_USB_USB_Device_Service18:
0x9D003074 0x3C1EBF88 LUI R30, 49032
0x9D003078 0x83C25250 LB R2, 21072(R30)
0x9D00307C 0x7C420000 EXT R2, R2, 0, 1
0x9D003080 0x14400007 BNE R2, R0, L___Lib_USB_USB_Device_Service19
0x9D003084 0x70000000 NOP
L___Lib_USB_USB_Device_Service334:
0x9D003088 0x3C1EBF88 LUI R30, 49032
0x9D00308C 0x83C25250 LB R2, 21072(R30)
0x9D003090 0x34420001 ORI R2, R2, 0x0001
0x9D003094 0x3C1EBF88 LUI R30, 49032
0x9D003098 0x0B400C1D J L___Lib_USB_USB_Device_Service18
0x9D00309C 0xA3C25250 SB R2, 21072(R30)
L___Lib_USB_USB_Device_Service19:
;__Lib_USB.c, 2930 ::
0x9D0030A0 0x34020001 ORI R2, R0, 1
0x9D0030A4 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 2932 ::
L___Lib_USB_USB_Device_Service17:
;__Lib_USB.c, 2933 ::
L___Lib_USB_USB_Device_Service15:
;__Lib_USB.c, 2936 ::
0x9D0030A8 0x9023ABF5 LBU R3, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D0030AC 0x34020001 ORI R2, R0, 1
0x9D0030B0 0x14620016 BNE R3, R2, L___Lib_USB_USB_Device_Service20
0x9D0030B4 0x70000000 NOP
L___Lib_USB_USB_Device_Service335:
;__Lib_USB.c, 2949 ::
0x9D0030B8 0x340200FF ORI R2, R0, 255
0x9D0030BC 0x3C1EBF88 LUI R30, 49032
0x9D0030C0 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 2951 ::
0x9D0030C4 0x0000180A MOVZ R3, R0, R0
0x9D0030C8 0x34020000 ORI R2, R0, 0
0x9D0030CC 0x14620003 BNE R3, R2, L___Lib_USB_USB_Device_Service22
0x9D0030D0 0x70000000 NOP
L___Lib_USB_USB_Device_Service336:
;__Lib_USB.c, 2952 ::
0x9D0030D4 0x3C1EBF88 LUI R30, 49032
0x9D0030D8 0xAFC05210 SW R0, 21008(R30)
L___Lib_USB_USB_Device_Service22:
;__Lib_USB.c, 2954 ::
0x9D0030DC 0x3C1EBF88 LUI R30, 49032
0x9D0030E0 0x83C25210 LB R2, 21008(R30)
0x9D0030E4 0x34420001 ORI R2, R2, 0x0001
0x9D0030E8 0x3C1EBF88 LUI R30, 49032
0x9D0030EC 0xA3C25210 SB R2, 21008(R30)
;__Lib_USB.c, 2955 ::
0x9D0030F0 0x3C1EBF88 LUI R30, 49032
0x9D0030F4 0x83C25210 LB R2, 21008(R30)
0x9D0030F8 0x34420010 ORI R2, R2, 0x0010
0x9D0030FC 0x3C1EBF88 LUI R30, 49032
0x9D003100 0xA3C25210 SB R2, 21008(R30)
;__Lib_USB.c, 2956 ::
0x9D003104 0x34020002 ORI R2, R0, 2
0x9D003108 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 2958 ::
L___Lib_USB_USB_Device_Service20:
;__Lib_USB.c, 2964 ::
0x9D00310C 0x3C1EBF88 LUI R30, 49032
0x9D003110 0x83C25040 LB R2, 20544(R30)
0x9D003114 0x7C420100 EXT R2, R2, 4, 1
0x9D003118 0x1040000A BEQ R2, R0, L___Lib_USB_USB_Device_Service288
0x9D00311C 0x70000000 NOP
L___Lib_USB_USB_Device_Service338:
0x9D003120 0x3C1EBF88 LUI R30, 49032
0x9D003124 0x83C25050 LB R2, 20560(R30)
0x9D003128 0x7C420100 EXT R2, R2, 4, 1
0x9D00312C 0x10400005 BEQ R2, R0, L___Lib_USB_USB_Device_Service287
0x9D003130 0x70000000 NOP
L___Lib_USB_USB_Device_Service340:
L___Lib_USB_USB_Device_Service286:
;__Lib_USB.c, 2966 ::
0x9D003134 0x34020010 ORI R2, R0, 16
0x9D003138 0x3C1EBF88 LUI R30, 49032
;__Lib_USB.c, 2968 ::
0x9D00313C 0x0F4007AC JAL __Lib_USB_USB_Wake_From_Suspend+0
0x9D003140 0xAFC25040 SW R2, 20544(R30)
;__Lib_USB.c, 2964 ::
L___Lib_USB_USB_Device_Service288:
L___Lib_USB_USB_Device_Service287:
;__Lib_USB.c, 2975 ::
0x9D003144 0x3C1EBF88 LUI R30, 49032
0x9D003148 0x83C25080 LB R2, 20608(R30)
0x9D00314C 0x7C420040 EXT R2, R2, 1, 1
0x9D003150 0x10400005 BEQ R2, 1, L___Lib_USB_USB_Device_Service26
0x9D003154 0x70000000 NOP
L___Lib_USB_USB_Device_Service342:
;__Lib_USB.c, 2977 ::
0x9D003158 0x0F400775 JAL __Lib_USB_USB_Clear_Interrupt+0
0x9D00315C 0x70000000 NOP
;__Lib_USB.c, 2978 ::
0x9D003160 0x0B400D06 J L_end_USB_Device_Service
0x9D003164 0x70000000 NOP
;__Lib_USB.c, 2979 ::
L___Lib_USB_USB_Device_Service26:
;__Lib_USB.c, 2991 ::
0x9D003168 0x3C1EBF88 LUI R30, 49032
0x9D00316C 0x83C25200 LB R2, 20992(R30)
0x9D003170 0x7C420000 EXT R2, R2, 0, 1
0x9D003174 0x10400016 BEQ R2, R0, L___Lib_USB_USB_Device_Service290
0x9D003178 0x70000000 NOP
L___Lib_USB_USB_Device_Service344:
0x9D00317C 0x3C1EBF88 LUI R30, 49032
0x9D003180 0x83C25210 LB R2, 21008(R30)
0x9D003184 0x7C420000 EXT R2, R2, 0, 1
0x9D003188 0x10400011 BEQ R2, R0, L___Lib_USB_USB_Device_Service289
0x9D00318C 0x70000000 NOP
L___Lib_USB_USB_Device_Service346:
L___Lib_USB_USB_Device_Service285:
;__Lib_USB.c, 2993 ::
0x9D003190 0x0F400B6D JAL __Lib_USB_USB_Device_Init+0
0x9D003194 0x70000000 NOP
;__Lib_USB.c, 2994 ::
0x9D003198 0x34020004 ORI R2, R0, 4
0x9D00319C 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 2997 ::
0x9D0031A0 0x34030001 ORI R3, R0, 1
0x9D0031A4 0x34020000 ORI R2, R0, 0
0x9D0031A8 0x14620004 BNE R3, R2, L___Lib_USB_USB_Device_Service30
0x9D0031AC 0x70000000 NOP
L___Lib_USB_USB_Device_Service347:
;__Lib_USB.c, 2998 ::
0x9D0031B0 0x34020002 ORI R2, R0, 0x0002
0x9D0031B4 0x3C1EBF88 LUI R30, 49032
0x9D0031B8 0xA3C2107B SB R2, 4219(R30)
L___Lib_USB_USB_Device_Service30:
;__Lib_USB.c, 3000 ::
0x9D0031BC 0x34020004 ORI R2, R0, 4
0x9D0031C0 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 3002 ::
0x9D0031C4 0x34020001 ORI R2, R0, 1
0x9D0031C8 0x3C1EBF88 LUI R30, 49032
0x9D0031CC 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 2991 ::
L___Lib_USB_USB_Device_Service290:
L___Lib_USB_USB_Device_Service289:
;__Lib_USB.c, 3008 ::
0x9D0031D0 0x3C1EBF88 LUI R30, 49032
0x9D0031D4 0x83C25200 LB R2, 20992(R30)
0x9D0031D8 0x7C420100 EXT R2, R2, 4, 1
0x9D0031DC 0x1040000B BEQ R2, R0, L___Lib_USB_USB_Device_Service292
0x9D0031E0 0x70000000 NOP
L___Lib_USB_USB_Device_Service349:
0x9D0031E4 0x3C1EBF88 LUI R30, 49032
0x9D0031E8 0x83C25210 LB R2, 21008(R30)
0x9D0031EC 0x7C420100 EXT R2, R2, 4, 1
0x9D0031F0 0x10400006 BEQ R2, R0, L___Lib_USB_USB_Device_Service291
0x9D0031F4 0x70000000 NOP
L___Lib_USB_USB_Device_Service351:
L___Lib_USB_USB_Device_Service284:
;__Lib_USB.c, 3010 ::
0x9D0031F8 0x0F40077B JAL __Lib_USB_USB_Suspend+0
0x9D0031FC 0x70000000 NOP
;__Lib_USB.c, 3011 ::
0x9D003200 0x34020010 ORI R2, R0, 16
0x9D003204 0x3C1EBF88 LUI R30, 49032
0x9D003208 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3008 ::
L___Lib_USB_USB_Device_Service292:
L___Lib_USB_USB_Device_Service291:
;__Lib_USB.c, 3014 ::
0x9D00320C 0x3C1EBF88 LUI R30, 49032
0x9D003210 0x83C25200 LB R2, 20992(R30)
0x9D003214 0x7C420080 EXT R2, R2, 2, 1
0x9D003218 0x1040000D BEQ R2, R0, L___Lib_USB_USB_Device_Service34
0x9D00321C 0x70000000 NOP
L___Lib_USB_USB_Device_Service353:
;__Lib_USB.c, 3016 ::
0x9D003220 0x3C1EBF88 LUI R30, 49032
0x9D003224 0x83C25210 LB R2, 21008(R30)
0x9D003228 0x7C420080 EXT R2, R2, 2, 1
0x9D00322C 0x10400005 BEQ R2, R0, L___Lib_USB_USB_Device_Service35
0x9D003230 0x70000000 NOP
L___Lib_USB_USB_Device_Service355:
;__Lib_USB.c, 3018 ::
0x9D003234 0x341B0001 ORI R27, R0, 1
0x9D003238 0x0000D00A MOVZ R26, R0, R0
0x9D00323C 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D003240 0x34190073 ORI R25, R0, 115
;__Lib_USB.c, 3019 ::
L___Lib_USB_USB_Device_Service35:
;__Lib_USB.c, 3020 ::
0x9D003244 0x34020004 ORI R2, R0, 4
0x9D003248 0x3C1EBF88 LUI R30, 49032
0x9D00324C 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3021 ::
L___Lib_USB_USB_Device_Service34:
;__Lib_USB.c, 3022 ::
0x9D003250 0x3C1EBF88 LUI R30, 49032
0x9D003254 0x83C25200 LB R2, 20992(R30)
0x9D003258 0x7C4201C0 EXT R2, R2, 7, 1
0x9D00325C 0x10400008 BEQ R2, R0, L___Lib_USB_USB_Device_Service294
0x9D003260 0x70000000 NOP
L___Lib_USB_USB_Device_Service357:
0x9D003264 0x3C1EBF88 LUI R30, 49032
0x9D003268 0x83C25210 LB R2, 21008(R30)
0x9D00326C 0x7C4201C0 EXT R2, R2, 7, 1
0x9D003270 0x10400003 BEQ R2, R0, L___Lib_USB_USB_Device_Service293
0x9D003274 0x70000000 NOP
L___Lib_USB_USB_Device_Service359:
L___Lib_USB_USB_Device_Service283:
;__Lib_USB.c, 3024 ::
0x9D003278 0x0F400813 JAL __Lib_USB_USB_Stall_Handler+0
0x9D00327C 0x70000000 NOP
;__Lib_USB.c, 3022 ::
L___Lib_USB_USB_Device_Service294:
L___Lib_USB_USB_Device_Service293:
;__Lib_USB.c, 3027 ::
0x9D003280 0x3C1EBF88 LUI R30, 49032
0x9D003284 0x83C25200 LB R2, 20992(R30)
0x9D003288 0x7C420040 EXT R2, R2, 1, 1
0x9D00328C 0x10400010 BEQ R2, R0, L___Lib_USB_USB_Device_Service296
0x9D003290 0x70000000 NOP
L___Lib_USB_USB_Device_Service361:
0x9D003294 0x3C1EBF88 LUI R30, 49032
0x9D003298 0x83C25210 LB R2, 21008(R30)
0x9D00329C 0x7C420040 EXT R2, R2, 1, 1
0x9D0032A0 0x1040000B BEQ R2, R0, L___Lib_USB_USB_Device_Service295
0x9D0032A4 0x70000000 NOP
L___Lib_USB_USB_Device_Service363:
L___Lib_USB_USB_Device_Service282:
;__Lib_USB.c, 3029 ::
0x9D0032A8 0x341B0001 ORI R27, R0, 1
0x9D0032AC 0x0000D00A MOVZ R26, R0, R0
0x9D0032B0 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D0032B4 0x34193FFF ORI R25, R0, 16383
;__Lib_USB.c, 3030 ::
0x9D0032B8 0x340200FF ORI R2, R0, 255
0x9D0032BC 0x3C1EBF88 LUI R30, 49032
0x9D0032C0 0xAFC25220 SW R2, 21024(R30)
;__Lib_USB.c, 3031 ::
0x9D0032C4 0x34020002 ORI R2, R0, 2
0x9D0032C8 0x3C1EBF88 LUI R30, 49032
0x9D0032CC 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3027 ::
L___Lib_USB_USB_Device_Service296:
L___Lib_USB_USB_Device_Service295:
;__Lib_USB.c, 3039 ::
0x9D0032D0 0x9022ABF5 LBU R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D0032D4 0x2C420004 SLTIU R2, R2, 4
0x9D0032D8 0x10400005 BEQ R2, R0, L___Lib_USB_USB_Device_Service42
0x9D0032DC 0x70000000 NOP
L___Lib_USB_USB_Device_Service364:
;__Lib_USB.c, 3041 ::
0x9D0032E0 0x0F400775 JAL __Lib_USB_USB_Clear_Interrupt+0
0x9D0032E4 0x70000000 NOP
;__Lib_USB.c, 3042 ::
0x9D0032E8 0x0B400D06 J L_end_USB_Device_Service
0x9D0032EC 0x70000000 NOP
;__Lib_USB.c, 3043 ::
L___Lib_USB_USB_Device_Service42:
;__Lib_USB.c, 3048 ::
0x9D0032F0 0x3C1EBF88 LUI R30, 49032
0x9D0032F4 0x83C25210 LB R2, 21008(R30)
0x9D0032F8 0x7C4200C0 EXT R2, R2, 3, 1
0x9D0032FC 0x10400044 BEQ R2, R0, L___Lib_USB_USB_Device_Service43
0x9D003300 0x70000000 NOP
L___Lib_USB_USB_Device_Service366:
;__Lib_USB.c, 3050 ::
; i start address is: 20 (R5)
0x9D003304 0x0000280A MOVZ R5, R0, R0
; i end address is: 20 (R5)
L___Lib_USB_USB_Device_Service44:
; i start address is: 20 (R5)
0x9D003308 0x30A200FF ANDI R2, R5, 255
0x9D00330C 0x2C420004 SLTIU R2, R2, 4
0x9D003310 0x1040003F BEQ R2, R0, L___Lib_USB_USB_Device_Service45
0x9D003314 0x70000000 NOP
L___Lib_USB_USB_Device_Service367:
;__Lib_USB.c, 3052 ::
0x9D003318 0x3C1EBF88 LUI R30, 49032
0x9D00331C 0x83C25200 LB R2, 20992(R30)
0x9D003320 0x7C4200C0 EXT R2, R2, 3, 1
0x9D003324 0x10400035 BEQ R2, R0, L___Lib_USB_USB_Device_Service47
0x9D003328 0x70000000 NOP
L___Lib_USB_USB_Device_Service369:
;__Lib_USB.c, 3055 ::
0x9D00332C 0x3C1EBF88 LUI R30, 49032
0x9D003330 0x8FC25240 LW R2, 21056(R30)
0x9D003334 0xA0228054 SB R2, Offset(_USTATcopy+0)(GP)
;__Lib_USB.c, 3056 ::
0x9D003338 0x90228054 LBU R2, Offset(_USTATcopy+0)(GP)
0x9D00333C 0x7C421900 EXT R2, R2, 4, 4
0x9D003340 0xA0228047 SB R2, Offset(_endpoint_number+0)(GP)
;__Lib_USB.c, 3058 ::
0x9D003344 0x34020008 ORI R2, R0, 8
0x9D003348 0x3C1EBF88 LUI R30, 49032
0x9D00334C 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3063 ::
0x9D003350 0x90228054 LBU R2, Offset(_USTATcopy+0)(GP)
0x9D003354 0x7C4200C0 EXT R2, R2, 3, 1
0x9D003358 0x1440000D BNE R2, R0, L___Lib_USB_USB_Device_Service48
0x9D00335C 0x70000000 NOP
L___Lib_USB_USB_Device_Service370:
;__Lib_USB.c, 3065 ::
0x9D003360 0x90238047 LBU R3, Offset(_endpoint_number+0)(GP)
0x9D003364 0x3C02A000 LUI R2, hi_addr(_ep_data_out+0)
0x9D003368 0x3442004E ORI R2, R2, lo_addr(_ep_data_out+0)
0x9D00336C 0x00432021 ADDU R4, R2, R3
0x9D003370 0x90820000 LBU R2, 0(R4)
0x9D003374 0x7C420000 EXT R2, R2, 0, 1
0x9D003378 0x38420001 XORI R2, R2, 1
0x9D00337C 0x304300FF ANDI R3, R2, 255
0x9D003380 0x90820000 LBU R2, 0(R4)
0x9D003384 0x7C620004 INS R2, R3, 0, 1
;__Lib_USB.c, 3066 ::
0x9D003388 0x0B400CEF J L___Lib_USB_USB_Device_Service49
0x9D00338C 0xA0820000 SB R2, 0(R4)
L___Lib_USB_USB_Device_Service48:
;__Lib_USB.c, 3069 ::
0x9D003390 0x90238047 LBU R3, Offset(_endpoint_number+0)(GP)
0x9D003394 0x3C02A000 LUI R2, hi_addr(_ep_data_in+0)
0x9D003398 0x34422BE1 ORI R2, R2, lo_addr(_ep_data_in+0)
0x9D00339C 0x00432021 ADDU R4, R2, R3
0x9D0033A0 0x90820000 LBU R2, 0(R4)
0x9D0033A4 0x7C420000 EXT R2, R2, 0, 1
0x9D0033A8 0x38420001 XORI R2, R2, 1
0x9D0033AC 0x304300FF ANDI R3, R2, 255
0x9D0033B0 0x90820000 LBU R2, 0(R4)
0x9D0033B4 0x7C620004 INS R2, R3, 0, 1
0x9D0033B8 0xA0820000 SB R2, 0(R4)
;__Lib_USB.c, 3070 ::
L___Lib_USB_USB_Device_Service49:
;__Lib_USB.c, 3075 ::
0x9D0033BC 0x90228047 LBU R2, Offset(_endpoint_number+0)(GP)
0x9D0033C0 0x14400005 BNE R2, R0, L___Lib_USB_USB_Device_Service50
0x9D0033C4 0x70000000 NOP
L___Lib_USB_USB_Device_Service371:
;__Lib_USB.c, 3077 ::
0x9D0033C8 0x0F4007C4 JAL __Lib_USB_USB_Ctrl_EPService+0
0x9D0033CC 0xA3A50010 SB R5, 16(SP)
;__Lib_USB.c, 3078 ::
0x9D0033D0 0x0B400CFD J L___Lib_USB_USB_Device_Service51
0x9D0033D4 0x93A50010 LBU R5, 16(SP)
L___Lib_USB_USB_Device_Service50:
;__Lib_USB.c, 3081 ::
0x9D0033D8 0xA3A50010 SB R5, 16(SP)
0x9D0033DC 0x0000D80A MOVZ R27, R0, R0
0x9D0033E0 0x3C1AA000 LUI R26, hi_addr(_USTATcopy+0)
0x9D0033E4 0x375A0054 ORI R26, R26, lo_addr(_USTATcopy+0)
0x9D0033E8 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D0033EC 0x34190072 ORI R25, R0, 114
0x9D0033F0 0x93A50010 LBU R5, 16(SP)
;__Lib_USB.c, 3082 ::
L___Lib_USB_USB_Device_Service51:
;__Lib_USB.c, 3083 ::
0x9D0033F4 0x0B400D01 J L___Lib_USB_USB_Device_Service52
0x9D0033F8 0x70000000 NOP
; i end address is: 20 (R5)
L___Lib_USB_USB_Device_Service47:
;__Lib_USB.c, 3085 ::
0x9D0033FC 0x0B400D04 J L___Lib_USB_USB_Device_Service45
0x9D003400 0x70000000 NOP
L___Lib_USB_USB_Device_Service52:
;__Lib_USB.c, 3050 ::
; i start address is: 20 (R5)
0x9D003404 0x24A20001 ADDIU R2, R5, 1
;__Lib_USB.c, 3086 ::
; i end address is: 20 (R5)
0x9D003408 0x0B400CC2 J L___Lib_USB_USB_Device_Service44
0x9D00340C 0x304500FF ANDI R5, R2, 255
L___Lib_USB_USB_Device_Service45:
;__Lib_USB.c, 3087 ::
L___Lib_USB_USB_Device_Service43:
;__Lib_USB.c, 3089 ::
0x9D003410 0x0F400775 JAL __Lib_USB_USB_Clear_Interrupt+0
0x9D003414 0x70000000 NOP
;__Lib_USB.c, 3090 ::
L_end_USB_Device_Service:
0x9D003418 0x8FBB000C LW R27, 12(SP)
0x9D00341C 0x8FBA0008 LW R26, 8(SP)
0x9D003420 0x8FB90004 LW R25, 4(SP)
0x9D003424 0x8FBF0000 LW RA, 0(SP)
0x9D003428 0x03E00008 JR RA
0x9D00342C 0x27BD0014 ADDIU SP, SP, 20
; end of __Lib_USB_USB_Device_Service
__Lib_USB_USB_Wake_From_Suspend:
;__Lib_USB.c, 3210 ::
0x9D001EB0 0x27BDFFF0 ADDIU SP, SP, -16
0x9D001EB4 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3212 ::
0x9D001EB8 0xAFB90004 SW R25, 4(SP)
0x9D001EBC 0xAFBA0008 SW R26, 8(SP)
0x9D001EC0 0xAFBB000C SW R27, 12(SP)
0x9D001EC4 0xA020ACCB SB R0, Offset(_USBBusIsSuspended+0)(GP)
;__Lib_USB.c, 3218 ::
0x9D001EC8 0x0000D80A MOVZ R27, R0, R0
0x9D001ECC 0x0000D00A MOVZ R26, R0, R0
0x9D001ED0 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D001ED4 0x34190074 ORI R25, R0, 116
;__Lib_USB.c, 3220 ::
0x9D001ED8 0x3C1EBF88 LUI R30, 49032
0x9D001EDC 0x83C25050 LB R2, 20560(R30)
0x9D001EE0 0x7C022104 INS R2, R0, 4, 1
0x9D001EE4 0x3C1EBF88 LUI R30, 49032
0x9D001EE8 0xA3C25050 SB R2, 20560(R30)
;__Lib_USB.c, 3235 ::
0x9D001EEC 0x34020010 ORI R2, R0, 16
0x9D001EF0 0x3C1EBF88 LUI R30, 49032
0x9D001EF4 0xAFC25040 SW R2, 20544(R30)
;__Lib_USB.c, 3238 ::
L_end_USB_Wake_From_Suspend:
0x9D001EF8 0x8FBB000C LW R27, 12(SP)
0x9D001EFC 0x8FBA0008 LW R26, 8(SP)
0x9D001F00 0x8FB90004 LW R25, 4(SP)
0x9D001F04 0x8FBF0000 LW RA, 0(SP)
0x9D001F08 0x03E00008 JR RA
0x9D001F0C 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_Wake_From_Suspend
__Lib_USB_USB_CB_Handler:
;__Lib_USB.c, 5335 ::
0x9D00176C 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 5336 ::
0x9D001770 0x0B4005F4 J L___Lib_USB_USB_CB_Handler222
0x9D001774 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5337 ::
L___Lib_USB_USB_CB_Handler224:
;__Lib_USB.c, 5338 ::
0x9D001778 0x0F400519 JAL __Lib_USB_USB_CB_Init_EP+0
0x9D00177C 0x70000000 NOP
;__Lib_USB.c, 5339 ::
0x9D001780 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D001784 0x70000000 NOP
;__Lib_USB.c, 5340 ::
L___Lib_USB_USB_CB_Handler225:
;__Lib_USB.c, 5342 ::
0x9D001788 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D00178C 0x70000000 NOP
;__Lib_USB.c, 5343 ::
L___Lib_USB_USB_CB_Handler226:
;__Lib_USB.c, 5344 ::
0x9D001790 0x0F40042C JAL __Lib_USB_USB_CB_Check_Other_Req+0
0x9D001794 0x70000000 NOP
;__Lib_USB.c, 5345 ::
0x9D001798 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D00179C 0x70000000 NOP
;__Lib_USB.c, 5346 ::
L___Lib_USB_USB_CB_Handler227:
;__Lib_USB.c, 5348 ::
0x9D0017A0 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017A4 0x70000000 NOP
;__Lib_USB.c, 5349 ::
L___Lib_USB_USB_CB_Handler228:
;__Lib_USB.c, 5351 ::
0x9D0017A8 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017AC 0x70000000 NOP
;__Lib_USB.c, 5352 ::
L___Lib_USB_USB_CB_Handler229:
;__Lib_USB.c, 5354 ::
0x9D0017B0 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017B4 0x70000000 NOP
;__Lib_USB.c, 5355 ::
L___Lib_USB_USB_CB_Handler230:
;__Lib_USB.c, 5357 ::
0x9D0017B8 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017BC 0x70000000 NOP
;__Lib_USB.c, 5358 ::
L___Lib_USB_USB_CB_Handler231:
;__Lib_USB.c, 5360 ::
0x9D0017C0 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017C4 0x70000000 NOP
;__Lib_USB.c, 5361 ::
L___Lib_USB_USB_CB_Handler232:
;__Lib_USB.c, 5362 ::
0x9D0017C8 0x0B400616 J L___Lib_USB_USB_CB_Handler223
0x9D0017CC 0x70000000 NOP
;__Lib_USB.c, 5363 ::
L___Lib_USB_USB_CB_Handler222:
0x9D0017D0 0x7C191E20 SEH R3, R25
0x9D0017D4 0x34020001 ORI R2, R0, 1
0x9D0017D8 0x1062FFE7 BEQ R3, R2, L___Lib_USB_USB_CB_Handler224
0x9D0017DC 0x70000000 NOP
L___Lib_USB_USB_CB_Handler563:
0x9D0017E0 0x7C191E20 SEH R3, R25
0x9D0017E4 0x34020002 ORI R2, R0, 2
0x9D0017E8 0x1062FFE7 BEQ R3, R2, L___Lib_USB_USB_CB_Handler225
0x9D0017EC 0x70000000 NOP
L___Lib_USB_USB_CB_Handler565:
0x9D0017F0 0x7C191E20 SEH R3, R25
0x9D0017F4 0x34020003 ORI R2, R0, 3
0x9D0017F8 0x1062FFE5 BEQ R3, R2, L___Lib_USB_USB_CB_Handler226
0x9D0017FC 0x70000000 NOP
L___Lib_USB_USB_CB_Handler567:
0x9D001800 0x7C191E20 SEH R3, R25
0x9D001804 0x34020073 ORI R2, R0, 115
0x9D001808 0x1062FFE5 BEQ R3, R2, L___Lib_USB_USB_CB_Handler227
0x9D00180C 0x70000000 NOP
L___Lib_USB_USB_CB_Handler569:
0x9D001810 0x7C191E20 SEH R3, R25
0x9D001814 0x34020075 ORI R2, R0, 117
0x9D001818 0x1062FFE3 BEQ R3, R2, L___Lib_USB_USB_CB_Handler228
0x9D00181C 0x70000000 NOP
L___Lib_USB_USB_CB_Handler571:
0x9D001820 0x7C191E20 SEH R3, R25
0x9D001824 0x34020074 ORI R2, R0, 116
0x9D001828 0x1062FFE1 BEQ R3, R2, L___Lib_USB_USB_CB_Handler229
0x9D00182C 0x70000000 NOP
L___Lib_USB_USB_CB_Handler573:
0x9D001830 0x7C191E20 SEH R3, R25
0x9D001834 0x34023FFF ORI R2, R0, 16383
0x9D001838 0x1062FFDF BEQ R3, R2, L___Lib_USB_USB_CB_Handler230
0x9D00183C 0x70000000 NOP
L___Lib_USB_USB_CB_Handler575:
0x9D001840 0x7C191E20 SEH R3, R25
0x9D001844 0x34020072 ORI R2, R0, 114
0x9D001848 0x1062FFDD BEQ R3, R2, L___Lib_USB_USB_CB_Handler231
0x9D00184C 0x70000000 NOP
L___Lib_USB_USB_CB_Handler577:
0x9D001850 0x0B4005F2 J L___Lib_USB_USB_CB_Handler232
0x9D001854 0x70000000 NOP
L___Lib_USB_USB_CB_Handler223:
;__Lib_USB.c, 5364 ::
0x9D001858 0x34020001 ORI R2, R0, 1
;__Lib_USB.c, 5365 ::
L_end_USB_CB_Handler:
0x9D00185C 0x8FBF0000 LW RA, 0(SP)
0x9D001860 0x03E00008 JR RA
0x9D001864 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CB_Handler
__Lib_USB_USB_CB_Init_EP:
;__Lib_USB.c, 5218 ::
0x9D001464 0x27BDFFEC ADDIU SP, SP, -20
0x9D001468 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5220 ::
0x9D00146C 0xAFB90004 SW R25, 4(SP)
0x9D001470 0xAFBA0008 SW R26, 8(SP)
0x9D001474 0xAFBB000C SW R27, 12(SP)
0x9D001478 0xAFBC0010 SW R28, 16(SP)
0x9D00147C 0x9022ACF0 LBU R2, Offset(__Lib_USB__Is_HID+0)(GP)
0x9D001480 0x1040000B BEQ R2, R0, L___Lib_USB_USB_CB_Init_EP220
0x9D001484 0x70000000 NOP
L___Lib_USB_USB_CB_Init_EP560:
;__Lib_USB.c, 5222 ::
0x9D001488 0x341A001D ORI R26, R0, 29
0x9D00148C 0x0F4001A0 JAL __Lib_USB_USB_Enable_Endpoint+0
0x9D001490 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 5224 ::
0x9D001494 0x341C0040 ORI R28, R0, 64
0x9D001498 0x8C3BAC98 LW R27, Offset(__Lib_USB_USB_Read_Buffer+0)(GP)
0x9D00149C 0x0000D00A MOVZ R26, R0, R0
0x9D0014A0 0x0F4001BB JAL __Lib_USB_USB_Transfer_Packet+0
0x9D0014A4 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 5226 ::
0x9D0014A8 0x0B400535 J L___Lib_USB_USB_CB_Init_EP221
0x9D0014AC 0xAC22ACA4 SW R2, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
L___Lib_USB_USB_CB_Init_EP220:
;__Lib_USB.c, 5227 ::
0x9D0014B0 0x341A001D ORI R26, R0, 29
0x9D0014B4 0x0F4001A0 JAL __Lib_USB_USB_Enable_Endpoint+0
0x9D0014B8 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 5228 ::
0x9D0014BC 0x341C0040 ORI R28, R0, 64
0x9D0014C0 0x8C3BAC98 LW R27, Offset(__Lib_USB_USB_Read_Buffer+0)(GP)
0x9D0014C4 0x0000D00A MOVZ R26, R0, R0
0x9D0014C8 0x0F4001BB JAL __Lib_USB_USB_Transfer_Packet+0
0x9D0014CC 0x34190001 ORI R25, R0, 1
0x9D0014D0 0xAC22ACA4 SW R2, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
;__Lib_USB.c, 5230 ::
L___Lib_USB_USB_CB_Init_EP221:
;__Lib_USB.c, 5231 ::
L_end_USB_CB_Init_EP:
0x9D0014D4 0x8FBC0010 LW R28, 16(SP)
0x9D0014D8 0x8FBB000C LW R27, 12(SP)
0x9D0014DC 0x8FBA0008 LW R26, 8(SP)
0x9D0014E0 0x8FB90004 LW R25, 4(SP)
0x9D0014E4 0x8FBF0000 LW RA, 0(SP)
0x9D0014E8 0x03E00008 JR RA
0x9D0014EC 0x27BD0014 ADDIU SP, SP, 20
; end of __Lib_USB_USB_CB_Init_EP
__Lib_USB_USB_Enable_Endpoint:
;__Lib_USB.c, 4545 ::
0x9D000680 0x27BDFFF8 ADDIU SP, SP, -8
0x9D000684 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4550 ::
0x9D000688 0x33420008 ANDI R2, R26, 8
0x9D00068C 0x10400005 BEQ R2, R0, L___Lib_USB_USB_Enable_Endpoint189
0x9D000690 0x70000000 NOP
L___Lib_USB_USB_Enable_Endpoint514:
;__Lib_USB.c, 4552 ::
0x9D000694 0xA3BA0004 SB R26, 4(SP)
0x9D000698 0x0F40000C JAL __Lib_USB_USB_Configure_Endpoint+0
0x9D00069C 0x0000D00A MOVZ R26, R0, R0
0x9D0006A0 0x93BA0004 LBU R26, 4(SP)
;__Lib_USB.c, 4553 ::
L___Lib_USB_USB_Enable_Endpoint189:
;__Lib_USB.c, 4554 ::
0x9D0006A4 0x33420004 ANDI R2, R26, 4
0x9D0006A8 0x10400005 BEQ R2, R0, L___Lib_USB_USB_Enable_Endpoint190
0x9D0006AC 0x70000000 NOP
L___Lib_USB_USB_Enable_Endpoint516:
;__Lib_USB.c, 4556 ::
0x9D0006B0 0xA3BA0004 SB R26, 4(SP)
0x9D0006B4 0x0F40000C JAL __Lib_USB_USB_Configure_Endpoint+0
0x9D0006B8 0x341A0001 ORI R26, R0, 1
0x9D0006BC 0x93BA0004 LBU R26, 4(SP)
;__Lib_USB.c, 4557 ::
L___Lib_USB_USB_Enable_Endpoint190:
;__Lib_USB.c, 4563 ::
0x9D0006C0 0x332200FF ANDI R2, R25, 255
0x9D0006C4 0x00021080 SLL R2, R2, 2
0x9D0006C8 0x7C021620 SEH R2, R2
0x9D0006CC 0x00021880 SLL R3, R2, 2
0x9D0006D0 0x3C02BF88 LUI R2, hi_addr(U1EP0+0)
0x9D0006D4 0x34425300 ORI R2, R2, lo_addr(U1EP0+0)
0x9D0006D8 0x00431021 ADDU R2, R2, R3
;__Lib_USB.c, 4567 ::
0x9D0006DC 0xA05A0000 SB R26, 0(R2)
;__Lib_USB.c, 4568 ::
L_end_USB_Enable_Endpoint:
0x9D0006E0 0x8FBF0000 LW RA, 0(SP)
0x9D0006E4 0x03E00008 JR RA
0x9D0006E8 0x27BD0008 ADDIU SP, SP, 8
; end of __Lib_USB_USB_Enable_Endpoint
__Lib_USB_USB_Configure_Endpoint:
;__Lib_USB.c, 4457 ::
0x9D000030 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 4461 ::
; handle start address is: 16 (R4)
0x9D000034 0x3C04A000 LUI R4, 40960
0x9D000038 0x34840000 ORI R4, R4, 0
;__Lib_USB.c, 4462 ::
0x9D00003C 0x332200FF ANDI R2, R25, 255
0x9D000040 0x00021880 SLL R3, R2, 2
0x9D000044 0x334200FF ANDI R2, R26, 255
0x9D000048 0x00021040 SLL R2, R2, 1
0x9D00004C 0x00621021 ADDU R2, R3, R2
0x9D000050 0x7C021620 SEH R2, R2
0x9D000054 0x000210C0 SLL R2, R2, 3
0x9D000058 0x00821821 ADDU R3, R4, R2
0x9D00005C 0x0060200A MOVZ R4, R3, R0
;__Lib_USB.c, 4463 ::
0x9D000060 0x90620000 LBU R2, 0(R3)
0x9D000064 0x7C0239C4 INS R2, R0, 7, 1
0x9D000068 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 4468 ::
0x9D00006C 0x334200FF ANDI R2, R26, 255
0x9D000070 0x14400008 BNE R2, R0, L___Lib_USB_USB_Configure_Endpoint187
0x9D000074 0x70000000 NOP
L___Lib_USB_USB_Configure_Endpoint511:
;__Lib_USB.c, 4469 ::
0x9D000078 0x332200FF ANDI R2, R25, 255
0x9D00007C 0x00021880 SLL R3, R2, 2
0x9D000080 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000084 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000088 0x00431021 ADDU R2, R2, R3
;__Lib_USB.c, 4470 ::
0x9D00008C 0x0B40002B J L___Lib_USB_USB_Configure_Endpoint188
0x9D000090 0xAC440000 SW R4, 0(R2)
L___Lib_USB_USB_Configure_Endpoint187:
;__Lib_USB.c, 4471 ::
0x9D000094 0x332200FF ANDI R2, R25, 255
0x9D000098 0x00021880 SLL R3, R2, 2
0x9D00009C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D0000A0 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D0000A4 0x00431021 ADDU R2, R2, R3
0x9D0000A8 0xAC440000 SW R4, 0(R2)
;__Lib_USB.c, 4472 ::
L___Lib_USB_USB_Configure_Endpoint188:
;__Lib_USB.c, 4478 ::
0x9D0000AC 0x90820000 LBU R2, 0(R4)
0x9D0000B0 0x7C023184 INS R2, R0, 6, 1
0x9D0000B4 0xA0820000 SB R2, 0(R4)
;__Lib_USB.c, 4479 ::
0x9D0000B8 0x24830008 ADDIU R3, R4, 8
; handle end address is: 16 (R4)
0x9D0000BC 0x90620000 LBU R2, 0(R3)
0x9D0000C0 0x34420040 ORI R2, R2, 64
0x9D0000C4 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 4494 ::
L_end_USB_Configure_Endpoint:
0x9D0000C8 0x03E00008 JR RA
0x9D0000CC 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Configure_Endpoint
__Lib_USB_USB_Transfer_Packet:
;__Lib_USB.c, 4639 ::
0x9D0006EC 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 4642 ::
0x9D0006F0 0x334200FF ANDI R2, R26, 255
0x9D0006F4 0x10400009 BEQ R2, R0, L___Lib_USB_USB_Transfer_Packet191
0x9D0006F8 0x70000000 NOP
L___Lib_USB_USB_Transfer_Packet519:
;__Lib_USB.c, 4644 ::
0x9D0006FC 0x332200FF ANDI R2, R25, 255
0x9D000700 0x00021880 SLL R3, R2, 2
0x9D000704 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000708 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D00070C 0x00431021 ADDU R2, R2, R3
0x9D000710 0x8C420000 LW R2, 0(R2)
; handle start address is: 20 (R5)
;__Lib_USB.c, 4645 ::
; handle end address is: 20 (R5)
0x9D000714 0x0B4001CE J L___Lib_USB_USB_Transfer_Packet192
0x9D000718 0x0040280A MOVZ R5, R2, R0
L___Lib_USB_USB_Transfer_Packet191:
;__Lib_USB.c, 4647 ::
0x9D00071C 0x332200FF ANDI R2, R25, 255
0x9D000720 0x00021880 SLL R3, R2, 2
0x9D000724 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000728 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D00072C 0x00431021 ADDU R2, R2, R3
0x9D000730 0x8C420000 LW R2, 0(R2)
; handle start address is: 20 (R5)
0x9D000734 0x0040280A MOVZ R5, R2, R0
; handle end address is: 20 (R5)
;__Lib_USB.c, 4648 ::
L___Lib_USB_USB_Transfer_Packet192:
;__Lib_USB.c, 4652 ::
; handle start address is: 20 (R5)
0x9D000738 0x14A00003 BNE R5, R0, L___Lib_USB_USB_Transfer_Packet193
0x9D00073C 0x70000000 NOP
L___Lib_USB_USB_Transfer_Packet520:
; handle end address is: 20 (R5)
;__Lib_USB.c, 4654 ::
0x9D000740 0x0B4001F7 J L_end_USB_Transfer_Packet
0x9D000744 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 4655 ::
L___Lib_USB_USB_Transfer_Packet193:
;__Lib_USB.c, 4667 ::
; handle start address is: 20 (R5)
0x9D000748 0x24A30004 ADDIU R3, R5, 4
0x9D00074C 0x3C021FFF LUI R2, 8191
0x9D000750 0x3442FFFF ORI R2, R2, 65535
0x9D000754 0x03621024 AND R2, R27, R2
0x9D000758 0xAC620000 SW R2, 0(R3)
;__Lib_USB.c, 4668 ::
0x9D00075C 0x24A40002 ADDIU R4, R5, 2
0x9D000760 0x338300FF ANDI R3, R28, 255
0x9D000764 0x94820000 LHU R2, 0(R4)
0x9D000768 0x7C624804 INS R2, R3, 0, 10
0x9D00076C 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4669 ::
0x9D000770 0x94A20000 LHU R2, 0(R5)
0x9D000774 0x30420040 ANDI R2, R2, 64
0x9D000778 0xA4A20000 SH R2, 0(R5)
;__Lib_USB.c, 4670 ::
0x9D00077C 0x94A20000 LHU R2, 0(R5)
0x9D000780 0x34420088 ORI R2, R2, 136
0x9D000784 0xA4A20000 SH R2, 0(R5)
;__Lib_USB.c, 4673 ::
0x9D000788 0x334200FF ANDI R2, R26, 255
0x9D00078C 0x1040000A BEQ R2, R0, L___Lib_USB_USB_Transfer_Packet194
0x9D000790 0x70000000 NOP
L___Lib_USB_USB_Transfer_Packet522:
;__Lib_USB.c, 4675 ::
0x9D000794 0x332200FF ANDI R2, R25, 255
0x9D000798 0x00021880 SLL R3, R2, 2
0x9D00079C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D0007A0 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D0007A4 0x00431821 ADDU R3, R2, R3
0x9D0007A8 0x90620000 LBU R2, 0(R3)
0x9D0007AC 0x38420008 XORI R2, R2, 8
;__Lib_USB.c, 4676 ::
0x9D0007B0 0x0B4001F6 J L___Lib_USB_USB_Transfer_Packet195
0x9D0007B4 0xA0620000 SB R2, 0(R3)
L___Lib_USB_USB_Transfer_Packet194:
;__Lib_USB.c, 4678 ::
0x9D0007B8 0x332200FF ANDI R2, R25, 255
0x9D0007BC 0x00021880 SLL R3, R2, 2
0x9D0007C0 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D0007C4 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D0007C8 0x00431821 ADDU R3, R2, R3
0x9D0007CC 0x90620000 LBU R2, 0(R3)
0x9D0007D0 0x38420008 XORI R2, R2, 8
0x9D0007D4 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 4679 ::
L___Lib_USB_USB_Transfer_Packet195:
;__Lib_USB.c, 4680 ::
0x9D0007D8 0x00A0100A MOVZ R2, R5, R0
; handle end address is: 20 (R5)
;__Lib_USB.c, 4681 ::
L_end_USB_Transfer_Packet:
0x9D0007DC 0x03E00008 JR RA
0x9D0007E0 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Transfer_Packet
__Lib_USB_USB_CB_Check_Other_Req:
;__Lib_USB.c, 5168 ::
0x9D0010B0 0x27BDFFFC ADDIU SP, SP, -4
0x9D0010B4 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5169 ::
0x9D0010B8 0x9022ACF0 LBU R2, Offset(__Lib_USB__Is_HID+0)(GP)
0x9D0010BC 0x10400003 BEQ R2, R0, L___Lib_USB_USB_CB_Check_Other_Req219
0x9D0010C0 0x70000000 NOP
L___Lib_USB_USB_CB_Check_Other_Req557:
;__Lib_USB.c, 5170 ::
0x9D0010C4 0x0F40011B JAL __Lib_USB_USB_Check_HID_Request+0
0x9D0010C8 0x70000000 NOP
;__Lib_USB.c, 5171 ::
L___Lib_USB_USB_CB_Check_Other_Req219:
;__Lib_USB.c, 5172 ::
L_end_USB_CB_Check_Other_Req:
0x9D0010CC 0x8FBF0000 LW RA, 0(SP)
0x9D0010D0 0x03E00008 JR RA
0x9D0010D4 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CB_Check_Other_Req
__Lib_USB_USB_Check_HID_Request:
;__Lib_USB.c, 4875 ::
0x9D00046C 0x27BDFFF0 ADDIU SP, SP, -16
0x9D000470 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4876 ::
0x9D000474 0xAFB90004 SW R25, 4(SP)
0x9D000478 0xAFBA0008 SW R26, 8(SP)
0x9D00047C 0xAFBB000C SW R27, 12(SP)
0x9D000480 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D000484 0x7C422000 EXT R2, R2, 0, 5
0x9D000488 0x304300FF ANDI R3, R2, 255
0x9D00048C 0x34020001 ORI R2, R0, 1
0x9D000490 0x10620003 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request200
0x9D000494 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request529:
0x9D000498 0x0B40019A J L_end_USB_Check_HID_Request
0x9D00049C 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request200:
;__Lib_USB.c, 4877 ::
0x9D0004A0 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D0004A4 0x10400003 BEQ R2, R0, L___Lib_USB_USB_Check_HID_Request201
0x9D0004A8 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request531:
0x9D0004AC 0x0B40019A J L_end_USB_Check_HID_Request
0x9D0004B0 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request201:
;__Lib_USB.c, 4884 ::
0x9D0004B4 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D0004B8 0x34020006 ORI R2, R0, 6
0x9D0004BC 0x1462002C BNE R3, R2, L___Lib_USB_USB_Check_HID_Request202
0x9D0004C0 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request532:
;__Lib_USB.c, 4885 ::
0x9D0004C4 0x0B400150 J L___Lib_USB_USB_Check_HID_Request203
0x9D0004C8 0x70000000 NOP
;__Lib_USB.c, 4886 ::
L___Lib_USB_USB_Check_HID_Request205:
;__Lib_USB.c, 4887 ::
0x9D0004CC 0x9023ABF7 LBU R3, Offset(__Lib_USB_USBActiveConfiguration+0)(GP)
0x9D0004D0 0x34020001 ORI R2, R0, 1
0x9D0004D4 0x14620008 BNE R3, R2, L___Lib_USB_USB_Check_HID_Request206
0x9D0004D8 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request533:
;__Lib_USB.c, 4888 ::
0x9D0004DC 0x3C029D00 LUI R2, hi_addr(_configDescriptor1+0)
0x9D0004E0 0x344249A8 ORI R2, R2, lo_addr(_configDescriptor1+0)
0x9D0004E4 0x24420012 ADDIU R2, R2, 18
0x9D0004E8 0x341B0040 ORI R27, R0, 64
0x9D0004EC 0x341A0009 ORI R26, R0, 9
0x9D0004F0 0x0F400005 JAL __Lib_USB_USB_EP0_Send_ROM+0
0x9D0004F4 0x0040C80A MOVZ R25, R2, R0
;__Lib_USB.c, 4893 ::
L___Lib_USB_USB_Check_HID_Request206:
;__Lib_USB.c, 4894 ::
0x9D0004F8 0x0B40015C J L___Lib_USB_USB_Check_HID_Request204
0x9D0004FC 0x70000000 NOP
;__Lib_USB.c, 4895 ::
L___Lib_USB_USB_Check_HID_Request207:
;__Lib_USB.c, 4896 ::
0x9D000500 0x9023ABF7 LBU R3, Offset(__Lib_USB_USBActiveConfiguration+0)(GP)
0x9D000504 0x34020001 ORI R2, R0, 1
0x9D000508 0x14620007 BNE R3, R2, L___Lib_USB_USB_Check_HID_Request208
0x9D00050C 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request534:
;__Lib_USB.c, 4897 ::
0x9D000510 0x3C029D00 LUI R2, hi_addr(_hid_rpt_desc+0)
0x9D000514 0x344249F4 ORI R2, R2, lo_addr(_hid_rpt_desc+0)
0x9D000518 0x341B0040 ORI R27, R0, 64
0x9D00051C 0x341A0021 ORI R26, R0, 33
0x9D000520 0x0F400005 JAL __Lib_USB_USB_EP0_Send_ROM+0
0x9D000524 0x0040C80A MOVZ R25, R2, R0
;__Lib_USB.c, 4902 ::
L___Lib_USB_USB_Check_HID_Request208:
;__Lib_USB.c, 4903 ::
0x9D000528 0x0B40015C J L___Lib_USB_USB_Check_HID_Request204
0x9D00052C 0x70000000 NOP
;__Lib_USB.c, 4904 ::
L___Lib_USB_USB_Check_HID_Request209:
;__Lib_USB.c, 4905 ::
0x9D000530 0x0F400000 JAL __Lib_USB_USB_EP0_Transmit_Options+0
0x9D000534 0x0000C80A MOVZ R25, R0, R0
;__Lib_USB.c, 4906 ::
0x9D000538 0x0B40015C J L___Lib_USB_USB_Check_HID_Request204
0x9D00053C 0x70000000 NOP
;__Lib_USB.c, 4907 ::
L___Lib_USB_USB_Check_HID_Request203:
0x9D000540 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D000544 0x34020021 ORI R2, R0, 33
0x9D000548 0x1062FFE0 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request205
0x9D00054C 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request536:
0x9D000550 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D000554 0x34020022 ORI R2, R0, 34
0x9D000558 0x1062FFE9 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request207
0x9D00055C 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request538:
0x9D000560 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D000564 0x34020023 ORI R2, R0, 35
0x9D000568 0x1062FFF1 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request209
0x9D00056C 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request540:
L___Lib_USB_USB_Check_HID_Request204:
;__Lib_USB.c, 4908 ::
L___Lib_USB_USB_Check_HID_Request202:
;__Lib_USB.c, 4910 ::
0x9D000570 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D000574 0x7C420940 EXT R2, R2, 5, 2
0x9D000578 0x304300FF ANDI R3, R2, 255
0x9D00057C 0x34020001 ORI R2, R0, 1
0x9D000580 0x10620003 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request210
0x9D000584 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request542:
;__Lib_USB.c, 4911 ::
0x9D000588 0x0B40019A J L_end_USB_Check_HID_Request
0x9D00058C 0x70000000 NOP
;__Lib_USB.c, 4912 ::
L___Lib_USB_USB_Check_HID_Request210:
;__Lib_USB.c, 4914 ::
0x9D000590 0x0B400182 J L___Lib_USB_USB_Check_HID_Request211
0x9D000594 0x70000000 NOP
;__Lib_USB.c, 4915 ::
L___Lib_USB_USB_Check_HID_Request213:
;__Lib_USB.c, 4919 ::
0x9D000598 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D00059C 0x70000000 NOP
;__Lib_USB.c, 4920 ::
L___Lib_USB_USB_Check_HID_Request214:
;__Lib_USB.c, 4924 ::
0x9D0005A0 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D0005A4 0x70000000 NOP
;__Lib_USB.c, 4925 ::
L___Lib_USB_USB_Check_HID_Request215:
;__Lib_USB.c, 4926 ::
0x9D0005A8 0x341B0040 ORI R27, R0, 64
0x9D0005AC 0x341A0001 ORI R26, R0, 1
0x9D0005B0 0x3C19A000 LUI R25, hi_addr(__Lib_USB_idle_rate+0)
0x9D0005B4 0x0F40008A JAL __Lib_USB_USB_EP0_Send_RAM+0
0x9D0005B8 0x37392CC8 ORI R25, R25, lo_addr(__Lib_USB_idle_rate+0)
;__Lib_USB.c, 4927 ::
0x9D0005BC 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D0005C0 0x70000000 NOP
;__Lib_USB.c, 4928 ::
L___Lib_USB_USB_Check_HID_Request216:
;__Lib_USB.c, 4929 ::
0x9D0005C4 0x0F400000 JAL __Lib_USB_USB_EP0_Transmit_Options+0
0x9D0005C8 0x0000C80A MOVZ R25, R0, R0
;__Lib_USB.c, 4930 ::
0x9D0005CC 0x9022ACBB LBU R2, Offset(__Lib_USB_SetupPkt+3)(GP)
;__Lib_USB.c, 4931 ::
0x9D0005D0 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D0005D4 0xA022ACC8 SB R2, Offset(__Lib_USB_idle_rate+0)(GP)
;__Lib_USB.c, 4932 ::
L___Lib_USB_USB_Check_HID_Request217:
;__Lib_USB.c, 4933 ::
0x9D0005D8 0x0000D80A MOVZ R27, R0, R0
0x9D0005DC 0x341A0001 ORI R26, R0, 1
0x9D0005E0 0x3C19A000 LUI R25, hi_addr(__Lib_USB_active_protocol+0)
0x9D0005E4 0x0F40008A JAL __Lib_USB_USB_EP0_Send_RAM+0
0x9D0005E8 0x37392BF6 ORI R25, R25, lo_addr(__Lib_USB_active_protocol+0)
;__Lib_USB.c, 4934 ::
0x9D0005EC 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D0005F0 0x70000000 NOP
;__Lib_USB.c, 4935 ::
L___Lib_USB_USB_Check_HID_Request218:
;__Lib_USB.c, 4936 ::
0x9D0005F4 0x0F400000 JAL __Lib_USB_USB_EP0_Transmit_Options+0
0x9D0005F8 0x0000C80A MOVZ R25, R0, R0
;__Lib_USB.c, 4937 ::
0x9D0005FC 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
;__Lib_USB.c, 4938 ::
0x9D000600 0x0B40019A J L___Lib_USB_USB_Check_HID_Request212
0x9D000604 0xA022ABF6 SB R2, Offset(__Lib_USB_active_protocol+0)(GP)
;__Lib_USB.c, 4939 ::
L___Lib_USB_USB_Check_HID_Request211:
0x9D000608 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00060C 0x34020001 ORI R2, R0, 1
0x9D000610 0x1062FFE1 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request213
0x9D000614 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request544:
0x9D000618 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00061C 0x34020009 ORI R2, R0, 9
0x9D000620 0x1062FFDF BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request214
0x9D000624 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request546:
0x9D000628 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00062C 0x34020002 ORI R2, R0, 2
0x9D000630 0x1062FFDD BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request215
0x9D000634 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request548:
0x9D000638 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00063C 0x3402000A ORI R2, R0, 10
0x9D000640 0x1062FFE0 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request216
0x9D000644 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request550:
0x9D000648 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00064C 0x34020003 ORI R2, R0, 3
0x9D000650 0x1062FFE1 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request217
0x9D000654 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request552:
0x9D000658 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00065C 0x3402000B ORI R2, R0, 11
0x9D000660 0x1062FFE4 BEQ R3, R2, L___Lib_USB_USB_Check_HID_Request218
0x9D000664 0x70000000 NOP
L___Lib_USB_USB_Check_HID_Request554:
L___Lib_USB_USB_Check_HID_Request212:
;__Lib_USB.c, 4941 ::
L_end_USB_Check_HID_Request:
0x9D000668 0x8FBB000C LW R27, 12(SP)
0x9D00066C 0x8FBA0008 LW R26, 8(SP)
0x9D000670 0x8FB90004 LW R25, 4(SP)
0x9D000674 0x8FBF0000 LW RA, 0(SP)
0x9D000678 0x03E00008 JR RA
0x9D00067C 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_Check_HID_Request
__Lib_USB_USB_EP0_Send_ROM:
;__Lib_USB.c, 2555 ::
0x9D000014 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 2556 ::
0x9D000018 0xAC39ACC0 SW R25, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 2557 ::
0x9D00001C 0xA43AACC6 SH R26, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 2558 ::
0x9D000020 0x37620080 ORI R2, R27, 128
0x9D000024 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 2559 ::
L_end_USB_EP0_Send_ROM:
0x9D000028 0x03E00008 JR RA
0x9D00002C 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_EP0_Send_ROM
__Lib_USB_USB_EP0_Transmit_Options:
;__Lib_USB.c, 2496 ::
0x9D000000 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 2497 ::
0x9D000004 0x37220080 ORI R2, R25, 128
0x9D000008 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 2498 ::
L_end_USB_EP0_Transmit_Options:
0x9D00000C 0x03E00008 JR RA
0x9D000010 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_EP0_Transmit_Options
__Lib_USB_USB_EP0_Send_RAM:
;__Lib_USB.c, 2524 ::
0x9D000228 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 2525 ::
0x9D00022C 0xAC39ACC0 SW R25, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 2526 ::
0x9D000230 0xA43AACC6 SH R26, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 2527 ::
0x9D000234 0x37620080 ORI R2, R27, 128
0x9D000238 0x34420001 ORI R2, R2, 1
0x9D00023C 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 2528 ::
L_end_USB_EP0_Send_RAM:
0x9D000240 0x03E00008 JR RA
0x9D000244 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_EP0_Send_RAM
__Lib_USB_USB_Clear_Interrupt:
;__Lib_USB.c, 2183 ::
0x9D001DD4 0x27BDFFFC ADDIU SP, SP, -4
0x9D001DD8 0x34020002 ORI R2, R0, 0x0002
0x9D001DDC 0x3C1EBF88 LUI R30, 49032
0x9D001DE0 0xA3C21047 SB R2, 4167(R30)
L_end_USB_Clear_Interrupt:
0x9D001DE4 0x03E00008 JR RA
0x9D001DE8 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Clear_Interrupt
__Lib_USB_USB_Suspend:
;__Lib_USB.c, 3160 ::
0x9D001DEC 0x27BDFFF0 ADDIU SP, SP, -16
0x9D001DF0 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3184 ::
0x9D001DF4 0xAFB90004 SW R25, 4(SP)
0x9D001DF8 0xAFBA0008 SW R26, 8(SP)
0x9D001DFC 0xAFBB000C SW R27, 12(SP)
0x9D001E00 0x3C1EBF88 LUI R30, 49032
0x9D001E04 0x83C25050 LB R2, 20560(R30)
0x9D001E08 0x34420010 ORI R2, R2, 0x0010
0x9D001E0C 0x3C1EBF88 LUI R30, 49032
0x9D001E10 0xA3C25050 SB R2, 20560(R30)
;__Lib_USB.c, 3185 ::
0x9D001E14 0x34020010 ORI R2, R0, 16
0x9D001E18 0x3C1EBF88 LUI R30, 49032
0x9D001E1C 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3186 ::
0x9D001E20 0x34020001 ORI R2, R0, 1
0x9D001E24 0xA022ACCB SB R2, Offset(_USBBusIsSuspended+0)(GP)
;__Lib_USB.c, 3192 ::
0x9D001E28 0x0000D80A MOVZ R27, R0, R0
0x9D001E2C 0x0000D00A MOVZ R26, R0, R0
0x9D001E30 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D001E34 0x34190075 ORI R25, R0, 117
;__Lib_USB.c, 3193 ::
L_end_USB_Suspend:
0x9D001E38 0x8FBB000C LW R27, 12(SP)
0x9D001E3C 0x8FBA0008 LW R26, 8(SP)
0x9D001E40 0x8FB90004 LW R25, 4(SP)
0x9D001E44 0x8FBF0000 LW RA, 0(SP)
0x9D001E48 0x03E00008 JR RA
0x9D001E4C 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_Suspend
__Lib_USB_USB_Stall_Handler:
;__Lib_USB.c, 3120 ::
0x9D00204C 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 3132 ::
0x9D002050 0x3C1EBF88 LUI R30, 49032
0x9D002054 0x83C25300 LB R2, 21248(R30)
0x9D002058 0x7C420040 EXT R2, R2, 1, 1
0x9D00205C 0x10400015 BEQ R2, 1, L___Lib_USB_USB_Stall_Handler53
0x9D002060 0x70000000 NOP
L___Lib_USB_USB_Stall_Handler376:
;__Lib_USB.c, 3134 ::
0x9D002064 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D002068 0x94420000 LHU R2, 0(R2)
0x9D00206C 0x3043FFFF ANDI R3, R2, 65535
0x9D002070 0x34020080 ORI R2, R0, 128
0x9D002074 0x1462000A BNE R3, R2, L___Lib_USB_USB_Stall_Handler265
0x9D002078 0x70000000 NOP
L___Lib_USB_USB_Stall_Handler377:
0x9D00207C 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D002080 0x94420000 LHU R2, 0(R2)
0x9D002084 0x3043FFFF ANDI R3, R2, 65535
0x9D002088 0x34020084 ORI R2, R0, 132
0x9D00208C 0x14620004 BNE R3, R2, L___Lib_USB_USB_Stall_Handler264
0x9D002090 0x70000000 NOP
L___Lib_USB_USB_Stall_Handler378:
L___Lib_USB_USB_Stall_Handler263:
;__Lib_USB.c, 3136 ::
0x9D002094 0x3403008C ORI R3, R0, 140
0x9D002098 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D00209C 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3134 ::
L___Lib_USB_USB_Stall_Handler265:
L___Lib_USB_USB_Stall_Handler264:
;__Lib_USB.c, 3138 ::
0x9D0020A0 0x3C1EBF88 LUI R30, 49032
0x9D0020A4 0x83C25300 LB R2, 21248(R30)
0x9D0020A8 0x7C020844 INS R2, R0, 1, 1
0x9D0020AC 0x3C1EBF88 LUI R30, 49032
0x9D0020B0 0xA3C25300 SB R2, 21248(R30)
;__Lib_USB.c, 3139 ::
L___Lib_USB_USB_Stall_Handler53:
;__Lib_USB.c, 3141 ::
0x9D0020B4 0x34020080 ORI R2, R0, 128
0x9D0020B8 0x3C1EBF88 LUI R30, 49032
0x9D0020BC 0xAFC25200 SW R2, 20992(R30)
;__Lib_USB.c, 3142 ::
L_end_USB_Stall_Handler:
0x9D0020C0 0x03E00008 JR RA
0x9D0020C4 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Stall_Handler
__Lib_USB_USB_Ctrl_EPService:
;__Lib_USB.c, 3261 ::
0x9D001F10 0x27BDFFFC ADDIU SP, SP, -4
0x9D001F14 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3263 ::
0x9D001F18 0x90238054 LBU R3, Offset(_USTATcopy+0)(GP)
0x9D001F1C 0x3402FFFB ORI R2, R0, 65531
0x9D001F20 0x00621024 AND R2, R3, R2
0x9D001F24 0x7C021620 SEH R2, R2
0x9D001F28 0x1440003C BNE R2, R0, L___Lib_USB_USB_Ctrl_EPService57
0x9D001F2C 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService382:
;__Lib_USB.c, 3266 ::
0x9D001F30 0x90228054 LBU R2, Offset(_USTATcopy+0)(GP)
0x9D001F34 0x304200FC ANDI R2, R2, 252
0x9D001F38 0x304200FF ANDI R2, R2, 255
0x9D001F3C 0x00021082 SRL R2, R2, 2
0x9D001F40 0x304200FF ANDI R2, R2, 255
0x9D001F44 0x000218C0 SLL R3, R2, 3
0x9D001F48 0x3C02A000 LUI R2, 40960
0x9D001F4C 0x34420000 ORI R2, R2, 0
0x9D001F50 0x00431821 ADDU R3, R2, R3
0x9D001F54 0xAC23ABF0 SW R3, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
;__Lib_USB.c, 3268 ::
0x9D001F58 0xAC239F9C SW R3, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 3270 ::
0x9D001F5C 0x90229F9C LBU R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001F60 0x38420008 XORI R2, R2, 8
0x9D001F64 0xA0229F9C SB R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 3273 ::
0x9D001F68 0x90620000 LBU R2, 0(R3)
0x9D001F6C 0x7C421880 EXT R2, R2, 2, 4
0x9D001F70 0x304300FF ANDI R3, R2, 255
0x9D001F74 0x3402000D ORI R2, R0, 13
0x9D001F78 0x14620024 BNE R3, R2, L___Lib_USB_USB_Ctrl_EPService58
0x9D001F7C 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService383:
;__Lib_USB.c, 3281 ::
; setup_cnt start address is: 20 (R5)
0x9D001F80 0x0000280A MOVZ R5, R0, R0
; setup_cnt end address is: 20 (R5)
L___Lib_USB_USB_Ctrl_EPService59:
; setup_cnt start address is: 20 (R5)
0x9D001F84 0x30A200FF ANDI R2, R5, 255
0x9D001F88 0x2C420008 SLTIU R2, R2, 8
0x9D001F8C 0x10400014 BEQ R2, R0, L___Lib_USB_USB_Ctrl_EPService60
0x9D001F90 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService384:
;__Lib_USB.c, 3283 ::
0x9D001F94 0x30A300FF ANDI R3, R5, 255
0x9D001F98 0x3C02A000 LUI R2, hi_addr(__Lib_USB_SetupPkt+0)
0x9D001F9C 0x34422CB8 ORI R2, R2, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001FA0 0x00432021 ADDU R4, R2, R3
0x9D001FA4 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D001FA8 0x24420004 ADDIU R2, R2, 4
0x9D001FAC 0x8C430000 LW R3, 0(R2)
0x9D001FB0 0x3C02A000 LUI R2, 40960
0x9D001FB4 0x00621025 OR R2, R3, R2
0x9D001FB8 0x90420000 LBU R2, 0(R2)
0x9D001FBC 0xA0820000 SB R2, 0(R4)
;__Lib_USB.c, 3284 ::
0x9D001FC0 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D001FC4 0x24430004 ADDIU R3, R2, 4
0x9D001FC8 0x8C620000 LW R2, 0(R3)
0x9D001FCC 0x24420001 ADDIU R2, R2, 1
0x9D001FD0 0xAC620000 SW R2, 0(R3)
;__Lib_USB.c, 3281 ::
0x9D001FD4 0x24A20001 ADDIU R2, R5, 1
;__Lib_USB.c, 3285 ::
; setup_cnt end address is: 20 (R5)
0x9D001FD8 0x0B4007E1 J L___Lib_USB_USB_Ctrl_EPService59
0x9D001FDC 0x304500FF ANDI R5, R2, 255
L___Lib_USB_USB_Ctrl_EPService60:
;__Lib_USB.c, 3286 ::
0x9D001FE0 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D001FE4 0x24440004 ADDIU R4, R2, 4
0x9D001FE8 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D001FEC 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001FF0 0x3C021FFF LUI R2, 8191
0x9D001FF4 0x3442FFFF ORI R2, R2, 65535
0x9D001FF8 0x00621024 AND R2, R3, R2
;__Lib_USB.c, 3289 ::
0x9D001FFC 0x0F4005AA JAL __Lib_USB_USB_CtrlTrf_Setup_Handler+0
0x9D002000 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3290 ::
0x9D002004 0x0B400805 J L___Lib_USB_USB_Ctrl_EPService62
0x9D002008 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService58:
;__Lib_USB.c, 3293 ::
0x9D00200C 0x0F400586 JAL __Lib_USB_USB_CtrlTrf_Out_Handler+0
0x9D002010 0x70000000 NOP
;__Lib_USB.c, 3294 ::
L___Lib_USB_USB_Ctrl_EPService62:
;__Lib_USB.c, 3295 ::
0x9D002014 0x0B400810 J L___Lib_USB_USB_Ctrl_EPService63
0x9D002018 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService57:
0x9D00201C 0x90238054 LBU R3, Offset(_USTATcopy+0)(GP)
0x9D002020 0x3402FFFB ORI R2, R0, 65531
0x9D002024 0x00621024 AND R2, R3, R2
0x9D002028 0x7C021E20 SEH R3, R2
0x9D00202C 0x34020008 ORI R2, R0, 8
0x9D002030 0x14620003 BNE R3, R2, L___Lib_USB_USB_Ctrl_EPService64
0x9D002034 0x70000000 NOP
L___Lib_USB_USB_Ctrl_EPService385:
;__Lib_USB.c, 3298 ::
0x9D002038 0x0F40053C JAL __Lib_USB_USB_CtrlTrf_In_Handler+0
0x9D00203C 0x70000000 NOP
;__Lib_USB.c, 3300 ::
L___Lib_USB_USB_Ctrl_EPService64:
L___Lib_USB_USB_Ctrl_EPService63:
;__Lib_USB.c, 3302 ::
L_end_USB_Ctrl_EPService:
0x9D002040 0x8FBF0000 LW RA, 0(SP)
0x9D002044 0x03E00008 JR RA
0x9D002048 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Ctrl_EPService
__Lib_USB_USB_CtrlTrf_Setup_Handler:
;__Lib_USB.c, 3344 ::
0x9D0016A8 0x27BDFFF0 ADDIU SP, SP, -16
0x9D0016AC 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3348 ::
0x9D0016B0 0xAFB90004 SW R25, 4(SP)
0x9D0016B4 0xAFBA0008 SW R26, 8(SP)
0x9D0016B8 0xAFBB000C SW R27, 12(SP)
0x9D0016BC 0xA020ACC9 SB R0, Offset(__Lib_USB_shortPacketStatus+0)(GP)
;__Lib_USB.c, 3349 ::
0x9D0016C0 0xA0208056 SB R0, Offset(_USBDeferStatusStagePacket+0)(GP)
;__Lib_USB.c, 3350 ::
0x9D0016C4 0xA0209F9A SB R0, Offset(_USBDeferINDataStagePackets+0)(GP)
;__Lib_USB.c, 3351 ::
0x9D0016C8 0xA0208057 SB R0, Offset(_USBDeferOUTDataStagePackets+0)(GP)
;__Lib_USB.c, 3352 ::
0x9D0016CC 0xA0209F98 SB R0, Offset(__Lib_USB_BothEP0OutUOWNsSet+0)(GP)
;__Lib_USB.c, 3353 ::
0x9D0016D0 0xA020ACCA SB R0, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 3362 ::
0x9D0016D4 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0016D8 0x94420000 LHU R2, 0(R2)
0x9D0016DC 0x3043007F ANDI R3, R2, 127
0x9D0016E0 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0016E4 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3363 ::
0x9D0016E8 0x9022AC9C LBU R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0016EC 0x38420008 XORI R2, R2, 8
0x9D0016F0 0xA022AC9C SB R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3364 ::
0x9D0016F4 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0016F8 0x94420000 LHU R2, 0(R2)
0x9D0016FC 0x3043007F ANDI R3, R2, 127
0x9D001700 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D001704 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3365 ::
0x9D001708 0x9022AC9C LBU R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D00170C 0x38420008 XORI R2, R2, 8
0x9D001710 0xA022AC9C SB R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3366 ::
0x9D001714 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001718 0x94420000 LHU R2, 0(R2)
0x9D00171C 0x3043007F ANDI R3, R2, 127
0x9D001720 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001724 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3368 ::
0x9D001728 0xA020ACC4 SB R0, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3369 ::
0x9D00172C 0xA420ACC6 SH R0, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3370 ::
0x9D001730 0xA020ACD8 SB R0, Offset(__Lib_USB_outPipes+4)(GP)
;__Lib_USB.c, 3371 ::
;__Lib_USB.c, 3377 ::
0x9D001734 0x0F400436 JAL __Lib_USB_USB_Check_Std_Request+0
0x9D001738 0xA420ACDA SH R0, Offset(__Lib_USB_outPipes+6)(GP)
;__Lib_USB.c, 3378 ::
0x9D00173C 0x0000D80A MOVZ R27, R0, R0
0x9D001740 0x0000D00A MOVZ R26, R0, R0
0x9D001744 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D001748 0x34190003 ORI R25, R0, 3
;__Lib_USB.c, 3391 ::
0x9D00174C 0x0F4004B9 JAL __Lib_USB_USB_CtrlEP_Service_Complete+0
0x9D001750 0x70000000 NOP
;__Lib_USB.c, 3392 ::
L_end_USB_CtrlTrf_Setup_Handler:
0x9D001754 0x8FBB000C LW R27, 12(SP)
0x9D001758 0x8FBA0008 LW R26, 8(SP)
0x9D00175C 0x8FB90004 LW R25, 4(SP)
0x9D001760 0x8FBF0000 LW RA, 0(SP)
0x9D001764 0x03E00008 JR RA
0x9D001768 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_CtrlTrf_Setup_Handler
__Lib_USB_USB_Check_Std_Request:
;__Lib_USB.c, 3543 ::
0x9D0010D8 0x27BDFFF0 ADDIU SP, SP, -16
0x9D0010DC 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3544 ::
0x9D0010E0 0xAFB90004 SW R25, 4(SP)
0x9D0010E4 0xAFBA0008 SW R26, 8(SP)
0x9D0010E8 0xAFBB000C SW R27, 12(SP)
0x9D0010EC 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D0010F0 0x7C420940 EXT R2, R2, 5, 2
0x9D0010F4 0x304200FF ANDI R2, R2, 255
0x9D0010F8 0x10400003 BEQ R2, R0, L___Lib_USB_USB_Check_Std_Request80
0x9D0010FC 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request403:
0x9D001100 0x0B4004B3 J L_end_USB_Check_Std_Request
0x9D001104 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request80:
;__Lib_USB.c, 3546 ::
0x9D001108 0x0B400486 J L___Lib_USB_USB_Check_Std_Request81
0x9D00110C 0x70000000 NOP
;__Lib_USB.c, 3547 ::
L___Lib_USB_USB_Check_Std_Request83:
;__Lib_USB.c, 3548 ::
0x9D001110 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D001114 0x34420080 ORI R2, R2, 128
0x9D001118 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3549 ::
0x9D00111C 0x34020008 ORI R2, R0, 8
;__Lib_USB.c, 3551 ::
0x9D001120 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001124 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 3552 ::
L___Lib_USB_USB_Check_Std_Request84:
;__Lib_USB.c, 3553 ::
0x9D001128 0x0F400092 JAL __Lib_USB_USB_Get_Dsc_Handler+0
0x9D00112C 0x70000000 NOP
;__Lib_USB.c, 3554 ::
0x9D001130 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001134 0x70000000 NOP
;__Lib_USB.c, 3555 ::
L___Lib_USB_USB_Check_Std_Request85:
;__Lib_USB.c, 3556 ::
0x9D001138 0x0F4000D6 JAL __Lib_USB_USB_Set_Cfg_Handler+0
0x9D00113C 0x70000000 NOP
;__Lib_USB.c, 3557 ::
0x9D001140 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001144 0x70000000 NOP
;__Lib_USB.c, 3558 ::
L___Lib_USB_USB_Check_Std_Request86:
;__Lib_USB.c, 3559 ::
0x9D001148 0x3C02A000 LUI R2, hi_addr(__Lib_USB_USBActiveConfiguration+0)
0x9D00114C 0x34422BF7 ORI R2, R2, lo_addr(__Lib_USB_USBActiveConfiguration+0)
0x9D001150 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 3560 ::
0x9D001154 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D001158 0x34420001 ORI R2, R2, 1
0x9D00115C 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3561 ::
0x9D001160 0x34020001 ORI R2, R0, 1
0x9D001164 0xA022ACC6 SB R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3562 ::
0x9D001168 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D00116C 0x34420080 ORI R2, R2, 128
;__Lib_USB.c, 3563 ::
0x9D001170 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001174 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3564 ::
L___Lib_USB_USB_Check_Std_Request87:
;__Lib_USB.c, 3565 ::
0x9D001178 0x0F4001F9 JAL __Lib_USB_USB_Get_Status_Handler+0
0x9D00117C 0x70000000 NOP
;__Lib_USB.c, 3566 ::
0x9D001180 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001184 0x70000000 NOP
;__Lib_USB.c, 3567 ::
L___Lib_USB_USB_Check_Std_Request88:
;__Lib_USB.c, 3568 ::
L___Lib_USB_USB_Check_Std_Request89:
;__Lib_USB.c, 3569 ::
0x9D001188 0x0F4002C3 JAL __Lib_USB_USB_Std_Feature_Req_Handler+0
0x9D00118C 0x70000000 NOP
;__Lib_USB.c, 3570 ::
0x9D001190 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001194 0x70000000 NOP
;__Lib_USB.c, 3571 ::
L___Lib_USB_USB_Check_Std_Request90:
;__Lib_USB.c, 3572 ::
0x9D001198 0x9023ACBC LBU R3, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D00119C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_USBAlternateInterface+0)
0x9D0011A0 0x34420055 ORI R2, R2, lo_addr(__Lib_USB_USBAlternateInterface+0)
0x9D0011A4 0x00431021 ADDU R2, R2, R3
0x9D0011A8 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 3573 ::
0x9D0011AC 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D0011B0 0x34420001 ORI R2, R2, 1
0x9D0011B4 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3574 ::
0x9D0011B8 0x34020001 ORI R2, R0, 1
0x9D0011BC 0xA022ACC6 SB R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3575 ::
0x9D0011C0 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D0011C4 0x34420080 ORI R2, R2, 128
;__Lib_USB.c, 3576 ::
0x9D0011C8 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D0011CC 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3577 ::
L___Lib_USB_USB_Check_Std_Request91:
;__Lib_USB.c, 3578 ::
0x9D0011D0 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D0011D4 0x34420080 ORI R2, R2, 128
0x9D0011D8 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3579 ::
0x9D0011DC 0x9023ACBC LBU R3, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D0011E0 0x3C02A000 LUI R2, hi_addr(__Lib_USB_USBAlternateInterface+0)
0x9D0011E4 0x34420055 ORI R2, R2, lo_addr(__Lib_USB_USBAlternateInterface+0)
0x9D0011E8 0x00431821 ADDU R3, R2, R3
0x9D0011EC 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
;__Lib_USB.c, 3580 ::
0x9D0011F0 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D0011F4 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3581 ::
L___Lib_USB_USB_Check_Std_Request92:
;__Lib_USB.c, 3582 ::
0x9D0011F8 0x0000D80A MOVZ R27, R0, R0
0x9D0011FC 0x0000D00A MOVZ R26, R0, R0
0x9D001200 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D001204 0x34190002 ORI R25, R0, 2
;__Lib_USB.c, 3583 ::
0x9D001208 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D00120C 0x70000000 NOP
;__Lib_USB.c, 3584 ::
L___Lib_USB_USB_Check_Std_Request93:
;__Lib_USB.c, 3585 ::
L___Lib_USB_USB_Check_Std_Request94:
;__Lib_USB.c, 3586 ::
0x9D001210 0x0B4004B3 J L___Lib_USB_USB_Check_Std_Request82
0x9D001214 0x70000000 NOP
;__Lib_USB.c, 3587 ::
L___Lib_USB_USB_Check_Std_Request81:
0x9D001218 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00121C 0x34020005 ORI R2, R0, 5
0x9D001220 0x1062FFBB BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request83
0x9D001224 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request405:
0x9D001228 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00122C 0x34020006 ORI R2, R0, 6
0x9D001230 0x1062FFBD BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request84
0x9D001234 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request407:
0x9D001238 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00123C 0x34020009 ORI R2, R0, 9
0x9D001240 0x1062FFBD BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request85
0x9D001244 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request409:
0x9D001248 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00124C 0x34020008 ORI R2, R0, 8
0x9D001250 0x1062FFBD BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request86
0x9D001254 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request411:
0x9D001258 0x9022ACB9 LBU R2, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D00125C 0x1040FFC6 BEQ R2, R0, L___Lib_USB_USB_Check_Std_Request87
0x9D001260 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request413:
0x9D001264 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D001268 0x34020001 ORI R2, R0, 1
0x9D00126C 0x1062FFC6 BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request88
0x9D001270 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request415:
0x9D001274 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D001278 0x34020003 ORI R2, R0, 3
0x9D00127C 0x1062FFC2 BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request89
0x9D001280 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request417:
0x9D001284 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D001288 0x3402000A ORI R2, R0, 10
0x9D00128C 0x1062FFC2 BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request90
0x9D001290 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request419:
0x9D001294 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D001298 0x3402000B ORI R2, R0, 11
0x9D00129C 0x1062FFCC BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request91
0x9D0012A0 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request421:
0x9D0012A4 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D0012A8 0x34020007 ORI R2, R0, 7
0x9D0012AC 0x1062FFD2 BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request92
0x9D0012B0 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request423:
0x9D0012B4 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D0012B8 0x3402000C ORI R2, R0, 12
0x9D0012BC 0x1062FFD4 BEQ R3, R2, L___Lib_USB_USB_Check_Std_Request93
0x9D0012C0 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request425:
0x9D0012C4 0x0B400484 J L___Lib_USB_USB_Check_Std_Request94
0x9D0012C8 0x70000000 NOP
L___Lib_USB_USB_Check_Std_Request82:
;__Lib_USB.c, 3588 ::
L_end_USB_Check_Std_Request:
0x9D0012CC 0x8FBB000C LW R27, 12(SP)
0x9D0012D0 0x8FBA0008 LW R26, 8(SP)
0x9D0012D4 0x8FB90004 LW R25, 4(SP)
0x9D0012D8 0x8FBF0000 LW RA, 0(SP)
0x9D0012DC 0x03E00008 JR RA
0x9D0012E0 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_Check_Std_Request
__Lib_USB_USB_Get_Dsc_Handler:
;__Lib_USB.c, 3921 ::
0x9D000248 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 3923 ::
0x9D00024C 0x9023ACB8 LBU R3, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D000250 0x34020080 ORI R2, R0, 128
0x9D000254 0x1462003E BNE R3, R2, L___Lib_USB_USB_Get_Dsc_Handler132
0x9D000258 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler459:
;__Lib_USB.c, 3924 ::
0x9D00025C 0x340200C0 ORI R2, R0, 192
;__Lib_USB.c, 3926 ::
0x9D000260 0x0B4000C6 J L___Lib_USB_USB_Get_Dsc_Handler133
0x9D000264 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3927 ::
L___Lib_USB_USB_Get_Dsc_Handler135:
;__Lib_USB.c, 3928 ::
0x9D000268 0x3C029D00 LUI R2, hi_addr(_device_dsc+0)
0x9D00026C 0x34424A16 ORI R2, R2, lo_addr(_device_dsc+0)
0x9D000270 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 3929 ::
0x9D000274 0x34020012 ORI R2, R0, 18
;__Lib_USB.c, 3930 ::
0x9D000278 0x0B4000D4 J L___Lib_USB_USB_Get_Dsc_Handler134
0x9D00027C 0xA422ACC6 SH R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3931 ::
L___Lib_USB_USB_Get_Dsc_Handler136:
;__Lib_USB.c, 3933 ::
0x9D000280 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D000284 0x00021880 SLL R3, R2, 2
0x9D000288 0x3C02A000 LUI R2, hi_addr(_USB_config_dsc_ptr+0)
0x9D00028C 0x34422CB4 ORI R2, R2, lo_addr(_USB_config_dsc_ptr+0)
0x9D000290 0x00431021 ADDU R2, R2, R3
0x9D000294 0x8C420000 LW R2, 0(R2)
0x9D000298 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 3937 ::
0x9D00029C 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D0002A0 0x24420002 ADDIU R2, R2, 2
0x9D0002A4 0x90420000 LBU R2, 0(R2)
0x9D0002A8 0xA022ACC6 SB R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3938 ::
0x9D0002AC 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D0002B0 0x24420003 ADDIU R2, R2, 3
0x9D0002B4 0x90420000 LBU R2, 0(R2)
;__Lib_USB.c, 3939 ::
0x9D0002B8 0x0B4000D4 J L___Lib_USB_USB_Get_Dsc_Handler134
0x9D0002BC 0xA022ACC7 SB R2, Offset(__Lib_USB_inPipes+7)(GP)
;__Lib_USB.c, 3940 ::
L___Lib_USB_USB_Get_Dsc_Handler137:
;__Lib_USB.c, 3944 ::
0x9D0002C0 0x9023ABE3 LBU R3, Offset(__Lib_USB_maxDescriptorIndex+0)(GP)
0x9D0002C4 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D0002C8 0x0062102B SLTU R2, R3, R2
0x9D0002CC 0x1440000D BNE R2, R0, L___Lib_USB_USB_Get_Dsc_Handler138
0x9D0002D0 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler460:
;__Lib_USB.c, 3946 ::
0x9D0002D4 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D0002D8 0x00021880 SLL R3, R2, 2
0x9D0002DC 0x3C02A000 LUI R2, hi_addr(_USB_string_dsc_ptr+0)
0x9D0002E0 0x34422CA8 ORI R2, R2, lo_addr(_USB_string_dsc_ptr+0)
0x9D0002E4 0x00431021 ADDU R2, R2, R3
0x9D0002E8 0x8C420000 LW R2, 0(R2)
0x9D0002EC 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 3948 ::
0x9D0002F0 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D0002F4 0x90420000 LBU R2, 0(R2)
0x9D0002F8 0x304200FF ANDI R2, R2, 255
;__Lib_USB.c, 3949 ::
0x9D0002FC 0x0B4000C2 J L___Lib_USB_USB_Get_Dsc_Handler139
0x9D000300 0xA422ACC6 SH R2, Offset(__Lib_USB_inPipes+6)(GP)
L___Lib_USB_USB_Get_Dsc_Handler138:
;__Lib_USB.c, 3950 ::
0x9D000304 0xA020ACC4 SB R0, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3951 ::
L___Lib_USB_USB_Get_Dsc_Handler139:
;__Lib_USB.c, 3952 ::
0x9D000308 0x0B4000D4 J L___Lib_USB_USB_Get_Dsc_Handler134
0x9D00030C 0x70000000 NOP
;__Lib_USB.c, 3953 ::
L___Lib_USB_USB_Get_Dsc_Handler140:
;__Lib_USB.c, 3954 ::
;__Lib_USB.c, 3955 ::
0x9D000310 0x0B4000D4 J L___Lib_USB_USB_Get_Dsc_Handler134
0x9D000314 0xA020ACC4 SB R0, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3956 ::
L___Lib_USB_USB_Get_Dsc_Handler133:
0x9D000318 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D00031C 0x34020001 ORI R2, R0, 1
0x9D000320 0x1062FFD1 BEQ R3, R2, L___Lib_USB_USB_Get_Dsc_Handler135
0x9D000324 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler462:
0x9D000328 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D00032C 0x34020002 ORI R2, R0, 2
0x9D000330 0x1062FFD3 BEQ R3, R2, L___Lib_USB_USB_Get_Dsc_Handler136
0x9D000334 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler464:
0x9D000338 0x9023ACBB LBU R3, Offset(__Lib_USB_SetupPkt+3)(GP)
0x9D00033C 0x34020003 ORI R2, R0, 3
0x9D000340 0x1062FFDF BEQ R3, R2, L___Lib_USB_USB_Get_Dsc_Handler137
0x9D000344 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler466:
0x9D000348 0x0B4000C4 J L___Lib_USB_USB_Get_Dsc_Handler140
0x9D00034C 0x70000000 NOP
L___Lib_USB_USB_Get_Dsc_Handler134:
;__Lib_USB.c, 3957 ::
L___Lib_USB_USB_Get_Dsc_Handler132:
;__Lib_USB.c, 3958 ::
L_end_USB_Get_Dsc_Handler:
0x9D000350 0x03E00008 JR RA
0x9D000354 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Get_Dsc_Handler
__Lib_USB_USB_Set_Cfg_Handler:
;__Lib_USB.c, 4389 ::
0x9D000358 0x27BDFFF0 ADDIU SP, SP, -16
0x9D00035C 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4393 ::
0x9D000360 0xAFB90004 SW R25, 4(SP)
0x9D000364 0xAFBA0008 SW R26, 8(SP)
0x9D000368 0xAFBB000C SW R27, 12(SP)
0x9D00036C 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000370 0x34420080 ORI R2, R2, 128
0x9D000374 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 4396 ::
0x9D000378 0x0F40061A JAL __Lib_USB_USB_Disable_Non_Zero_Endpoints+0
0x9D00037C 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 4399 ::
; i start address is: 16 (R4)
0x9D000380 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L___Lib_USB_USB_Set_Cfg_Handler182:
; i start address is: 16 (R4)
0x9D000384 0x308200FF ANDI R2, R4, 255
0x9D000388 0x2C420008 SLTIU R2, R2, 8
0x9D00038C 0x1040000B BEQ R2, R0, L___Lib_USB_USB_Set_Cfg_Handler183
0x9D000390 0x70000000 NOP
L___Lib_USB_USB_Set_Cfg_Handler508:
;__Lib_USB.c, 4401 ::
0x9D000394 0x308200FF ANDI R2, R4, 255
0x9D000398 0x000218C0 SLL R3, R2, 3
0x9D00039C 0x3C02A000 LUI R2, 40960
0x9D0003A0 0x34420000 ORI R2, R2, 0
0x9D0003A4 0x00431021 ADDU R2, R2, R3
0x9D0003A8 0xAC400000 SW R0, 0(R2)
0x9D0003AC 0xAC400004 SW R0, 4(R2)
;__Lib_USB.c, 4399 ::
0x9D0003B0 0x24820001 ADDIU R2, R4, 1
;__Lib_USB.c, 4402 ::
; i end address is: 16 (R4)
0x9D0003B4 0x0B4000E1 J L___Lib_USB_USB_Set_Cfg_Handler182
0x9D0003B8 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_Set_Cfg_Handler183:
;__Lib_USB.c, 4405 ::
0x9D0003BC 0x3C1EBF88 LUI R30, 49032
0x9D0003C0 0x83C25250 LB R2, 21072(R30)
0x9D0003C4 0x34420002 ORI R2, R2, 0x0002
0x9D0003C8 0x3C1EBF88 LUI R30, 49032
0x9D0003CC 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 4408 ::
0x9D0003D0 0x341B0001 ORI R27, R0, 1
0x9D0003D4 0x0000D00A MOVZ R26, R0, R0
0x9D0003D8 0x3C19A000 LUI R25, hi_addr(__Lib_USB_USBAlternateInterface+0)
0x9D0003DC 0x0F40007E JAL __Lib_USB_USB_memset+0
0x9D0003E0 0x37390055 ORI R25, R25, lo_addr(__Lib_USB_USBAlternateInterface+0)
;__Lib_USB.c, 4411 ::
0x9D0003E4 0x3C1EBF88 LUI R30, 49032
0x9D0003E8 0x83C25250 LB R2, 21072(R30)
0x9D0003EC 0x7C020844 INS R2, R0, 1, 1
0x9D0003F0 0x3C1EBF88 LUI R30, 49032
0x9D0003F4 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 4413 ::
0x9D0003F8 0x3C02A000 LUI R2, 40960
0x9D0003FC 0x34420010 ORI R2, R2, 16
0x9D000400 0xAC22AC9C SW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 4416 ::
0x9D000404 0x3C02A000 LUI R2, 40960
0x9D000408 0x34420000 ORI R2, R2, 0
0x9D00040C 0xAC22ABF0 SW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
;__Lib_USB.c, 4417 ::
0x9D000410 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000414 0xAC229F9C SW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 4420 ::
0x9D000418 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D00041C 0xA022ABF7 SB R2, Offset(__Lib_USB_USBActiveConfiguration+0)(GP)
;__Lib_USB.c, 4423 ::
0x9D000420 0x9022ABF7 LBU R2, Offset(__Lib_USB_USBActiveConfiguration+0)(GP)
0x9D000424 0x14400004 BNE R2, R0, L___Lib_USB_USB_Set_Cfg_Handler185
0x9D000428 0x70000000 NOP
L___Lib_USB_USB_Set_Cfg_Handler509:
;__Lib_USB.c, 4426 ::
0x9D00042C 0x34020010 ORI R2, R0, 16
;__Lib_USB.c, 4427 ::
0x9D000430 0x0B400115 J L___Lib_USB_USB_Set_Cfg_Handler186
0x9D000434 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
L___Lib_USB_USB_Set_Cfg_Handler185:
;__Lib_USB.c, 4431 ::
0x9D000438 0x341B0001 ORI R27, R0, 1
0x9D00043C 0x3C1AA000 LUI R26, hi_addr(__Lib_USB_USBActiveConfiguration+0)
0x9D000440 0x375A2BF7 ORI R26, R26, lo_addr(__Lib_USB_USBActiveConfiguration+0)
0x9D000444 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D000448 0x34190001 ORI R25, R0, 1
;__Lib_USB.c, 4436 ::
0x9D00044C 0x34020020 ORI R2, R0, 32
0x9D000450 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 4437 ::
L___Lib_USB_USB_Set_Cfg_Handler186:
;__Lib_USB.c, 4438 ::
L_end_USB_Set_Cfg_Handler:
0x9D000454 0x8FBB000C LW R27, 12(SP)
0x9D000458 0x8FBA0008 LW R26, 8(SP)
0x9D00045C 0x8FB90004 LW R25, 4(SP)
0x9D000460 0x8FBF0000 LW RA, 0(SP)
0x9D000464 0x03E00008 JR RA
0x9D000468 0x27BD0010 ADDIU SP, SP, 16
; end of __Lib_USB_USB_Set_Cfg_Handler
__Lib_USB_USB_memset:
;__Lib_USB.c, 1985 ::
0x9D0001F8 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 1988 ::
; pp start address is: 16 (R4)
0x9D0001FC 0x0320200A MOVZ R4, R25, R0
; pp end address is: 16 (R4)
;__Lib_USB.c, 1989 ::
L___Lib_USB_USB_memset0:
; pp start address is: 16 (R4)
0x9D000200 0x3363FFFF ANDI R3, R27, 65535
0x9D000204 0x2762FFFF ADDIU R2, R27, -1
0x9D000208 0x10600005 BEQ R3, R0, L___Lib_USB_USB_memset1
0x9D00020C 0x305BFFFF ANDI R27, R2, 65535
L___Lib_USB_USB_memset313:
;__Lib_USB.c, 1990 ::
0x9D000210 0xA09A0000 SB R26, 0(R4)
0x9D000214 0x24820001 ADDIU R2, R4, 1
; pp end address is: 16 (R4)
0x9D000218 0x0B400080 J L___Lib_USB_USB_memset0
0x9D00021C 0x0040200A MOVZ R4, R2, R0
L___Lib_USB_USB_memset1:
;__Lib_USB.c, 1991 ::
L_end_USB_memset:
0x9D000220 0x03E00008 JR RA
0x9D000224 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_memset
__Lib_USB_USB_Get_Status_Handler:
;__Lib_USB.c, 3975 ::
0x9D0007E4 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 3977 ::
0x9D0007E8 0xA020ACE0 SB R0, Offset(__Lib_USB_CtrlTrfData+0)(GP)
;__Lib_USB.c, 3978 ::
;__Lib_USB.c, 3980 ::
0x9D0007EC 0x0B400230 J L___Lib_USB_USB_Get_Status_Handler141
0x9D0007F0 0xA020ACE1 SB R0, Offset(__Lib_USB_CtrlTrfData+1)(GP)
;__Lib_USB.c, 3981 ::
L___Lib_USB_USB_Get_Status_Handler143:
;__Lib_USB.c, 3982 ::
0x9D0007F4 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D0007F8 0x34420080 ORI R2, R2, 128
0x9D0007FC 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3989 ::
0x9D000800 0x9022ACE0 LBU R2, Offset(__Lib_USB_CtrlTrfData+0)(GP)
0x9D000804 0x34420001 ORI R2, R2, 1
0x9D000808 0xA022ACE0 SB R2, Offset(__Lib_USB_CtrlTrfData+0)(GP)
;__Lib_USB.c, 3992 ::
0x9D00080C 0x90239F9B LBU R3, Offset(__Lib_USB_RemoteWakeup+0)(GP)
0x9D000810 0x34020001 ORI R2, R0, 1
0x9D000814 0x14620004 BNE R3, R2, L___Lib_USB_USB_Get_Status_Handler145
0x9D000818 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler468:
;__Lib_USB.c, 3993 ::
0x9D00081C 0x9022ACE0 LBU R2, Offset(__Lib_USB_CtrlTrfData+0)(GP)
0x9D000820 0x34420002 ORI R2, R2, 2
0x9D000824 0xA022ACE0 SB R2, Offset(__Lib_USB_CtrlTrfData+0)(GP)
;__Lib_USB.c, 3994 ::
L___Lib_USB_USB_Get_Status_Handler145:
;__Lib_USB.c, 3995 ::
0x9D000828 0x0B400241 J L___Lib_USB_USB_Get_Status_Handler142
0x9D00082C 0x70000000 NOP
;__Lib_USB.c, 3996 ::
L___Lib_USB_USB_Get_Status_Handler146:
;__Lib_USB.c, 3997 ::
0x9D000830 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000834 0x34420080 ORI R2, R2, 128
;__Lib_USB.c, 3998 ::
0x9D000838 0x0B400241 J L___Lib_USB_USB_Get_Status_Handler142
0x9D00083C 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3999 ::
L___Lib_USB_USB_Get_Status_Handler147:
;__Lib_USB.c, 4000 ::
0x9D000840 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000844 0x34420080 ORI R2, R2, 128
0x9D000848 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 4007 ::
0x9D00084C 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000850 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000854 0x1440000A BNE R2, R0, L___Lib_USB_USB_Get_Status_Handler148
0x9D000858 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler469:
;__Lib_USB.c, 4008 ::
0x9D00085C 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000860 0x7C421800 EXT R2, R2, 0, 4
0x9D000864 0x00021880 SLL R3, R2, 2
0x9D000868 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D00086C 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000870 0x00431021 ADDU R2, R2, R3
0x9D000874 0x8C420000 LW R2, 0(R2)
; p start address is: 12 (R3)
;__Lib_USB.c, 4009 ::
; p end address is: 12 (R3)
0x9D000878 0x0B400228 J L___Lib_USB_USB_Get_Status_Handler149
0x9D00087C 0x0040180A MOVZ R3, R2, R0
L___Lib_USB_USB_Get_Status_Handler148:
;__Lib_USB.c, 4010 ::
0x9D000880 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000884 0x7C421800 EXT R2, R2, 0, 4
0x9D000888 0x00021880 SLL R3, R2, 2
0x9D00088C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000890 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000894 0x00431021 ADDU R2, R2, R3
0x9D000898 0x8C420000 LW R2, 0(R2)
; p start address is: 12 (R3)
0x9D00089C 0x0040180A MOVZ R3, R2, R0
; p end address is: 12 (R3)
;__Lib_USB.c, 4011 ::
L___Lib_USB_USB_Get_Status_Handler149:
;__Lib_USB.c, 4013 ::
; p start address is: 12 (R3)
0x9D0008A0 0x94620000 LHU R2, 0(R3)
; p end address is: 12 (R3)
0x9D0008A4 0x30420004 ANDI R2, R2, 4
0x9D0008A8 0x10400003 BEQ R2, R0, L___Lib_USB_USB_Get_Status_Handler150
0x9D0008AC 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler471:
;__Lib_USB.c, 4014 ::
0x9D0008B0 0x34020001 ORI R2, R0, 1
0x9D0008B4 0xA022ACE0 SB R2, Offset(__Lib_USB_CtrlTrfData+0)(GP)
L___Lib_USB_USB_Get_Status_Handler150:
;__Lib_USB.c, 4015 ::
0x9D0008B8 0x0B400241 J L___Lib_USB_USB_Get_Status_Handler142
0x9D0008BC 0x70000000 NOP
;__Lib_USB.c, 4017 ::
L___Lib_USB_USB_Get_Status_Handler141:
0x9D0008C0 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D0008C4 0x7C422000 EXT R2, R2, 0, 5
0x9D0008C8 0x304200FF ANDI R2, R2, 255
0x9D0008CC 0x1040FFC9 BEQ R2, R0, L___Lib_USB_USB_Get_Status_Handler143
0x9D0008D0 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler473:
0x9D0008D4 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D0008D8 0x7C422000 EXT R2, R2, 0, 5
0x9D0008DC 0x304300FF ANDI R3, R2, 255
0x9D0008E0 0x34020001 ORI R2, R0, 1
0x9D0008E4 0x1062FFD2 BEQ R3, R2, L___Lib_USB_USB_Get_Status_Handler146
0x9D0008E8 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler475:
0x9D0008EC 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D0008F0 0x7C422000 EXT R2, R2, 0, 5
0x9D0008F4 0x304300FF ANDI R3, R2, 255
0x9D0008F8 0x34020002 ORI R2, R0, 2
0x9D0008FC 0x1062FFD0 BEQ R3, R2, L___Lib_USB_USB_Get_Status_Handler147
0x9D000900 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler477:
L___Lib_USB_USB_Get_Status_Handler142:
;__Lib_USB.c, 4019 ::
0x9D000904 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000908 0x7C4201C0 EXT R2, R2, 7, 1
0x9D00090C 0x10400009 BEQ R2, 1, L___Lib_USB_USB_Get_Status_Handler151
0x9D000910 0x70000000 NOP
L___Lib_USB_USB_Get_Status_Handler479:
;__Lib_USB.c, 4020 ::
0x9D000914 0x3C02A000 LUI R2, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D000918 0x34422CE0 ORI R2, R2, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D00091C 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 4021 ::
0x9D000920 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000924 0x34420001 ORI R2, R2, 1
0x9D000928 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 4022 ::
0x9D00092C 0x34020002 ORI R2, R0, 2
0x9D000930 0xA022ACC6 SB R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 4023 ::
L___Lib_USB_USB_Get_Status_Handler151:
;__Lib_USB.c, 4024 ::
L_end_USB_Get_Status_Handler:
0x9D000934 0x03E00008 JR RA
0x9D000938 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Get_Status_Handler
__Lib_USB_USB_Std_Feature_Req_Handler:
;__Lib_USB.c, 3606 ::
0x9D000B0C 0x27BDFFE8 ADDIU SP, SP, -24
0x9D000B10 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3612 ::
0x9D000B14 0xAFB90004 SW R25, 4(SP)
0x9D000B18 0xAFBA0008 SW R26, 8(SP)
0x9D000B1C 0xAFBB000C SW R27, 12(SP)
0x9D000B20 0x9023ACBA LBU R3, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D000B24 0x34020001 ORI R2, R0, 1
0x9D000B28 0x14620011 BNE R3, R2, L___Lib_USB_USB_Std_Feature_Req_Handler271
0x9D000B2C 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler427:
0x9D000B30 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D000B34 0x7C422000 EXT R2, R2, 0, 5
0x9D000B38 0x304200FF ANDI R2, R2, 255
0x9D000B3C 0x1440000C BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler270
0x9D000B40 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler428:
L___Lib_USB_USB_Std_Feature_Req_Handler269:
;__Lib_USB.c, 3614 ::
0x9D000B44 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000B48 0x34420080 ORI R2, R2, 128
0x9D000B4C 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3615 ::
0x9D000B50 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D000B54 0x34020003 ORI R2, R0, 3
0x9D000B58 0x14620004 BNE R3, R2, L___Lib_USB_USB_Std_Feature_Req_Handler98
0x9D000B5C 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler429:
;__Lib_USB.c, 3616 ::
0x9D000B60 0x34020001 ORI R2, R0, 1
0x9D000B64 0x0B4002DC J L___Lib_USB_USB_Std_Feature_Req_Handler99
0x9D000B68 0xA0229F9B SB R2, Offset(__Lib_USB_RemoteWakeup+0)(GP)
L___Lib_USB_USB_Std_Feature_Req_Handler98:
;__Lib_USB.c, 3618 ::
0x9D000B6C 0xA0209F9B SB R0, Offset(__Lib_USB_RemoteWakeup+0)(GP)
L___Lib_USB_USB_Std_Feature_Req_Handler99:
;__Lib_USB.c, 3612 ::
L___Lib_USB_USB_Std_Feature_Req_Handler271:
L___Lib_USB_USB_Std_Feature_Req_Handler270:
;__Lib_USB.c, 3623 ::
0x9D000B70 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D000B74 0x144000E0 BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler279
0x9D000B78 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler430:
0x9D000B7C 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D000B80 0x7C422000 EXT R2, R2, 0, 5
0x9D000B84 0x304300FF ANDI R3, R2, 255
0x9D000B88 0x34020002 ORI R2, R0, 2
0x9D000B8C 0x146200DA BNE R3, R2, L___Lib_USB_USB_Std_Feature_Req_Handler278
0x9D000B90 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler431:
;__Lib_USB.c, 3624 ::
0x9D000B94 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000B98 0x7C421800 EXT R2, R2, 0, 4
0x9D000B9C 0x104000D6 BEQ R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler277
0x9D000BA0 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler433:
0x9D000BA4 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000BA8 0x7C421800 EXT R2, R2, 0, 4
0x9D000BAC 0x2C420002 SLTIU R2, R2, 2
0x9D000BB0 0x104000D1 BEQ R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler276
0x9D000BB4 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler434:
;__Lib_USB.c, 3625 ::
0x9D000BB8 0x9023ABF5 LBU R3, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D000BBC 0x34020020 ORI R2, R0, 32
0x9D000BC0 0x146200CD BNE R3, R2, L___Lib_USB_USB_Std_Feature_Req_Handler275
0x9D000BC4 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler435:
L___Lib_USB_USB_Std_Feature_Req_Handler268:
;__Lib_USB.c, 3629 ::
0x9D000BC8 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D000BCC 0x34420080 ORI R2, R2, 128
0x9D000BD0 0xA022ACC4 SB R2, Offset(__Lib_USB_inPipes+4)(GP)
;__Lib_USB.c, 3632 ::
0x9D000BD4 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000BD8 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000BDC 0x14400012 BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler103
0x9D000BE0 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler436:
;__Lib_USB.c, 3634 ::
0x9D000BE4 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000BE8 0x7C421800 EXT R2, R2, 0, 4
0x9D000BEC 0x00021880 SLL R3, R2, 2
0x9D000BF0 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000BF4 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000BF8 0x00431021 ADDU R2, R2, R3
0x9D000BFC 0x8C420000 LW R2, 0(R2)
0x9D000C00 0xAFA20010 SW R2, 16(SP)
;__Lib_USB.c, 3635 ::
0x9D000C04 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000C08 0x7C421800 EXT R2, R2, 0, 4
0x9D000C0C 0x0040180A MOVZ R3, R2, R0
0x9D000C10 0x3C02A000 LUI R2, hi_addr(_ep_data_out+0)
0x9D000C14 0x3442004E ORI R2, R2, lo_addr(_ep_data_out+0)
0x9D000C18 0x00431021 ADDU R2, R2, R3
0x9D000C1C 0x90420000 LBU R2, 0(R2)
;__Lib_USB.c, 3636 ::
0x9D000C20 0x0B40031A J L___Lib_USB_USB_Std_Feature_Req_Handler104
0x9D000C24 0xA3A20014 SB R2, 20(SP)
L___Lib_USB_USB_Std_Feature_Req_Handler103:
;__Lib_USB.c, 3639 ::
0x9D000C28 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000C2C 0x7C421800 EXT R2, R2, 0, 4
0x9D000C30 0x00021880 SLL R3, R2, 2
0x9D000C34 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000C38 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000C3C 0x00431021 ADDU R2, R2, R3
0x9D000C40 0x8C420000 LW R2, 0(R2)
0x9D000C44 0xAFA20010 SW R2, 16(SP)
;__Lib_USB.c, 3640 ::
0x9D000C48 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000C4C 0x7C421800 EXT R2, R2, 0, 4
0x9D000C50 0x0040180A MOVZ R3, R2, R0
0x9D000C54 0x3C02A000 LUI R2, hi_addr(_ep_data_in+0)
0x9D000C58 0x34422BE1 ORI R2, R2, lo_addr(_ep_data_in+0)
0x9D000C5C 0x00431021 ADDU R2, R2, R3
0x9D000C60 0x90420000 LBU R2, 0(R2)
0x9D000C64 0xA3A20014 SB R2, 20(SP)
;__Lib_USB.c, 3641 ::
L___Lib_USB_USB_Std_Feature_Req_Handler104:
;__Lib_USB.c, 3647 ::
0x9D000C68 0x93A20014 LBU R2, 20(SP)
0x9D000C6C 0x7C420000 EXT R2, R2, 0, 1
0x9D000C70 0x14400007 BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler105
0x9D000C74 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler437:
;__Lib_USB.c, 3649 ::
0x9D000C78 0x27A40010 ADDIU R4, SP, 16
0x9D000C7C 0x90830000 LBU R3, 0(R4)
0x9D000C80 0x340200F7 ORI R2, R0, 247
0x9D000C84 0x00621024 AND R2, R3, R2
;__Lib_USB.c, 3650 ::
0x9D000C88 0x0B400328 J L___Lib_USB_USB_Std_Feature_Req_Handler106
0x9D000C8C 0xA0820000 SB R2, 0(R4)
L___Lib_USB_USB_Std_Feature_Req_Handler105:
;__Lib_USB.c, 3653 ::
0x9D000C90 0x27A30010 ADDIU R3, SP, 16
0x9D000C94 0x90620000 LBU R2, 0(R3)
0x9D000C98 0x34420008 ORI R2, R2, 8
0x9D000C9C 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3654 ::
L___Lib_USB_USB_Std_Feature_Req_Handler106:
;__Lib_USB.c, 3659 ::
0x9D000CA0 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000CA4 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000CA8 0x1440000A BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler107
0x9D000CAC 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler438:
;__Lib_USB.c, 3661 ::
0x9D000CB0 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000CB4 0x7C421800 EXT R2, R2, 0, 4
0x9D000CB8 0x00021880 SLL R3, R2, 2
0x9D000CBC 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000CC0 0x34422CCC ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_OutPtr+0)
0x9D000CC4 0x00431821 ADDU R3, R2, R3
0x9D000CC8 0x8FA20010 LW R2, 16(SP)
;__Lib_USB.c, 3662 ::
0x9D000CCC 0x0B40033D J L___Lib_USB_USB_Std_Feature_Req_Handler108
0x9D000CD0 0xAC620000 SW R2, 0(R3)
L___Lib_USB_USB_Std_Feature_Req_Handler107:
;__Lib_USB.c, 3665 ::
0x9D000CD4 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000CD8 0x7C421800 EXT R2, R2, 0, 4
0x9D000CDC 0x00021880 SLL R3, R2, 2
0x9D000CE0 0x3C02A000 LUI R2, hi_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000CE4 0x34422C9C ORI R2, R2, lo_addr(__Lib_USB_BDTEntry_InPtr+0)
0x9D000CE8 0x00431821 ADDU R3, R2, R3
0x9D000CEC 0x8FA20010 LW R2, 16(SP)
0x9D000CF0 0xAC620000 SW R2, 0(R3)
;__Lib_USB.c, 3666 ::
L___Lib_USB_USB_Std_Feature_Req_Handler108:
;__Lib_USB.c, 3669 ::
0x9D000CF4 0x9023ACB9 LBU R3, Offset(__Lib_USB_SetupPkt+1)(GP)
0x9D000CF8 0x34020003 ORI R2, R0, 3
0x9D000CFC 0x14620023 BNE R3, R2, L___Lib_USB_USB_Std_Feature_Req_Handler109
0x9D000D00 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler439:
;__Lib_USB.c, 3671 ::
0x9D000D04 0x8FA20010 LW R2, 16(SP)
0x9D000D08 0x90420000 LBU R2, 0(R2)
0x9D000D0C 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000D10 0x10400018 BEQ R2, 1, L___Lib_USB_USB_Std_Feature_Req_Handler110
0x9D000D14 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler441:
;__Lib_USB.c, 3675 ::
0x9D000D18 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000D1C 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000D20 0x1440000B BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler111
0x9D000D24 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler442:
;__Lib_USB.c, 3677 ::
0x9D000D28 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000D2C 0x7C421800 EXT R2, R2, 0, 4
0x9D000D30 0x0040180A MOVZ R3, R2, R0
0x9D000D34 0x3C02A000 LUI R2, hi_addr(_ep_data_out+0)
0x9D000D38 0x3442004E ORI R2, R2, lo_addr(_ep_data_out+0)
0x9D000D3C 0x00431821 ADDU R3, R2, R3
0x9D000D40 0x90620000 LBU R2, 0(R3)
0x9D000D44 0x34420002 ORI R2, R2, 2
;__Lib_USB.c, 3678 ::
0x9D000D48 0x0B40035D J L___Lib_USB_USB_Std_Feature_Req_Handler112
0x9D000D4C 0xA0620000 SB R2, 0(R3)
L___Lib_USB_USB_Std_Feature_Req_Handler111:
;__Lib_USB.c, 3681 ::
0x9D000D50 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000D54 0x7C421800 EXT R2, R2, 0, 4
0x9D000D58 0x0040180A MOVZ R3, R2, R0
0x9D000D5C 0x3C02A000 LUI R2, hi_addr(_ep_data_in+0)
0x9D000D60 0x34422BE1 ORI R2, R2, lo_addr(_ep_data_in+0)
0x9D000D64 0x00431821 ADDU R3, R2, R3
0x9D000D68 0x90620000 LBU R2, 0(R3)
0x9D000D6C 0x34420002 ORI R2, R2, 2
0x9D000D70 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3682 ::
L___Lib_USB_USB_Std_Feature_Req_Handler112:
;__Lib_USB.c, 3683 ::
L___Lib_USB_USB_Std_Feature_Req_Handler110:
;__Lib_USB.c, 3686 ::
0x9D000D74 0x8FA20010 LW R2, 16(SP)
0x9D000D78 0x94420000 LHU R2, 0(R2)
0x9D000D7C 0x34430084 ORI R3, R2, 132
0x9D000D80 0x8FA20010 LW R2, 16(SP)
;__Lib_USB.c, 3687 ::
0x9D000D84 0x0B4003BE J L___Lib_USB_USB_Std_Feature_Req_Handler113
0x9D000D88 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USB_Std_Feature_Req_Handler109:
;__Lib_USB.c, 3693 ::
0x9D000D8C 0x27A30010 ADDIU R3, SP, 16
0x9D000D90 0x90620000 LBU R2, 0(R3)
0x9D000D94 0x38420008 XORI R2, R2, 8
0x9D000D98 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3695 ::
0x9D000D9C 0x8FA20010 LW R2, 16(SP)
0x9D000DA0 0x90420000 LBU R2, 0(R2)
0x9D000DA4 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000DA8 0x10400011 BEQ R2, 1, L___Lib_USB_USB_Std_Feature_Req_Handler114
0x9D000DAC 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler444:
;__Lib_USB.c, 3699 ::
0x9D000DB0 0x8FA20010 LW R2, 16(SP)
0x9D000DB4 0x94420000 LHU R2, 0(R2)
0x9D000DB8 0x3043007F ANDI R3, R2, 127
0x9D000DBC 0x8FA20010 LW R2, 16(SP)
0x9D000DC0 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3700 ::
0x9D000DC4 0x8FA20010 LW R2, 16(SP)
0x9D000DC8 0x94420000 LHU R2, 0(R2)
0x9D000DCC 0x34430040 ORI R3, R2, 64
0x9D000DD0 0x8FA20010 LW R2, 16(SP)
0x9D000DD4 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3701 ::
0x9D000DD8 0x341B0004 ORI R27, R0, 4
0x9D000DDC 0x8FBA0010 LW R26, 16(SP)
0x9D000DE0 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D000DE4 0x34190005 ORI R25, R0, 5
;__Lib_USB.c, 3702 ::
0x9D000DE8 0x0B400381 J L___Lib_USB_USB_Std_Feature_Req_Handler115
0x9D000DEC 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler114:
;__Lib_USB.c, 3706 ::
0x9D000DF0 0x8FA20010 LW R2, 16(SP)
0x9D000DF4 0x94420000 LHU R2, 0(R2)
0x9D000DF8 0x34430040 ORI R3, R2, 64
0x9D000DFC 0x8FA20010 LW R2, 16(SP)
0x9D000E00 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3707 ::
L___Lib_USB_USB_Std_Feature_Req_Handler115:
;__Lib_USB.c, 3711 ::
0x9D000E04 0x27A30010 ADDIU R3, SP, 16
0x9D000E08 0x90620000 LBU R2, 0(R3)
0x9D000E0C 0x38420008 XORI R2, R2, 8
0x9D000E10 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3717 ::
0x9D000E14 0x93A20014 LBU R2, 20(SP)
0x9D000E18 0x7C420040 EXT R2, R2, 1, 1
0x9D000E1C 0x1440000F BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler274
0x9D000E20 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler445:
0x9D000E24 0x8FA20010 LW R2, 16(SP)
0x9D000E28 0x90420000 LBU R2, 0(R2)
0x9D000E2C 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000E30 0x10400008 BEQ R2, 1, L___Lib_USB_USB_Std_Feature_Req_Handler273
0x9D000E34 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler447:
0x9D000E38 0x8FA20010 LW R2, 16(SP)
0x9D000E3C 0x90420000 LBU R2, 0(R2)
0x9D000E40 0x7C420080 EXT R2, R2, 2, 1
0x9D000E44 0x14400003 BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler272
0x9D000E48 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler448:
0x9D000E4C 0x0B400397 J L___Lib_USB_USB_Std_Feature_Req_Handler266
0x9D000E50 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler273:
L___Lib_USB_USB_Std_Feature_Req_Handler272:
0x9D000E54 0x0B4003B9 J L___Lib_USB_USB_Std_Feature_Req_Handler120
0x9D000E58 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler266:
L___Lib_USB_USB_Std_Feature_Req_Handler274:
;__Lib_USB.c, 3719 ::
0x9D000E5C 0x9022ACBC LBU R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000E60 0x7C4201C0 EXT R2, R2, 7, 1
0x9D000E64 0x1440000B BNE R2, R0, L___Lib_USB_USB_Std_Feature_Req_Handler121
0x9D000E68 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler449:
;__Lib_USB.c, 3721 ::
0x9D000E6C 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000E70 0x7C421800 EXT R2, R2, 0, 4
0x9D000E74 0x0040180A MOVZ R3, R2, R0
0x9D000E78 0x3C02A000 LUI R2, hi_addr(_ep_data_out+0)
0x9D000E7C 0x3442004E ORI R2, R2, lo_addr(_ep_data_out+0)
0x9D000E80 0x00431821 ADDU R3, R2, R3
0x9D000E84 0x90620000 LBU R2, 0(R3)
0x9D000E88 0x7C020844 INS R2, R0, 1, 1
;__Lib_USB.c, 3722 ::
0x9D000E8C 0x0B4003AE J L___Lib_USB_USB_Std_Feature_Req_Handler122
0x9D000E90 0xA0620000 SB R2, 0(R3)
L___Lib_USB_USB_Std_Feature_Req_Handler121:
;__Lib_USB.c, 3725 ::
0x9D000E94 0x8C22ACBC LW R2, Offset(__Lib_USB_SetupPkt+4)(GP)
0x9D000E98 0x7C421800 EXT R2, R2, 0, 4
0x9D000E9C 0x0040180A MOVZ R3, R2, R0
0x9D000EA0 0x3C02A000 LUI R2, hi_addr(_ep_data_in+0)
0x9D000EA4 0x34422BE1 ORI R2, R2, lo_addr(_ep_data_in+0)
0x9D000EA8 0x00431821 ADDU R3, R2, R3
0x9D000EAC 0x90620000 LBU R2, 0(R3)
0x9D000EB0 0x7C020844 INS R2, R0, 1, 1
0x9D000EB4 0xA0620000 SB R2, 0(R3)
;__Lib_USB.c, 3726 ::
L___Lib_USB_USB_Std_Feature_Req_Handler122:
;__Lib_USB.c, 3728 ::
0x9D000EB8 0x8FA20010 LW R2, 16(SP)
0x9D000EBC 0x94420000 LHU R2, 0(R2)
0x9D000EC0 0x3043003B ANDI R3, R2, 59
0x9D000EC4 0x8FA20010 LW R2, 16(SP)
0x9D000EC8 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3729 ::
0x9D000ECC 0x341B0004 ORI R27, R0, 4
0x9D000ED0 0x8FBA0010 LW R26, 16(SP)
0x9D000ED4 0x0F4005DB JAL __Lib_USB_USB_CB_Handler+0
0x9D000ED8 0x34190005 ORI R25, R0, 5
;__Lib_USB.c, 3730 ::
0x9D000EDC 0x0B4003BE J L___Lib_USB_USB_Std_Feature_Req_Handler123
0x9D000EE0 0x70000000 NOP
L___Lib_USB_USB_Std_Feature_Req_Handler120:
;__Lib_USB.c, 3734 ::
0x9D000EE4 0x8FA20010 LW R2, 16(SP)
0x9D000EE8 0x94420000 LHU R2, 0(R2)
0x9D000EEC 0x3043003B ANDI R3, R2, 59
0x9D000EF0 0x8FA20010 LW R2, 16(SP)
0x9D000EF4 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3735 ::
L___Lib_USB_USB_Std_Feature_Req_Handler123:
;__Lib_USB.c, 3769 ::
L___Lib_USB_USB_Std_Feature_Req_Handler113:
;__Lib_USB.c, 3623 ::
L___Lib_USB_USB_Std_Feature_Req_Handler279:
L___Lib_USB_USB_Std_Feature_Req_Handler278:
;__Lib_USB.c, 3624 ::
L___Lib_USB_USB_Std_Feature_Req_Handler277:
L___Lib_USB_USB_Std_Feature_Req_Handler276:
;__Lib_USB.c, 3625 ::
L___Lib_USB_USB_Std_Feature_Req_Handler275:
;__Lib_USB.c, 3771 ::
L_end_USB_Std_Feature_Req_Handler:
0x9D000EF8 0x8FBB000C LW R27, 12(SP)
0x9D000EFC 0x8FBA0008 LW R26, 8(SP)
0x9D000F00 0x8FB90004 LW R25, 4(SP)
0x9D000F04 0x8FBF0000 LW RA, 0(SP)
0x9D000F08 0x03E00008 JR RA
0x9D000F0C 0x27BD0018 ADDIU SP, SP, 24
; end of __Lib_USB_USB_Std_Feature_Req_Handler
__Lib_USB_USB_CtrlEP_Service_Complete:
;__Lib_USB.c, 4054 ::
0x9D0012E4 0x27BDFFFC ADDIU SP, SP, -4
0x9D0012E8 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4060 ::
0x9D0012EC 0x3C1EBF88 LUI R30, 49032
0x9D0012F0 0x93C25250 LBU R2, 21072(R30)
0x9D0012F4 0x7C022944 INS R2, R0, 5, 1
0x9D0012F8 0x3C1EBF88 LUI R30, 49032
0x9D0012FC 0xA3C25250 SB R2, 21072(R30)
;__Lib_USB.c, 4066 ::
0x9D001300 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D001304 0x7C4201C0 EXT R2, R2, 7, 1
0x9D001308 0x14400025 BNE R2, R0, L___Lib_USB_USB_CtrlEP_Service_Complete152
0x9D00130C 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete481:
;__Lib_USB.c, 4068 ::
0x9D001310 0x9022ACD8 LBU R2, Offset(__Lib_USB_outPipes+4)(GP)
0x9D001314 0x7C4201C0 EXT R2, R2, 7, 1
0x9D001318 0x1040000B BEQ R2, 1, L___Lib_USB_USB_CtrlEP_Service_Complete153
0x9D00131C 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete483:
;__Lib_USB.c, 4070 ::
0x9D001320 0x34020002 ORI R2, R0, 2
0x9D001324 0xA022ACCA SB R2, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 4081 ::
0x9D001328 0x90228057 LBU R2, Offset(_USBDeferOUTDataStagePackets+0)(GP)
0x9D00132C 0x14400003 BNE R2, R0, L___Lib_USB_USB_CtrlEP_Service_Complete154
0x9D001330 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete484:
;__Lib_USB.c, 4083 ::
0x9D001334 0x0F40024F JAL __Lib_USB_USBCtrlEPAllowDataStage+0
0x9D001338 0x70000000 NOP
;__Lib_USB.c, 4084 ::
L___Lib_USB_USB_CtrlEP_Service_Complete154:
;__Lib_USB.c, 4088 ::
0x9D00133C 0xA0209F99 SB R0, Offset(_USBStatusStageEnabledFlag2+0)(GP)
;__Lib_USB.c, 4089 ::
;__Lib_USB.c, 4090 ::
0x9D001340 0x0B4004E6 J L___Lib_USB_USB_CtrlEP_Service_Complete155
0x9D001344 0xA020ABE8 SB R0, Offset(_USBStatusStageEnabledFlag1+0)(GP)
L___Lib_USB_USB_CtrlEP_Service_Complete153:
;__Lib_USB.c, 4096 ::
0x9D001348 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D00134C 0x24440002 ADDIU R4, R2, 2
0x9D001350 0x34030008 ORI R3, R0, 8
0x9D001354 0x94820000 LHU R2, 0(R4)
0x9D001358 0x7C624804 INS R2, R3, 0, 10
0x9D00135C 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4097 ::
0x9D001360 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001364 0x24440004 ADDIU R4, R2, 4
0x9D001368 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D00136C 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001370 0x3C021FFF LUI R2, 8191
0x9D001374 0x3442FFFF ORI R2, R2, 65535
0x9D001378 0x00621024 AND R2, R3, R2
0x9D00137C 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 4098 ::
0x9D001380 0x3403008C ORI R3, R0, 140
0x9D001384 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001388 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 4099 ::
0x9D00138C 0x34030084 ORI R3, R0, 132
0x9D001390 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D001394 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 4100 ::
L___Lib_USB_USB_CtrlEP_Service_Complete155:
;__Lib_USB.c, 4101 ::
0x9D001398 0x0B400516 J L___Lib_USB_USB_CtrlEP_Service_Complete156
0x9D00139C 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete152:
;__Lib_USB.c, 4104 ::
0x9D0013A0 0x9022ACB8 LBU R2, Offset(__Lib_USB_SetupPkt+0)(GP)
0x9D0013A4 0x7C4201C0 EXT R2, R2, 7, 1
0x9D0013A8 0x10400011 BEQ R2, 1, L___Lib_USB_USB_CtrlEP_Service_Complete157
0x9D0013AC 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete486:
;__Lib_USB.c, 4106 ::
0x9D0013B0 0x34020001 ORI R2, R0, 1
0x9D0013B4 0xA022ACCA SB R2, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 4120 ::
0x9D0013B8 0x90229F9A LBU R2, Offset(_USBDeferINDataStagePackets+0)(GP)
0x9D0013BC 0x14400003 BNE R2, R0, L___Lib_USB_USB_CtrlEP_Service_Complete158
0x9D0013C0 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete487:
;__Lib_USB.c, 4122 ::
0x9D0013C4 0x0F40024F JAL __Lib_USB_USBCtrlEPAllowDataStage+0
0x9D0013C8 0x70000000 NOP
;__Lib_USB.c, 4123 ::
L___Lib_USB_USB_CtrlEP_Service_Complete158:
;__Lib_USB.c, 4145 ::
0x9D0013CC 0xA0209F99 SB R0, Offset(_USBStatusStageEnabledFlag2+0)(GP)
;__Lib_USB.c, 4146 ::
0x9D0013D0 0xA020ABE8 SB R0, Offset(_USBStatusStageEnabledFlag1+0)(GP)
;__Lib_USB.c, 4147 ::
0x9D0013D4 0x90228056 LBU R2, Offset(_USBDeferStatusStagePacket+0)(GP)
0x9D0013D8 0x14400003 BNE R2, R0, L___Lib_USB_USB_CtrlEP_Service_Complete159
0x9D0013DC 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete488:
;__Lib_USB.c, 4149 ::
0x9D0013E0 0x0F400280 JAL __Lib_USB_USBCtrlEPAllowStatusStage+0
0x9D0013E4 0x70000000 NOP
;__Lib_USB.c, 4150 ::
L___Lib_USB_USB_CtrlEP_Service_Complete159:
;__Lib_USB.c, 4151 ::
0x9D0013E8 0x0B400516 J L___Lib_USB_USB_CtrlEP_Service_Complete160
0x9D0013EC 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete157:
;__Lib_USB.c, 4164 ::
0x9D0013F0 0x34020002 ORI R2, R0, 2
0x9D0013F4 0xA022ACCA SB R2, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 4167 ::
0x9D0013F8 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D0013FC 0x24440002 ADDIU R4, R2, 2
0x9D001400 0x34030008 ORI R3, R0, 8
0x9D001404 0x94820000 LHU R2, 0(R4)
0x9D001408 0x7C624804 INS R2, R3, 0, 10
0x9D00140C 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4168 ::
0x9D001410 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001414 0x24440004 ADDIU R4, R2, 4
0x9D001418 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D00141C 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001420 0x3C021FFF LUI R2, 8191
0x9D001424 0x3442FFFF ORI R2, R2, 65535
0x9D001428 0x00621024 AND R2, R3, R2
0x9D00142C 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 4169 ::
0x9D001430 0x34030084 ORI R3, R0, 132
0x9D001434 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001438 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 4172 ::
0x9D00143C 0xA0209F99 SB R0, Offset(_USBStatusStageEnabledFlag2+0)(GP)
;__Lib_USB.c, 4173 ::
0x9D001440 0xA020ABE8 SB R0, Offset(_USBStatusStageEnabledFlag1+0)(GP)
;__Lib_USB.c, 4174 ::
0x9D001444 0x90228056 LBU R2, Offset(_USBDeferStatusStagePacket+0)(GP)
0x9D001448 0x14400003 BNE R2, R0, L___Lib_USB_USB_CtrlEP_Service_Complete161
0x9D00144C 0x70000000 NOP
L___Lib_USB_USB_CtrlEP_Service_Complete489:
;__Lib_USB.c, 4176 ::
0x9D001450 0x0F400280 JAL __Lib_USB_USBCtrlEPAllowStatusStage+0
0x9D001454 0x70000000 NOP
;__Lib_USB.c, 4177 ::
L___Lib_USB_USB_CtrlEP_Service_Complete161:
;__Lib_USB.c, 4178 ::
L___Lib_USB_USB_CtrlEP_Service_Complete160:
;__Lib_USB.c, 4180 ::
L___Lib_USB_USB_CtrlEP_Service_Complete156:
;__Lib_USB.c, 4182 ::
L_end_USB_CtrlEP_Service_Complete:
0x9D001458 0x8FBF0000 LW RA, 0(SP)
0x9D00145C 0x03E00008 JR RA
0x9D001460 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CtrlEP_Service_Complete
__Lib_USB_USBCtrlEPAllowDataStage:
;__Lib_USB.c, 3874 ::
0x9D00093C 0x27BDFFFC ADDIU SP, SP, -4
0x9D000940 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3876 ::
0x9D000944 0xA0209F9A SB R0, Offset(_USBDeferINDataStagePackets+0)(GP)
;__Lib_USB.c, 3877 ::
0x9D000948 0xA0208057 SB R0, Offset(_USBDeferOUTDataStagePackets+0)(GP)
;__Lib_USB.c, 3879 ::
0x9D00094C 0x9023ACCA LBU R3, Offset(__Lib_USB_controlTransferState+0)(GP)
0x9D000950 0x34020002 ORI R2, R0, 2
0x9D000954 0x14620013 BNE R3, R2, L___Lib_USB_USBCtrlEPAllowDataStage129
0x9D000958 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowDataStage456:
;__Lib_USB.c, 3882 ::
0x9D00095C 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000960 0x24440002 ADDIU R4, R2, 2
0x9D000964 0x34030008 ORI R3, R0, 8
0x9D000968 0x94820000 LHU R2, 0(R4)
0x9D00096C 0x7C624804 INS R2, R3, 0, 10
0x9D000970 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 3883 ::
0x9D000974 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000978 0x24440004 ADDIU R4, R2, 4
0x9D00097C 0x3C03A000 LUI R3, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D000980 0x34632CE0 ORI R3, R3, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D000984 0x3C021FFF LUI R2, 8191
0x9D000988 0x3442FFFF ORI R2, R2, 65535
0x9D00098C 0x00621024 AND R2, R3, R2
0x9D000990 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3884 ::
0x9D000994 0x340300C8 ORI R3, R0, 200
0x9D000998 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 3885 ::
0x9D00099C 0x0B40027D J L___Lib_USB_USBCtrlEPAllowDataStage130
0x9D0009A0 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USBCtrlEPAllowDataStage129:
;__Lib_USB.c, 3890 ::
0x9D0009A4 0x9423ACC6 LHU R3, Offset(__Lib_USB_inPipes+6)(GP)
0x9D0009A8 0x9422ACBE LHU R2, Offset(__Lib_USB_SetupPkt+6)(GP)
0x9D0009AC 0x0043102B SLTU R2, R2, R3
0x9D0009B0 0x10400003 BEQ R2, R0, L___Lib_USB_USBCtrlEPAllowDataStage131
0x9D0009B4 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowDataStage457:
;__Lib_USB.c, 3892 ::
0x9D0009B8 0x9422ACBE LHU R2, Offset(__Lib_USB_SetupPkt+6)(GP)
0x9D0009BC 0xA422ACC6 SH R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 3893 ::
L___Lib_USB_USBCtrlEPAllowDataStage131:
;__Lib_USB.c, 3894 ::
0x9D0009C0 0x0F400034 JAL __Lib_USB_USB_CtrlTrf_Tx_Service+0
0x9D0009C4 0x70000000 NOP
;__Lib_USB.c, 3899 ::
0x9D0009C8 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0009CC 0x24440004 ADDIU R4, R2, 4
0x9D0009D0 0x3C03A000 LUI R3, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D0009D4 0x34632CE0 ORI R3, R3, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D0009D8 0x3C021FFF LUI R2, 8191
0x9D0009DC 0x3442FFFF ORI R2, R2, 65535
0x9D0009E0 0x00621024 AND R2, R3, R2
0x9D0009E4 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3900 ::
0x9D0009E8 0x340300C8 ORI R3, R0, 200
0x9D0009EC 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0009F0 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3901 ::
L___Lib_USB_USBCtrlEPAllowDataStage130:
;__Lib_USB.c, 3902 ::
L_end_USBCtrlEPAllowDataStage:
0x9D0009F4 0x8FBF0000 LW RA, 0(SP)
0x9D0009F8 0x03E00008 JR RA
0x9D0009FC 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USBCtrlEPAllowDataStage
__Lib_USB_USB_CtrlTrf_Tx_Service:
;__Lib_USB.c, 4207 ::
0x9D0000D0 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 4212 ::
; byteToSend start address is: 20 (R5)
0x9D0000D4 0x34050008 ORI R5, R0, 8
;__Lib_USB.c, 4213 ::
0x9D0000D8 0x9422ACC6 LHU R2, Offset(__Lib_USB_inPipes+6)(GP)
0x9D0000DC 0x2C420008 SLTIU R2, R2, 8
0x9D0000E0 0x10400010 BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_Tx_Service280
0x9D0000E4 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service491:
;__Lib_USB.c, 4215 ::
0x9D0000E8 0x9425ACC6 LHU R5, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 4222 ::
0x9D0000EC 0x9022ACC9 LBU R2, Offset(__Lib_USB_shortPacketStatus+0)(GP)
0x9D0000F0 0x14400004 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Tx_Service163
0x9D0000F4 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service492:
;__Lib_USB.c, 4224 ::
0x9D0000F8 0x34020001 ORI R2, R0, 1
;__Lib_USB.c, 4225 ::
0x9D0000FC 0x0B400047 J L___Lib_USB_USB_CtrlTrf_Tx_Service164
0x9D000100 0xA022ACC9 SB R2, Offset(__Lib_USB_shortPacketStatus+0)(GP)
L___Lib_USB_USB_CtrlTrf_Tx_Service163:
;__Lib_USB.c, 4226 ::
0x9D000104 0x9023ACC9 LBU R3, Offset(__Lib_USB_shortPacketStatus+0)(GP)
0x9D000108 0x34020001 ORI R2, R0, 1
0x9D00010C 0x14620003 BNE R3, R2, L___Lib_USB_USB_CtrlTrf_Tx_Service165
0x9D000110 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service493:
;__Lib_USB.c, 4228 ::
0x9D000114 0x34020002 ORI R2, R0, 2
0x9D000118 0xA022ACC9 SB R2, Offset(__Lib_USB_shortPacketStatus+0)(GP)
;__Lib_USB.c, 4229 ::
L___Lib_USB_USB_CtrlTrf_Tx_Service165:
L___Lib_USB_USB_CtrlTrf_Tx_Service164:
;__Lib_USB.c, 4230 ::
0x9D00011C 0x0B400049 J L___Lib_USB_USB_CtrlTrf_Tx_Service162
0x9D000120 0x70000000 NOP
; byteToSend end address is: 20 (R5)
L___Lib_USB_USB_CtrlTrf_Tx_Service280:
;__Lib_USB.c, 4213 ::
;__Lib_USB.c, 4230 ::
L___Lib_USB_USB_CtrlTrf_Tx_Service162:
;__Lib_USB.c, 4234 ::
; byteToSend start address is: 20 (R5)
0x9D000124 0x30A300FF ANDI R3, R5, 255
0x9D000128 0x9422ACC6 LHU R2, Offset(__Lib_USB_inPipes+6)(GP)
0x9D00012C 0x00431023 SUBU R2, R2, R3
0x9D000130 0xA422ACC6 SH R2, Offset(__Lib_USB_inPipes+6)(GP)
;__Lib_USB.c, 4239 ::
0x9D000134 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D000138 0x24440002 ADDIU R4, R2, 2
0x9D00013C 0x30A300FF ANDI R3, R5, 255
0x9D000140 0x94820000 LHU R2, 0(R4)
0x9D000144 0x7C624804 INS R2, R3, 0, 10
0x9D000148 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4243 ::
0x9D00014C 0x3C02A000 LUI R2, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D000150 0x34422CE0 ORI R2, R2, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D000154 0xAC228050 SW R2, Offset(__Lib_USB_pDst+0)(GP)
;__Lib_USB.c, 4244 ::
0x9D000158 0x9022ACC4 LBU R2, Offset(__Lib_USB_inPipes+4)(GP)
0x9D00015C 0x7C420000 EXT R2, R2, 0, 1
0x9D000160 0x14400013 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Tx_Service166
0x9D000164 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service494:
; byteToSend end address is: 20 (R5)
0x9D000168 0x30A400FF ANDI R4, R5, 255
;__Lib_USB.c, 4246 ::
L___Lib_USB_USB_CtrlTrf_Tx_Service167:
; byteToSend start address is: 16 (R4)
0x9D00016C 0x1080000E BEQ R4, R0, L___Lib_USB_USB_CtrlTrf_Tx_Service168
0x9D000170 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service496:
;__Lib_USB.c, 4248 ::
0x9D000174 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D000178 0x90430000 LBU R3, 0(R2)
0x9D00017C 0x8C228050 LW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D000180 0xA0430000 SB R3, 0(R2)
0x9D000184 0x8C228050 LW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D000188 0x24420001 ADDIU R2, R2, 1
0x9D00018C 0xAC228050 SW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D000190 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D000194 0x24420001 ADDIU R2, R2, 1
0x9D000198 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 4249 ::
0x9D00019C 0x2482FFFF ADDIU R2, R4, -1
;__Lib_USB.c, 4250 ::
; byteToSend end address is: 16 (R4)
0x9D0001A0 0x0B40005B J L___Lib_USB_USB_CtrlTrf_Tx_Service167
0x9D0001A4 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_CtrlTrf_Tx_Service168:
;__Lib_USB.c, 4251 ::
0x9D0001A8 0x0B40007C J L___Lib_USB_USB_CtrlTrf_Tx_Service169
0x9D0001AC 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service166:
;__Lib_USB.c, 4254 ::
; byteToSend start address is: 20 (R5)
0x9D0001B0 0x30A400FF ANDI R4, R5, 255
L___Lib_USB_USB_CtrlTrf_Tx_Service170:
; byteToSend end address is: 20 (R5)
; byteToSend start address is: 16 (R4)
0x9D0001B4 0x1080000E BEQ R4, R0, L___Lib_USB_USB_CtrlTrf_Tx_Service171
0x9D0001B8 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Tx_Service498:
;__Lib_USB.c, 4256 ::
0x9D0001BC 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D0001C0 0x90430000 LBU R3, 0(R2)
0x9D0001C4 0x8C228050 LW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D0001C8 0xA0430000 SB R3, 0(R2)
0x9D0001CC 0x8C228050 LW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D0001D0 0x24420001 ADDIU R2, R2, 1
0x9D0001D4 0xAC228050 SW R2, Offset(__Lib_USB_pDst+0)(GP)
0x9D0001D8 0x8C22ACC0 LW R2, Offset(__Lib_USB_inPipes+0)(GP)
0x9D0001DC 0x24420001 ADDIU R2, R2, 1
0x9D0001E0 0xAC22ACC0 SW R2, Offset(__Lib_USB_inPipes+0)(GP)
;__Lib_USB.c, 4257 ::
0x9D0001E4 0x2482FFFF ADDIU R2, R4, -1
;__Lib_USB.c, 4258 ::
; byteToSend end address is: 16 (R4)
0x9D0001E8 0x0B40006D J L___Lib_USB_USB_CtrlTrf_Tx_Service170
0x9D0001EC 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_CtrlTrf_Tx_Service171:
;__Lib_USB.c, 4259 ::
L___Lib_USB_USB_CtrlTrf_Tx_Service169:
;__Lib_USB.c, 4260 ::
L_end_USB_CtrlTrf_Tx_Service:
0x9D0001F0 0x03E00008 JR RA
0x9D0001F4 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CtrlTrf_Tx_Service
__Lib_USB_USBCtrlEPAllowStatusStage:
;__Lib_USB.c, 3803 ::
0x9D000A00 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 3810 ::
0x9D000A04 0x9022ABE8 LBU R2, Offset(_USBStatusStageEnabledFlag1+0)(GP)
0x9D000A08 0x1440003E BNE R2, R0, L___Lib_USB_USBCtrlEPAllowStatusStage124
0x9D000A0C 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowStatusStage451:
;__Lib_USB.c, 3812 ::
0x9D000A10 0x34020001 ORI R2, R0, 1
0x9D000A14 0xA022ABE8 SB R2, Offset(_USBStatusStageEnabledFlag1+0)(GP)
;__Lib_USB.c, 3813 ::
0x9D000A18 0x90229F99 LBU R2, Offset(_USBStatusStageEnabledFlag2+0)(GP)
0x9D000A1C 0x14400039 BNE R2, R0, L___Lib_USB_USBCtrlEPAllowStatusStage125
0x9D000A20 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowStatusStage452:
;__Lib_USB.c, 3815 ::
0x9D000A24 0x34020001 ORI R2, R0, 1
0x9D000A28 0xA0229F99 SB R2, Offset(_USBStatusStageEnabledFlag2+0)(GP)
;__Lib_USB.c, 3819 ::
0x9D000A2C 0x9023ACCA LBU R3, Offset(__Lib_USB_controlTransferState+0)(GP)
0x9D000A30 0x34020002 ORI R2, R0, 2
0x9D000A34 0x1462000A BNE R3, R2, L___Lib_USB_USBCtrlEPAllowStatusStage126
0x9D000A38 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowStatusStage453:
;__Lib_USB.c, 3821 ::
0x9D000A3C 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D000A40 0x24430002 ADDIU R3, R2, 2
0x9D000A44 0x94620000 LHU R2, 0(R3)
0x9D000A48 0x7C024804 INS R2, R0, 0, 10
0x9D000A4C 0xA4620000 SH R2, 0(R3)
;__Lib_USB.c, 3822 ::
0x9D000A50 0x340300C8 ORI R3, R0, 200
0x9D000A54 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3823 ::
0x9D000A58 0x0B4002C1 J L___Lib_USB_USBCtrlEPAllowStatusStage127
0x9D000A5C 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USBCtrlEPAllowStatusStage126:
;__Lib_USB.c, 3824 ::
0x9D000A60 0x9023ACCA LBU R3, Offset(__Lib_USB_controlTransferState+0)(GP)
0x9D000A64 0x34020001 ORI R2, R0, 1
0x9D000A68 0x14620026 BNE R3, R2, L___Lib_USB_USBCtrlEPAllowStatusStage128
0x9D000A6C 0x70000000 NOP
L___Lib_USB_USBCtrlEPAllowStatusStage454:
;__Lib_USB.c, 3826 ::
0x9D000A70 0xA0209F98 SB R0, Offset(__Lib_USB_BothEP0OutUOWNsSet+0)(GP)
;__Lib_USB.c, 3831 ::
0x9D000A74 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000A78 0x24440002 ADDIU R4, R2, 2
0x9D000A7C 0x34030008 ORI R3, R0, 8
0x9D000A80 0x94820000 LHU R2, 0(R4)
0x9D000A84 0x7C624804 INS R2, R3, 0, 10
0x9D000A88 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 3832 ::
0x9D000A8C 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000A90 0x24440004 ADDIU R4, R2, 4
0x9D000A94 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D000A98 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D000A9C 0x3C021FFF LUI R2, 8191
0x9D000AA0 0x3442FFFF ORI R2, R2, 65535
0x9D000AA4 0x00621024 AND R2, R3, R2
0x9D000AA8 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3833 ::
0x9D000AAC 0x34030084 ORI R3, R0, 132
0x9D000AB0 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000AB4 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3834 ::
0x9D000AB8 0x34020001 ORI R2, R0, 1
0x9D000ABC 0xA0229F98 SB R2, Offset(__Lib_USB_BothEP0OutUOWNsSet+0)(GP)
;__Lib_USB.c, 3838 ::
0x9D000AC0 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000AC4 0x24440002 ADDIU R4, R2, 2
0x9D000AC8 0x34030008 ORI R3, R0, 8
0x9D000ACC 0x94820000 LHU R2, 0(R4)
0x9D000AD0 0x7C624804 INS R2, R3, 0, 10
0x9D000AD4 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 3839 ::
0x9D000AD8 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000ADC 0x24440004 ADDIU R4, R2, 4
0x9D000AE0 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D000AE4 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D000AE8 0x3C021FFF LUI R2, 8191
0x9D000AEC 0x3442FFFF ORI R2, R2, 65535
0x9D000AF0 0x00621024 AND R2, R3, R2
0x9D000AF4 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3840 ::
0x9D000AF8 0x34030080 ORI R3, R0, 128
0x9D000AFC 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000B00 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3841 ::
L___Lib_USB_USBCtrlEPAllowStatusStage128:
L___Lib_USB_USBCtrlEPAllowStatusStage127:
;__Lib_USB.c, 3842 ::
L___Lib_USB_USBCtrlEPAllowStatusStage125:
;__Lib_USB.c, 3843 ::
L___Lib_USB_USBCtrlEPAllowStatusStage124:
;__Lib_USB.c, 3844 ::
L_end_USBCtrlEPAllowStatusStage:
0x9D000B04 0x03E00008 JR RA
0x9D000B08 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USBCtrlEPAllowStatusStage
__Lib_USB_USB_CtrlTrf_Out_Handler:
;__Lib_USB.c, 3414 ::
0x9D001618 0x27BDFFFC ADDIU SP, SP, -4
0x9D00161C 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3415 ::
0x9D001620 0x9023ACCA LBU R3, Offset(__Lib_USB_controlTransferState+0)(GP)
0x9D001624 0x34020002 ORI R2, R0, 2
0x9D001628 0x14620005 BNE R3, R2, L___Lib_USB_USB_CtrlTrf_Out_Handler65
0x9D00162C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Out_Handler388:
;__Lib_USB.c, 3417 ::
0x9D001630 0x0F4003C4 JAL __Lib_USB_USB_CtrlTrf_Rx_Service+0
0x9D001634 0x70000000 NOP
;__Lib_USB.c, 3418 ::
0x9D001638 0x0B4005A7 J L___Lib_USB_USB_CtrlTrf_Out_Handler66
0x9D00163C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Out_Handler65:
;__Lib_USB.c, 3423 ::
0x9D001640 0xA020ACCA SB R0, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 3430 ::
0x9D001644 0x90229F98 LBU R2, Offset(__Lib_USB_BothEP0OutUOWNsSet+0)(GP)
0x9D001648 0x14400013 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Out_Handler67
0x9D00164C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Out_Handler389:
;__Lib_USB.c, 3432 ::
0x9D001650 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001654 0x24440002 ADDIU R4, R2, 2
0x9D001658 0x34030008 ORI R3, R0, 8
0x9D00165C 0x94820000 LHU R2, 0(R4)
0x9D001660 0x7C624804 INS R2, R3, 0, 10
0x9D001664 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 3433 ::
0x9D001668 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D00166C 0x24440004 ADDIU R4, R2, 4
0x9D001670 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D001674 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001678 0x3C021FFF LUI R2, 8191
0x9D00167C 0x3442FFFF ORI R2, R2, 65535
0x9D001680 0x00621024 AND R2, R3, R2
0x9D001684 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3434 ::
0x9D001688 0x3403008C ORI R3, R0, 140
0x9D00168C 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 3435 ::
0x9D001690 0x0B4005A7 J L___Lib_USB_USB_CtrlTrf_Out_Handler68
0x9D001694 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USB_CtrlTrf_Out_Handler67:
;__Lib_USB.c, 3438 ::
0x9D001698 0xA0209F98 SB R0, Offset(__Lib_USB_BothEP0OutUOWNsSet+0)(GP)
;__Lib_USB.c, 3439 ::
L___Lib_USB_USB_CtrlTrf_Out_Handler68:
;__Lib_USB.c, 3440 ::
L___Lib_USB_USB_CtrlTrf_Out_Handler66:
;__Lib_USB.c, 3441 ::
L_end_USB_CtrlTrf_Out_Handler:
0x9D00169C 0x8FBF0000 LW RA, 0(SP)
0x9D0016A0 0x03E00008 JR RA
0x9D0016A4 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CtrlTrf_Out_Handler
__Lib_USB_USB_CtrlTrf_Rx_Service:
;__Lib_USB.c, 4287 ::
0x9D000F10 0x27BDFFFC ADDIU SP, SP, -4
0x9D000F14 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 4293 ::
0x9D000F18 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000F1C 0x24420002 ADDIU R2, R2, 2
0x9D000F20 0x94420000 LHU R2, 0(R2)
0x9D000F24 0x7C424800 EXT R2, R2, 0, 10
; byteToRead start address is: 16 (R4)
0x9D000F28 0x3044FFFF ANDI R4, R2, 65535
;__Lib_USB.c, 4299 ::
0x9D000F2C 0x308300FF ANDI R3, R4, 255
0x9D000F30 0x9422ACDA LHU R2, Offset(__Lib_USB_outPipes+6)(GP)
0x9D000F34 0x0043102B SLTU R2, R2, R3
0x9D000F38 0x10400003 BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service281
0x9D000F3C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service500:
; byteToRead end address is: 16 (R4)
;__Lib_USB.c, 4301 ::
; byteToRead start address is: 20 (R5)
; byteToRead end address is: 20 (R5)
;__Lib_USB.c, 4302 ::
0x9D000F40 0x0B4003D3 J L___Lib_USB_USB_CtrlTrf_Rx_Service172
0x9D000F44 0x9425ACDA LHU R5, Offset(__Lib_USB_outPipes+6)(GP)
L___Lib_USB_USB_CtrlTrf_Rx_Service281:
;__Lib_USB.c, 4299 ::
0x9D000F48 0x308500FF ANDI R5, R4, 255
;__Lib_USB.c, 4302 ::
L___Lib_USB_USB_CtrlTrf_Rx_Service172:
;__Lib_USB.c, 4304 ::
; byteToRead start address is: 20 (R5)
0x9D000F4C 0x30A300FF ANDI R3, R5, 255
0x9D000F50 0x9422ACDA LHU R2, Offset(__Lib_USB_outPipes+6)(GP)
0x9D000F54 0x00431023 SUBU R2, R2, R3
0x9D000F58 0xA422ACDA SH R2, Offset(__Lib_USB_outPipes+6)(GP)
;__Lib_USB.c, 4308 ::
; i start address is: 16 (R4)
0x9D000F5C 0x0000200A MOVZ R4, R0, R0
; byteToRead end address is: 20 (R5)
; i end address is: 16 (R4)
L___Lib_USB_USB_CtrlTrf_Rx_Service173:
; i start address is: 16 (R4)
; byteToRead start address is: 20 (R5)
0x9D000F60 0x308300FF ANDI R3, R4, 255
0x9D000F64 0x30A200FF ANDI R2, R5, 255
0x9D000F68 0x0062102B SLTU R2, R3, R2
0x9D000F6C 0x1040000E BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service174
0x9D000F70 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service501:
;__Lib_USB.c, 4310 ::
0x9D000F74 0x308300FF ANDI R3, R4, 255
0x9D000F78 0x3C02A000 LUI R2, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D000F7C 0x34422CE0 ORI R2, R2, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D000F80 0x00431021 ADDU R2, R2, R3
0x9D000F84 0x90430000 LBU R3, 0(R2)
0x9D000F88 0x8C22ACD4 LW R2, Offset(__Lib_USB_outPipes+0)(GP)
0x9D000F8C 0xA0430000 SB R3, 0(R2)
0x9D000F90 0x8C22ACD4 LW R2, Offset(__Lib_USB_outPipes+0)(GP)
0x9D000F94 0x24420001 ADDIU R2, R2, 1
0x9D000F98 0xAC22ACD4 SW R2, Offset(__Lib_USB_outPipes+0)(GP)
;__Lib_USB.c, 4308 ::
0x9D000F9C 0x24820001 ADDIU R2, R4, 1
;__Lib_USB.c, 4311 ::
; byteToRead end address is: 20 (R5)
; i end address is: 16 (R4)
0x9D000FA0 0x0B4003D8 J L___Lib_USB_USB_CtrlTrf_Rx_Service173
0x9D000FA4 0x304400FF ANDI R4, R2, 255
L___Lib_USB_USB_CtrlTrf_Rx_Service174:
;__Lib_USB.c, 4315 ::
0x9D000FA8 0x9422ACDA LHU R2, Offset(__Lib_USB_outPipes+6)(GP)
0x9D000FAC 0x2C420001 SLTIU R2, R2, 1
0x9D000FB0 0x1440001D BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service176
0x9D000FB4 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service502:
;__Lib_USB.c, 4317 ::
0x9D000FB8 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000FBC 0x24440002 ADDIU R4, R2, 2
0x9D000FC0 0x34030008 ORI R3, R0, 8
0x9D000FC4 0x94820000 LHU R2, 0(R4)
0x9D000FC8 0x7C624804 INS R2, R3, 0, 10
0x9D000FCC 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4318 ::
0x9D000FD0 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D000FD4 0x24440004 ADDIU R4, R2, 4
0x9D000FD8 0x3C03A000 LUI R3, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D000FDC 0x34632CE0 ORI R3, R3, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D000FE0 0x3C021FFF LUI R2, 8191
0x9D000FE4 0x3442FFFF ORI R2, R2, 65535
0x9D000FE8 0x00621024 AND R2, R3, R2
0x9D000FEC 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 4319 ::
0x9D000FF0 0x8C22ABF0 LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_CurrentPtr+0)(GP)
0x9D000FF4 0x90420000 LBU R2, 0(R2)
0x9D000FF8 0x7C420180 EXT R2, R2, 6, 1
0x9D000FFC 0x14400005 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service177
0x9D001000 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service503:
;__Lib_USB.c, 4321 ::
0x9D001004 0x340300C8 ORI R3, R0, 200
0x9D001008 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
;__Lib_USB.c, 4322 ::
0x9D00100C 0x0B400408 J L___Lib_USB_USB_CtrlTrf_Rx_Service178
0x9D001010 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USB_CtrlTrf_Rx_Service177:
;__Lib_USB.c, 4325 ::
0x9D001014 0x34030088 ORI R3, R0, 136
0x9D001018 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D00101C 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 4326 ::
L___Lib_USB_USB_CtrlTrf_Rx_Service178:
;__Lib_USB.c, 4327 ::
0x9D001020 0x0B400429 J L___Lib_USB_USB_CtrlTrf_Rx_Service179
0x9D001024 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service176:
;__Lib_USB.c, 4333 ::
0x9D001028 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D00102C 0x24440002 ADDIU R4, R2, 2
0x9D001030 0x34030008 ORI R3, R0, 8
0x9D001034 0x94820000 LHU R2, 0(R4)
0x9D001038 0x7C624804 INS R2, R3, 0, 10
0x9D00103C 0xA4820000 SH R2, 0(R4)
;__Lib_USB.c, 4334 ::
0x9D001040 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001044 0x24440004 ADDIU R4, R2, 4
0x9D001048 0x3C03A000 LUI R3, hi_addr(__Lib_USB_SetupPkt+0)
0x9D00104C 0x34632CB8 ORI R3, R3, lo_addr(__Lib_USB_SetupPkt+0)
0x9D001050 0x3C021FFF LUI R2, 8191
0x9D001054 0x3442FFFF ORI R2, R2, 65535
0x9D001058 0x00621024 AND R2, R3, R2
0x9D00105C 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 4338 ::
0x9D001060 0x34030084 ORI R3, R0, 132
0x9D001064 0x8C229F9C LW R2, Offset(__Lib_USB_BDTEntry_EP0Out_NextPtr+0)(GP)
0x9D001068 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 4345 ::
0x9D00106C 0x8C22ACDC LW R2, Offset(__Lib_USB_outPipes+8)(GP)
0x9D001070 0x10400004 BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service180
0x9D001074 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service505:
;__Lib_USB.c, 4347 ::
0x9D001078 0x8C3EACDC LW R30, Offset(__Lib_USB_outPipes+8)(GP)
0x9D00107C 0x03C0F809 JALR RA, R30
0x9D001080 0x70000000 NOP
;__Lib_USB.c, 4348 ::
L___Lib_USB_USB_CtrlTrf_Rx_Service180:
;__Lib_USB.c, 4349 ::
0x9D001084 0x9022ACD8 LBU R2, Offset(__Lib_USB_outPipes+4)(GP)
0x9D001088 0x7C0239C4 INS R2, R0, 7, 1
0x9D00108C 0xA022ACD8 SB R2, Offset(__Lib_USB_outPipes+4)(GP)
;__Lib_USB.c, 4363 ::
0x9D001090 0x90228056 LBU R2, Offset(_USBDeferStatusStagePacket+0)(GP)
0x9D001094 0x14400003 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_Rx_Service181
0x9D001098 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_Rx_Service506:
;__Lib_USB.c, 4365 ::
0x9D00109C 0x0F400280 JAL __Lib_USB_USBCtrlEPAllowStatusStage+0
0x9D0010A0 0x70000000 NOP
;__Lib_USB.c, 4366 ::
L___Lib_USB_USB_CtrlTrf_Rx_Service181:
;__Lib_USB.c, 4367 ::
L___Lib_USB_USB_CtrlTrf_Rx_Service179:
;__Lib_USB.c, 4369 ::
L_end_USB_CtrlTrf_Rx_Service:
0x9D0010A4 0x8FBF0000 LW RA, 0(SP)
0x9D0010A8 0x03E00008 JR RA
0x9D0010AC 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CtrlTrf_Rx_Service
__Lib_USB_USB_CtrlTrf_In_Handler:
;__Lib_USB.c, 3466 ::
0x9D0014F0 0x27BDFFFC ADDIU SP, SP, -4
0x9D0014F4 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 3468 ::
0x9D0014F8 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0014FC 0x90420000 LBU R2, 0(R2)
; lastDTS start address is: 24 (R6)
0x9D001500 0x7C460180 EXT R6, R2, 6, 1
;__Lib_USB.c, 3472 ::
0x9D001504 0x9022AC9C LBU R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D001508 0x38420008 XORI R2, R2, 8
0x9D00150C 0xA022AC9C SB R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3475 ::
0x9D001510 0x9023ABF5 LBU R3, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D001514 0x34020008 ORI R2, R0, 8
0x9D001518 0x1462000D BNE R3, R2, L___Lib_USB_USB_CtrlTrf_In_Handler69
0x9D00151C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler391:
;__Lib_USB.c, 3476 ::
0x9D001520 0x9022ACBA LBU R2, Offset(__Lib_USB_SetupPkt+2)(GP)
0x9D001524 0x3C1EBF88 LUI R30, 49032
0x9D001528 0xAFC25260 SW R2, 21088(R30)
;__Lib_USB.c, 3477 ::
0x9D00152C 0x3C1EBF88 LUI R30, 49032
0x9D001530 0x8FC25260 LW R2, 21088(R30)
0x9D001534 0x10400004 BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_In_Handler70
0x9D001538 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler393:
;__Lib_USB.c, 3478 ::
0x9D00153C 0x34020010 ORI R2, R0, 16
;__Lib_USB.c, 3479 ::
0x9D001540 0x0B400554 J L___Lib_USB_USB_CtrlTrf_In_Handler71
0x9D001544 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
L___Lib_USB_USB_CtrlTrf_In_Handler70:
;__Lib_USB.c, 3480 ::
0x9D001548 0x34020004 ORI R2, R0, 4
0x9D00154C 0xA022ABF5 SB R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
;__Lib_USB.c, 3481 ::
L___Lib_USB_USB_CtrlTrf_In_Handler71:
;__Lib_USB.c, 3482 ::
L___Lib_USB_USB_CtrlTrf_In_Handler69:
;__Lib_USB.c, 3485 ::
0x9D001550 0x9023ACCA LBU R3, Offset(__Lib_USB_controlTransferState+0)(GP)
0x9D001554 0x34020001 ORI R2, R0, 1
0x9D001558 0x1462001E BNE R3, R2, L___Lib_USB_USB_CtrlTrf_In_Handler72
0x9D00155C 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler394:
;__Lib_USB.c, 3486 ::
0x9D001560 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D001564 0x24440004 ADDIU R4, R2, 4
0x9D001568 0x3C03A000 LUI R3, hi_addr(__Lib_USB_CtrlTrfData+0)
0x9D00156C 0x34632CE0 ORI R3, R3, lo_addr(__Lib_USB_CtrlTrfData+0)
0x9D001570 0x3C021FFF LUI R2, 8191
0x9D001574 0x3442FFFF ORI R2, R2, 65535
0x9D001578 0x00621024 AND R2, R3, R2
;__Lib_USB.c, 3487 ::
0x9D00157C 0x0F400034 JAL __Lib_USB_USB_CtrlTrf_Tx_Service+0
0x9D001580 0xAC820000 SW R2, 0(R4)
;__Lib_USB.c, 3493 ::
0x9D001584 0x9023ACC9 LBU R3, Offset(__Lib_USB_shortPacketStatus+0)(GP)
0x9D001588 0x34020002 ORI R2, R0, 2
0x9D00158C 0x14620005 BNE R3, R2, L___Lib_USB_USB_CtrlTrf_In_Handler73
0x9D001590 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler395:
; lastDTS end address is: 24 (R6)
;__Lib_USB.c, 3496 ::
0x9D001594 0x34030084 ORI R3, R0, 132
0x9D001598 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3497 ::
0x9D00159C 0x0B400573 J L___Lib_USB_USB_CtrlTrf_In_Handler74
0x9D0015A0 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USB_CtrlTrf_In_Handler73:
;__Lib_USB.c, 3498 ::
; lastDTS start address is: 24 (R6)
0x9D0015A4 0x30C200FF ANDI R2, R6, 255
; lastDTS end address is: 24 (R6)
0x9D0015A8 0x14400005 BNE R2, R0, L___Lib_USB_USB_CtrlTrf_In_Handler75
0x9D0015AC 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler396:
;__Lib_USB.c, 3499 ::
0x9D0015B0 0x340300C8 ORI R3, R0, 200
0x9D0015B4 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
;__Lib_USB.c, 3500 ::
0x9D0015B8 0x0B400573 J L___Lib_USB_USB_CtrlTrf_In_Handler76
0x9D0015BC 0xA4430000 SH R3, 0(R2)
L___Lib_USB_USB_CtrlTrf_In_Handler75:
;__Lib_USB.c, 3501 ::
0x9D0015C0 0x34030088 ORI R3, R0, 136
0x9D0015C4 0x8C22AC9C LW R2, Offset(__Lib_USB_BDTEntry_InPtr+0)(GP)
0x9D0015C8 0xA4430000 SH R3, 0(R2)
;__Lib_USB.c, 3502 ::
L___Lib_USB_USB_CtrlTrf_In_Handler76:
;__Lib_USB.c, 3503 ::
L___Lib_USB_USB_CtrlTrf_In_Handler74:
;__Lib_USB.c, 3504 ::
0x9D0015CC 0x0B400583 J L___Lib_USB_USB_CtrlTrf_In_Handler77
0x9D0015D0 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler72:
;__Lib_USB.c, 3510 ::
0x9D0015D4 0x9022ACD8 LBU R2, Offset(__Lib_USB_outPipes+4)(GP)
0x9D0015D8 0x7C4201C0 EXT R2, R2, 7, 1
0x9D0015DC 0x1040000A BEQ R2, 1, L___Lib_USB_USB_CtrlTrf_In_Handler78
0x9D0015E0 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler398:
;__Lib_USB.c, 3512 ::
0x9D0015E4 0x8C22ACDC LW R2, Offset(__Lib_USB_outPipes+8)(GP)
0x9D0015E8 0x10400004 BEQ R2, R0, L___Lib_USB_USB_CtrlTrf_In_Handler79
0x9D0015EC 0x70000000 NOP
L___Lib_USB_USB_CtrlTrf_In_Handler400:
;__Lib_USB.c, 3514 ::
0x9D0015F0 0x8C3EACDC LW R30, Offset(__Lib_USB_outPipes+8)(GP)
0x9D0015F4 0x03C0F809 JALR RA, R30
0x9D0015F8 0x70000000 NOP
;__Lib_USB.c, 3515 ::
L___Lib_USB_USB_CtrlTrf_In_Handler79:
;__Lib_USB.c, 3516 ::
0x9D0015FC 0x9022ACD8 LBU R2, Offset(__Lib_USB_outPipes+4)(GP)
0x9D001600 0x7C0239C4 INS R2, R0, 7, 1
0x9D001604 0xA022ACD8 SB R2, Offset(__Lib_USB_outPipes+4)(GP)
;__Lib_USB.c, 3517 ::
L___Lib_USB_USB_CtrlTrf_In_Handler78:
;__Lib_USB.c, 3519 ::
0x9D001608 0xA020ACCA SB R0, Offset(__Lib_USB_controlTransferState+0)(GP)
;__Lib_USB.c, 3522 ::
L___Lib_USB_USB_CtrlTrf_In_Handler77:
;__Lib_USB.c, 3524 ::
L_end_USB_CtrlTrf_In_Handler:
0x9D00160C 0x8FBF0000 LW RA, 0(SP)
0x9D001610 0x03E00008 JR RA
0x9D001614 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_CtrlTrf_In_Handler
_HID_Read:
;__Lib_USB.c, 5456 ::
0x9D003DF4 0x27BDFFF0 ADDIU SP, SP, -16
0x9D003DF8 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5457 ::
0x9D003DFC 0xAFB90004 SW R25, 4(SP)
0x9D003E00 0xAFBA0008 SW R26, 8(SP)
0x9D003E04 0xAFBB000C SW R27, 12(SP)
0x9D003E08 0x341B0001 ORI R27, R0, 1
0x9D003E0C 0x341A0040 ORI R26, R0, 64
0x9D003E10 0x0F400D0C JAL _Gen_Read+0
0x9D003E14 0x8C39AC98 LW R25, Offset(__Lib_USB_USB_Read_Buffer+0)(GP)
;__Lib_USB.c, 5458 ::
;__Lib_USB.c, 5457 ::
;__Lib_USB.c, 5458 ::
L_end_HID_Read:
0x9D003E18 0x8FBB000C LW R27, 12(SP)
0x9D003E1C 0x8FBA0008 LW R26, 8(SP)
0x9D003E20 0x8FB90004 LW R25, 4(SP)
0x9D003E24 0x8FBF0000 LW RA, 0(SP)
0x9D003E28 0x03E00008 JR RA
0x9D003E2C 0x27BD0010 ADDIU SP, SP, 16
; end of _HID_Read
_Gen_Read:
;__Lib_USB.c, 5373 ::
0x9D003430 0x27BDFFE8 ADDIU SP, SP, -24
0x9D003434 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5374 ::
0x9D003438 0xAFB90004 SW R25, 4(SP)
0x9D00343C 0xAFBA0008 SW R26, 8(SP)
0x9D003440 0xAFBB000C SW R27, 12(SP)
0x9D003444 0xAFBC0010 SW R28, 16(SP)
; read_bytes start address is: 16 (R4)
0x9D003448 0x0000200A MOVZ R4, R0, R0
;__Lib_USB.c, 5377 ::
0x9D00344C 0x9022ABF5 LBU R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D003450 0x2C420020 SLTIU R2, R2, 32
0x9D003454 0x14400008 BNE R2, R0, L__Gen_Read299
0x9D003458 0x70000000 NOP
L__Gen_Read579:
0x9D00345C 0x3C1EBF88 LUI R30, 49032
0x9D003460 0x83C25080 LB R2, 20608(R30)
0x9D003464 0x7C420040 EXT R2, R2, 1, 1
0x9D003468 0x14400003 BNE R2, 1, L__Gen_Read298
0x9D00346C 0x70000000 NOP
L__Gen_Read580:
0x9D003470 0x0B400D20 J L_Gen_Read235
0x9D003474 0x70000000 NOP
; read_bytes end address is: 16 (R4)
L__Gen_Read299:
L__Gen_Read298:
;__Lib_USB.c, 5378 ::
0x9D003478 0x0B400D39 J L_end_Gen_Read
0x9D00347C 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 5379 ::
L_Gen_Read235:
;__Lib_USB.c, 5380 ::
; read_bytes start address is: 16 (R4)
0x9D003480 0xAFB90014 SW R25, 20(SP)
0x9D003484 0x0F4006FC JAL __Lib_USB_USB_Handle_Busy+0
0x9D003488 0x8C39ACA4 LW R25, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
0x9D00348C 0x14400014 BNE R2, R0, L_Gen_Read236
0x9D003490 0x8FB90014 LW R25, 20(SP)
L__Gen_Read581:
;__Lib_USB.c, 5381 ::
; handle start address is: 12 (R3)
0x9D003494 0x8C23ACA4 LW R3, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
;__Lib_USB.c, 5382 ::
0x9D003498 0x8C22ACA4 LW R2, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
0x9D00349C 0x10400006 BEQ R2, R0, L__Gen_Read300
0x9D0034A0 0x70000000 NOP
L__Gen_Read583:
; read_bytes end address is: 16 (R4)
;__Lib_USB.c, 5383 ::
0x9D0034A4 0x24620002 ADDIU R2, R3, 2
; handle end address is: 12 (R3)
0x9D0034A8 0x94420000 LHU R2, 0(R2)
0x9D0034AC 0x7C424800 EXT R2, R2, 0, 10
; read_bytes start address is: 24 (R6)
; read_bytes end address is: 24 (R6)
0x9D0034B0 0x0B400D2F J L_Gen_Read237
0x9D0034B4 0x3046FFFF ANDI R6, R2, 65535
L__Gen_Read300:
;__Lib_USB.c, 5382 ::
0x9D0034B8 0x308600FF ANDI R6, R4, 255
;__Lib_USB.c, 5383 ::
L_Gen_Read237:
;__Lib_USB.c, 5384 ::
; read_bytes start address is: 24 (R6)
0x9D0034BC 0xA3BB0014 SB R27, 20(SP)
0x9D0034C0 0x335C00FF ANDI R28, R26, 255
0x9D0034C4 0x0000D00A MOVZ R26, R0, R0
0x9D0034C8 0x0320D80A MOVZ R27, R25, R0
0x9D0034CC 0x0F4001BB JAL __Lib_USB_USB_Transfer_Packet+0
0x9D0034D0 0x93B90014 LBU R25, 20(SP)
0x9D0034D4 0xAC22ACA4 SW R2, Offset(__Lib_USB_USB_Out_Handle+0)(GP)
;__Lib_USB.c, 5385 ::
; read_bytes end address is: 24 (R6)
0x9D0034D8 0x0B400D39 J L_end_Gen_Read
0x9D0034DC 0x30C200FF ANDI R2, R6, 255
;__Lib_USB.c, 5386 ::
L_Gen_Read236:
0x9D0034E0 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 5388 ::
;__Lib_USB.c, 5386 ::
;__Lib_USB.c, 5388 ::
L_end_Gen_Read:
0x9D0034E4 0x8FBC0010 LW R28, 16(SP)
0x9D0034E8 0x8FBB000C LW R27, 12(SP)
0x9D0034EC 0x8FBA0008 LW R26, 8(SP)
0x9D0034F0 0x8FB90004 LW R25, 4(SP)
0x9D0034F4 0x8FBF0000 LW RA, 0(SP)
0x9D0034F8 0x03E00008 JR RA
0x9D0034FC 0x27BD0018 ADDIU SP, SP, 24
; end of _Gen_Read
__Lib_USB_USB_Handle_Busy:
;__Lib_USB.c, 2622 ::
;__Lib_USB.c, 2623 ::
0x9D001BF0 0x17200003 BNE R25, R0, L___Lib_USB_USB_Handle_Busy2
0x9D001BF4 0x27BDFFFC ADDIU SP, SP, -4
L___Lib_USB_USB_Handle_Busy323:
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 start address is: 12 (R3)
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 end address is: 12 (R3)
0x9D001BF8 0x0B400702 J L___Lib_USB_USB_Handle_Busy3
0x9D001BFC 0x0000180A MOVZ R3, R0, R0
L___Lib_USB_USB_Handle_Busy2:
0x9D001C00 0x93220000 LBU R2, 0(R25)
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 start address is: 12 (R3)
0x9D001C04 0x7C4301C0 EXT R3, R2, 7, 1
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 end address is: 12 (R3)
L___Lib_USB_USB_Handle_Busy3:
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 start address is: 12 (R3)
0x9D001C08 0x306200FF ANDI R2, R3, 255
; ?FLOC____Lib_USB_USB_Handle_Busy?T25 end address is: 12 (R3)
;__Lib_USB.c, 2624 ::
L_end_USB_Handle_Busy:
0x9D001C0C 0x03E00008 JR RA
0x9D001C10 0x27BD0004 ADDIU SP, SP, 4
; end of __Lib_USB_USB_Handle_Busy
_cmd_chip_enable:
;CMD_ChipEnable.c, 5 :: void cmd_chip_enable(unsigned char* cmd)
0x9D003EF0 0x27BDFFF8 ADDIU SP, SP, -8
0x9D003EF4 0xAFBF0000 SW RA, 0(SP)
;CMD_ChipEnable.c, 7 :: nand_chip_select((int)cmd[1]);
0x9D003EF8 0xAFB90004 SW R25, 4(SP)
0x9D003EFC 0x27220001 ADDIU R2, R25, 1
0x9D003F00 0x90420000 LBU R2, 0(R2)
0x9D003F04 0x304200FF ANDI R2, R2, 255
0x9D003F08 0x0F400D40 JAL _nand_chip_select+0
0x9D003F0C 0x7C02CE20 SEH R25, R2
;CMD_ChipEnable.c, 8 :: }
L_end_cmd_chip_enable:
0x9D003F10 0x8FB90004 LW R25, 4(SP)
0x9D003F14 0x8FBF0000 LW RA, 0(SP)
0x9D003F18 0x03E00008 JR RA
0x9D003F1C 0x27BD0008 ADDIU SP, SP, 8
; end of _cmd_chip_enable
_nand_chip_select:
;NandControl.c, 72 :: void nand_chip_select(int idx)
;NandControl.c, 74 :: switch(idx)
0x9D003500 0x0B400DA0 J L_nand_chip_select4
0x9D003504 0x70000000 NOP
;NandControl.c, 76 :: case 0:
L_nand_chip_select6:
;NandControl.c, 77 :: ctrl_nce1 = ctrl_nce2 = ctrl_nce3 = 1;
0x9D003508 0x34020040 ORI R2, R0, 0x0040
0x9D00350C 0x3C1EBF88 LUI R30, 49032
0x9D003510 0xA3C26069 SB R2, 24681(R30)
0x9D003514 0x3C1EBF88 LUI R30, 49032
0x9D003518 0x83C26061 LB R2, 24673(R30)
0x9D00351C 0x7C430180 EXT R3, R2, 6, 1
0x9D003520 0x3C1EBF88 LUI R30, 49032
0x9D003524 0x83C26160 LB R2, 24928(R30)
0x9D003528 0x7C620004 INS R2, R3, 0, 1
0x9D00352C 0x3C1EBF88 LUI R30, 49032
0x9D003530 0xA3C26160 SB R2, 24928(R30)
0x9D003534 0x3C1EBF88 LUI R30, 49032
0x9D003538 0x83C26160 LB R2, 24928(R30)
0x9D00353C 0x7C430000 EXT R3, R2, 0, 1
0x9D003540 0x3C1EBF88 LUI R30, 49032
0x9D003544 0x83C26160 LB R2, 24928(R30)
0x9D003548 0x7C620844 INS R2, R3, 1, 1
0x9D00354C 0x3C1EBF88 LUI R30, 49032
0x9D003550 0xA3C26160 SB R2, 24928(R30)
;NandControl.c, 78 :: ctrl_nce0 = 0;
0x9D003554 0x34020001 ORI R2, R0, 0x0001
0x9D003558 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 79 :: break;
0x9D00355C 0x0B400DB1 J L_nand_chip_select5
0x9D003560 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 81 :: case 1:
L_nand_chip_select7:
;NandControl.c, 82 :: ctrl_nce0 = ctrl_nce2 = ctrl_nce3 = 1;
0x9D003564 0x34020040 ORI R2, R0, 0x0040
0x9D003568 0x3C1EBF88 LUI R30, 49032
0x9D00356C 0xA3C26069 SB R2, 24681(R30)
0x9D003570 0x3C1EBF88 LUI R30, 49032
0x9D003574 0x83C26061 LB R2, 24673(R30)
0x9D003578 0x7C430180 EXT R3, R2, 6, 1
0x9D00357C 0x3C1EBF88 LUI R30, 49032
0x9D003580 0x83C26160 LB R2, 24928(R30)
0x9D003584 0x7C620004 INS R2, R3, 0, 1
0x9D003588 0x3C1EBF88 LUI R30, 49032
0x9D00358C 0xA3C26160 SB R2, 24928(R30)
0x9D003590 0x3C1EBF88 LUI R30, 49032
0x9D003594 0x83C26160 LB R2, 24928(R30)
0x9D003598 0x7C430000 EXT R3, R2, 0, 1
0x9D00359C 0x3C1EBF88 LUI R30, 49032
0x9D0035A0 0x83C26061 LB R2, 24673(R30)
0x9D0035A4 0x7C620004 INS R2, R3, 0, 1
0x9D0035A8 0x3C1EBF88 LUI R30, 49032
0x9D0035AC 0xA3C26061 SB R2, 24673(R30)
;NandControl.c, 83 :: ctrl_nce1 = 0;
0x9D0035B0 0x34020002 ORI R2, R0, 0x0002
0x9D0035B4 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 84 :: break;
0x9D0035B8 0x0B400DB1 J L_nand_chip_select5
0x9D0035BC 0xA3C26164 SB R2, 24932(R30)
;NandControl.c, 86 :: case 2:
L_nand_chip_select8:
;NandControl.c, 87 :: ctrl_nce0 = ctrl_nce1 = ctrl_nce3 = 1;
0x9D0035C0 0x34020040 ORI R2, R0, 0x0040
0x9D0035C4 0x3C1EBF88 LUI R30, 49032
0x9D0035C8 0xA3C26069 SB R2, 24681(R30)
0x9D0035CC 0x3C1EBF88 LUI R30, 49032
0x9D0035D0 0x83C26061 LB R2, 24673(R30)
0x9D0035D4 0x7C430180 EXT R3, R2, 6, 1
0x9D0035D8 0x3C1EBF88 LUI R30, 49032
0x9D0035DC 0x83C26160 LB R2, 24928(R30)
0x9D0035E0 0x7C620844 INS R2, R3, 1, 1
0x9D0035E4 0x3C1EBF88 LUI R30, 49032
0x9D0035E8 0xA3C26160 SB R2, 24928(R30)
0x9D0035EC 0x3C1EBF88 LUI R30, 49032
0x9D0035F0 0x83C26160 LB R2, 24928(R30)
0x9D0035F4 0x7C430040 EXT R3, R2, 1, 1
0x9D0035F8 0x3C1EBF88 LUI R30, 49032
0x9D0035FC 0x83C26061 LB R2, 24673(R30)
0x9D003600 0x7C620004 INS R2, R3, 0, 1
0x9D003604 0x3C1EBF88 LUI R30, 49032
0x9D003608 0xA3C26061 SB R2, 24673(R30)
;NandControl.c, 88 :: ctrl_nce2 = 0;
0x9D00360C 0x34020001 ORI R2, R0, 0x0001
0x9D003610 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 89 :: break;
0x9D003614 0x0B400DB1 J L_nand_chip_select5
0x9D003618 0xA3C26164 SB R2, 24932(R30)
;NandControl.c, 91 :: case 3:
L_nand_chip_select9:
;NandControl.c, 92 :: ctrl_nce0 = ctrl_nce1 = ctrl_nce2 = 1;
0x9D00361C 0x34020001 ORI R2, R0, 0x0001
0x9D003620 0x3C1EBF88 LUI R30, 49032
0x9D003624 0xA3C26168 SB R2, 24936(R30)
0x9D003628 0x3C1EBF88 LUI R30, 49032
0x9D00362C 0x83C26160 LB R2, 24928(R30)
0x9D003630 0x7C430000 EXT R3, R2, 0, 1
0x9D003634 0x3C1EBF88 LUI R30, 49032
0x9D003638 0x83C26160 LB R2, 24928(R30)
0x9D00363C 0x7C620844 INS R2, R3, 1, 1
0x9D003640 0x3C1EBF88 LUI R30, 49032
0x9D003644 0xA3C26160 SB R2, 24928(R30)
0x9D003648 0x3C1EBF88 LUI R30, 49032
0x9D00364C 0x83C26160 LB R2, 24928(R30)
0x9D003650 0x7C430040 EXT R3, R2, 1, 1
0x9D003654 0x3C1EBF88 LUI R30, 49032
0x9D003658 0x83C26061 LB R2, 24673(R30)
0x9D00365C 0x7C620004 INS R2, R3, 0, 1
0x9D003660 0x3C1EBF88 LUI R30, 49032
0x9D003664 0xA3C26061 SB R2, 24673(R30)
;NandControl.c, 93 :: ctrl_nce3 = 0;
0x9D003668 0x34020040 ORI R2, R0, 0x0040
0x9D00366C 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 94 :: break;
0x9D003670 0x0B400DB1 J L_nand_chip_select5
0x9D003674 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 96 :: default:
L_nand_chip_select10:
;NandControl.c, 97 :: break;
0x9D003678 0x0B400DB1 J L_nand_chip_select5
0x9D00367C 0x70000000 NOP
;NandControl.c, 98 :: }
L_nand_chip_select4:
0x9D003680 0x7C191620 SEH R2, R25
0x9D003684 0x1040FFA0 BEQ R2, R0, L_nand_chip_select6
0x9D003688 0x70000000 NOP
L__nand_chip_select35:
0x9D00368C 0x7C191E20 SEH R3, R25
0x9D003690 0x34020001 ORI R2, R0, 1
0x9D003694 0x1062FFB3 BEQ R3, R2, L_nand_chip_select7
0x9D003698 0x70000000 NOP
L__nand_chip_select37:
0x9D00369C 0x7C191E20 SEH R3, R25
0x9D0036A0 0x34020002 ORI R2, R0, 2
0x9D0036A4 0x1062FFC6 BEQ R3, R2, L_nand_chip_select8
0x9D0036A8 0x70000000 NOP
L__nand_chip_select39:
0x9D0036AC 0x7C191E20 SEH R3, R25
0x9D0036B0 0x34020003 ORI R2, R0, 3
0x9D0036B4 0x1062FFD9 BEQ R3, R2, L_nand_chip_select9
0x9D0036B8 0x70000000 NOP
L__nand_chip_select41:
0x9D0036BC 0x0B400D9E J L_nand_chip_select10
0x9D0036C0 0x70000000 NOP
L_nand_chip_select5:
;NandControl.c, 99 :: }
L_end_nand_chip_select:
0x9D0036C4 0x03E00008 JR RA
0x9D0036C8 0x70000000 NOP
; end of _nand_chip_select
_cmd_chip_disable:
;CMD_ChipEnable.c, 10 :: void cmd_chip_disable()
0x9D003F20 0x27BDFFFC ADDIU SP, SP, -4
0x9D003F24 0xAFBF0000 SW RA, 0(SP)
;CMD_ChipEnable.c, 12 :: nand_chip_unselect();
0x9D003F28 0x0F400832 JAL _nand_chip_unselect+0
0x9D003F2C 0x70000000 NOP
;CMD_ChipEnable.c, 13 :: }
L_end_cmd_chip_disable:
0x9D003F30 0x8FBF0000 LW RA, 0(SP)
0x9D003F34 0x03E00008 JR RA
0x9D003F38 0x27BD0004 ADDIU SP, SP, 4
; end of _cmd_chip_disable
_nand_chip_unselect:
;NandControl.c, 101 :: void nand_chip_unselect()
;NandControl.c, 103 :: ctrl_nce0 = 1;
0x9D0020C8 0x34020001 ORI R2, R0, 0x0001
0x9D0020CC 0x3C1EBF88 LUI R30, 49032
0x9D0020D0 0xA3C26069 SB R2, 24681(R30)
;NandControl.c, 104 :: ctrl_nce1 = 1;
0x9D0020D4 0x34020002 ORI R2, R0, 0x0002
0x9D0020D8 0x3C1EBF88 LUI R30, 49032
0x9D0020DC 0xA3C26168 SB R2, 24936(R30)
;NandControl.c, 105 :: ctrl_nce2 = 1;
0x9D0020E0 0x34020001 ORI R2, R0, 0x0001
0x9D0020E4 0x3C1EBF88 LUI R30, 49032
0x9D0020E8 0xA3C26168 SB R2, 24936(R30)
;NandControl.c, 106 :: ctrl_nce3 = 1;
0x9D0020EC 0x34020040 ORI R2, R0, 0x0040
0x9D0020F0 0x3C1EBF88 LUI R30, 49032
0x9D0020F4 0xA3C26069 SB R2, 24681(R30)
;NandControl.c, 107 :: }
L_end_nand_chip_unselect:
0x9D0020F8 0x03E00008 JR RA
0x9D0020FC 0x70000000 NOP
; end of _nand_chip_unselect
_cmd_chip_reset:
;CMD_Reset.c, 14 :: void cmd_chip_reset()
0x9D003F3C 0x27BDFFF8 ADDIU SP, SP, -8
0x9D003F40 0xAFBF0000 SW RA, 0(SP)
;CMD_Reset.c, 16 :: nand_send_command(NC_RESET);
0x9D003F44 0xAFB90004 SW R25, 4(SP)
0x9D003F48 0x0F40087F JAL _nand_send_command+0
0x9D003F4C 0x341900FF ORI R25, R0, 255
;CMD_Reset.c, 17 :: do_delay(10);
0x9D003F50 0x0F40084C JAL _do_delay+0
0x9D003F54 0x3419000A ORI R25, R0, 10
;CMD_Reset.c, 18 :: while(!nand_is_ready());
L_cmd_chip_reset3:
0x9D003F58 0x0F400898 JAL _nand_is_ready+0
0x9D003F5C 0x70000000 NOP
0x9D003F60 0x14400003 BNE R2, R0, L_cmd_chip_reset4
0x9D003F64 0x70000000 NOP
L__cmd_chip_reset8:
0x9D003F68 0x0B400FD6 J L_cmd_chip_reset3
0x9D003F6C 0x70000000 NOP
L_cmd_chip_reset4:
;CMD_Reset.c, 19 :: }
L_end_cmd_chip_reset:
0x9D003F70 0x8FB90004 LW R25, 4(SP)
0x9D003F74 0x8FBF0000 LW RA, 0(SP)
0x9D003F78 0x03E00008 JR RA
0x9D003F7C 0x27BD0008 ADDIU SP, SP, 8
; end of _cmd_chip_reset
_nand_send_command:
;NandControl.c, 110 :: void nand_send_command(unsigned char cmd)
0x9D0021FC 0x27BDFFFC ADDIU SP, SP, -4
0x9D002200 0xAFBF0000 SW RA, 0(SP)
;NandControl.c, 112 :: data_line_write_byte(cmd);
0x9D002204 0x0F40069B JAL _data_line_write_byte+0
0x9D002208 0x70000000 NOP
;NandControl.c, 113 :: ctrl_ale = 0;
0x9D00220C 0x34020001 ORI R2, R0, 0x0001
0x9D002210 0x3C1EBF88 LUI R30, 49032
0x9D002214 0xA3C260E4 SB R2, 24804(R30)
;NandControl.c, 114 :: ctrl_nre = 1;
0x9D002218 0x34020010 ORI R2, R0, 0x0010
0x9D00221C 0x3C1EBF88 LUI R30, 49032
0x9D002220 0xA3C260E8 SB R2, 24808(R30)
;NandControl.c, 115 :: ctrl_nwe = 0;
0x9D002224 0x34020001 ORI R2, R0, 0x0001
0x9D002228 0x3C1EBF88 LUI R30, 49032
0x9D00222C 0xA3C26124 SB R2, 24868(R30)
;NandControl.c, 116 :: ctrl_cle = 1;
0x9D002230 0x34020080 ORI R2, R0, 0x0080
0x9D002234 0x3C1EBF88 LUI R30, 49032
0x9D002238 0xA3C26069 SB R2, 24681(R30)
;NandControl.c, 117 :: ctrl_nwe = 1;
0x9D00223C 0x34020001 ORI R2, R0, 0x0001
0x9D002240 0x3C1EBF88 LUI R30, 49032
0x9D002244 0xA3C26128 SB R2, 24872(R30)
;NandControl.c, 118 :: ctrl_cle = 0;
0x9D002248 0x34020080 ORI R2, R0, 0x0080
0x9D00224C 0x3C1EBF88 LUI R30, 49032
0x9D002250 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 119 :: }
L_end_nand_send_command:
0x9D002254 0x8FBF0000 LW RA, 0(SP)
0x9D002258 0x03E00008 JR RA
0x9D00225C 0x27BD0004 ADDIU SP, SP, 4
; end of _nand_send_command
_data_line_write_byte:
;NandDataLine.c, 38 :: void data_line_write_byte(unsigned char b)
;NandDataLine.c, 40 :: if(data_line_last_op != NAND_LAST_OP_WRITE)
0x9D001A6C 0x8423804C LH R3, Offset(_data_line_last_op+0)(GP)
0x9D001A70 0x34020001 ORI R2, R0, 1
0x9D001A74 0x1062001B BEQ R3, R2, L_data_line_write_byte0
0x9D001A78 0x70000000 NOP
L__data_line_write_byte5:
;NandDataLine.c, 42 :: TRISE2_bit = 0; TRISE3_bit = 0; TRISE4_bit = 0; TRISE5_bit = 0;
0x9D001A7C 0x34020004 ORI R2, R0, 0x0004
0x9D001A80 0x3C1EBF88 LUI R30, 49032
0x9D001A84 0xA3C26104 SB R2, 24836(R30)
0x9D001A88 0x34020008 ORI R2, R0, 0x0008
0x9D001A8C 0x3C1EBF88 LUI R30, 49032
0x9D001A90 0xA3C26104 SB R2, 24836(R30)
0x9D001A94 0x34020010 ORI R2, R0, 0x0010
0x9D001A98 0x3C1EBF88 LUI R30, 49032
0x9D001A9C 0xA3C26104 SB R2, 24836(R30)
0x9D001AA0 0x34020020 ORI R2, R0, 0x0020
0x9D001AA4 0x3C1EBF88 LUI R30, 49032
0x9D001AA8 0xA3C26104 SB R2, 24836(R30)
;NandDataLine.c, 43 :: TRISF4_bit = 0; TRISF5_bit = 0;
0x9D001AAC 0x34020010 ORI R2, R0, 0x0010
0x9D001AB0 0x3C1EBF88 LUI R30, 49032
0x9D001AB4 0xA3C26144 SB R2, 24900(R30)
0x9D001AB8 0x34020020 ORI R2, R0, 0x0020
0x9D001ABC 0x3C1EBF88 LUI R30, 49032
0x9D001AC0 0xA3C26144 SB R2, 24900(R30)
;NandDataLine.c, 44 :: TRISG7_bit = 0; TRISG8_bit = 0;
0x9D001AC4 0x34020080 ORI R2, R0, 0x0080
0x9D001AC8 0x3C1EBF88 LUI R30, 49032
0x9D001ACC 0xA3C26184 SB R2, 24964(R30)
0x9D001AD0 0x34020001 ORI R2, R0, 0x0001
0x9D001AD4 0x3C1EBF88 LUI R30, 49032
0x9D001AD8 0xA3C26185 SB R2, 24965(R30)
;NandDataLine.c, 45 :: data_line_last_op = NAND_LAST_OP_WRITE;
0x9D001ADC 0x34020001 ORI R2, R0, 1
0x9D001AE0 0xA422804C SH R2, Offset(_data_line_last_op+0)(GP)
;NandDataLine.c, 46 :: }
L_data_line_write_byte0:
;NandDataLine.c, 47 :: nand_b0 = (b) & 1;
0x9D001AE4 0x33230001 ANDI R3, R25, 1
0x9D001AE8 0x3C1EBF88 LUI R30, 49032
0x9D001AEC 0x83C26120 LB R2, 24864(R30)
0x9D001AF0 0x7C621084 INS R2, R3, 2, 1
0x9D001AF4 0x3C1EBF88 LUI R30, 49032
0x9D001AF8 0xA3C26120 SB R2, 24864(R30)
;NandDataLine.c, 48 :: nand_b1 = (b >> 1) & 1;
0x9D001AFC 0x332200FF ANDI R2, R25, 255
0x9D001B00 0x00021042 SRL R2, R2, 1
0x9D001B04 0x30430001 ANDI R3, R2, 1
0x9D001B08 0x3C1EBF88 LUI R30, 49032
0x9D001B0C 0x83C26120 LB R2, 24864(R30)
0x9D001B10 0x7C6218C4 INS R2, R3, 3, 1
0x9D001B14 0x3C1EBF88 LUI R30, 49032
0x9D001B18 0xA3C26120 SB R2, 24864(R30)
;NandDataLine.c, 49 :: nand_b2 = (b >> 2) & 1;
0x9D001B1C 0x332200FF ANDI R2, R25, 255
0x9D001B20 0x00021082 SRL R2, R2, 2
0x9D001B24 0x30430001 ANDI R3, R2, 1
0x9D001B28 0x3C1EBF88 LUI R30, 49032
0x9D001B2C 0x83C261A0 LB R2, 24992(R30)
0x9D001B30 0x7C6239C4 INS R2, R3, 7, 1
0x9D001B34 0x3C1EBF88 LUI R30, 49032
0x9D001B38 0xA3C261A0 SB R2, 24992(R30)
;NandDataLine.c, 50 :: nand_b3 = (b >> 3) & 1;
0x9D001B3C 0x332200FF ANDI R2, R25, 255
0x9D001B40 0x000210C2 SRL R2, R2, 3
0x9D001B44 0x30430001 ANDI R3, R2, 1
0x9D001B48 0x3C1EBF88 LUI R30, 49032
0x9D001B4C 0x83C261A1 LB R2, 24993(R30)
0x9D001B50 0x7C620004 INS R2, R3, 0, 1
0x9D001B54 0x3C1EBF88 LUI R30, 49032
0x9D001B58 0xA3C261A1 SB R2, 24993(R30)
;NandDataLine.c, 51 :: nand_b4 = (b >> 4) & 1;
0x9D001B5C 0x332200FF ANDI R2, R25, 255
0x9D001B60 0x00021102 SRL R2, R2, 4
0x9D001B64 0x30430001 ANDI R3, R2, 1
0x9D001B68 0x3C1EBF88 LUI R30, 49032
0x9D001B6C 0x83C26160 LB R2, 24928(R30)
0x9D001B70 0x7C622944 INS R2, R3, 5, 1
0x9D001B74 0x3C1EBF88 LUI R30, 49032
0x9D001B78 0xA3C26160 SB R2, 24928(R30)
;NandDataLine.c, 52 :: nand_b5 = (b >> 5) & 1;
0x9D001B7C 0x332200FF ANDI R2, R25, 255
0x9D001B80 0x00021142 SRL R2, R2, 5
0x9D001B84 0x30430001 ANDI R3, R2, 1
0x9D001B88 0x3C1EBF88 LUI R30, 49032
0x9D001B8C 0x83C26160 LB R2, 24928(R30)
0x9D001B90 0x7C622104 INS R2, R3, 4, 1
0x9D001B94 0x3C1EBF88 LUI R30, 49032
0x9D001B98 0xA3C26160 SB R2, 24928(R30)
;NandDataLine.c, 53 :: nand_b6 = (b >> 6) & 1;
0x9D001B9C 0x332200FF ANDI R2, R25, 255
0x9D001BA0 0x00021182 SRL R2, R2, 6
0x9D001BA4 0x30430001 ANDI R3, R2, 1
0x9D001BA8 0x3C1EBF88 LUI R30, 49032
0x9D001BAC 0x83C26120 LB R2, 24864(R30)
0x9D001BB0 0x7C622104 INS R2, R3, 4, 1
0x9D001BB4 0x3C1EBF88 LUI R30, 49032
0x9D001BB8 0xA3C26120 SB R2, 24864(R30)
;NandDataLine.c, 54 :: nand_b7 = (b >> 7) & 1;
0x9D001BBC 0x332200FF ANDI R2, R25, 255
0x9D001BC0 0x000211C2 SRL R2, R2, 7
0x9D001BC4 0x30430001 ANDI R3, R2, 1
0x9D001BC8 0x3C1EBF88 LUI R30, 49032
0x9D001BCC 0x83C26120 LB R2, 24864(R30)
0x9D001BD0 0x7C622944 INS R2, R3, 5, 1
0x9D001BD4 0x3C1EBF88 LUI R30, 49032
0x9D001BD8 0xA3C26120 SB R2, 24864(R30)
;NandDataLine.c, 55 :: asm NOP;
0x9D001BDC 0x70000000 NOP
;NandDataLine.c, 56 :: asm NOP;
0x9D001BE0 0x70000000 NOP
;NandDataLine.c, 57 :: asm NOP;
0x9D001BE4 0x70000000 NOP
;NandDataLine.c, 58 :: }
L_end_data_line_write_byte:
0x9D001BE8 0x03E00008 JR RA
0x9D001BEC 0x70000000 NOP
; end of _data_line_write_byte
_do_delay:
;CMD_Reset.c, 5 :: void do_delay(int cycles)
;CMD_Reset.c, 8 :: for(i = 0; i < cycles; i++)
; i start address is: 16 (R4)
0x9D002130 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L_do_delay0:
; i start address is: 16 (R4)
0x9D002134 0x7C041E20 SEH R3, R4
0x9D002138 0x7C191620 SEH R2, R25
0x9D00213C 0x0062102A SLT R2, R3, R2
0x9D002140 0x10400005 BEQ R2, R0, L_do_delay1
0x9D002144 0x70000000 NOP
L__do_delay6:
;CMD_Reset.c, 10 :: asm NOP;
0x9D002148 0x70000000 NOP
;CMD_Reset.c, 8 :: for(i = 0; i < cycles; i++)
0x9D00214C 0x24820001 ADDIU R2, R4, 1
;CMD_Reset.c, 11 :: }
; i end address is: 16 (R4)
0x9D002150 0x0B40084D J L_do_delay0
0x9D002154 0x7C022620 SEH R4, R2
L_do_delay1:
;CMD_Reset.c, 12 :: }
L_end_do_delay:
0x9D002158 0x03E00008 JR RA
0x9D00215C 0x70000000 NOP
; end of _do_delay
_nand_is_ready:
;NandControl.c, 57 :: int nand_is_ready()
;NandControl.c, 59 :: int r = (int)(ctrl_rnb0 & ctrl_rnb1 & ctrl_rnb2 & ctrl_rnb3);
0x9D002260 0x3C1EBF88 LUI R30, 49032
0x9D002264 0x93C260D0 LBU R2, 24784(R30)
0x9D002268 0x7C420140 EXT R2, R2, 5, 1
0x9D00226C 0x304300FF ANDI R3, R2, 255
0x9D002270 0x3C1EBF88 LUI R30, 49032
0x9D002274 0x93C26051 LBU R2, 24657(R30)
0x9D002278 0x7C420040 EXT R2, R2, 1, 1
0x9D00227C 0x00621824 AND R3, R3, R2
0x9D002280 0x3C1EBF88 LUI R30, 49032
0x9D002284 0x93C260D1 LBU R2, 24785(R30)
0x9D002288 0x7C4200C0 EXT R2, R2, 3, 1
0x9D00228C 0x00621824 AND R3, R3, R2
0x9D002290 0x3C1EBF88 LUI R30, 49032
0x9D002294 0x93C26050 LBU R2, 24656(R30)
0x9D002298 0x7C420000 EXT R2, R2, 0, 1
0x9D00229C 0x00621024 AND R2, R3, R2
0x9D0022A0 0x304200FF ANDI R2, R2, 255
; r start address is: 12 (R3)
0x9D0022A4 0x7C021E20 SEH R3, R2
;NandControl.c, 60 :: if(0 == r)
0x9D0022A8 0x7C021620 SEH R2, R2
0x9D0022AC 0x14400005 BNE R2, R0, L_nand_is_ready0
0x9D0022B0 0x70000000 NOP
L__nand_is_ready30:
;NandControl.c, 61 :: LATG6_bit = 0;
0x9D0022B4 0x34020040 ORI R2, R0, 0x0040
0x9D0022B8 0x3C1EBF88 LUI R30, 49032
0x9D0022BC 0x0B4008B4 J L_nand_is_ready1
0x9D0022C0 0xA3C261A4 SB R2, 24996(R30)
L_nand_is_ready0:
;NandControl.c, 63 :: LATG6_bit = 1;
0x9D0022C4 0x34020040 ORI R2, R0, 0x0040
0x9D0022C8 0x3C1EBF88 LUI R30, 49032
0x9D0022CC 0xA3C261A8 SB R2, 25000(R30)
L_nand_is_ready1:
;NandControl.c, 64 :: return r;
0x9D0022D0 0x7C031620 SEH R2, R3
; r end address is: 12 (R3)
;NandControl.c, 65 :: }
L_end_nand_is_ready:
0x9D0022D4 0x03E00008 JR RA
0x9D0022D8 0x70000000 NOP
; end of _nand_is_ready
_cmd_chip_read_id:
;CMD_ReadID.c, 5 :: void cmd_chip_read_id(unsigned char* outBuffer, int addr)
0x9D003E30 0x27BDFFEC ADDIU SP, SP, -20
0x9D003E34 0xAFBF0000 SW RA, 0(SP)
0x9D003E38 0xAFBA0004 SW R26, 4(SP)
0x9D003E3C 0xA7BA0010 SH R26, 16(SP)
;CMD_ReadID.c, 7 :: nand_send_command(NC_READ_ID);
0x9D003E40 0xAFB90008 SW R25, 8(SP)
0x9D003E44 0x0F40087F JAL _nand_send_command+0
0x9D003E48 0x34190090 ORI R25, R0, 144
;CMD_ReadID.c, 8 :: nand_send_address(&addr, 1);
0x9D003E4C 0x27A20010 ADDIU R2, SP, 16
0x9D003E50 0x341A0001 ORI R26, R0, 1
0x9D003E54 0x0F400A65 JAL _nand_send_address+0
0x9D003E58 0x0040C80A MOVZ R25, R2, R0
;CMD_ReadID.c, 9 :: do_delay(10);
0x9D003E5C 0x0F40084C JAL _do_delay+0
0x9D003E60 0x3419000A ORI R25, R0, 10
0x9D003E64 0x8FB90008 LW R25, 8(SP)
;CMD_ReadID.c, 10 :: while(!nand_is_ready());
L_cmd_chip_read_id0:
0x9D003E68 0xA7BA0008 SH R26, 8(SP)
0x9D003E6C 0x0F400898 JAL _nand_is_ready+0
0x9D003E70 0xAFB9000C SW R25, 12(SP)
0x9D003E74 0x8FB9000C LW R25, 12(SP)
0x9D003E78 0x14400003 BNE R2, R0, L_cmd_chip_read_id1
0x9D003E7C 0x87BA0008 LH R26, 8(SP)
L__cmd_chip_read_id7:
0x9D003E80 0x0B400F9A J L_cmd_chip_read_id0
0x9D003E84 0x70000000 NOP
L_cmd_chip_read_id1:
;CMD_ReadID.c, 11 :: do_delay(2500);
0x9D003E88 0xA7BA0008 SH R26, 8(SP)
0x9D003E8C 0xAFB9000C SW R25, 12(SP)
0x9D003E90 0x0F40084C JAL _do_delay+0
0x9D003E94 0x341909C4 ORI R25, R0, 2500
0x9D003E98 0x8FB9000C LW R25, 12(SP)
0x9D003E9C 0x87BA0008 LH R26, 8(SP)
;CMD_ReadID.c, 12 :: if(0 == addr)
0x9D003EA0 0x87A20010 LH R2, 16(SP)
0x9D003EA4 0x14400008 BNE R2, R0, L_cmd_chip_read_id2
0x9D003EA8 0x70000000 NOP
L__cmd_chip_read_id8:
;CMD_ReadID.c, 13 :: nand_read(outBuffer, 5);
0x9D003EAC 0xA7BA0008 SH R26, 8(SP)
0x9D003EB0 0xAFB9000C SW R25, 12(SP)
0x9D003EB4 0x0F4008B7 JAL _nand_read+0
0x9D003EB8 0x341A0005 ORI R26, R0, 5
0x9D003EBC 0x8FB9000C LW R25, 12(SP)
0x9D003EC0 0x0B400FB8 J L_cmd_chip_read_id3
0x9D003EC4 0x87BA0008 LH R26, 8(SP)
L_cmd_chip_read_id2:
;CMD_ReadID.c, 15 :: nand_read(outBuffer, 4);
0x9D003EC8 0xA7BA0008 SH R26, 8(SP)
0x9D003ECC 0xAFB9000C SW R25, 12(SP)
0x9D003ED0 0x0F4008B7 JAL _nand_read+0
0x9D003ED4 0x341A0004 ORI R26, R0, 4
0x9D003ED8 0x8FB9000C LW R25, 12(SP)
0x9D003EDC 0x87BA0008 LH R26, 8(SP)
L_cmd_chip_read_id3:
;CMD_ReadID.c, 16 :: }
L_end_cmd_chip_read_id:
0x9D003EE0 0x8FBA0004 LW R26, 4(SP)
0x9D003EE4 0x8FBF0000 LW RA, 0(SP)
0x9D003EE8 0x03E00008 JR RA
0x9D003EEC 0x27BD0014 ADDIU SP, SP, 20
; end of _cmd_chip_read_id
_nand_send_address:
;NandControl.c, 121 :: void nand_send_address(unsigned char* addr, int len)
0x9D002994 0x27BDFFF0 ADDIU SP, SP, -16
0x9D002998 0xAFBF0000 SW RA, 0(SP)
;NandControl.c, 124 :: ctrl_cle = 0;
0x9D00299C 0xAFB90004 SW R25, 4(SP)
0x9D0029A0 0x34020080 ORI R2, R0, 0x0080
0x9D0029A4 0x3C1EBF88 LUI R30, 49032
0x9D0029A8 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 125 :: ctrl_nre = 1;
0x9D0029AC 0x34020010 ORI R2, R0, 0x0010
0x9D0029B0 0x3C1EBF88 LUI R30, 49032
0x9D0029B4 0xA3C260E8 SB R2, 24808(R30)
;NandControl.c, 126 :: ctrl_ale = 1;
0x9D0029B8 0x34020001 ORI R2, R0, 0x0001
0x9D0029BC 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 127 :: if(0 == addr)
0x9D0029C0 0x1720000A BNE R25, R0, L_nand_send_address11
0x9D0029C4 0xA3C260E8 SB R2, 24808(R30)
L__nand_send_address45:
;NandControl.c, 129 :: data_line_write_byte(0);
0x9D0029C8 0x0F40069B JAL _data_line_write_byte+0
0x9D0029CC 0x0000C80A MOVZ R25, R0, R0
;NandControl.c, 130 :: ctrl_nwe = 0;
0x9D0029D0 0x34020001 ORI R2, R0, 0x0001
0x9D0029D4 0x3C1EBF88 LUI R30, 49032
0x9D0029D8 0xA3C26124 SB R2, 24868(R30)
;NandControl.c, 131 :: ctrl_nwe = 1;
0x9D0029DC 0x34020001 ORI R2, R0, 0x0001
0x9D0029E0 0x3C1EBF88 LUI R30, 49032
;NandControl.c, 132 :: }
0x9D0029E4 0x0B400A94 J L_nand_send_address12
0x9D0029E8 0xA3C26128 SB R2, 24872(R30)
L_nand_send_address11:
;NandControl.c, 135 :: for(i = 0; i < len; i++)
; i start address is: 16 (R4)
0x9D0029EC 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L_nand_send_address13:
; i start address is: 16 (R4)
0x9D0029F0 0x7C041E20 SEH R3, R4
0x9D0029F4 0x7C1A1620 SEH R2, R26
0x9D0029F8 0x0062102A SLT R2, R3, R2
0x9D0029FC 0x10400014 BEQ R2, R0, L_nand_send_address14
0x9D002A00 0x70000000 NOP
L__nand_send_address46:
;NandControl.c, 137 :: data_line_write_byte(*(addr + i));
0x9D002A04 0x7C041620 SEH R2, R4
0x9D002A08 0x03221021 ADDU R2, R25, R2
0x9D002A0C 0xA7A40008 SH R4, 8(SP)
0x9D002A10 0xA7BA000A SH R26, 10(SP)
0x9D002A14 0xAFB9000C SW R25, 12(SP)
0x9D002A18 0x0F40069B JAL _data_line_write_byte+0
0x9D002A1C 0x90590000 LBU R25, 0(R2)
0x9D002A20 0x8FB9000C LW R25, 12(SP)
0x9D002A24 0x87BA000A LH R26, 10(SP)
0x9D002A28 0x87A40008 LH R4, 8(SP)
;NandControl.c, 138 :: ctrl_nwe = 0;
0x9D002A2C 0x34020001 ORI R2, R0, 0x0001
0x9D002A30 0x3C1EBF88 LUI R30, 49032
0x9D002A34 0xA3C26124 SB R2, 24868(R30)
;NandControl.c, 139 :: ctrl_nwe = 1;
0x9D002A38 0x34020001 ORI R2, R0, 0x0001
0x9D002A3C 0x3C1EBF88 LUI R30, 49032
0x9D002A40 0xA3C26128 SB R2, 24872(R30)
;NandControl.c, 135 :: for(i = 0; i < len; i++)
0x9D002A44 0x24820001 ADDIU R2, R4, 1
;NandControl.c, 140 :: }
; i end address is: 16 (R4)
0x9D002A48 0x0B400A7C J L_nand_send_address13
0x9D002A4C 0x7C022620 SEH R4, R2
L_nand_send_address14:
;NandControl.c, 141 :: }
L_nand_send_address12:
;NandControl.c, 142 :: ctrl_ale = 0;
0x9D002A50 0x34020001 ORI R2, R0, 0x0001
0x9D002A54 0x3C1EBF88 LUI R30, 49032
0x9D002A58 0xA3C260E4 SB R2, 24804(R30)
;NandControl.c, 143 :: }
L_end_nand_send_address:
0x9D002A5C 0x8FB90004 LW R25, 4(SP)
0x9D002A60 0x8FBF0000 LW RA, 0(SP)
0x9D002A64 0x03E00008 JR RA
0x9D002A68 0x27BD0010 ADDIU SP, SP, 16
; end of _nand_send_address
_nand_read:
;NandControl.c, 159 :: void nand_read(unsigned char* buffer, int len)
0x9D0022DC 0x27BDFFF0 ADDIU SP, SP, -16
0x9D0022E0 0xAFBF0000 SW RA, 0(SP)
;NandControl.c, 162 :: ctrl_cle = 0;
0x9D0022E4 0x34020080 ORI R2, R0, 0x0080
0x9D0022E8 0x3C1EBF88 LUI R30, 49032
0x9D0022EC 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 163 :: ctrl_ale = 0;
0x9D0022F0 0x34020001 ORI R2, R0, 0x0001
0x9D0022F4 0x3C1EBF88 LUI R30, 49032
0x9D0022F8 0xA3C260E4 SB R2, 24804(R30)
;NandControl.c, 164 :: ctrl_nwe = 1;
0x9D0022FC 0x34020001 ORI R2, R0, 0x0001
0x9D002300 0x3C1EBF88 LUI R30, 49032
0x9D002304 0xA3C26128 SB R2, 24872(R30)
;NandControl.c, 165 :: for(i = 0; i < len; i++)
; i start address is: 16 (R4)
0x9D002308 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L_nand_read19:
; i start address is: 16 (R4)
0x9D00230C 0x7C041E20 SEH R3, R4
0x9D002310 0x7C1A1620 SEH R2, R26
0x9D002314 0x0062102A SLT R2, R3, R2
0x9D002318 0x10400025 BEQ R2, R0, L_nand_read20
0x9D00231C 0x70000000 NOP
L__nand_read50:
;NandControl.c, 167 :: ctrl_nre = 0;
0x9D002320 0x34020010 ORI R2, R0, 0x0010
0x9D002324 0x3C1EBF88 LUI R30, 49032
0x9D002328 0xA3C260E4 SB R2, 24804(R30)
; i end address is: 16 (R4)
;NandControl.c, 168 :: while(PORTD.B4 != 0);
L_nand_read22:
; i start address is: 16 (R4)
0x9D00232C 0x3C1EBF88 LUI R30, 49032
0x9D002330 0x93C260D0 LBU R2, 24784(R30)
0x9D002334 0x7C420100 EXT R2, R2, 4, 1
0x9D002338 0x10400003 BEQ R2, R0, L_nand_read23
0x9D00233C 0x70000000 NOP
L__nand_read52:
0x9D002340 0x0B4008CB J L_nand_read22
0x9D002344 0x70000000 NOP
L_nand_read23:
;NandControl.c, 169 :: *(buffer + i) = data_line_read_byte();
0x9D002348 0x7C041620 SEH R2, R4
0x9D00234C 0x03221021 ADDU R2, R25, R2
0x9D002350 0xAFA2000C SW R2, 12(SP)
0x9D002354 0xA7A40004 SH R4, 4(SP)
0x9D002358 0xA7BA0006 SH R26, 6(SP)
0x9D00235C 0x0F40062C JAL _data_line_read_byte+0
0x9D002360 0xAFB90008 SW R25, 8(SP)
0x9D002364 0x8FB90008 LW R25, 8(SP)
0x9D002368 0x87BA0006 LH R26, 6(SP)
0x9D00236C 0x87A40004 LH R4, 4(SP)
0x9D002370 0x8FA3000C LW R3, 12(SP)
0x9D002374 0xA0620000 SB R2, 0(R3)
;NandControl.c, 170 :: ctrl_nre = 1;
0x9D002378 0x34020010 ORI R2, R0, 0x0010
0x9D00237C 0x3C1EBF88 LUI R30, 49032
0x9D002380 0xA3C260E8 SB R2, 24808(R30)
; i end address is: 16 (R4)
0x9D002384 0x7C041E20 SEH R3, R4
;NandControl.c, 171 :: while(PORTD.B4 != 1);
L_nand_read24:
; i start address is: 12 (R3)
0x9D002388 0x3C1EBF88 LUI R30, 49032
0x9D00238C 0x93C260D0 LBU R2, 24784(R30)
0x9D002390 0x7C420100 EXT R2, R2, 4, 1
0x9D002394 0x14400003 BNE R2, 1, L_nand_read25
0x9D002398 0x70000000 NOP
L__nand_read53:
0x9D00239C 0x0B4008E2 J L_nand_read24
0x9D0023A0 0x70000000 NOP
L_nand_read25:
;NandControl.c, 165 :: for(i = 0; i < len; i++)
0x9D0023A4 0x24620001 ADDIU R2, R3, 1
; i end address is: 12 (R3)
; i start address is: 16 (R4)
;NandControl.c, 172 :: }
; i end address is: 16 (R4)
0x9D0023A8 0x0B4008C3 J L_nand_read19
0x9D0023AC 0x7C022620 SEH R4, R2
L_nand_read20:
;NandControl.c, 173 :: }
L_end_nand_read:
0x9D0023B0 0x8FBF0000 LW RA, 0(SP)
0x9D0023B4 0x03E00008 JR RA
0x9D0023B8 0x27BD0010 ADDIU SP, SP, 16
; end of _nand_read
_data_line_read_byte:
;NandDataLine.c, 61 :: unsigned char data_line_read_byte()
;NandDataLine.c, 63 :: unsigned char d = 0;
; d start address is: 16 (R4)
0x9D0018B0 0x0000200A MOVZ R4, R0, R0
;NandDataLine.c, 64 :: if(data_line_last_op != NAND_LAST_OP_READ)
0x9D0018B4 0x8422804C LH R2, Offset(_data_line_last_op+0)(GP)
0x9D0018B8 0x1040001A BEQ R2, R0, L_data_line_read_byte1
0x9D0018BC 0x70000000 NOP
L__data_line_read_byte8:
;NandDataLine.c, 66 :: TRISE2_bit = 1; TRISE3_bit = 1; TRISE4_bit = 1; TRISE5_bit = 1;
0x9D0018C0 0x34020004 ORI R2, R0, 0x0004
0x9D0018C4 0x3C1EBF88 LUI R30, 49032
0x9D0018C8 0xA3C26108 SB R2, 24840(R30)
0x9D0018CC 0x34020008 ORI R2, R0, 0x0008
0x9D0018D0 0x3C1EBF88 LUI R30, 49032
0x9D0018D4 0xA3C26108 SB R2, 24840(R30)
0x9D0018D8 0x34020010 ORI R2, R0, 0x0010
0x9D0018DC 0x3C1EBF88 LUI R30, 49032
0x9D0018E0 0xA3C26108 SB R2, 24840(R30)
0x9D0018E4 0x34020020 ORI R2, R0, 0x0020
0x9D0018E8 0x3C1EBF88 LUI R30, 49032
0x9D0018EC 0xA3C26108 SB R2, 24840(R30)
;NandDataLine.c, 67 :: TRISF4_bit = 1; TRISF5_bit = 1;
0x9D0018F0 0x34020010 ORI R2, R0, 0x0010
0x9D0018F4 0x3C1EBF88 LUI R30, 49032
0x9D0018F8 0xA3C26148 SB R2, 24904(R30)
0x9D0018FC 0x34020020 ORI R2, R0, 0x0020
0x9D001900 0x3C1EBF88 LUI R30, 49032
0x9D001904 0xA3C26148 SB R2, 24904(R30)
;NandDataLine.c, 68 :: TRISG7_bit = 1; TRISG8_bit = 1;
0x9D001908 0x34020080 ORI R2, R0, 0x0080
0x9D00190C 0x3C1EBF88 LUI R30, 49032
0x9D001910 0xA3C26188 SB R2, 24968(R30)
0x9D001914 0x34020001 ORI R2, R0, 0x0001
0x9D001918 0x3C1EBF88 LUI R30, 49032
0x9D00191C 0xA3C26189 SB R2, 24969(R30)
;NandDataLine.c, 69 :: data_line_last_op = NAND_LAST_OP_READ;
0x9D001920 0xA420804C SH R0, Offset(_data_line_last_op+0)(GP)
;NandDataLine.c, 70 :: }
L_data_line_read_byte1:
;NandDataLine.c, 71 :: d |= (unsigned char)PORTE.B2;//nand_b0;
0x9D001924 0x3C1EBF88 LUI R30, 49032
0x9D001928 0x93C26110 LBU R2, 24848(R30)
0x9D00192C 0x7C420080 EXT R2, R2, 2, 1
0x9D001930 0x00821825 OR R3, R4, R2
; d end address is: 16 (R4)
;NandDataLine.c, 72 :: d |= ((unsigned char)PORTE.B3 << 1);//nand_b1 << 1);
0x9D001934 0x3C1EBF88 LUI R30, 49032
0x9D001938 0x93C26110 LBU R2, 24848(R30)
0x9D00193C 0x7C4200C0 EXT R2, R2, 3, 1
0x9D001940 0x304200FF ANDI R2, R2, 255
0x9D001944 0x00021040 SLL R2, R2, 1
0x9D001948 0x00621825 OR R3, R3, R2
;NandDataLine.c, 73 :: d |= ((unsigned char)PORTG.B7 << 2);//nand_b2 << 2);
0x9D00194C 0x3C1EBF88 LUI R30, 49032
0x9D001950 0x93C26190 LBU R2, 24976(R30)
0x9D001954 0x7C4201C0 EXT R2, R2, 7, 1
0x9D001958 0x304200FF ANDI R2, R2, 255
0x9D00195C 0x00021080 SLL R2, R2, 2
0x9D001960 0x00621825 OR R3, R3, R2
;NandDataLine.c, 74 :: d |= ((unsigned char)PORTG.B8 << 3);//nand_b3 << 3);
0x9D001964 0x3C1EBF88 LUI R30, 49032
0x9D001968 0x93C26191 LBU R2, 24977(R30)
0x9D00196C 0x7C420000 EXT R2, R2, 0, 1
0x9D001970 0x304200FF ANDI R2, R2, 255
0x9D001974 0x000210C0 SLL R2, R2, 3
0x9D001978 0x00621825 OR R3, R3, R2
;NandDataLine.c, 75 :: d |= ((unsigned char)PORTF.B5 << 4);//nand_b4 << 4);
0x9D00197C 0x3C1EBF88 LUI R30, 49032
0x9D001980 0x93C26150 LBU R2, 24912(R30)
0x9D001984 0x7C420140 EXT R2, R2, 5, 1
0x9D001988 0x304200FF ANDI R2, R2, 255
0x9D00198C 0x00021100 SLL R2, R2, 4
0x9D001990 0x00621825 OR R3, R3, R2
;NandDataLine.c, 76 :: d |= ((unsigned char)PORTF.B4 << 5);//nand_b5 << 5);
0x9D001994 0x3C1EBF88 LUI R30, 49032
0x9D001998 0x93C26150 LBU R2, 24912(R30)
0x9D00199C 0x7C420100 EXT R2, R2, 4, 1
0x9D0019A0 0x304200FF ANDI R2, R2, 255
0x9D0019A4 0x00021140 SLL R2, R2, 5
0x9D0019A8 0x00621825 OR R3, R3, R2
;NandDataLine.c, 77 :: d |= ((unsigned char)PORTE.B4 << 6);//nand_b6 << 6);
0x9D0019AC 0x3C1EBF88 LUI R30, 49032
0x9D0019B0 0x93C26110 LBU R2, 24848(R30)
0x9D0019B4 0x7C420100 EXT R2, R2, 4, 1
0x9D0019B8 0x304200FF ANDI R2, R2, 255
0x9D0019BC 0x00021180 SLL R2, R2, 6
0x9D0019C0 0x00621825 OR R3, R3, R2
;NandDataLine.c, 78 :: d |= ((unsigned char)PORTE.B5 << 7);//nand_b7 << 7);
0x9D0019C4 0x3C1EBF88 LUI R30, 49032
0x9D0019C8 0x93C26110 LBU R2, 24848(R30)
0x9D0019CC 0x7C420140 EXT R2, R2, 5, 1
0x9D0019D0 0x304200FF ANDI R2, R2, 255
0x9D0019D4 0x000211C0 SLL R2, R2, 7
0x9D0019D8 0x00621025 OR R2, R3, R2
;NandDataLine.c, 79 :: return d;
;NandDataLine.c, 80 :: }
L_end_data_line_read_byte:
0x9D0019DC 0x03E00008 JR RA
0x9D0019E0 0x70000000 NOP
; end of _data_line_read_byte
_HID_Write:
;__Lib_USB.c, 5460 ::
0x9D004164 0x27BDFFF8 ADDIU SP, SP, -8
0x9D004168 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5461 ::
0x9D00416C 0xAFBB0004 SW R27, 4(SP)
0x9D004170 0x0F4008EF JAL _Gen_Write+0
0x9D004174 0x341B0001 ORI R27, R0, 1
;__Lib_USB.c, 5462 ::
;__Lib_USB.c, 5461 ::
;__Lib_USB.c, 5462 ::
L_end_HID_Write:
0x9D004178 0x8FBB0004 LW R27, 4(SP)
0x9D00417C 0x8FBF0000 LW RA, 0(SP)
0x9D004180 0x03E00008 JR RA
0x9D004184 0x27BD0008 ADDIU SP, SP, 8
; end of _HID_Write
_Gen_Write:
;__Lib_USB.c, 5395 ::
0x9D0023BC 0x27BDFFE4 ADDIU SP, SP, -28
0x9D0023C0 0xAFBF0000 SW RA, 0(SP)
;__Lib_USB.c, 5397 ::
0x9D0023C4 0xAFB90004 SW R25, 4(SP)
0x9D0023C8 0xAFBA0008 SW R26, 8(SP)
0x9D0023CC 0xAFBB000C SW R27, 12(SP)
0x9D0023D0 0xAFBC0010 SW R28, 16(SP)
0x9D0023D4 0x9022ABF5 LBU R2, Offset(__Lib_USB_USBDeviceState+0)(GP)
0x9D0023D8 0x2C420020 SLTIU R2, R2, 32
0x9D0023DC 0x14400008 BNE R2, R0, L__Gen_Write303
0x9D0023E0 0x70000000 NOP
L__Gen_Write585:
0x9D0023E4 0x3C1EBF88 LUI R30, 49032
0x9D0023E8 0x83C25080 LB R2, 20608(R30)
0x9D0023EC 0x7C420040 EXT R2, R2, 1, 1
0x9D0023F0 0x14400003 BNE R2, 1, L__Gen_Write302
0x9D0023F4 0x70000000 NOP
L__Gen_Write586:
0x9D0023F8 0x0B400902 J L_Gen_Write241
0x9D0023FC 0x70000000 NOP
L__Gen_Write303:
L__Gen_Write302:
;__Lib_USB.c, 5398 ::
0x9D002400 0x0B400931 J L_end_Gen_Write
0x9D002404 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 5399 ::
L_Gen_Write241:
;__Lib_USB.c, 5400 ::
0x9D002408 0xAFB90014 SW R25, 20(SP)
0x9D00240C 0x0F4006FC JAL __Lib_USB_USB_Handle_Busy+0
0x9D002410 0x8C39ACEC LW R25, Offset(__Lib_USB_USB_In_Handle+0)(GP)
0x9D002414 0x1440002A BNE R2, R0, L_Gen_Write242
0x9D002418 0x8FB90014 LW R25, 20(SP)
L__Gen_Write587:
;__Lib_USB.c, 5401 ::
0x9D00241C 0xA3BB0014 SB R27, 20(SP)
0x9D002420 0x335C00FF ANDI R28, R26, 255
0x9D002424 0x341A0001 ORI R26, R0, 1
0x9D002428 0x0320D80A MOVZ R27, R25, R0
0x9D00242C 0x0F4001BB JAL __Lib_USB_USB_Transfer_Packet+0
0x9D002430 0x93B90014 LBU R25, 20(SP)
0x9D002434 0xAC22ACEC SW R2, Offset(__Lib_USB_USB_In_Handle+0)(GP)
;__Lib_USB.c, 5402 ::
0x9D002438 0xAC20ACE8 SW R0, Offset(__Lib_USB__USB_Stop_Waiting+0)(GP)
;__Lib_USB.c, 5403 ::
L_Gen_Write243:
0x9D00243C 0xAFB90014 SW R25, 20(SP)
0x9D002440 0x0F4006FC JAL __Lib_USB_USB_Handle_Busy+0
0x9D002444 0x8C39ACEC LW R25, Offset(__Lib_USB_USB_In_Handle+0)(GP)
0x9D002448 0x10400013 BEQ R2, R0, L_Gen_Write244
0x9D00244C 0x8FB90014 LW R25, 20(SP)
L__Gen_Write589:
;__Lib_USB.c, 5404 ::
0x9D002450 0x0000180A MOVZ R3, R0, R0
0x9D002454 0x34020000 ORI R2, R0, 0
0x9D002458 0x14620008 BNE R3, R2, L_Gen_Write245
0x9D00245C 0x70000000 NOP
L__Gen_Write590:
;__Lib_USB.c, 5405 ::
0x9D002460 0xA3BB0014 SB R27, 20(SP)
0x9D002464 0xA3BA0015 SB R26, 21(SP)
0x9D002468 0x0F400FE8 JAL _USB_Polling_Proc+0
0x9D00246C 0xAFB90018 SW R25, 24(SP)
0x9D002470 0x8FB90018 LW R25, 24(SP)
0x9D002474 0x93BA0015 LBU R26, 21(SP)
0x9D002478 0x93BB0014 LBU R27, 20(SP)
L_Gen_Write245:
;__Lib_USB.c, 5406 ::
0x9D00247C 0x8C22ACE8 LW R2, Offset(__Lib_USB__USB_Stop_Waiting+0)(GP)
0x9D002480 0x10400003 BEQ R2, R0, L_Gen_Write246
0x9D002484 0x70000000 NOP
L__Gen_Write592:
;__Lib_USB.c, 5407 ::
0x9D002488 0x0B400931 J L_end_Gen_Write
0x9D00248C 0x0000100A MOVZ R2, R0, R0
L_Gen_Write246:
;__Lib_USB.c, 5408 ::
0x9D002490 0x0B40090F J L_Gen_Write243
0x9D002494 0x70000000 NOP
L_Gen_Write244:
;__Lib_USB.c, 5409 ::
; handle start address is: 12 (R3)
0x9D002498 0x8C23ACEC LW R3, Offset(__Lib_USB_USB_In_Handle+0)(GP)
;__Lib_USB.c, 5410 ::
0x9D00249C 0x8C22ACEC LW R2, Offset(__Lib_USB_USB_In_Handle+0)(GP)
0x9D0024A0 0x10400005 BEQ R2, R0, L_Gen_Write247
0x9D0024A4 0x70000000 NOP
L__Gen_Write594:
;__Lib_USB.c, 5411 ::
0x9D0024A8 0x24620002 ADDIU R2, R3, 2
; handle end address is: 12 (R3)
0x9D0024AC 0x94420000 LHU R2, 0(R2)
0x9D0024B0 0x0B400931 J L_end_Gen_Write
0x9D0024B4 0x7C424800 EXT R2, R2, 0, 10
L_Gen_Write247:
;__Lib_USB.c, 5413 ::
0x9D0024B8 0x0B400931 J L_end_Gen_Write
0x9D0024BC 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 5414 ::
L_Gen_Write242:
;__Lib_USB.c, 5415 ::
0x9D0024C0 0x0000100A MOVZ R2, R0, R0
;__Lib_USB.c, 5416 ::
;__Lib_USB.c, 5415 ::
;__Lib_USB.c, 5416 ::
L_end_Gen_Write:
0x9D0024C4 0x8FBC0010 LW R28, 16(SP)
0x9D0024C8 0x8FBB000C LW R27, 12(SP)
0x9D0024CC 0x8FBA0008 LW R26, 8(SP)
0x9D0024D0 0x8FB90004 LW R25, 4(SP)
0x9D0024D4 0x8FBF0000 LW RA, 0(SP)
0x9D0024D8 0x03E00008 JR RA
0x9D0024DC 0x27BD001C ADDIU SP, SP, 28
; end of _Gen_Write
_Malloc:
;__Lib_MemManager.c, 198 :: void *Malloc(unsigned long Size) {
0x9D004188 0x27BDFFF8 ADDIU SP, SP, -8
0x9D00418C 0xAFBF0000 SW RA, 0(SP)
;__Lib_MemManager.c, 202 :: alignment = 1;
0x9D004190 0xAFBA0004 SW R26, 4(SP)
; alignment start address is: 12 (R3)
0x9D004194 0x34030001 ORI R3, R0, 1
;__Lib_MemManager.c, 203 :: if (Size >= 4)
0x9D004198 0x2F220004 SLTIU R2, R25, 4
0x9D00419C 0x14400003 BNE R2, R0, L_Malloc58
0x9D0041A0 0x70000000 NOP
L__Malloc161:
; alignment end address is: 12 (R3)
;__Lib_MemManager.c, 204 :: alignment = 4;
; alignment start address is: 32 (R8)
; alignment end address is: 32 (R8)
0x9D0041A4 0x0B401072 J L_Malloc59
0x9D0041A8 0x34080004 ORI R8, R0, 4
L_Malloc58:
;__Lib_MemManager.c, 205 :: else if (Size == 2)
; alignment start address is: 12 (R3)
0x9D0041AC 0x34020002 ORI R2, R0, 2
0x9D0041B0 0x17220004 BNE R25, R2, L__Malloc107
0x9D0041B4 0x70000000 NOP
L__Malloc162:
; alignment end address is: 12 (R3)
;__Lib_MemManager.c, 206 :: alignment = 2;
; alignment start address is: 8 (R2)
0x9D0041B8 0x34020002 ORI R2, R0, 2
; alignment end address is: 8 (R2)
0x9D0041BC 0x0B401072 J L_Malloc60
0x9D0041C0 0x304800FF ANDI R8, R2, 255
L__Malloc107:
;__Lib_MemManager.c, 205 :: else if (Size == 2)
0x9D0041C4 0x306800FF ANDI R8, R3, 255
;__Lib_MemManager.c, 206 :: alignment = 2;
L_Malloc60:
; alignment start address is: 32 (R8)
; alignment end address is: 32 (R8)
L_Malloc59:
;__Lib_MemManager.c, 208 :: P = MM_GetMemAlign(Size, alignment);
; alignment start address is: 32 (R8)
0x9D0041C8 0x0F400938 JAL __Lib_MemManager_MM_GetMemAlign+0
0x9D0041CC 0x311A00FF ANDI R26, R8, 255
; P start address is: 12 (R3)
;__Lib_MemManager.c, 209 :: if ((P == NULL) && (MM_PossiblyFragmented)) {// try again after defragmentation
0x9D0041D0 0x1440000A BNE R2, R0, L__Malloc108
0x9D0041D4 0x0040180A MOVZ R3, R2, R0
L__Malloc163:
0x9D0041D8 0x9022ABEF LBU R2, Offset(_MM_PossiblyFragmented+0)(GP)
0x9D0041DC 0x10400009 BEQ R2, R0, L__Malloc109
0x9D0041E0 0x70000000 NOP
L__Malloc165:
; P end address is: 12 (R3)
L__Malloc104:
;__Lib_MemManager.c, 210 :: MM_Defragment();
0x9D0041E4 0x0F400A9B JAL __Lib_MemManager_MM_Defragment+0
0x9D0041E8 0x70000000 NOP
;__Lib_MemManager.c, 211 :: P = MM_GetMemAlign(Size, alignment);
; alignment end address is: 32 (R8)
0x9D0041EC 0x0F400938 JAL __Lib_MemManager_MM_GetMemAlign+0
0x9D0041F0 0x311A00FF ANDI R26, R8, 255
; P start address is: 12 (R3)
; P end address is: 12 (R3)
;__Lib_MemManager.c, 209 :: if ((P == NULL) && (MM_PossiblyFragmented)) {// try again after defragmentation
0x9D0041F4 0x0B40107F J L__Malloc106
0x9D0041F8 0x0040180A MOVZ R3, R2, R0
L__Malloc108:
L__Malloc106:
; P start address is: 12 (R3)
; P end address is: 12 (R3)
0x9D0041FC 0x0B401081 J L__Malloc105
0x9D004200 0x70000000 NOP
L__Malloc109:
L__Malloc105:
;__Lib_MemManager.c, 213 :: return P;
; P start address is: 12 (R3)
0x9D004204 0x0060100A MOVZ R2, R3, R0
; P end address is: 12 (R3)
;__Lib_MemManager.c, 214 :: }
;__Lib_MemManager.c, 213 :: return P;
;__Lib_MemManager.c, 214 :: }
L_end_Malloc:
0x9D004208 0x8FBA0004 LW R26, 4(SP)
0x9D00420C 0x8FBF0000 LW RA, 0(SP)
0x9D004210 0x03E00008 JR RA
0x9D004214 0x27BD0008 ADDIU SP, SP, 8
; end of _Malloc
__Lib_MemManager_MM_GetMemAlign:
;__Lib_MemManager.c, 105 :: static void *MM_GetMemAlign(unsigned long Size, char alignment) {
0x9D0024E0 0x27BDFFF8 ADDIU SP, SP, -8
;__Lib_MemManager.c, 111 :: P = NULL; // nil in case no large enough memory is available
; P start address is: 20 (R5)
0x9D0024E4 0x0000280A MOVZ R5, R0, R0
;__Lib_MemManager.c, 113 :: if (MM_Error_)
0x9D0024E8 0x9022ABF4 LBU R2, Offset(_MM_Error_+0)(GP)
0x9D0024EC 0x10400003 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign27
0x9D0024F0 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign137:
;__Lib_MemManager.c, 114 :: return P;
; P end address is: 20 (R5)
0x9D0024F4 0x0B400A5E J L_end_MM_GetMemAlign
0x9D0024F8 0x00A0100A MOVZ R2, R5, R0
L___Lib_MemManager_MM_GetMemAlign27:
;__Lib_MemManager.c, 117 :: for(i=0; i < NR_FREE_BLOCKS; i++) {
; i start address is: 16 (R4)
; P start address is: 20 (R5)
0x9D0024FC 0x0000200A MOVZ R4, R0, R0
; P end address is: 20 (R5)
; i end address is: 16 (R4)
L___Lib_MemManager_MM_GetMemAlign28:
; i start address is: 16 (R4)
; P start address is: 20 (R5)
0x9D002500 0x308200FF ANDI R2, R4, 255
0x9D002504 0x28420014 SLTI R2, R2, 20
0x9D002508 0x1040005F BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign29
0x9D00250C 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign138:
;__Lib_MemManager.c, 118 :: tryIt = 1;
; tryIt start address is: 24 (R6)
0x9D002510 0x34060001 ORI R6, R0, 1
;__Lib_MemManager.c, 119 :: if (alignment > 1)
0x9D002514 0x334200FF ANDI R2, R26, 255
0x9D002518 0x2C420002 SLTIU R2, R2, 2
0x9D00251C 0x14400011 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign100
0x9D002520 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign139:
;__Lib_MemManager.c, 120 :: if ((unsigned long)MM_FreeMemTable[i].Pointer % alignment != 0)
0x9D002524 0x308200FF ANDI R2, R4, 255
0x9D002528 0x000218C0 SLL R3, R2, 3
0x9D00252C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002530 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002534 0x00431021 ADDU R2, R2, R3
0x9D002538 0x8C430000 LW R3, 0(R2)
0x9D00253C 0x334200FF ANDI R2, R26, 255
0x9D002540 0x0062001B DIVU R3, R2
0x9D002544 0x00001010 MFHI R2
0x9D002548 0x10400003 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign99
0x9D00254C 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign141:
; tryIt end address is: 24 (R6)
;__Lib_MemManager.c, 121 :: tryIt = 0;
; tryIt start address is: 8 (R2)
; tryIt end address is: 8 (R2)
0x9D002550 0x0B400957 J L___Lib_MemManager_MM_GetMemAlign32
0x9D002554 0x0000100A MOVZ R2, R0, R0
L___Lib_MemManager_MM_GetMemAlign99:
;__Lib_MemManager.c, 120 :: if ((unsigned long)MM_FreeMemTable[i].Pointer % alignment != 0)
0x9D002558 0x30C200FF ANDI R2, R6, 255
;__Lib_MemManager.c, 121 :: tryIt = 0;
L___Lib_MemManager_MM_GetMemAlign32:
; tryIt start address is: 8 (R2)
; tryIt end address is: 8 (R2)
0x9D00255C 0x0B40095A J L___Lib_MemManager_MM_GetMemAlign31
0x9D002560 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign100:
;__Lib_MemManager.c, 119 :: if (alignment > 1)
0x9D002564 0x30C200FF ANDI R2, R6, 255
;__Lib_MemManager.c, 121 :: tryIt = 0;
L___Lib_MemManager_MM_GetMemAlign31:
;__Lib_MemManager.c, 123 :: if (tryIt)
; tryIt start address is: 8 (R2)
0x9D002568 0x10400044 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign33
0x9D00256C 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign143:
; tryIt end address is: 8 (R2)
;__Lib_MemManager.c, 124 :: if ((MM_FreeMemTable[i].Pointer > 0) && (MM_FreeMemTable[i].Size >= Size)) { // there is some free memory
0x9D002570 0x308200FF ANDI R2, R4, 255
0x9D002574 0x000218C0 SLL R3, R2, 3
0x9D002578 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D00257C 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002580 0x00431021 ADDU R2, R2, R3
0x9D002584 0x8C420000 LW R2, 0(R2)
0x9D002588 0x2C420001 SLTIU R2, R2, 1
0x9D00258C 0x1440003B BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign98
0x9D002590 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign144:
0x9D002594 0x308200FF ANDI R2, R4, 255
0x9D002598 0x000218C0 SLL R3, R2, 3
0x9D00259C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0025A0 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0025A4 0x00431021 ADDU R2, R2, R3
0x9D0025A8 0x24420004 ADDIU R2, R2, 4
0x9D0025AC 0x8C420000 LW R2, 0(R2)
0x9D0025B0 0x0059102B SLTU R2, R2, R25
0x9D0025B4 0x14400031 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign97
0x9D0025B8 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign145:
; P end address is: 20 (R5)
L___Lib_MemManager_MM_GetMemAlign96:
;__Lib_MemManager.c, 125 :: P = MM_FreeMemTable[i].Pointer; // pointer to memory block that will be given
0x9D0025BC 0x308200FF ANDI R2, R4, 255
0x9D0025C0 0x000218C0 SLL R3, R2, 3
0x9D0025C4 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0025C8 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0025CC 0x00431821 ADDU R3, R2, R3
0x9D0025D0 0x8C620000 LW R2, 0(R3)
; P start address is: 20 (R5)
0x9D0025D4 0x0040280A MOVZ R5, R2, R0
;__Lib_MemManager.c, 128 :: if (MM_FreeMemTable[i].Size > Size) {
0x9D0025D8 0x24620004 ADDIU R2, R3, 4
0x9D0025DC 0x8C420000 LW R2, 0(R2)
0x9D0025E0 0x0322102B SLTU R2, R25, R2
0x9D0025E4 0x10400013 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign37
0x9D0025E8 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign146:
;__Lib_MemManager.c, 129 :: MM_FreeMemTable[i].Pointer = MM_FreeMemTable[i].Pointer + Size;
0x9D0025EC 0x308200FF ANDI R2, R4, 255
0x9D0025F0 0x000218C0 SLL R3, R2, 3
0x9D0025F4 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0025F8 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0025FC 0x00431821 ADDU R3, R2, R3
0x9D002600 0x8C620000 LW R2, 0(R3)
0x9D002604 0x00591021 ADDU R2, R2, R25
0x9D002608 0xAC620000 SW R2, 0(R3)
;__Lib_MemManager.c, 130 :: MM_FreeMemTable[i].Size = MM_FreeMemTable[i].Size - Size;
0x9D00260C 0x308200FF ANDI R2, R4, 255
; i end address is: 16 (R4)
0x9D002610 0x000218C0 SLL R3, R2, 3
0x9D002614 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002618 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D00261C 0x00431021 ADDU R2, R2, R3
0x9D002620 0x24430004 ADDIU R3, R2, 4
0x9D002624 0x8C620000 LW R2, 0(R3)
0x9D002628 0x00591023 SUBU R2, R2, R25
;__Lib_MemManager.c, 131 :: } else { // nothing remains of the free block, discard it
0x9D00262C 0x0B40099D J L___Lib_MemManager_MM_GetMemAlign38
0x9D002630 0xAC620000 SW R2, 0(R3)
L___Lib_MemManager_MM_GetMemAlign37:
;__Lib_MemManager.c, 132 :: MM_FreeMemTable[i].Pointer = NULL;
; i start address is: 16 (R4)
0x9D002634 0x308200FF ANDI R2, R4, 255
0x9D002638 0x000218C0 SLL R3, R2, 3
0x9D00263C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002640 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002644 0x00431021 ADDU R2, R2, R3
0x9D002648 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 133 :: MM_FreeMemTable[i].Size = 0;
0x9D00264C 0x308200FF ANDI R2, R4, 255
; i end address is: 16 (R4)
0x9D002650 0x000218C0 SLL R3, R2, 3
0x9D002654 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002658 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D00265C 0x00431021 ADDU R2, R2, R3
0x9D002660 0x24420004 ADDIU R2, R2, 4
0x9D002664 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 134 :: MM_NrFreeBlocksUsed--;
0x9D002668 0x9022ABEE LBU R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
0x9D00266C 0x2442FFFF ADDIU R2, R2, -1
0x9D002670 0xA022ABEE SB R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
;__Lib_MemManager.c, 135 :: }
L___Lib_MemManager_MM_GetMemAlign38:
;__Lib_MemManager.c, 137 :: return P;
; P end address is: 20 (R5)
0x9D002674 0x0B400A5E J L_end_MM_GetMemAlign
0x9D002678 0x00A0100A MOVZ R2, R5, R0
;__Lib_MemManager.c, 124 :: if ((MM_FreeMemTable[i].Pointer > 0) && (MM_FreeMemTable[i].Size >= Size)) { // there is some free memory
L___Lib_MemManager_MM_GetMemAlign98:
; i start address is: 16 (R4)
; P start address is: 20 (R5)
L___Lib_MemManager_MM_GetMemAlign97:
;__Lib_MemManager.c, 138 :: }
L___Lib_MemManager_MM_GetMemAlign33:
;__Lib_MemManager.c, 117 :: for(i=0; i < NR_FREE_BLOCKS; i++) {
0x9D00267C 0x24820001 ADDIU R2, R4, 1
;__Lib_MemManager.c, 139 :: }
; i end address is: 16 (R4)
0x9D002680 0x0B400940 J L___Lib_MemManager_MM_GetMemAlign28
0x9D002684 0x304400FF ANDI R4, R2, 255
L___Lib_MemManager_MM_GetMemAlign29:
;__Lib_MemManager.c, 143 :: if (alignment <= 1)
0x9D002688 0x334200FF ANDI R2, R26, 255
0x9D00268C 0x2C420002 SLTIU R2, R2, 2
0x9D002690 0x10400003 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign39
0x9D002694 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign147:
;__Lib_MemManager.c, 144 :: return P;
; P end address is: 20 (R5)
0x9D002698 0x0B400A5E J L_end_MM_GetMemAlign
0x9D00269C 0x00A0100A MOVZ R2, R5, R0
L___Lib_MemManager_MM_GetMemAlign39:
;__Lib_MemManager.c, 149 :: if (MM_NrFreeBlocksUsed == (NR_FREE_BLOCKS - 1))
; P start address is: 20 (R5)
0x9D0026A0 0x9023ABEE LBU R3, Offset(_MM_NrFreeBlocksUsed+0)(GP)
0x9D0026A4 0x34020013 ORI R2, R0, 19
0x9D0026A8 0x14620003 BNE R3, R2, L___Lib_MemManager_MM_GetMemAlign40
0x9D0026AC 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign148:
;__Lib_MemManager.c, 150 :: return P;
; P end address is: 20 (R5)
0x9D0026B0 0x0B400A5E J L_end_MM_GetMemAlign
0x9D0026B4 0x00A0100A MOVZ R2, R5, R0
L___Lib_MemManager_MM_GetMemAlign40:
;__Lib_MemManager.c, 152 :: j = -1;
; j start address is: 8 (R2)
; P start address is: 20 (R5)
0x9D0026B8 0x340200FF ORI R2, R0, 255
;__Lib_MemManager.c, 153 :: for (i=0; i<NR_FREE_BLOCKS; i++) {
; i start address is: 16 (R4)
0x9D0026BC 0x0000200A MOVZ R4, R0, R0
; P end address is: 20 (R5)
; j end address is: 8 (R2)
; i end address is: 16 (R4)
0x9D0026C0 0x00A0300A MOVZ R6, R5, R0
0x9D0026C4 0x7C022C20 SEB R5, R2
L___Lib_MemManager_MM_GetMemAlign41:
; i start address is: 16 (R4)
; j start address is: 20 (R5)
; P start address is: 24 (R6)
0x9D0026C8 0x308200FF ANDI R2, R4, 255
0x9D0026CC 0x28420014 SLTI R2, R2, 20
0x9D0026D0 0x104000A8 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign42
0x9D0026D4 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign149:
;__Lib_MemManager.c, 154 :: if (MM_FreeMemTable[i].Pointer > 0) {
0x9D0026D8 0x308200FF ANDI R2, R4, 255
0x9D0026DC 0x000218C0 SLL R3, R2, 3
0x9D0026E0 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0026E4 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0026E8 0x00431021 ADDU R2, R2, R3
0x9D0026EC 0x8C420000 LW R2, 0(R2)
0x9D0026F0 0x2C420001 SLTIU R2, R2, 1
0x9D0026F4 0x14400093 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign44
0x9D0026F8 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign150:
;__Lib_MemManager.c, 155 :: addr = MM_FreeMemTable[i].Pointer;
0x9D0026FC 0x308200FF ANDI R2, R4, 255
0x9D002700 0x000218C0 SLL R3, R2, 3
0x9D002704 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002708 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D00270C 0x00431021 ADDU R2, R2, R3
0x9D002710 0x8C420000 LW R2, 0(R2)
0x9D002714 0xAFA20000 SW R2, 0(SP)
;__Lib_MemManager.c, 157 :: lsize = Size;
0x9D002718 0xAFB90004 SW R25, 4(SP)
;__Lib_MemManager.c, 158 :: if (alignment > 1)
0x9D00271C 0x334200FF ANDI R2, R26, 255
0x9D002720 0x2C420002 SLTIU R2, R2, 2
0x9D002724 0x14400012 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign101
0x9D002728 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign151:
; j end address is: 20 (R5)
; P end address is: 24 (R6)
; i end address is: 16 (R4)
0x9D00272C 0x7C053C20 SEB R7, R5
0x9D002730 0x308500FF ANDI R5, R4, 255
;__Lib_MemManager.c, 159 :: while (addr % alignment)
L___Lib_MemManager_MM_GetMemAlign46:
; P start address is: 24 (R6)
; j start address is: 28 (R7)
; i start address is: 20 (R5)
0x9D002734 0x334300FF ANDI R3, R26, 255
0x9D002738 0x8FA20000 LW R2, 0(SP)
0x9D00273C 0x0043001B DIVU R2, R3
0x9D002740 0x00001010 MFHI R2
0x9D002744 0x10400008 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign47
0x9D002748 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign153:
;__Lib_MemManager.c, 160 :: addr++, lsize++;
0x9D00274C 0x8FA20000 LW R2, 0(SP)
0x9D002750 0x24420001 ADDIU R2, R2, 1
0x9D002754 0xAFA20000 SW R2, 0(SP)
0x9D002758 0x8FA20004 LW R2, 4(SP)
0x9D00275C 0x24420001 ADDIU R2, R2, 1
0x9D002760 0x0B4009CD J L___Lib_MemManager_MM_GetMemAlign46
0x9D002764 0xAFA20004 SW R2, 4(SP)
L___Lib_MemManager_MM_GetMemAlign47:
; i end address is: 20 (R5)
; P end address is: 24 (R6)
0x9D002768 0x0B4009DE J L___Lib_MemManager_MM_GetMemAlign45
0x9D00276C 0x70000000 NOP
; j end address is: 28 (R7)
L___Lib_MemManager_MM_GetMemAlign101:
;__Lib_MemManager.c, 158 :: if (alignment > 1)
0x9D002770 0x7C053C20 SEB R7, R5
0x9D002774 0x308500FF ANDI R5, R4, 255
;__Lib_MemManager.c, 160 :: addr++, lsize++;
L___Lib_MemManager_MM_GetMemAlign45:
;__Lib_MemManager.c, 162 :: if (MM_FreeMemTable[i].Size >= lsize) { // there is some free memory
; P start address is: 24 (R6)
; j start address is: 28 (R7)
; i start address is: 20 (R5)
0x9D002778 0x30A200FF ANDI R2, R5, 255
0x9D00277C 0x000218C0 SLL R3, R2, 3
0x9D002780 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002784 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002788 0x00431021 ADDU R2, R2, R3
0x9D00278C 0x24420004 ADDIU R2, R2, 4
0x9D002790 0x8C430000 LW R3, 0(R2)
0x9D002794 0x8FA20004 LW R2, 4(SP)
0x9D002798 0x0062102B SLTU R2, R3, R2
0x9D00279C 0x14400066 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign48
0x9D0027A0 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign154:
; P end address is: 24 (R6)
;__Lib_MemManager.c, 164 :: if (j == -1)
0x9D0027A4 0x7C071C20 SEB R3, R7
0x9D0027A8 0x3C02FFFF LUI R2, 65535
0x9D0027AC 0x3442FFFF ORI R2, R2, 65535
0x9D0027B0 0x14620016 BNE R3, R2, L___Lib_MemManager_MM_GetMemAlign102
0x9D0027B4 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign155:
; j end address is: 28 (R7)
;__Lib_MemManager.c, 165 :: for (j=i+1; j<NR_FREE_BLOCKS; j++)
0x9D0027B8 0x24A20001 ADDIU R2, R5, 1
; j start address is: 24 (R6)
0x9D0027BC 0x304600FF ANDI R6, R2, 255
; i end address is: 20 (R5)
; j end address is: 24 (R6)
L___Lib_MemManager_MM_GetMemAlign50:
; j start address is: 24 (R6)
; i start address is: 20 (R5)
0x9D0027C0 0x7C061420 SEB R2, R6
0x9D0027C4 0x28420014 SLTI R2, R2, 20
0x9D0027C8 0x1040000E BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign51
0x9D0027CC 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign156:
;__Lib_MemManager.c, 166 :: if (MM_FreeMemTable[j].Pointer == 0)
0x9D0027D0 0x7C061420 SEB R2, R6
0x9D0027D4 0x000218C0 SLL R3, R2, 3
0x9D0027D8 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0027DC 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0027E0 0x00431021 ADDU R2, R2, R3
0x9D0027E4 0x8C420000 LW R2, 0(R2)
0x9D0027E8 0x14400003 BNE R2, R0, L___Lib_MemManager_MM_GetMemAlign53
0x9D0027EC 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign157:
;__Lib_MemManager.c, 167 :: break;
0x9D0027F0 0x0B400A01 J L___Lib_MemManager_MM_GetMemAlign51
0x9D0027F4 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign53:
;__Lib_MemManager.c, 165 :: for (j=i+1; j<NR_FREE_BLOCKS; j++)
0x9D0027F8 0x24C20001 ADDIU R2, R6, 1
;__Lib_MemManager.c, 167 :: break;
0x9D0027FC 0x0B4009F0 J L___Lib_MemManager_MM_GetMemAlign50
0x9D002800 0x7C023420 SEB R6, R2
L___Lib_MemManager_MM_GetMemAlign51:
; j end address is: 24 (R6)
0x9D002804 0x0B400A04 J L___Lib_MemManager_MM_GetMemAlign49
0x9D002808 0x70000000 NOP
; i end address is: 20 (R5)
L___Lib_MemManager_MM_GetMemAlign102:
;__Lib_MemManager.c, 164 :: if (j == -1)
0x9D00280C 0x7C073420 SEB R6, R7
;__Lib_MemManager.c, 167 :: break;
L___Lib_MemManager_MM_GetMemAlign49:
;__Lib_MemManager.c, 170 :: MM_FreeMemTable[j].Pointer = MM_FreeMemTable[i].Pointer;
; i start address is: 20 (R5)
; j start address is: 24 (R6)
0x9D002810 0x7C061420 SEB R2, R6
0x9D002814 0x000218C0 SLL R3, R2, 3
0x9D002818 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D00281C 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002820 0x00432021 ADDU R4, R2, R3
0x9D002824 0x30A200FF ANDI R2, R5, 255
0x9D002828 0x000218C0 SLL R3, R2, 3
0x9D00282C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002830 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002834 0x00431021 ADDU R2, R2, R3
0x9D002838 0x8C420000 LW R2, 0(R2)
0x9D00283C 0xAC820000 SW R2, 0(R4)
;__Lib_MemManager.c, 171 :: MM_FreeMemTable[j].Size = lsize - Size;
0x9D002840 0x7C061420 SEB R2, R6
; j end address is: 24 (R6)
0x9D002844 0x000218C0 SLL R3, R2, 3
0x9D002848 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D00284C 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002850 0x00431021 ADDU R2, R2, R3
0x9D002854 0x24430004 ADDIU R3, R2, 4
0x9D002858 0x8FA20004 LW R2, 4(SP)
0x9D00285C 0x00591023 SUBU R2, R2, R25
0x9D002860 0xAC620000 SW R2, 0(R3)
;__Lib_MemManager.c, 172 :: MM_NrFreeBlocksUsed++;
0x9D002864 0x9022ABEE LBU R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
0x9D002868 0x24420001 ADDIU R2, R2, 1
0x9D00286C 0xA022ABEE SB R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
;__Lib_MemManager.c, 174 :: P = addr; // pointer to memory block that will be given
; P start address is: 24 (R6)
0x9D002870 0x8FA60000 LW R6, 0(SP)
;__Lib_MemManager.c, 176 :: if (MM_FreeMemTable[i].Size > lsize) {
0x9D002874 0x30A200FF ANDI R2, R5, 255
0x9D002878 0x000218C0 SLL R3, R2, 3
0x9D00287C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002880 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002884 0x00431021 ADDU R2, R2, R3
0x9D002888 0x24420004 ADDIU R2, R2, 4
0x9D00288C 0x8C430000 LW R3, 0(R2)
0x9D002890 0x8FA20004 LW R2, 4(SP)
0x9D002894 0x0043102B SLTU R2, R2, R3
0x9D002898 0x10400015 BEQ R2, R0, L___Lib_MemManager_MM_GetMemAlign54
0x9D00289C 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign158:
;__Lib_MemManager.c, 177 :: MM_FreeMemTable[i].Pointer = MM_FreeMemTable[i].Pointer + lsize;
0x9D0028A0 0x30A200FF ANDI R2, R5, 255
0x9D0028A4 0x000218C0 SLL R3, R2, 3
0x9D0028A8 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0028AC 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0028B0 0x00432021 ADDU R4, R2, R3
0x9D0028B4 0x8C830000 LW R3, 0(R4)
0x9D0028B8 0x8FA20004 LW R2, 4(SP)
0x9D0028BC 0x00621021 ADDU R2, R3, R2
0x9D0028C0 0xAC820000 SW R2, 0(R4)
;__Lib_MemManager.c, 178 :: MM_FreeMemTable[i].Size = MM_FreeMemTable[i].Size - lsize;
0x9D0028C4 0x30A200FF ANDI R2, R5, 255
; i end address is: 20 (R5)
0x9D0028C8 0x000218C0 SLL R3, R2, 3
0x9D0028CC 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0028D0 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D0028D4 0x00431021 ADDU R2, R2, R3
0x9D0028D8 0x24440004 ADDIU R4, R2, 4
0x9D0028DC 0x8C830000 LW R3, 0(R4)
0x9D0028E0 0x8FA20004 LW R2, 4(SP)
0x9D0028E4 0x00621023 SUBU R2, R3, R2
;__Lib_MemManager.c, 179 :: }
0x9D0028E8 0x0B400A4C J L___Lib_MemManager_MM_GetMemAlign55
0x9D0028EC 0xAC820000 SW R2, 0(R4)
L___Lib_MemManager_MM_GetMemAlign54:
;__Lib_MemManager.c, 181 :: MM_FreeMemTable[i].Pointer = NULL;
; i start address is: 20 (R5)
0x9D0028F0 0x30A200FF ANDI R2, R5, 255
0x9D0028F4 0x000218C0 SLL R3, R2, 3
0x9D0028F8 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D0028FC 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002900 0x00431021 ADDU R2, R2, R3
0x9D002904 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 182 :: MM_FreeMemTable[i].Size = 0;
0x9D002908 0x30A200FF ANDI R2, R5, 255
; i end address is: 20 (R5)
0x9D00290C 0x000218C0 SLL R3, R2, 3
0x9D002910 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002914 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002918 0x00431021 ADDU R2, R2, R3
0x9D00291C 0x24420004 ADDIU R2, R2, 4
0x9D002920 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 183 :: MM_NrFreeBlocksUsed--;
0x9D002924 0x9022ABEE LBU R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
0x9D002928 0x2442FFFF ADDIU R2, R2, -1
0x9D00292C 0xA022ABEE SB R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
;__Lib_MemManager.c, 184 :: }
L___Lib_MemManager_MM_GetMemAlign55:
;__Lib_MemManager.c, 186 :: return P;
; P end address is: 24 (R6)
0x9D002930 0x0B400A5E J L_end_MM_GetMemAlign
0x9D002934 0x00C0100A MOVZ R2, R6, R0
;__Lib_MemManager.c, 187 :: };
L___Lib_MemManager_MM_GetMemAlign48:
;__Lib_MemManager.c, 188 :: }
; P start address is: 24 (R6)
; i start address is: 20 (R5)
; j start address is: 28 (R7)
0x9D002938 0x30A300FF ANDI R3, R5, 255
; j end address is: 28 (R7)
; i end address is: 20 (R5)
0x9D00293C 0x0B400A5A J L___Lib_MemManager_MM_GetMemAlign56
0x9D002940 0x7C072C20 SEB R5, R7
L___Lib_MemManager_MM_GetMemAlign44:
;__Lib_MemManager.c, 190 :: if (j == -1)
; i start address is: 16 (R4)
; j start address is: 20 (R5)
0x9D002944 0x7C051C20 SEB R3, R5
0x9D002948 0x3C02FFFF LUI R2, 65535
0x9D00294C 0x3442FFFF ORI R2, R2, 65535
0x9D002950 0x14620004 BNE R3, R2, L___Lib_MemManager_MM_GetMemAlign103
0x9D002954 0x70000000 NOP
L___Lib_MemManager_MM_GetMemAlign159:
; j end address is: 20 (R5)
;__Lib_MemManager.c, 191 :: j = i; // mark first empty slot
; j start address is: 8 (R2)
0x9D002958 0x308200FF ANDI R2, R4, 255
; j end address is: 8 (R2)
0x9D00295C 0x0B400A59 J L___Lib_MemManager_MM_GetMemAlign57
0x9D002960 0x7C022C20 SEB R5, R2
L___Lib_MemManager_MM_GetMemAlign103:
;__Lib_MemManager.c, 190 :: if (j == -1)
;__Lib_MemManager.c, 191 :: j = i; // mark first empty slot
L___Lib_MemManager_MM_GetMemAlign57:
;__Lib_MemManager.c, 192 :: }
; j start address is: 20 (R5)
0x9D002964 0x308300FF ANDI R3, R4, 255
; j end address is: 20 (R5)
; P end address is: 24 (R6)
; i end address is: 16 (R4)
L___Lib_MemManager_MM_GetMemAlign56:
;__Lib_MemManager.c, 153 :: for (i=0; i<NR_FREE_BLOCKS; i++) {
; j start address is: 20 (R5)
; P start address is: 24 (R6)
; i start address is: 12 (R3)
0x9D002968 0x24620001 ADDIU R2, R3, 1
; i end address is: 12 (R3)
; i start address is: 16 (R4)
;__Lib_MemManager.c, 193 :: }
; j end address is: 20 (R5)
; i end address is: 16 (R4)
0x9D00296C 0x0B4009B2 J L___Lib_MemManager_MM_GetMemAlign41
0x9D002970 0x304400FF ANDI R4, R2, 255
L___Lib_MemManager_MM_GetMemAlign42:
;__Lib_MemManager.c, 195 :: return P;
0x9D002974 0x00C0100A MOVZ R2, R6, R0
; P end address is: 24 (R6)
;__Lib_MemManager.c, 196 :: }
L_end_MM_GetMemAlign:
0x9D002978 0x03E00008 JR RA
0x9D00297C 0x27BD0008 ADDIU SP, SP, 8
; end of __Lib_MemManager_MM_GetMemAlign
__Lib_MemManager_MM_Defragment:
;__Lib_MemManager.c, 67 :: static void MM_Defragment() {
0x9D002A6C 0x27BDFFE8 ADDIU SP, SP, -24
0x9D002A70 0xAFBF0000 SW RA, 0(SP)
;__Lib_MemManager.c, 71 :: do {
0x9D002A74 0xAFB90004 SW R25, 4(SP)
0x9D002A78 0xAFBA0008 SW R26, 8(SP)
0x9D002A7C 0xAFBB000C SW R27, 12(SP)
0x9D002A80 0xAFBC0010 SW R28, 16(SP)
L___Lib_MemManager_MM_Defragment9:
;__Lib_MemManager.c, 72 :: MergeHappened = 0;
0x9D002A84 0xA3A00014 SB R0, 20(SP)
;__Lib_MemManager.c, 73 :: i = 0;
0x9D002A88 0xA3A00015 SB R0, 21(SP)
;__Lib_MemManager.c, 74 :: while ((i < NR_FREE_BLOCKS-1) && (!MergeHappened)) {
L___Lib_MemManager_MM_Defragment12:
0x9D002A8C 0x93A20015 LBU R2, 21(SP)
0x9D002A90 0x2C420013 SLTIU R2, R2, 19
0x9D002A94 0x10400072 BEQ R2, R0, L___Lib_MemManager_MM_Defragment95
0x9D002A98 0x70000000 NOP
L___Lib_MemManager_MM_Defragment125:
0x9D002A9C 0x93A20014 LBU R2, 20(SP)
0x9D002AA0 0x1440006F BNE R2, R0, L___Lib_MemManager_MM_Defragment94
0x9D002AA4 0x70000000 NOP
L___Lib_MemManager_MM_Defragment126:
L___Lib_MemManager_MM_Defragment91:
;__Lib_MemManager.c, 75 :: j = i + 1;
0x9D002AA8 0x93A20015 LBU R2, 21(SP)
0x9D002AAC 0x24420001 ADDIU R2, R2, 1
; j start address is: 28 (R7)
0x9D002AB0 0x304700FF ANDI R7, R2, 255
; j end address is: 28 (R7)
;__Lib_MemManager.c, 76 :: while ((j < NR_FREE_BLOCKS) && (!MergeHappened)) {
L___Lib_MemManager_MM_Defragment16:
; j start address is: 28 (R7)
0x9D002AB4 0x30E200FF ANDI R2, R7, 255
0x9D002AB8 0x28420014 SLTI R2, R2, 20
0x9D002ABC 0x10400064 BEQ R2, R0, L___Lib_MemManager_MM_Defragment93
0x9D002AC0 0x70000000 NOP
L___Lib_MemManager_MM_Defragment127:
0x9D002AC4 0x93A20014 LBU R2, 20(SP)
0x9D002AC8 0x14400061 BNE R2, R0, L___Lib_MemManager_MM_Defragment92
0x9D002ACC 0x70000000 NOP
L___Lib_MemManager_MM_Defragment128:
L___Lib_MemManager_MM_Defragment90:
;__Lib_MemManager.c, 77 :: Tmp = MM_CheckBlocks(MM_FreeMemTable[i].Pointer, MM_FreeMemTable[i].Size, MM_FreeMemTable[j].Pointer, MM_FreeMemTable[j].Size);
0x9D002AD0 0x30E200FF ANDI R2, R7, 255
0x9D002AD4 0x000218C0 SLL R3, R2, 3
0x9D002AD8 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002ADC 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002AE0 0x00431821 ADDU R3, R2, R3
0x9D002AE4 0x24620004 ADDIU R2, R3, 4
0x9D002AE8 0x8C460000 LW R6, 0(R2)
0x9D002AEC 0x8C650000 LW R5, 0(R3)
0x9D002AF0 0x93A20015 LBU R2, 21(SP)
0x9D002AF4 0x000218C0 SLL R3, R2, 3
0x9D002AF8 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002AFC 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002B00 0x00432021 ADDU R4, R2, R3
0x9D002B04 0x24820004 ADDIU R2, R4, 4
0x9D002B08 0x8C430000 LW R3, 0(R2)
0x9D002B0C 0x8C820000 LW R2, 0(R4)
0x9D002B10 0x00C0E00A MOVZ R28, R6, R0
0x9D002B14 0x00A0D80A MOVZ R27, R5, R0
0x9D002B18 0x0060D00A MOVZ R26, R3, R0
0x9D002B1C 0x0F400794 JAL __Lib_MemManager_MM_CheckBlocks+0
0x9D002B20 0x0040C80A MOVZ R25, R2, R0
; Tmp start address is: 16 (R4)
0x9D002B24 0x304400FF ANDI R4, R2, 255
;__Lib_MemManager.c, 78 :: if (Tmp == 1) { // block MM_FreeMemTable[I].Pointer is adjacent beneath block MM_FreeMemTable[J].Pointer
0x9D002B28 0x304300FF ANDI R3, R2, 255
0x9D002B2C 0x34020001 ORI R2, R0, 1
0x9D002B30 0x14620021 BNE R3, R2, L___Lib_MemManager_MM_Defragment20
0x9D002B34 0x70000000 NOP
L___Lib_MemManager_MM_Defragment129:
; Tmp end address is: 16 (R4)
;__Lib_MemManager.c, 79 :: MM_FreeMemTable[i].Size = MM_FreeMemTable[i].Size + MM_FreeMemTable[j].Size;
0x9D002B38 0x93A20015 LBU R2, 21(SP)
0x9D002B3C 0x000218C0 SLL R3, R2, 3
0x9D002B40 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002B44 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002B48 0x00431021 ADDU R2, R2, R3
0x9D002B4C 0x24450004 ADDIU R5, R2, 4
0x9D002B50 0x8CA40000 LW R4, 0(R5)
0x9D002B54 0x30E200FF ANDI R2, R7, 255
0x9D002B58 0x000218C0 SLL R3, R2, 3
0x9D002B5C 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002B60 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002B64 0x00431021 ADDU R2, R2, R3
0x9D002B68 0x24420004 ADDIU R2, R2, 4
0x9D002B6C 0x8C420000 LW R2, 0(R2)
0x9D002B70 0x00821021 ADDU R2, R4, R2
0x9D002B74 0xACA20000 SW R2, 0(R5)
;__Lib_MemManager.c, 80 :: MM_FreeMemTable[j].Pointer = NULL;
0x9D002B78 0x30E200FF ANDI R2, R7, 255
0x9D002B7C 0x000218C0 SLL R3, R2, 3
0x9D002B80 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002B84 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002B88 0x00431021 ADDU R2, R2, R3
0x9D002B8C 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 81 :: MM_FreeMemTable[j].Size = 0;
0x9D002B90 0x30E200FF ANDI R2, R7, 255
0x9D002B94 0x000218C0 SLL R3, R2, 3
0x9D002B98 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002B9C 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002BA0 0x00431021 ADDU R2, R2, R3
0x9D002BA4 0x24420004 ADDIU R2, R2, 4
0x9D002BA8 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 82 :: MergeHappened = 1;
0x9D002BAC 0x34020001 ORI R2, R0, 1
;__Lib_MemManager.c, 83 :: }
0x9D002BB0 0x0B400B11 J L___Lib_MemManager_MM_Defragment21
0x9D002BB4 0xA3A20014 SB R2, 20(SP)
L___Lib_MemManager_MM_Defragment20:
;__Lib_MemManager.c, 84 :: else if (Tmp == 2) { // block MM_FreeMemTable[I].Pointer is adjacent above block MM_FreeMemTable[J].Pointer
; Tmp start address is: 16 (R4)
0x9D002BB8 0x308300FF ANDI R3, R4, 255
; Tmp end address is: 16 (R4)
0x9D002BBC 0x34020002 ORI R2, R0, 2
0x9D002BC0 0x14620020 BNE R3, R2, L___Lib_MemManager_MM_Defragment22
0x9D002BC4 0x70000000 NOP
L___Lib_MemManager_MM_Defragment130:
;__Lib_MemManager.c, 85 :: MM_FreeMemTable[j].Size = MM_FreeMemTable[j].Size + MM_FreeMemTable[i].Size;
0x9D002BC8 0x30E200FF ANDI R2, R7, 255
0x9D002BCC 0x000218C0 SLL R3, R2, 3
0x9D002BD0 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002BD4 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002BD8 0x00431021 ADDU R2, R2, R3
0x9D002BDC 0x24450004 ADDIU R5, R2, 4
0x9D002BE0 0x8CA40000 LW R4, 0(R5)
0x9D002BE4 0x93A20015 LBU R2, 21(SP)
0x9D002BE8 0x000218C0 SLL R3, R2, 3
0x9D002BEC 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002BF0 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002BF4 0x00431021 ADDU R2, R2, R3
0x9D002BF8 0x24420004 ADDIU R2, R2, 4
0x9D002BFC 0x8C420000 LW R2, 0(R2)
0x9D002C00 0x00821021 ADDU R2, R4, R2
0x9D002C04 0xACA20000 SW R2, 0(R5)
;__Lib_MemManager.c, 86 :: MM_FreeMemTable[i].Pointer = NULL;
0x9D002C08 0x93A20015 LBU R2, 21(SP)
0x9D002C0C 0x000218C0 SLL R3, R2, 3
0x9D002C10 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002C14 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002C18 0x00431021 ADDU R2, R2, R3
0x9D002C1C 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 87 :: MM_FreeMemTable[i].Size = 0;
0x9D002C20 0x93A20015 LBU R2, 21(SP)
0x9D002C24 0x000218C0 SLL R3, R2, 3
0x9D002C28 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002C2C 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002C30 0x00431021 ADDU R2, R2, R3
0x9D002C34 0x24420004 ADDIU R2, R2, 4
0x9D002C38 0xAC400000 SW R0, 0(R2)
;__Lib_MemManager.c, 88 :: MergeHappened = 1;
0x9D002C3C 0x34020001 ORI R2, R0, 1
0x9D002C40 0xA3A20014 SB R2, 20(SP)
;__Lib_MemManager.c, 89 :: }
L___Lib_MemManager_MM_Defragment22:
L___Lib_MemManager_MM_Defragment21:
;__Lib_MemManager.c, 90 :: j++;
0x9D002C44 0x24E20001 ADDIU R2, R7, 1
;__Lib_MemManager.c, 91 :: }
; j end address is: 28 (R7)
0x9D002C48 0x0B400AAD J L___Lib_MemManager_MM_Defragment16
0x9D002C4C 0x304700FF ANDI R7, R2, 255
;__Lib_MemManager.c, 76 :: while ((j < NR_FREE_BLOCKS) && (!MergeHappened)) {
L___Lib_MemManager_MM_Defragment93:
L___Lib_MemManager_MM_Defragment92:
;__Lib_MemManager.c, 92 :: i++;
0x9D002C50 0x93A20015 LBU R2, 21(SP)
0x9D002C54 0x24420001 ADDIU R2, R2, 1
;__Lib_MemManager.c, 93 :: }
0x9D002C58 0x0B400AA3 J L___Lib_MemManager_MM_Defragment12
0x9D002C5C 0xA3A20015 SB R2, 21(SP)
;__Lib_MemManager.c, 74 :: while ((i < NR_FREE_BLOCKS-1) && (!MergeHappened)) {
L___Lib_MemManager_MM_Defragment95:
L___Lib_MemManager_MM_Defragment94:
;__Lib_MemManager.c, 94 :: } while (MergeHappened == 1);
0x9D002C60 0x93A30014 LBU R3, 20(SP)
0x9D002C64 0x34020001 ORI R2, R0, 1
0x9D002C68 0x1062FF86 BEQ R3, R2, L___Lib_MemManager_MM_Defragment9
0x9D002C6C 0x70000000 NOP
L___Lib_MemManager_MM_Defragment132:
;__Lib_MemManager.c, 97 :: MM_NrFreeBlocksUsed = 0;
0x9D002C70 0xA020ABEE SB R0, Offset(_MM_NrFreeBlocksUsed+0)(GP)
;__Lib_MemManager.c, 98 :: for(i=0; i < NR_FREE_BLOCKS; i++)
0x9D002C74 0xA3A00015 SB R0, 21(SP)
L___Lib_MemManager_MM_Defragment23:
0x9D002C78 0x93A20015 LBU R2, 21(SP)
0x9D002C7C 0x28420014 SLTI R2, R2, 20
0x9D002C80 0x10400011 BEQ R2, R0, L___Lib_MemManager_MM_Defragment24
0x9D002C84 0x70000000 NOP
L___Lib_MemManager_MM_Defragment133:
;__Lib_MemManager.c, 99 :: if (MM_FreeMemTable[i].Pointer > 0)
0x9D002C88 0x93A20015 LBU R2, 21(SP)
0x9D002C8C 0x000218C0 SLL R3, R2, 3
0x9D002C90 0x3C02A000 LUI R2, hi_addr(_MM_FreeMemTable+0)
0x9D002C94 0x34422BF8 ORI R2, R2, lo_addr(_MM_FreeMemTable+0)
0x9D002C98 0x00431021 ADDU R2, R2, R3
0x9D002C9C 0x8C420000 LW R2, 0(R2)
0x9D002CA0 0x2C420001 SLTIU R2, R2, 1
0x9D002CA4 0x14400004 BNE R2, R0, L___Lib_MemManager_MM_Defragment26
0x9D002CA8 0x70000000 NOP
L___Lib_MemManager_MM_Defragment134:
;__Lib_MemManager.c, 100 :: MM_NrFreeBlocksUsed++;
0x9D002CAC 0x9022ABEE LBU R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
0x9D002CB0 0x24420001 ADDIU R2, R2, 1
0x9D002CB4 0xA022ABEE SB R2, Offset(_MM_NrFreeBlocksUsed+0)(GP)
L___Lib_MemManager_MM_Defragment26:
;__Lib_MemManager.c, 98 :: for(i=0; i < NR_FREE_BLOCKS; i++)
0x9D002CB8 0x93A20015 LBU R2, 21(SP)
0x9D002CBC 0x24420001 ADDIU R2, R2, 1
;__Lib_MemManager.c, 100 :: MM_NrFreeBlocksUsed++;
0x9D002CC0 0x0B400B1E J L___Lib_MemManager_MM_Defragment23
0x9D002CC4 0xA3A20015 SB R2, 21(SP)
L___Lib_MemManager_MM_Defragment24:
;__Lib_MemManager.c, 102 :: MM_PossiblyFragmented = 0;
0x9D002CC8 0xA020ABEF SB R0, Offset(_MM_PossiblyFragmented+0)(GP)
;__Lib_MemManager.c, 103 :: }
L_end_MM_Defragment:
0x9D002CCC 0x8FBC0010 LW R28, 16(SP)
0x9D002CD0 0x8FBB000C LW R27, 12(SP)
0x9D002CD4 0x8FBA0008 LW R26, 8(SP)
0x9D002CD8 0x8FB90004 LW R25, 4(SP)
0x9D002CDC 0x8FBF0000 LW RA, 0(SP)
0x9D002CE0 0x03E00008 JR RA
0x9D002CE4 0x27BD0018 ADDIU SP, SP, 24
; end of __Lib_MemManager_MM_Defragment
__Lib_MemManager_MM_CheckBlocks:
;__Lib_MemManager.c, 51 :: static char MM_CheckBlocks(char *P1, unsigned long S1, char * P2, unsigned long S2) {
;__Lib_MemManager.c, 54 :: if (P1 == 0)
0x9D001E50 0x17200003 BNE R25, R0, L___Lib_MemManager_MM_CheckBlocks3
0x9D001E54 0x70000000 NOP
L___Lib_MemManager_MM_CheckBlocks119:
;__Lib_MemManager.c, 55 :: return 0;
0x9D001E58 0x0B4007AA J L_end_MM_CheckBlocks
0x9D001E5C 0x0000100A MOVZ R2, R0, R0
L___Lib_MemManager_MM_CheckBlocks3:
;__Lib_MemManager.c, 56 :: if (P2 == 0)
0x9D001E60 0x17600003 BNE R27, R0, L___Lib_MemManager_MM_CheckBlocks4
0x9D001E64 0x70000000 NOP
L___Lib_MemManager_MM_CheckBlocks120:
;__Lib_MemManager.c, 57 :: return 0;
0x9D001E68 0x0B4007AA J L_end_MM_CheckBlocks
0x9D001E6C 0x0000100A MOVZ R2, R0, R0
L___Lib_MemManager_MM_CheckBlocks4:
;__Lib_MemManager.c, 58 :: if (P1 == P2)
0x9D001E70 0x173B0003 BNE R25, R27, L___Lib_MemManager_MM_CheckBlocks5
0x9D001E74 0x70000000 NOP
L___Lib_MemManager_MM_CheckBlocks121:
;__Lib_MemManager.c, 59 :: return 0;
0x9D001E78 0x0B4007AA J L_end_MM_CheckBlocks
0x9D001E7C 0x0000100A MOVZ R2, R0, R0
L___Lib_MemManager_MM_CheckBlocks5:
;__Lib_MemManager.c, 61 :: if (P1 + S1 == P2)
0x9D001E80 0x033A1021 ADDU R2, R25, R26
0x9D001E84 0x145B0003 BNE R2, R27, L___Lib_MemManager_MM_CheckBlocks6
0x9D001E88 0x70000000 NOP
L___Lib_MemManager_MM_CheckBlocks122:
;__Lib_MemManager.c, 62 :: return 1; // block P1 is adjacent beneath block P2
0x9D001E8C 0x0B4007AA J L_end_MM_CheckBlocks
0x9D001E90 0x34020001 ORI R2, R0, 1
L___Lib_MemManager_MM_CheckBlocks6:
;__Lib_MemManager.c, 63 :: else if (P2 + S2 == P1)
0x9D001E94 0x037C1021 ADDU R2, R27, R28
0x9D001E98 0x14590003 BNE R2, R25, L___Lib_MemManager_MM_CheckBlocks8
0x9D001E9C 0x70000000 NOP
L___Lib_MemManager_MM_CheckBlocks123:
;__Lib_MemManager.c, 64 :: return 2; // block P2 is adjacent beneath block P1
0x9D001EA0 0x0B4007AA J L_end_MM_CheckBlocks
0x9D001EA4 0x34020002 ORI R2, R0, 2
L___Lib_MemManager_MM_CheckBlocks8:
;__Lib_MemManager.c, 65 :: }
L_end_MM_CheckBlocks:
0x9D001EA8 0x03E00008 JR RA
0x9D001EAC 0x70000000 NOP
; end of __Lib_MemManager_MM_CheckBlocks
_cmd_chip_read_param_page:
;CMD_ReadParamPage.c, 5 :: void cmd_chip_read_param_page(unsigned char* outBuffer)
0x9D0036CC 0x27BDFFF4 ADDIU SP, SP, -12
0x9D0036D0 0xAFBF0000 SW RA, 0(SP)
;CMD_ReadParamPage.c, 7 :: nand_send_command(NC_READ_PARAM_PAGE);
0x9D0036D4 0xAFBA0004 SW R26, 4(SP)
0x9D0036D8 0xAFB90008 SW R25, 8(SP)
0x9D0036DC 0x0F40087F JAL _nand_send_command+0
0x9D0036E0 0x341900EC ORI R25, R0, 236
;CMD_ReadParamPage.c, 8 :: nand_send_address(0, 0);
0x9D0036E4 0x0000D00A MOVZ R26, R0, R0
0x9D0036E8 0x0F400A65 JAL _nand_send_address+0
0x9D0036EC 0x0000C80A MOVZ R25, R0, R0
;CMD_ReadParamPage.c, 9 :: do_delay(5);
0x9D0036F0 0x0F40084C JAL _do_delay+0
0x9D0036F4 0x34190005 ORI R25, R0, 5
0x9D0036F8 0x8FB90008 LW R25, 8(SP)
;CMD_ReadParamPage.c, 10 :: while(!nand_is_ready());
L_cmd_chip_read_param_page0:
0x9D0036FC 0x0F400898 JAL _nand_is_ready+0
0x9D003700 0xAFB90008 SW R25, 8(SP)
0x9D003704 0x14400003 BNE R2, R0, L_cmd_chip_read_param_page1
0x9D003708 0x8FB90008 LW R25, 8(SP)
L__cmd_chip_read_param_page3:
0x9D00370C 0x0B400DBF J L_cmd_chip_read_param_page0
0x9D003710 0x70000000 NOP
L_cmd_chip_read_param_page1:
;CMD_ReadParamPage.c, 11 :: do_delay(2500);
0x9D003714 0xAFB90008 SW R25, 8(SP)
0x9D003718 0x0F40084C JAL _do_delay+0
0x9D00371C 0x341909C4 ORI R25, R0, 2500
0x9D003720 0x8FB90008 LW R25, 8(SP)
;CMD_ReadParamPage.c, 12 :: nand_read(outBuffer, 0x100);
0x9D003724 0xAFB90008 SW R25, 8(SP)
0x9D003728 0x0F4008B7 JAL _nand_read+0
0x9D00372C 0x341A0100 ORI R26, R0, 256
0x9D003730 0x8FB90008 LW R25, 8(SP)
;CMD_ReadParamPage.c, 13 :: }
L_end_cmd_chip_read_param_page:
0x9D003734 0x8FBA0004 LW R26, 4(SP)
0x9D003738 0x8FBF0000 LW RA, 0(SP)
0x9D00373C 0x03E00008 JR RA
0x9D003740 0x27BD000C ADDIU SP, SP, 12
; end of _cmd_chip_read_param_page
_cmd_chip_read_page:
;CMD_ReadPage.c, 5 :: void cmd_chip_read_page(unsigned char* inBuffer, unsigned char* outBuffer, int len, int addressCycles)
0x9D003744 0x27BDFFE8 ADDIU SP, SP, -24
0x9D003748 0xAFBF0000 SW RA, 0(SP)
;CMD_ReadPage.c, 7 :: nand_send_command(NC_READ_MODE);
0x9D00374C 0xAFB90004 SW R25, 4(SP)
0x9D003750 0xA7BC0008 SH R28, 8(SP)
0x9D003754 0xA7BB000A SH R27, 10(SP)
0x9D003758 0xAFBA000C SW R26, 12(SP)
0x9D00375C 0xAFB90010 SW R25, 16(SP)
0x9D003760 0x0F40087F JAL _nand_send_command+0
0x9D003764 0x0000C80A MOVZ R25, R0, R0
0x9D003768 0x8FB90010 LW R25, 16(SP)
0x9D00376C 0x8FBA000C LW R26, 12(SP)
0x9D003770 0x87BB000A LH R27, 10(SP)
0x9D003774 0x87BC0008 LH R28, 8(SP)
;CMD_ReadPage.c, 8 :: nand_send_address(inBuffer + 1, addressCycles);
0x9D003778 0x27220001 ADDIU R2, R25, 1
0x9D00377C 0xA7BB0008 SH R27, 8(SP)
0x9D003780 0xAFBA000C SW R26, 12(SP)
0x9D003784 0x7C1CD620 SEH R26, R28
0x9D003788 0x0F400A65 JAL _nand_send_address+0
0x9D00378C 0x0040C80A MOVZ R25, R2, R0
;CMD_ReadPage.c, 9 :: nand_send_command(NC_READ_PAGE);
0x9D003790 0x0F40087F JAL _nand_send_command+0
0x9D003794 0x34190030 ORI R25, R0, 48
;CMD_ReadPage.c, 10 :: do_delay(5);
0x9D003798 0x0F40084C JAL _do_delay+0
0x9D00379C 0x34190005 ORI R25, R0, 5
0x9D0037A0 0x8FBA000C LW R26, 12(SP)
0x9D0037A4 0x87BB0008 LH R27, 8(SP)
;CMD_ReadPage.c, 11 :: while(!nand_is_ready());
L_cmd_chip_read_page0:
0x9D0037A8 0xA7BC0008 SH R28, 8(SP)
0x9D0037AC 0xA7BB000A SH R27, 10(SP)
0x9D0037B0 0xAFBA000C SW R26, 12(SP)
0x9D0037B4 0x0F400898 JAL _nand_is_ready+0
0x9D0037B8 0xAFB90010 SW R25, 16(SP)
0x9D0037BC 0x8FB90010 LW R25, 16(SP)
0x9D0037C0 0x8FBA000C LW R26, 12(SP)
0x9D0037C4 0x87BB000A LH R27, 10(SP)
0x9D0037C8 0x14400003 BNE R2, R0, L_cmd_chip_read_page1
0x9D0037CC 0x87BC0008 LH R28, 8(SP)
L__cmd_chip_read_page17:
0x9D0037D0 0x0B400DEA J L_cmd_chip_read_page0
0x9D0037D4 0x70000000 NOP
L_cmd_chip_read_page1:
;CMD_ReadPage.c, 16 :: for(i = 0; i < len; i += 64)
0x9D0037D8 0xA7A00014 SH R0, 20(SP)
L_cmd_chip_read_page2:
0x9D0037DC 0x7C1B1E20 SEH R3, R27
0x9D0037E0 0x87A20014 LH R2, 20(SP)
0x9D0037E4 0x0043102A SLT R2, R2, R3
0x9D0037E8 0x10400022 BEQ R2, R0, L_cmd_chip_read_page3
0x9D0037EC 0x70000000 NOP
L__cmd_chip_read_page18:
;CMD_ReadPage.c, 18 :: nand_read(outBuffer, 64);
0x9D0037F0 0xA7BC0008 SH R28, 8(SP)
0x9D0037F4 0xA7BB000A SH R27, 10(SP)
0x9D0037F8 0xAFBA000C SW R26, 12(SP)
0x9D0037FC 0xAFB90010 SW R25, 16(SP)
0x9D003800 0x0340C80A MOVZ R25, R26, R0
0x9D003804 0x0F4008B7 JAL _nand_read+0
0x9D003808 0x341A0040 ORI R26, R0, 64
0x9D00380C 0x8FB90010 LW R25, 16(SP)
0x9D003810 0x8FBA000C LW R26, 12(SP)
0x9D003814 0x87BB000A LH R27, 10(SP)
0x9D003818 0x87BC0008 LH R28, 8(SP)
;CMD_ReadPage.c, 20 :: while(0 == HID_Write(outBuffer, 64))
L_cmd_chip_read_page5:
0x9D00381C 0xA7BC0008 SH R28, 8(SP)
0x9D003820 0xA7BB000A SH R27, 10(SP)
0x9D003824 0xAFBA000C SW R26, 12(SP)
0x9D003828 0xAFB90010 SW R25, 16(SP)
0x9D00382C 0x0340C80A MOVZ R25, R26, R0
0x9D003830 0x0F401059 JAL _HID_Write+0
0x9D003834 0x341A0040 ORI R26, R0, 64
0x9D003838 0x8FB90010 LW R25, 16(SP)
0x9D00383C 0x8FBA000C LW R26, 12(SP)
0x9D003840 0x87BB000A LH R27, 10(SP)
0x9D003844 0x87BC0008 LH R28, 8(SP)
0x9D003848 0x304200FF ANDI R2, R2, 255
0x9D00384C 0x14400005 BNE R2, R0, L_cmd_chip_read_page6
0x9D003850 0x70000000 NOP
L__cmd_chip_read_page19:
;CMD_ReadPage.c, 21 :: USB_Break();
0x9D003854 0x0F400A60 JAL _USB_Break+0
0x9D003858 0x70000000 NOP
0x9D00385C 0x0B400E07 J L_cmd_chip_read_page5
0x9D003860 0x70000000 NOP
L_cmd_chip_read_page6:
;CMD_ReadPage.c, 16 :: for(i = 0; i < len; i += 64)
0x9D003864 0x87A20014 LH R2, 20(SP)
0x9D003868 0x24420040 ADDIU R2, R2, 64
;CMD_ReadPage.c, 22 :: }
0x9D00386C 0x0B400DF7 J L_cmd_chip_read_page2
0x9D003870 0xA7A20014 SH R2, 20(SP)
L_cmd_chip_read_page3:
;CMD_ReadPage.c, 24 :: }
L_end_cmd_chip_read_page:
0x9D003874 0x8FB90004 LW R25, 4(SP)
0x9D003878 0x8FBF0000 LW RA, 0(SP)
0x9D00387C 0x03E00008 JR RA
0x9D003880 0x27BD0018 ADDIU SP, SP, 24
; end of _cmd_chip_read_page
_USB_Break:
;__Lib_USB.c, 1979 ::
0x9D002980 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_USB.c, 1980 ::
0x9D002984 0x34020001 ORI R2, R0, 1
0x9D002988 0xAC22ACE8 SW R2, Offset(__Lib_USB__USB_Stop_Waiting+0)(GP)
;__Lib_USB.c, 1981 ::
L_end_USB_Break:
0x9D00298C 0x03E00008 JR RA
0x9D002990 0x27BD0004 ADDIU SP, SP, 4
; end of _USB_Break
_cmd_chip_read_page_cache_sequential:
;CMD_ReadPage.c, 32 :: void cmd_chip_read_page_cache_sequential(unsigned char* inBuffer, unsigned char* outBuffer, int len, int addressCycles)
0x9D003884 0x27BDFFE8 ADDIU SP, SP, -24
0x9D003888 0xAFBF0000 SW RA, 0(SP)
;CMD_ReadPage.c, 34 :: int i = 0;
0x9D00388C 0xAFB90004 SW R25, 4(SP)
;CMD_ReadPage.c, 35 :: int j = *(int*)(inBuffer + 6);
0x9D003890 0x27220006 ADDIU R2, R25, 6
0x9D003894 0x84420000 LH R2, 0(R2)
0x9D003898 0xA7A20014 SH R2, 20(SP)
;CMD_ReadPage.c, 37 :: nand_send_command(NC_READ_MODE);
0x9D00389C 0xA7BC0008 SH R28, 8(SP)
0x9D0038A0 0xA7BB000A SH R27, 10(SP)
0x9D0038A4 0xAFBA000C SW R26, 12(SP)
0x9D0038A8 0xAFB90010 SW R25, 16(SP)
0x9D0038AC 0x0F40087F JAL _nand_send_command+0
0x9D0038B0 0x0000C80A MOVZ R25, R0, R0
0x9D0038B4 0x8FB90010 LW R25, 16(SP)
0x9D0038B8 0x8FBA000C LW R26, 12(SP)
0x9D0038BC 0x87BB000A LH R27, 10(SP)
0x9D0038C0 0x87BC0008 LH R28, 8(SP)
;CMD_ReadPage.c, 38 :: nand_send_address(inBuffer + 1, addressCycles);
0x9D0038C4 0x27220001 ADDIU R2, R25, 1
0x9D0038C8 0xA7BB0008 SH R27, 8(SP)
0x9D0038CC 0xAFBA000C SW R26, 12(SP)
0x9D0038D0 0x7C1CD620 SEH R26, R28
0x9D0038D4 0x0F400A65 JAL _nand_send_address+0
0x9D0038D8 0x0040C80A MOVZ R25, R2, R0
;CMD_ReadPage.c, 39 :: nand_send_command(NC_READ_PAGE);
0x9D0038DC 0x0F40087F JAL _nand_send_command+0
0x9D0038E0 0x34190030 ORI R25, R0, 48
;CMD_ReadPage.c, 40 :: do_delay(5);
0x9D0038E4 0x0F40084C JAL _do_delay+0
0x9D0038E8 0x34190005 ORI R25, R0, 5
;CMD_ReadPage.c, 41 :: nand_wait_ready();
0x9D0038EC 0x0F400840 JAL _nand_wait_ready+0
0x9D0038F0 0x70000000 NOP
0x9D0038F4 0x8FBA000C LW R26, 12(SP)
0x9D0038F8 0x87BB0008 LH R27, 8(SP)
;CMD_ReadPage.c, 42 :: while(j > 0)
L_cmd_chip_read_page_cache_sequential7:
0x9D0038FC 0x87A20014 LH R2, 20(SP)
0x9D003900 0x28420001 SLTI R2, R2, 1
0x9D003904 0x1440003D BNE R2, R0, L_cmd_chip_read_page_cache_sequential8
0x9D003908 0x70000000 NOP
L__cmd_chip_read_page_cache_sequential21:
;CMD_ReadPage.c, 44 :: nand_send_command( (j > 1)? NC_READ_PAGE_CACHE_SEQ : NC_READ_PAGE_CACHE_LAST);
0x9D00390C 0x87A20014 LH R2, 20(SP)
0x9D003910 0x28420002 SLTI R2, R2, 2
0x9D003914 0x14400003 BNE R2, R0, L_cmd_chip_read_page_cache_sequential9
0x9D003918 0x70000000 NOP
L__cmd_chip_read_page_cache_sequential22:
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 start address is: 8 (R2)
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 end address is: 8 (R2)
0x9D00391C 0x0B400E4A J L_cmd_chip_read_page_cache_sequential10
0x9D003920 0x34020031 ORI R2, R0, 49
L_cmd_chip_read_page_cache_sequential9:
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 start address is: 8 (R2)
0x9D003924 0x3402003F ORI R2, R0, 63
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 end address is: 8 (R2)
L_cmd_chip_read_page_cache_sequential10:
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 start address is: 8 (R2)
0x9D003928 0xA7BC0008 SH R28, 8(SP)
; ?FLOC___cmd_chip_read_page_cache_sequential?T14 end address is: 8 (R2)
0x9D00392C 0xA7BB000A SH R27, 10(SP)
0x9D003930 0xAFBA000C SW R26, 12(SP)
0x9D003934 0xAFB90010 SW R25, 16(SP)
0x9D003938 0x0F40087F JAL _nand_send_command+0
0x9D00393C 0x7C02CC20 SEB R25, R2
;CMD_ReadPage.c, 45 :: j--;
0x9D003940 0x87A20014 LH R2, 20(SP)
0x9D003944 0x2442FFFF ADDIU R2, R2, -1
;CMD_ReadPage.c, 47 :: nand_wait_ready();
0x9D003948 0x0F400840 JAL _nand_wait_ready+0
0x9D00394C 0xA7A20014 SH R2, 20(SP)
0x9D003950 0x8FB90010 LW R25, 16(SP)
0x9D003954 0x8FBA000C LW R26, 12(SP)
0x9D003958 0x87BB000A LH R27, 10(SP)
0x9D00395C 0x87BC0008 LH R28, 8(SP)
;CMD_ReadPage.c, 49 :: for(i = 0; i < len; i += 64)
0x9D003960 0xA7A00016 SH R0, 22(SP)
L_cmd_chip_read_page_cache_sequential11:
0x9D003964 0x7C1B1E20 SEH R3, R27
0x9D003968 0x87A20016 LH R2, 22(SP)
0x9D00396C 0x0043102A SLT R2, R2, R3
0x9D003970 0x10400020 BEQ R2, R0, L_cmd_chip_read_page_cache_sequential12
0x9D003974 0x70000000 NOP
L__cmd_chip_read_page_cache_sequential23:
;CMD_ReadPage.c, 51 :: nand_read(outBuffer, 64);
0x9D003978 0xA7BC0008 SH R28, 8(SP)
0x9D00397C 0xA7BB000A SH R27, 10(SP)
0x9D003980 0xAFBA000C SW R26, 12(SP)
0x9D003984 0xAFB90010 SW R25, 16(SP)
0x9D003988 0x0340C80A MOVZ R25, R26, R0
0x9D00398C 0x0F4008B7 JAL _nand_read+0
0x9D003990 0x341A0040 ORI R26, R0, 64
0x9D003994 0x8FB90010 LW R25, 16(SP)
0x9D003998 0x8FBA000C LW R26, 12(SP)
0x9D00399C 0x87BB000A LH R27, 10(SP)
0x9D0039A0 0x87BC0008 LH R28, 8(SP)
;CMD_ReadPage.c, 52 :: while(!HID_Write(outBuffer, 64));
L_cmd_chip_read_page_cache_sequential14:
0x9D0039A4 0xA7BC0008 SH R28, 8(SP)
0x9D0039A8 0xA7BB000A SH R27, 10(SP)
0x9D0039AC 0xAFBA000C SW R26, 12(SP)
0x9D0039B0 0xAFB90010 SW R25, 16(SP)
0x9D0039B4 0x0340C80A MOVZ R25, R26, R0
0x9D0039B8 0x0F401059 JAL _HID_Write+0
0x9D0039BC 0x341A0040 ORI R26, R0, 64
0x9D0039C0 0x8FB90010 LW R25, 16(SP)
0x9D0039C4 0x8FBA000C LW R26, 12(SP)
0x9D0039C8 0x87BB000A LH R27, 10(SP)
0x9D0039CC 0x14400003 BNE R2, R0, L_cmd_chip_read_page_cache_sequential15
0x9D0039D0 0x87BC0008 LH R28, 8(SP)
L__cmd_chip_read_page_cache_sequential24:
0x9D0039D4 0x0B400E69 J L_cmd_chip_read_page_cache_sequential14
0x9D0039D8 0x70000000 NOP
L_cmd_chip_read_page_cache_sequential15:
;CMD_ReadPage.c, 53 :: USB_Break();
0x9D0039DC 0x0F400A60 JAL _USB_Break+0
0x9D0039E0 0x70000000 NOP
;CMD_ReadPage.c, 49 :: for(i = 0; i < len; i += 64)
0x9D0039E4 0x87A20016 LH R2, 22(SP)
0x9D0039E8 0x24420040 ADDIU R2, R2, 64
;CMD_ReadPage.c, 55 :: }
0x9D0039EC 0x0B400E59 J L_cmd_chip_read_page_cache_sequential11
0x9D0039F0 0xA7A20016 SH R2, 22(SP)
L_cmd_chip_read_page_cache_sequential12:
;CMD_ReadPage.c, 56 :: }
0x9D0039F4 0x0B400E3F J L_cmd_chip_read_page_cache_sequential7
0x9D0039F8 0x70000000 NOP
L_cmd_chip_read_page_cache_sequential8:
;CMD_ReadPage.c, 57 :: }
L_end_cmd_chip_read_page_cache_sequential:
0x9D0039FC 0x8FB90004 LW R25, 4(SP)
0x9D003A00 0x8FBF0000 LW RA, 0(SP)
0x9D003A04 0x03E00008 JR RA
0x9D003A08 0x27BD0018 ADDIU SP, SP, 24
; end of _cmd_chip_read_page_cache_sequential
_nand_wait_ready:
;NandControl.c, 67 :: void nand_wait_ready()
0x9D002100 0x27BDFFFC ADDIU SP, SP, -4
0x9D002104 0xAFBF0000 SW RA, 0(SP)
;NandControl.c, 69 :: while(0 == nand_is_ready());
L_nand_wait_ready2:
0x9D002108 0x0F400898 JAL _nand_is_ready+0
0x9D00210C 0x70000000 NOP
0x9D002110 0x7C021620 SEH R2, R2
0x9D002114 0x14400003 BNE R2, R0, L_nand_wait_ready3
0x9D002118 0x70000000 NOP
L__nand_wait_ready32:
0x9D00211C 0x0B400842 J L_nand_wait_ready2
0x9D002120 0x70000000 NOP
L_nand_wait_ready3:
;NandControl.c, 70 :: }
L_end_nand_wait_ready:
0x9D002124 0x8FBF0000 LW RA, 0(SP)
0x9D002128 0x03E00008 JR RA
0x9D00212C 0x27BD0004 ADDIU SP, SP, 4
; end of _nand_wait_ready
_cmd_chip_read_status:
;CMD_Status.c, 5 :: unsigned char cmd_chip_read_status()
0x9D003A8C 0x27BDFFF0 ADDIU SP, SP, -16
0x9D003A90 0xAFBF0000 SW RA, 0(SP)
;CMD_Status.c, 8 :: nand_send_command(NC_READ_STATUS);
0x9D003A94 0xAFB90004 SW R25, 4(SP)
0x9D003A98 0xAFBA0008 SW R26, 8(SP)
0x9D003A9C 0x0F40087F JAL _nand_send_command+0
0x9D003AA0 0x34190070 ORI R25, R0, 112
;CMD_Status.c, 9 :: do_delay(5);
0x9D003AA4 0x0F40084C JAL _do_delay+0
0x9D003AA8 0x34190005 ORI R25, R0, 5
;CMD_Status.c, 10 :: nand_read(&r, 1);
0x9D003AAC 0x27A2000C ADDIU R2, SP, 12
0x9D003AB0 0x341A0001 ORI R26, R0, 1
0x9D003AB4 0x0F4008B7 JAL _nand_read+0
0x9D003AB8 0x0040C80A MOVZ R25, R2, R0
;CMD_Status.c, 11 :: return r;
0x9D003ABC 0x93A2000C LBU R2, 12(SP)
;CMD_Status.c, 12 :: }
;CMD_Status.c, 11 :: return r;
;CMD_Status.c, 12 :: }
L_end_cmd_chip_read_status:
0x9D003AC0 0x8FBA0008 LW R26, 8(SP)
0x9D003AC4 0x8FB90004 LW R25, 4(SP)
0x9D003AC8 0x8FBF0000 LW RA, 0(SP)
0x9D003ACC 0x03E00008 JR RA
0x9D003AD0 0x27BD0010 ADDIU SP, SP, 16
; end of _cmd_chip_read_status
_cmd_chip_read_unique_id:
;CMD_ReadID.c, 18 :: void cmd_chip_read_unique_id(unsigned char* outBuffer)
0x9D003CB4 0x27BDFFF4 ADDIU SP, SP, -12
0x9D003CB8 0xAFBF0000 SW RA, 0(SP)
;CMD_ReadID.c, 20 :: nand_send_command(NC_READ_UNIQUE_ID);
0x9D003CBC 0xAFBA0004 SW R26, 4(SP)
0x9D003CC0 0xAFB90008 SW R25, 8(SP)
0x9D003CC4 0x0F40087F JAL _nand_send_command+0
0x9D003CC8 0x341900ED ORI R25, R0, 237
;CMD_ReadID.c, 21 :: nand_send_address(0, 1);
0x9D003CCC 0x341A0001 ORI R26, R0, 1
0x9D003CD0 0x0F400A65 JAL _nand_send_address+0
0x9D003CD4 0x0000C80A MOVZ R25, R0, R0
;CMD_ReadID.c, 22 :: do_delay(10);
0x9D003CD8 0x0F40084C JAL _do_delay+0
0x9D003CDC 0x3419000A ORI R25, R0, 10
;CMD_ReadID.c, 23 :: nand_wait_ready();
0x9D003CE0 0x0F400840 JAL _nand_wait_ready+0
0x9D003CE4 0x70000000 NOP
;CMD_ReadID.c, 24 :: do_delay(2500);
0x9D003CE8 0x0F40084C JAL _do_delay+0
0x9D003CEC 0x341909C4 ORI R25, R0, 2500
0x9D003CF0 0x8FB90008 LW R25, 8(SP)
;CMD_ReadID.c, 25 :: while(0 != (cmd_chip_read_status() & 0x0f));
L_cmd_chip_read_unique_id4:
0x9D003CF4 0x0F400EA3 JAL _cmd_chip_read_status+0
0x9D003CF8 0xAFB90008 SW R25, 8(SP)
0x9D003CFC 0x8FB90008 LW R25, 8(SP)
0x9D003D00 0x3042000F ANDI R2, R2, 15
0x9D003D04 0x304200FF ANDI R2, R2, 255
0x9D003D08 0x10400003 BEQ R2, R0, L_cmd_chip_read_unique_id5
0x9D003D0C 0x70000000 NOP
L__cmd_chip_read_unique_id11:
0x9D003D10 0x0B400F3D J L_cmd_chip_read_unique_id4
0x9D003D14 0x70000000 NOP
L_cmd_chip_read_unique_id5:
;CMD_ReadID.c, 26 :: nand_send_command(NC_READ_MODE);
0x9D003D18 0xAFB90008 SW R25, 8(SP)
0x9D003D1C 0x0F40087F JAL _nand_send_command+0
0x9D003D20 0x0000C80A MOVZ R25, R0, R0
0x9D003D24 0x8FB90008 LW R25, 8(SP)
;CMD_ReadID.c, 27 :: nand_read(outBuffer, 64);
0x9D003D28 0xAFB90008 SW R25, 8(SP)
0x9D003D2C 0x0F4008B7 JAL _nand_read+0
0x9D003D30 0x341A0040 ORI R26, R0, 64
0x9D003D34 0x8FB90008 LW R25, 8(SP)
;CMD_ReadID.c, 28 :: }
L_end_cmd_chip_read_unique_id:
0x9D003D38 0x8FBA0004 LW R26, 4(SP)
0x9D003D3C 0x8FBF0000 LW RA, 0(SP)
0x9D003D40 0x03E00008 JR RA
0x9D003D44 0x27BD000C ADDIU SP, SP, 12
; end of _cmd_chip_read_unique_id
_cmd_chip_block_erase:
;CMD_BlockErase.c, 5 :: void cmd_chip_block_erase(unsigned char* inBuffer)
0x9D003D48 0x27BDFFF0 ADDIU SP, SP, -16
0x9D003D4C 0xAFBF0000 SW RA, 0(SP)
;CMD_BlockErase.c, 7 :: nand_send_command(NC_BLOCK_ERASE1);
0x9D003D50 0xAFB90004 SW R25, 4(SP)
0x9D003D54 0xAFBA0008 SW R26, 8(SP)
0x9D003D58 0xAFB9000C SW R25, 12(SP)
0x9D003D5C 0x0F40087F JAL _nand_send_command+0
0x9D003D60 0x34190060 ORI R25, R0, 96
0x9D003D64 0x8FB9000C LW R25, 12(SP)
;CMD_BlockErase.c, 8 :: nand_send_address(inBuffer + 1, 3);
0x9D003D68 0x27220001 ADDIU R2, R25, 1
0x9D003D6C 0x341A0003 ORI R26, R0, 3
0x9D003D70 0x0F400A65 JAL _nand_send_address+0
0x9D003D74 0x0040C80A MOVZ R25, R2, R0
;CMD_BlockErase.c, 9 :: do_delay(100);
0x9D003D78 0x0F40084C JAL _do_delay+0
0x9D003D7C 0x34190064 ORI R25, R0, 100
;CMD_BlockErase.c, 10 :: nand_send_command(NC_BLOCK_ERASE2);
0x9D003D80 0x0F40087F JAL _nand_send_command+0
0x9D003D84 0x341900D0 ORI R25, R0, 208
;CMD_BlockErase.c, 11 :: do_delay(100);
0x9D003D88 0x0F40084C JAL _do_delay+0
0x9D003D8C 0x34190064 ORI R25, R0, 100
;CMD_BlockErase.c, 12 :: nand_wait_ready();
0x9D003D90 0x0F400840 JAL _nand_wait_ready+0
0x9D003D94 0x70000000 NOP
;CMD_BlockErase.c, 13 :: }
L_end_cmd_chip_block_erase:
0x9D003D98 0x8FBA0008 LW R26, 8(SP)
0x9D003D9C 0x8FB90004 LW R25, 4(SP)
0x9D003DA0 0x8FBF0000 LW RA, 0(SP)
0x9D003DA4 0x03E00008 JR RA
0x9D003DA8 0x27BD0010 ADDIU SP, SP, 16
; end of _cmd_chip_block_erase
_nand_toggle_wp:
;NandControl.c, 175 :: void nand_toggle_wp()
;NandControl.c, 177 :: ctrl_nwp = ~ctrl_nwp;
0x9D003DAC 0x3C1EBF88 LUI R30, 49032
0x9D003DB0 0x83C26120 LB R2, 24864(R30)
0x9D003DB4 0x7C420040 EXT R2, R2, 1, 1
0x9D003DB8 0x38430001 XORI R3, R2, 1
0x9D003DBC 0x3C1EBF88 LUI R30, 49032
0x9D003DC0 0x83C26120 LB R2, 24864(R30)
0x9D003DC4 0x7C620844 INS R2, R3, 1, 1
0x9D003DC8 0x3C1EBF88 LUI R30, 49032
0x9D003DCC 0xA3C26120 SB R2, 24864(R30)
;NandControl.c, 178 :: Delay_us(2);
0x9D003DD0 0x3C180000 LUI R24, 0
0x9D003DD4 0x37180034 ORI R24, R24, 52
L_nand_toggle_wp26:
0x9D003DD8 0x2718FFFF ADDIU R24, R24, -1
0x9D003DDC 0x1700FFFE BNE R24, R0, L_nand_toggle_wp26
0x9D003DE0 0x70000000 NOP
0x9D003DE4 0x70000000 NOP
0x9D003DE8 0x70000000 NOP
;NandControl.c, 179 :: }
L_end_nand_toggle_wp:
0x9D003DEC 0x03E00008 JR RA
0x9D003DF0 0x70000000 NOP
; end of _nand_toggle_wp
_cmd_chip_page_program:
;CMD_PageProgram.c, 7 :: unsigned char cmd_chip_page_program(unsigned char* inBuffer, int addressCycles, int pageSize)
0x9D003AD4 0x27BDFFF0 ADDIU SP, SP, -16
0x9D003AD8 0xAFBF0000 SW RA, 0(SP)
;CMD_PageProgram.c, 9 :: int i = 0, b;
0x9D003ADC 0x0000F00A MOVZ R30, R0, R0
0x9D003AE0 0xA7BE000E SH R30, 14(SP)
;CMD_PageProgram.c, 10 :: nand_send_command(NC_PAGE_PROGRAM_START);
0x9D003AE4 0xA7BB0004 SH R27, 4(SP)
0x9D003AE8 0xA7BA0006 SH R26, 6(SP)
0x9D003AEC 0xAFB90008 SW R25, 8(SP)
0x9D003AF0 0x0F40087F JAL _nand_send_command+0
0x9D003AF4 0x34190080 ORI R25, R0, 128
0x9D003AF8 0x8FB90008 LW R25, 8(SP)
0x9D003AFC 0x87BA0006 LH R26, 6(SP)
;CMD_PageProgram.c, 11 :: nand_send_address(inBuffer + 1, addressCycles);
0x9D003B00 0x27220001 ADDIU R2, R25, 1
0x9D003B04 0xAFB90008 SW R25, 8(SP)
0x9D003B08 0x0F400A65 JAL _nand_send_address+0
0x9D003B0C 0x0040C80A MOVZ R25, R2, R0
;CMD_PageProgram.c, 12 :: do_delay(5);
0x9D003B10 0x0F40084C JAL _do_delay+0
0x9D003B14 0x34190005 ORI R25, R0, 5
0x9D003B18 0x8FB90008 LW R25, 8(SP)
0x9D003B1C 0x87BB0004 LH R27, 4(SP)
;CMD_PageProgram.c, 13 :: while(i < pageSize)
L_cmd_chip_page_program0:
0x9D003B20 0x7C1B1E20 SEH R3, R27
0x9D003B24 0x87A2000E LH R2, 14(SP)
0x9D003B28 0x0043102A SLT R2, R2, R3
0x9D003B2C 0x10400020 BEQ R2, R0, L_cmd_chip_page_program1
0x9D003B30 0x70000000 NOP
L__cmd_chip_page_program5:
;CMD_PageProgram.c, 15 :: USB_Polling_Proc();
0x9D003B34 0xA7BB0004 SH R27, 4(SP)
0x9D003B38 0xA7BA0006 SH R26, 6(SP)
0x9D003B3C 0x0F400FE8 JAL _USB_Polling_Proc+0
0x9D003B40 0xAFB90008 SW R25, 8(SP)
0x9D003B44 0x8FB90008 LW R25, 8(SP)
0x9D003B48 0x87BA0006 LH R26, 6(SP)
0x9D003B4C 0x87BB0004 LH R27, 4(SP)
;CMD_PageProgram.c, 16 :: while(0 == (b = HID_Read()))
L_cmd_chip_page_program2:
0x9D003B50 0x0F400F7D JAL _HID_Read+0
0x9D003B54 0x70000000 NOP
0x9D003B58 0x304200FF ANDI R2, R2, 255
0x9D003B5C 0xA7A2000C SH R2, 12(SP)
0x9D003B60 0x87A2000C LH R2, 12(SP)
0x9D003B64 0x14400005 BNE R2, R0, L_cmd_chip_page_program3
0x9D003B68 0x70000000 NOP
L__cmd_chip_page_program6:
;CMD_PageProgram.c, 17 :: USB_Break();
0x9D003B6C 0x0F400A60 JAL _USB_Break+0
0x9D003B70 0x70000000 NOP
0x9D003B74 0x0B400ED4 J L_cmd_chip_page_program2
0x9D003B78 0x70000000 NOP
L_cmd_chip_page_program3:
;CMD_PageProgram.c, 19 :: nand_write(inBuffer, b);
0x9D003B7C 0xA7BB0004 SH R27, 4(SP)
0x9D003B80 0xA7BA0006 SH R26, 6(SP)
0x9D003B84 0xAFB90008 SW R25, 8(SP)
0x9D003B88 0x0F400858 JAL _nand_write+0
0x9D003B8C 0x87BA000C LH R26, 12(SP)
0x9D003B90 0x8FB90008 LW R25, 8(SP)
0x9D003B94 0x87BA0006 LH R26, 6(SP)
0x9D003B98 0x87BB0004 LH R27, 4(SP)
;CMD_PageProgram.c, 20 :: i += b;
0x9D003B9C 0x87A3000C LH R3, 12(SP)
0x9D003BA0 0x87A2000E LH R2, 14(SP)
0x9D003BA4 0x00431021 ADDU R2, R2, R3
;CMD_PageProgram.c, 21 :: }
0x9D003BA8 0x0B400EC8 J L_cmd_chip_page_program0
0x9D003BAC 0xA7A2000E SH R2, 14(SP)
L_cmd_chip_page_program1:
;CMD_PageProgram.c, 22 :: do_delay(5);
0x9D003BB0 0xA7BB0004 SH R27, 4(SP)
0x9D003BB4 0xA7BA0006 SH R26, 6(SP)
0x9D003BB8 0xAFB90008 SW R25, 8(SP)
0x9D003BBC 0x0F40084C JAL _do_delay+0
0x9D003BC0 0x34190005 ORI R25, R0, 5
;CMD_PageProgram.c, 23 :: nand_send_command(NC_PAGE_PROGRAM_END);
0x9D003BC4 0x0F40087F JAL _nand_send_command+0
0x9D003BC8 0x34190010 ORI R25, R0, 16
;CMD_PageProgram.c, 24 :: do_delay(100);
0x9D003BCC 0x0F40084C JAL _do_delay+0
0x9D003BD0 0x34190064 ORI R25, R0, 100
;CMD_PageProgram.c, 25 :: nand_wait_ready();
0x9D003BD4 0x0F400840 JAL _nand_wait_ready+0
0x9D003BD8 0x70000000 NOP
;CMD_PageProgram.c, 26 :: return cmd_chip_read_status();
0x9D003BDC 0x0F400EA3 JAL _cmd_chip_read_status+0
0x9D003BE0 0x70000000 NOP
0x9D003BE4 0x8FB90008 LW R25, 8(SP)
0x9D003BE8 0x87BA0006 LH R26, 6(SP)
0x9D003BEC 0x87BB0004 LH R27, 4(SP)
;CMD_PageProgram.c, 27 :: }
L_end_cmd_chip_page_program:
0x9D003BF0 0x8FBF0000 LW RA, 0(SP)
0x9D003BF4 0x03E00008 JR RA
0x9D003BF8 0x27BD0010 ADDIU SP, SP, 16
; end of _cmd_chip_page_program
_nand_write:
;NandControl.c, 145 :: void nand_write(unsigned char* buffer, int len)
0x9D002160 0x27BDFFF4 ADDIU SP, SP, -12
0x9D002164 0xAFBF0000 SW RA, 0(SP)
;NandControl.c, 148 :: ctrl_cle = 0;
0x9D002168 0x34020080 ORI R2, R0, 0x0080
0x9D00216C 0x3C1EBF88 LUI R30, 49032
0x9D002170 0xA3C26065 SB R2, 24677(R30)
;NandControl.c, 149 :: ctrl_ale = 0;
0x9D002174 0x34020001 ORI R2, R0, 0x0001
0x9D002178 0x3C1EBF88 LUI R30, 49032
0x9D00217C 0xA3C260E4 SB R2, 24804(R30)
;NandControl.c, 150 :: ctrl_nre = 1;
0x9D002180 0x34020010 ORI R2, R0, 0x0010
0x9D002184 0x3C1EBF88 LUI R30, 49032
0x9D002188 0xA3C260E8 SB R2, 24808(R30)
;NandControl.c, 151 :: for(i = 0; i < len; i++)
; i start address is: 16 (R4)
0x9D00218C 0x0000200A MOVZ R4, R0, R0
; i end address is: 16 (R4)
L_nand_write16:
; i start address is: 16 (R4)
0x9D002190 0x7C041E20 SEH R3, R4
0x9D002194 0x7C1A1620 SEH R2, R26
0x9D002198 0x0062102A SLT R2, R3, R2
0x9D00219C 0x10400014 BEQ R2, R0, L_nand_write17
0x9D0021A0 0x70000000 NOP
L__nand_write48:
;NandControl.c, 153 :: data_line_write_byte(*(buffer + i));
0x9D0021A4 0x7C041620 SEH R2, R4
0x9D0021A8 0x03221021 ADDU R2, R25, R2
0x9D0021AC 0xA7A40004 SH R4, 4(SP)
0x9D0021B0 0xA7BA0006 SH R26, 6(SP)
0x9D0021B4 0xAFB90008 SW R25, 8(SP)
0x9D0021B8 0x0F40069B JAL _data_line_write_byte+0
0x9D0021BC 0x90590000 LBU R25, 0(R2)
0x9D0021C0 0x8FB90008 LW R25, 8(SP)
0x9D0021C4 0x87BA0006 LH R26, 6(SP)
0x9D0021C8 0x87A40004 LH R4, 4(SP)
;NandControl.c, 154 :: ctrl_nwe = 0;
0x9D0021CC 0x34020001 ORI R2, R0, 0x0001
0x9D0021D0 0x3C1EBF88 LUI R30, 49032
0x9D0021D4 0xA3C26124 SB R2, 24868(R30)
;NandControl.c, 155 :: ctrl_nwe = 1;
0x9D0021D8 0x34020001 ORI R2, R0, 0x0001
0x9D0021DC 0x3C1EBF88 LUI R30, 49032
0x9D0021E0 0xA3C26128 SB R2, 24872(R30)
;NandControl.c, 151 :: for(i = 0; i < len; i++)
0x9D0021E4 0x24820001 ADDIU R2, R4, 1
;NandControl.c, 156 :: }
; i end address is: 16 (R4)
0x9D0021E8 0x0B400864 J L_nand_write16
0x9D0021EC 0x7C022620 SEH R4, R2
L_nand_write17:
;NandControl.c, 157 :: }
L_end_nand_write:
0x9D0021F0 0x8FBF0000 LW RA, 0(SP)
0x9D0021F4 0x03E00008 JR RA
0x9D0021F8 0x27BD000C ADDIU SP, SP, 12
; end of _nand_write
_cmd_chip_read_status_enhanced:
;CMD_Status.c, 15 :: unsigned char cmd_chip_read_status_enhanced(unsigned char* inBuffer, int addressCycles)
0x9D003C48 0x27BDFFE8 ADDIU SP, SP, -24
0x9D003C4C 0xAFBF0000 SW RA, 0(SP)
;CMD_Status.c, 18 :: nand_send_command(NC_READ_STATUS_ENHANCED);
0x9D003C50 0xAFB90004 SW R25, 4(SP)
0x9D003C54 0xAFBA0008 SW R26, 8(SP)
0x9D003C58 0xA7BA000C SH R26, 12(SP)
0x9D003C5C 0xAFB90010 SW R25, 16(SP)
0x9D003C60 0x0F40087F JAL _nand_send_command+0
0x9D003C64 0x34190078 ORI R25, R0, 120
0x9D003C68 0x8FB90010 LW R25, 16(SP)
0x9D003C6C 0x87BA000C LH R26, 12(SP)
;CMD_Status.c, 19 :: nand_send_address(inBuffer + 1, addressCycles - 2);
0x9D003C70 0x2743FFFE ADDIU R3, R26, -2
0x9D003C74 0x27220001 ADDIU R2, R25, 1
0x9D003C78 0x7C03D620 SEH R26, R3
0x9D003C7C 0x0F400A65 JAL _nand_send_address+0
0x9D003C80 0x0040C80A MOVZ R25, R2, R0
;CMD_Status.c, 20 :: do_delay(5);
0x9D003C84 0x0F40084C JAL _do_delay+0
0x9D003C88 0x34190005 ORI R25, R0, 5
;CMD_Status.c, 21 :: nand_read(&r, 1);
0x9D003C8C 0x27A20014 ADDIU R2, SP, 20
0x9D003C90 0x341A0001 ORI R26, R0, 1
0x9D003C94 0x0F4008B7 JAL _nand_read+0
0x9D003C98 0x0040C80A MOVZ R25, R2, R0
;CMD_Status.c, 22 :: return r;
0x9D003C9C 0x93A20014 LBU R2, 20(SP)
;CMD_Status.c, 23 :: }
;CMD_Status.c, 22 :: return r;
;CMD_Status.c, 23 :: }
L_end_cmd_chip_read_status_enhanced:
0x9D003CA0 0x8FBA0008 LW R26, 8(SP)
0x9D003CA4 0x8FB90004 LW R25, 4(SP)
0x9D003CA8 0x8FBF0000 LW RA, 0(SP)
0x9D003CAC 0x03E00008 JR RA
0x9D003CB0 0x27BD0018 ADDIU SP, SP, 24
; end of _cmd_chip_read_status_enhanced
___BootStartUp:
;__Lib_System.c, 68 ::
0xBFC00000 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_System.c, 72 ::
0xBFC00004 0x70000000 NOP
;__Lib_System.c, 73 ::
0xBFC00008 0x70000000 NOP
;__Lib_System.c, 74 ::
0xBFC0000C 0x70000000 NOP
;__Lib_System.c, 75 ::
0xBFC00010 0x70000000 NOP
;__Lib_System.c, 76 ::
0xBFC00014 0x70000000 NOP
;__Lib_System.c, 77 ::
0xBFC00018 0x70000000 NOP
;__Lib_System.c, 78 ::
0xBFC0001C 0x70000000 NOP
;__Lib_System.c, 79 ::
0xBFC00020 0x70000000 NOP
;__Lib_System.c, 80 ::
0xBFC00024 0x70000000 NOP
;__Lib_System.c, 81 ::
0xBFC00028 0x70000000 NOP
;__Lib_System.c, 82 ::
0xBFC0002C 0x70000000 NOP
;__Lib_System.c, 83 ::
0xBFC00030 0x70000000 NOP
;__Lib_System.c, 84 ::
0xBFC00034 0x70000000 NOP
;__Lib_System.c, 85 ::
0xBFC00038 0x70000000 NOP
;__Lib_System.c, 86 ::
0xBFC0003C 0x70000000 NOP
;__Lib_System.c, 87 ::
0xBFC00040 0x70000000 NOP
;__Lib_System.c, 88 ::
0xBFC00044 0x70000000 NOP
;__Lib_System.c, 89 ::
0xBFC00048 0x70000000 NOP
;__Lib_System.c, 90 ::
0xBFC0004C 0x70000000 NOP
;__Lib_System.c, 91 ::
0xBFC00050 0x70000000 NOP
;__Lib_System.c, 94 ::
0xBFC00054 0x3C1DA000 LUI SP, 40960
0xBFC00058 0x37BD3FFC ORI SP, SP, 16380
;__Lib_System.c, 95 ::
0xBFC0005C 0x3C01A000 LUI GP, 40960
0xBFC00060 0x34218000 ORI GP, GP, 32768
;__Lib_System.c, 99 ::
0xBFC00064 0x401E6002 MFC0 R30, 12, 2
;__Lib_System.c, 100 ::
0xBFC00068 0x03C0E00A MOVZ R28, R30, R0
;__Lib_System.c, 101 ::
0xBFC0006C 0x7FDB1E80 EXT R27, R30, 26, 4
;__Lib_System.c, 102 ::
0xBFC00070 0x7F7E4984 INS R30, R27, 6, 4
;__Lib_System.c, 103 ::
0xBFC00074 0x409E6002 MTC0 R30, 12, 2
;__Lib_System.c, 104 ::
0xBFC00078 0x41C10800 WRPGPR GP, GP
;__Lib_System.c, 105 ::
0xBFC0007C 0x409C6002 MTC0 R28, 12, 2
;__Lib_System.c, 111 ::
0xBFC00080 0x3C02A421 LUI R2, 42017
0xBFC00084 0x34420583 ORI R2, R2, 1411
0xBFC00088 0x0040F00A MOVZ R30, R2, R0
0xBFC0008C 0x409E8000 MTC0 R30, 16, 0
;__Lib_System.c, 114 ::
0xBFC00090 0x0000100A MOVZ R2, R0, R0
0xBFC00094 0x0040F00A MOVZ R30, R2, R0
0xBFC00098 0x409E4800 MTC0 R30, 9, 0
;__Lib_System.c, 117 ::
0xBFC0009C 0x3C02FFFF LUI R2, 65535
0xBFC000A0 0x3442FFFF ORI R2, R2, 65535
0xBFC000A4 0x0040F00A MOVZ R30, R2, R0
0xBFC000A8 0x409E5800 MTC0 R30, 11, 0
;__Lib_System.c, 119 ::
0xBFC000AC 0x3C029FC0 LUI R2, 40896
0xBFC000B0 0x34421000 ORI R2, R2, 4096
0xBFC000B4 0x0040F00A MOVZ R30, R2, R0
0xBFC000B8 0x409E7801 MTC0 R30, 15, 1
;__Lib_System.c, 121 ::
0xBFC000BC 0x34020020 ORI R2, R0, 32
0xBFC000C0 0x0040F00A MOVZ R30, R2, R0
0xBFC000C4 0x409E6001 MTC0 R30, 12, 1
;__Lib_System.c, 123 ::
0xBFC000C8 0x3C020400 LUI R2, 1024
0xBFC000CC 0x0040F00A MOVZ R30, R2, R0
0xBFC000D0 0x409E6002 MTC0 R30, 12, 2
;__Lib_System.c, 124 ::
0xBFC000D4 0x0000100A MOVZ R2, R0, R0
0xBFC000D8 0x0040F00A MOVZ R30, R2, R0
0xBFC000DC 0x409E6003 MTC0 R30, 12, 3
;__Lib_System.c, 129 ::
0xBFC000E0 0x3C020010 LUI R2, 16
0xBFC000E4 0x0040F00A MOVZ R30, R2, R0
0xBFC000E8 0x409E6000 MTC0 R30, 12, 0
;__Lib_System.c, 132 ::
0xBFC000EC 0x34020032 ORI R2, R0, 50
0xBFC000F0 0x3C1EBF88 LUI R30, 49032
0xBFC000F4 0xAFC24000 SW R2, 16384(R30)
;__Lib_System.c, 137 ::
0xBFC000F8 0x34021000 ORI R2, R0, 4096
0xBFC000FC 0x3C1EBF88 LUI R30, 49032
0xBFC00100 0xAFC21000 SW R2, 4096(R30)
;__Lib_System.c, 143 ::
0xBFC00104 0x3C020080 LUI R2, 128
0xBFC00108 0x0040F00A MOVZ R30, R2, R0
0xBFC0010C 0x409E6800 MTC0 R30, 13, 0
;__Lib_System.c, 149 ::
0xBFC00110 0x3C1E9D00 LUI R30, hi_addr(_main+0)
;__Lib_System.c, 150 ::
0xBFC00114 0x37DE4248 ORI R30, R30, lo_addr(_main+0)
;__Lib_System.c, 152 ::
0xBFC00118 0x03C00008 JR R30
;__Lib_System.c, 153 ::
0xBFC0011C 0x70000000 NOP
;__Lib_System.c, 155 ::
L_end___BootStartUp:
0xBFC00120 0x03E00008 JR RA
0xBFC00124 0x27BD0004 ADDIU SP, SP, 4
; end of ___BootStartUp
___BootGenExcept:
;__Lib_System.c, 56 ::
0x9D004230 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_System.c, 57 ::
L___BootGenExcept6:
;__Lib_System.c, 58 ::
0x9D004234 0x0B40108D J L___BootGenExcept6
0x9D004238 0x70000000 NOP
;__Lib_System.c, 59 ::
L_end___BootGenExcept:
0x9D00423C 0x27BD0004 ADDIU SP, SP, 4
0x9D004240 0x42000018 ERET
0x9D004244 0x70000000 NOP
; end of ___BootGenExcept
___GenExcept:
;__Lib_System.c, 61 ::
0x9D004218 0x27BDFFFC ADDIU SP, SP, -4
;__Lib_System.c, 62 ::
L___GenExcept8:
;__Lib_System.c, 63 ::
0x9D00421C 0x0B401087 J L___GenExcept8
0x9D004220 0x70000000 NOP
;__Lib_System.c, 64 ::
L_end___GenExcept:
0x9D004224 0x27BD0004 ADDIU SP, SP, 4
0x9D004228 0x42000018 ERET
0x9D00422C 0x70000000 NOP
; end of ___GenExcept
0x9D004A3C 0x03E0C80A MOVZ R25, RA, R0
0x9D004A40 0x3C17A000 LUI R23, 40960
0x9D004A44 0x36F70040 ORI R23, R23, 64
0x9D004A48 0x3C16A000 LUI R22, 40960
0x9D004A4C 0x36D60046 ORI R22, R22, 70
0x9D004A50 0x3C189D00 LUI R24, 40192
0x9D004A54 0x37184A28 ORI R24, R24, 18984
0x9D004A58 0x0F400FE0 JAL ___CC2DW
0x9D004A5C 0x70000000 NOP
0x9D004A60 0x3C17A000 LUI R23, 40960
0x9D004A64 0x36F70048 ORI R23, R23, 72
0x9D004A68 0x3C16A000 LUI R22, 40960
0x9D004A6C 0x36D6004C ORI R22, R22, 76
0x9D004A70 0x3C189D00 LUI R24, 40192
0x9D004A74 0x37184A30 ORI R24, R24, 18992
0x9D004A78 0x0F400FE0 JAL ___CC2DW
0x9D004A7C 0x70000000 NOP
0x9D004A80 0x3C17A000 LUI R23, 40960
0x9D004A84 0x36F70046 ORI R23, R23, 70
0x9D004A88 0x3C16A000 LUI R22, 40960
0x9D004A8C 0x36D60047 ORI R22, R22, 71
0x9D004A90 0x3C189D00 LUI R24, 40192
0x9D004A94 0x37184A3A ORI R24, R24, 19002
0x9D004A98 0x0F400FE0 JAL ___CC2DW
0x9D004A9C 0x70000000 NOP
0x9D004AA0 0x3C17A000 LUI R23, 40960
0x9D004AA4 0x36F7004C ORI R23, R23, 76
0x9D004AA8 0x3C16A000 LUI R22, 40960
0x9D004AAC 0x36D6004E ORI R22, R22, 78
0x9D004AB0 0x3C189D00 LUI R24, 40192
0x9D004AB4 0x37184A38 ORI R24, R24, 19000
0x9D004AB8 0x0F400FE0 JAL ___CC2DW
0x9D004ABC 0x70000000 NOP
0x9D004AC0 0x0320F80A MOVZ RA, R25, R0
0x9D004AC4 0x03E00008 JR RA
0x9D004AC8 0x70000000 NOP
;USBdsc.c,152 :: _strd3 [48]
0x9D004978 0x00550320 ;_strd3+0
0x9D00497C 0x00420053 ;_strd3+4
0x9D004980 0x00480020 ;_strd3+8
0x9D004984 0x00440049 ;_strd3+12
0x9D004988 0x004C0020 ;_strd3+16
0x9D00498C 0x00620069 ;_strd3+20
0x9D004990 0x00610072 ;_strd3+24
0x9D004994 0x00790072 ;_strd3+28
0x9D004998 0x00000000 ;_strd3+32
0x9D00499C 0x00000000 ;_strd3+36
0x9D0049A0 0x00000000 ;_strd3+40
0x9D0049A4 0x00000000 ;_strd3+44
; end of _strd3
;,0 :: _initBlock_1 [76]
; Containing: configDescriptor1 [41]
; strd2 [34]
0x9D0049A8 0x00290209 ;_initBlock_1+0 : configDescriptor1 at 0x9D0049A8
0x9D0049AC 0x80000101 ;_initBlock_1+4
0x9D0049B0 0x00040932 ;_initBlock_1+8
0x9D0049B4 0x00030200 ;_initBlock_1+12
0x9D0049B8 0x21090000 ;_initBlock_1+16
0x9D0049BC 0x01000101 ;_initBlock_1+20
0x9D0049C0 0x07002122 ;_initBlock_1+24
0x9D0049C4 0x40038105 ;_initBlock_1+28
0x9D0049C8 0x05070100 ;_initBlock_1+32
0x9D0049CC 0x00400301 ;_initBlock_1+36
0x9D0049D0 0x03220001 ;_initBlock_1+40 : strd2 at 0x9D0049D2
0x9D0049D4 0x0069004D ;_initBlock_1+44
0x9D0049D8 0x0072006B ;_initBlock_1+48
0x9D0049DC 0x0065006F ;_initBlock_1+52
0x9D0049E0 0x0065006C ;_initBlock_1+56
0x9D0049E4 0x0074006B ;_initBlock_1+60
0x9D0049E8 0x006F0072 ;_initBlock_1+64
0x9D0049EC 0x0069006E ;_initBlock_1+68
0x9D0049F0 0x0061006B ;_initBlock_1+72
; end of _initBlock_1
;,0 :: _initBlock_2 [52]
; Containing: hid_rpt_desc [33]
; device_dsc [18]
0x9D0049F4 0x09FF0006 ;_initBlock_2+0 : hid_rpt_desc at 0x9D0049F4
0x9D0049F8 0x1901A101 ;_initBlock_2+4
0x9D0049FC 0x15402901 ;_initBlock_2+8
0x9D004A00 0x00FF2600 ;_initBlock_2+12
0x9D004A04 0x40950875 ;_initBlock_2+16
0x9D004A08 0x01190281 ;_initBlock_2+20
0x9D004A0C 0x08754029 ;_initBlock_2+24
0x9D004A10 0x02914095 ;_initBlock_2+28
0x9D004A14 0x011200C0 ;_initBlock_2+32 : device_dsc at 0x9D004A16
0x9D004A18 0x00000200 ;_initBlock_2+36
0x9D004A1C 0x12340800 ;_initBlock_2+40
0x9D004A20 0x00010001 ;_initBlock_2+44
0x9D004A24 0x01000201 ;_initBlock_2+48
; end of _initBlock_2
;,0 :: _initBlock_3 [4]
; Containing: ?ICS_addressCycles [2]
; ?ICS_pageSize [2]
0x9D004A28 0x00000000 ;_initBlock_3+0 : ?ICS_addressCycles at 0x9D004A28 : ?ICS_pageSize at 0x9D004A2A
; end of _initBlock_3
;main.c,0 :: ?ICS_busWidth [2]
0x9D004A2C 0x0008 ;?ICS_busWidth+0
; end of ?ICS_busWidth
;main.c,0 :: ?ICS_onfiParamPage [4]
0x9D004A30 0x00000000 ;?ICS_onfiParamPage+0
; end of ?ICS_onfiParamPage
;USBdsc.c,129 :: _strd1 [4]
0x9D004A34 0x04090304 ;_strd1+0
; end of _strd1
;,0 :: _initBlock_7 [3]
; Containing: ?ICS_data_line_last_op [2]
; ?ICS_isOnfi [1]
0x9D004A38 0x000002 ;_initBlock_7+0 : ?ICS_data_line_last_op at 0x9D004A38 : ?ICS_isOnfi at 0x9D004A3A
; end of _initBlock_7
Symbol List:
//** Routines locations **
//ADDRESS SIZE PROCEDURE
//----------------------------------------------
0x9D000000 [20] __Lib_USB_USB_EP0_Transmit_Options
0x9D000014 [28] __Lib_USB_USB_EP0_Send_ROM
0x9D000030 [160] __Lib_USB_USB_Configure_Endpoint
0x9D0000D0 [296] __Lib_USB_USB_CtrlTrf_Tx_Service
0x9D0001F8 [48] __Lib_USB_USB_memset
0x9D000228 [32] __Lib_USB_USB_EP0_Send_RAM
0x9D000248 [272] __Lib_USB_USB_Get_Dsc_Handler
0x9D000358 [276] __Lib_USB_USB_Set_Cfg_Handler
0x9D00046C [532] __Lib_USB_USB_Check_HID_Request
0x9D000680 [108] __Lib_USB_USB_Enable_Endpoint
0x9D0006EC [248] __Lib_USB_USB_Transfer_Packet
0x9D0007E4 [344] __Lib_USB_USB_Get_Status_Handler
0x9D00093C [196] __Lib_USB_USBCtrlEPAllowDataStage
0x9D000A00 [268] __Lib_USB_USBCtrlEPAllowStatusStage
0x9D000B0C [1028] __Lib_USB_USB_Std_Feature_Req_Handler
0x9D000F10 [416] __Lib_USB_USB_CtrlTrf_Rx_Service
0x9D0010B0 [40] __Lib_USB_USB_CB_Check_Other_Req
0x9D0010D8 [524] __Lib_USB_USB_Check_Std_Request
0x9D0012E4 [384] __Lib_USB_USB_CtrlEP_Service_Complete
0x9D001464 [140] __Lib_USB_USB_CB_Init_EP
0x9D0014F0 [296] __Lib_USB_USB_CtrlTrf_In_Handler
0x9D001618 [144] __Lib_USB_USB_CtrlTrf_Out_Handler
0x9D0016A8 [196] __Lib_USB_USB_CtrlTrf_Setup_Handler
0x9D00176C [252] __Lib_USB_USB_CB_Handler
0x9D001868 [72] __Lib_USB_USB_Disable_Non_Zero_Endpoints
0x9D0018B0 [308] _data_line_read_byte
0x9D0019E4 [80] __Lib_USB_USB_Configure
0x9D001A34 [56] _USB_Init_Desc
0x9D001A6C [388] _data_line_write_byte
0x9D001BF0 [36] __Lib_USB_USB_Handle_Busy
0x9D001C14 [292] __Lib_USB_GetMaxIndexInConfigDsc
0x9D001D38 [156] __Lib_USB_GetMaxIndexInDevDsc
0x9D001DD4 [24] __Lib_USB_USB_Clear_Interrupt
0x9D001DEC [100] __Lib_USB_USB_Suspend
0x9D001E50 [96] __Lib_MemManager_MM_CheckBlocks
0x9D001EB0 [96] __Lib_USB_USB_Wake_From_Suspend
0x9D001F10 [316] __Lib_USB_USB_Ctrl_EPService
0x9D00204C [124] __Lib_USB_USB_Stall_Handler
0x9D0020C8 [56] _nand_chip_unselect
0x9D002100 [48] _nand_wait_ready
0x9D002130 [48] _do_delay
0x9D002160 [156] _nand_write
0x9D0021FC [100] _nand_send_command
0x9D002260 [124] _nand_is_ready
0x9D0022DC [224] _nand_read
0x9D0023BC [292] _Gen_Write
0x9D0024E0 [1184] __Lib_MemManager_MM_GetMemAlign
0x9D002980 [20] _USB_Break
0x9D002994 [216] _nand_send_address
0x9D002A6C [636] __Lib_MemManager_MM_Defragment
0x9D002CE8 [116] __Lib_USB_USB_Attach_Device
0x9D002D5C [88] __Lib_USB_GetMaxStrignDscIndex
0x9D002DB4 [636] __Lib_USB_USB_Device_Init
0x9D003030 [1024] __Lib_USB_USB_Device_Service
0x9D003430 [208] _Gen_Read
0x9D003500 [460] _nand_chip_select
0x9D0036CC [120] _cmd_chip_read_param_page
0x9D003744 [320] _cmd_chip_read_page
0x9D003884 [392] _cmd_chip_read_page_cache_sequential
0x9D003A0C [128] _MM_Init
0x9D003A8C [72] _cmd_chip_read_status
0x9D003AD4 [296] _cmd_chip_page_program
0x9D003BFC [76] _HID_Enable
0x9D003C48 [108] _cmd_chip_read_status_enhanced
0x9D003CB4 [148] _cmd_chip_read_unique_id
0x9D003D48 [100] _cmd_chip_block_erase
0x9D003DAC [72] _nand_toggle_wp
0x9D003DF4 [60] _HID_Read
0x9D003E30 [192] _cmd_chip_read_id
0x9D003EF0 [48] _cmd_chip_enable
0x9D003F20 [28] _cmd_chip_disable
0x9D003F3C [68] _cmd_chip_reset
0x9D003F80 [32] ___CC2DW
0x9D003FA0 [28] _USB_Polling_Proc
0x9D003FBC [152] _init_nand_data_line
0x9D004054 [272] _init_nand_control_line
0x9D004164 [36] _HID_Write
0x9D004188 [144] _Malloc
0x9D004218 [24] ___GenExcept
0x9D004230 [24] ___BootGenExcept
0x9D004248 [1840] _main
0xBFC00000 [296] ___BootStartUp
//** Variables locations **
//ADDRESS SIZE VARIABLE
//----------------------------------------------
0xA0000000 [64] __Lib_USB_BDT
0xA0000040 [2] _addressCycles
0xA0000042 [2] _pageSize
0xA0000044 [2] _busWidth
0xA0000046 [1] _isOnfi
0xA0000047 [1] _endpoint_number
0xA0000048 [4] _onfiParamPage
0xA000004C [2] _data_line_last_op
0xA000004E [2] _ep_data_out
0xA0000050 [4] __Lib_USB_pDst
0xA0000054 [1] _USTATcopy
0xA0000055 [1] __Lib_USB_USBAlternateInterface
0xA0000056 [1] _USBDeferStatusStagePacket
0xA0000057 [1] _USBDeferOUTDataStagePackets
0xA0001F98 [1] __Lib_USB_BothEP0OutUOWNsSet
0xA0001F99 [1] _USBStatusStageEnabledFlag2
0xA0001F9A [1] _USBDeferINDataStagePackets
0xA0001F9B [1] __Lib_USB_RemoteWakeup
0xA0001F9C [4] __Lib_USB_BDTEntry_EP0Out_NextPtr
0xA0001FA0 [64] _readbuff
0xA0001FE0 [1] _kk
0xA0001FE1 [3072] _writebuff
0xA0002BE1 [2] _ep_data_in
0xA0002BE3 [1] __Lib_USB_maxDescriptorIndex
0xA0002BE4 [4] __Lib_USB_USB_Write_Buffer
0xA0002BE8 [1] _USBStatusStageEnabledFlag1
0xA0002BE9 [5] _nandId
0xA0002BEE [1] _MM_NrFreeBlocksUsed
0xA0002BEF [1] _MM_PossiblyFragmented
0xA0002BF0 [4] __Lib_USB_BDTEntry_EP0Out_CurrentPtr
0xA0002BF4 [1] _MM_Error_
0xA0002BF5 [1] __Lib_USB_USBDeviceState
0xA0002BF6 [1] __Lib_USB_active_protocol
0xA0002BF7 [1] __Lib_USB_USBActiveConfiguration
0xA0002BF8 [160] _MM_FreeMemTable
0xA0002C98 [4] __Lib_USB_USB_Read_Buffer
0xA0002C9C [8] __Lib_USB_BDTEntry_InPtr
0xA0002CA4 [4] __Lib_USB_USB_Out_Handle
0xA0002CA8 [12] _USB_string_dsc_ptr
0xA0002CB4 [4] _USB_config_dsc_ptr
0xA0002CB8 [8] __Lib_USB_SetupPkt
0xA0002CC0 [8] __Lib_USB_inPipes
0xA0002CC8 [1] __Lib_USB_idle_rate
0xA0002CC9 [1] __Lib_USB_shortPacketStatus
0xA0002CCA [1] __Lib_USB_controlTransferState
0xA0002CCB [1] _USBBusIsSuspended
0xA0002CCC [8] __Lib_USB_BDTEntry_OutPtr
0xA0002CD4 [12] __Lib_USB_outPipes
0xA0002CE0 [8] __Lib_USB_CtrlTrfData
0xA0002CE8 [4] __Lib_USB__USB_Stop_Waiting
0xA0002CEC [4] __Lib_USB_USB_In_Handle
0xA0002CF0 [1] __Lib_USB__Is_HID
//** Constants locations **
//ADDRESS SIZE CONSTANT
//----------------------------------------------
0x9D004978 [48] _strd3
0x9D0049A8 [41] _configDescriptor1
0x9D0049D2 [34] _strd2
0x9D0049F4 [33] _hid_rpt_desc
0x9D004A16 [18] _device_dsc
0x9D004A28 [2] ?ICS_addressCycles
0x9D004A2A [2] ?ICS_pageSize
0x9D004A2C [2] ?ICS_busWidth
0x9D004A30 [4] ?ICS_onfiParamPage
0x9D004A34 [4] _strd1
0x9D004A38 [2] ?ICS_data_line_last_op
0x9D004A3A [1] ?ICS_isOnfi