OpenCores
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

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.