If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working at any time.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Yu-Gi-Oh! Duel Monsters 6: Expert 2/ROM map
Jump to navigation
Jump to search
The following article is a ROM map for Yu-Gi-Oh! Duel Monsters 6: Expert 2.
Deck shuffling and forcing a specific starting hand
08005EE4 B5F0 push r4-r7,r14 ; 08005EE6 4657 mov r7,r10 ; 08005EE8 464E mov r6,r9 ; 08005EEA 4645 mov r5,r8 ; 08005EEC B4E0 push r5-r7 ; 08005EEE 4682 mov r10,r0 ; 08005EF0 4688 mov r8,r1 ; 08005EF2 4B26 ldr r3,=Lxx_2012384h ; 08005EF4 2001 mov r0,1h ; 08005EF6 4651 mov r1,r10 ; 08005EF8 4008 and r0,r1 ; 08005EFA 4925 ldr r1,=Lxx_0D64h ; 08005EFC 4341 mul r1,r0 ; 08005EFE 18CA add r2,r1,r3 ; 08005F00 78D0 ldrb r0,[r2,3h] ;r0 = number_of_cards_in_deck 08005F02 2800 cmp r0,0h ; 08005F04 D100 bne Lxx_8005F08h ;if (number_of_cards_in_deck ≠ 0), skip next instruction 08005F06 E1BB b Lxx_8006280h ;else exit this subroutine 08005F08 78D0 ldrb r0,[r2,3h] ;r0 = number_of_cards_in_deck 08005F0A 4644 mov r4,r8 ; 08005F0C 4344 mul r4,r0 ; 08005F0E 46A0 mov r8,r4 ; 08005F10 2C00 cmp r4,0h ; 08005F12 DD19 ble Lxx_8005F48h ; 08005F14 4C1F ldr r4,=Lxx_7C4h ; 08005F16 1918 add r0,r3,r4 ; 08005F18 180F add r7,r1,r0 ;r7 = pointer_to_deck 08005F1A 4645 mov r5,r8 ; 08005F1C 1C16 mov r6,r2 ; 08005F1E F074FB0D bl Lxx_807A53Ch ;PRNG - LCG rand() 08005F22 78F1 ldrb r1,[r6,3h] ; 08005F24 F085F984 bl Lxx_808B230h ; 08005F28 1C04 mov r4,r0 ; 08005F2A F074FB07 bl Lxx_807A53Ch ;PRNG - LCG rand() 08005F2E 78F1 ldrb r1,[r6,3h] ; 08005F30 F085F97E bl Lxx_808B230h ; 08005F34 1C02 mov r2,r0 ; 08005F36 00A0 lsl r0,r4,2h ; 08005F38 1838 add r0,r7,r0 ; 08005F3A 0091 lsl r1,r2,2h ; 08005F3C 1879 add r1,r7,r1 ; 08005F3E F7FFFB5B bl Lxx_80055F8h ; 08005F42 3D01 sub r5,1h ; 08005F44 2D00 cmp r5,0h ; 08005F46 D1EA bne Lxx_8005F1Eh ; 08005F48 4913 ldr r1,=Lxx_200EF88h ;Non-random starting hand starts here (I think, will continue tomorrow) 08005F4A 2001 mov r0,1h ; 08005F4C 7849 ldrb r1,[r1,1h] ; 08005F4E 4008 and r0,r1 ; 08005F50 2800 cmp r0,0h ; 08005F52 D000 beq Lxx_8005F56h ; 08005F54 E194 b Lxx_8006280h ; 08005F56 4650 mov r0,r10 ; 08005F58 2800 cmp r0,0h ; 08005F5A D100 bne Lxx_8005F5Eh ; 08005F5C E190 b Lxx_8006280h ; 08005F5E 2500 mov r5,0h ; 08005F60 2700 mov r7,0h ; 08005F62 F074FAEB bl Lxx_807A53Ch ; 08005F66 2164 mov r1,64h ; 08005F68 F085F962 bl Lxx_808B230h ; 08005F6C 1C04 mov r4,r0 ; 08005F6E 480B ldr r0,=Lxx_3000040h ; 08005F70 490B ldr r1,=Lxx_486Ah ; 08005F72 1840 add r0,r0,r1 ; 08005F74 8800 ldrh r0,[r0] ; 08005F76 0540 lsl r0,r0,15h ; 08005F78 0EC0 lsr r0,r0,1Bh ; 08005F7A 3801 sub r0,1h ; 08005F7C 2819 cmp r0,19h ; 08005F7E D900 bls Lxx_8005F82h ; 08005F80 E134 b Lxx_80061ECh ; 08005F82 0080 lsl r0,r0,2h ; 08005F84 4907 ldr r1,=Lxx_8005FA8h ; 08005F86 1840 add r0,r0,r1 ; 08005F88 6800 ldr r0,[r0] ; 08005F8A 4687 mov r15,r0 ;
0x190AC - Decks initialization before duel
080190AC B500 push r14 ; 080190AE F002FB13 bl Lxx_801B6D8h ; 080190B2 490A ldr r1,=Lxx_200EF88h ; 080190B4 2002 mov r0,2h ; 080190B6 4240 neg r0,r0 ; 080190B8 784A ldrb r2,[r1,1h] ; 080190BA 4010 and r0,r2 ; 080190BC 7048 strb r0,[r1,1h] ; 080190BE F7EDFA43 bl Lxx_8006548h ; 080190C2 2000 mov r0,0h ; 080190C4 2108 mov r1,8h ; 080190C6 F7ECFF0D bl Lxx_8005EE4h ; 080190CA F03FFC13 bl Lxx_80588F4h ;CPU Deck generation global subroutine 080190CE 2001 mov r0,1h ; 080190D0 2108 mov r1,8h ; 080190D2 F7ECFF07 bl Lxx_8005EE4h ;Duel initialization, decks shuffling 080190D6 2001 mov r0,1h ; 080190D8 BC02 pop r1 ; 080190DA 4708 bx r1 ;
CPU Deck management
Branch to CPU opponent's deck subroutines
Define some CPU opponent group flags, and branch to CPU opponent's subroutine
- Arguments:
- r0 : Opponent's internal ID
08056820 B530 push r4,r5,r14 ; 08056822 1C01 mov r1,r0 ;r1 = cpu_opponent_internal_id 08056824 4A08 ldr r2,=Lxx_200EF88h ; 08056826 2000 mov r0,0h ; 08056828 6050 str r0,[r2,4h] ;CPU opponent group flags = 0 0805682A 290D cmp r1,0Dh ; 0805682C DD01 ble Lxx_8056832h ;if (cpu_opponent_internal_id ≤ 13), branch to 08056832 0805682E 200F mov r0,0Fh ; 08056830 6050 str r0,[r2,4h] ;CPU opponent group flags = 0b00001111 08056832 1E4D sub r5,r1,1 ;r5 = cpu_opponent_internal_id - 1 08056834 2D19 cmp r5,19h ; 08056836 D901 bls Lxx_805683Ch ;if ((cpu_opponent_internal_id - 1) ≤ 25), skip next instruction 08056838 F001FF96 bl Lxx_8058768h ;call 08058768 0805683C 00A8 lsl r0,r5,2h ; 0805683E 4903 ldr r1,=Lxx_8056850h ; 08056840 1840 add r0,r0,r1 ; 08056842 6800 ldr r0,[r0] ;r0 = pointer_to_cpu_opponent_subroutine 08056844 4687 mov r15,r0 ;... continue to pointer_to_cpu_opponent_subroutine
Pointers array to each CPU opponent's subroutines
0x5684C-0x568B7- Pointers array to each CPU opponent's subroutines- CPU opponents with IDs 01 to 13 have some cards added to their deck depending on the player's deck
- Some CPU opponents have a varying probability of starting the duel with a fixed hand
B8 68 05 08 - Mokuba Kaiba 70 69 05 08 - Anzu Mazaki B8 6A 05 08 - Dinosaur Ryuzaki 50 6B 05 08 - Esper Roba D4 6B 05 08 - Sugoroku Mutou 6C 6C 05 08 - Ryuji Otogi 64 6D 05 08 - Ryota Kajiki 34 6E 05 08 - Insector Haga 24 6F 05 08 - Mai Kujaku 80 70 05 08 - Bandit Keith E8 71 05 08 - Katsuya Jonouchi 54 73 05 08 - Mind-controlled Anzu F0 74 05 08 - Rare Hunter 60 76 05 08 - Pandora 1C 77 05 08 - Doll F0 77 05 08 - Mask of Darkness & Mask of Light E8 78 05 08 - Rishid 8C 7A 05 08 - Mind-controlled Jonouchi 30 7C 05 08 - Pegasus J. Crawford AC 7D 05 08 - Marik Ishtar 54 7F 05 08 - Yami Bakura E4 80 05 08 - Ishizu Ishtar 78 82 05 08 - Seto Kaiba 20 84 05 08 - Yami Marik 68 87 05 08 - Shadi - Skips to the next part where it'll pick a deck at random F4 85 05 08 - Yami Yugi
CPU decks subroutines
Each of these arrays is preceded by a subroutine reading this array, and having a few more hard-coded cards in it.
Mai Kujaku
Mai Kujaku's deck subroutine
08056F24 2001 mov r0,1h ; 08056F26 217C mov r1,7Ch ;Faith Bird 08056F28 F7FEFDF0 bl Lxx_8055B0Ch ; 08056F2C 2001 mov r0,1h ; 08056F2E 217C mov r1,7Ch ;Faith Bird 08056F30 F7FEFDEC bl Lxx_8055B0Ch ; 08056F34 4C4B ldr r4,=Lxx_1D1h ;Skull Red Bird, from array 08056F36 2001 mov r0,1h ; 08056F38 1C21 mov r1,r4 ; 08056F3A F7FEFDE7 bl Lxx_8055B0Ch ; 08056F3E 2001 mov r0,1h ; 08056F40 1C21 mov r1,r4 ; 08056F42 F7FEFDE3 bl Lxx_8055B0Ch ; 08056F46 34AA add r4,0AAh ;Blue-Winged Crown 08056F48 2001 mov r0,1h ; 08056F4A 1C21 mov r1,r4 ; 08056F4C F7FEFDDE bl Lxx_8055B0Ch ; 08056F50 2001 mov r0,1h ; 08056F52 1C21 mov r1,r4 ; 08056F54 F7FEFDDA bl Lxx_8055B0Ch ; 08056F58 4C43 ldr r4,=Lxx_496h ;Harpie's Brother, from array 08056F5A 2001 mov r0,1h ; 08056F5C 1C21 mov r1,r4 ; 08056F5E F7FEFDD5 bl Lxx_8055B0Ch ; 08056F62 2001 mov r0,1h ; 08056F64 1C21 mov r1,r4 ; 08056F66 F7FEFDD1 bl Lxx_8055B0Ch ; 08056F6A 2001 mov r0,1h ; 08056F6C 213E mov r1,3Eh ;Harpie Lady Sisters 08056F6E F7FEFDCD bl Lxx_8055B0Ch ; 08056F72 2001 mov r0,1h ; 08056F74 213E mov r1,3Eh ;Harpie Lady Sisters 08056F76 F7FEFDC9 bl Lxx_8055B0Ch ; 08056F7A 2001 mov r0,1h ; 08056F7C 213E mov r1,3Eh ;Harpie Lady Sisters 08056F7E F7FEFDC5 bl Lxx_8055B0Ch ; 08056F82 4C3A ldr r4,=Lxx_181h ;Harpie's Pet Dragon, from array 08056F84 2001 mov r0,1h ; 08056F86 1C21 mov r1,r4 ; 08056F88 F7FEFDC0 bl Lxx_8055B0Ch ; 08056F8C 2001 mov r0,1h ; 08056F8E 1C21 mov r1,r4 ; 08056F90 F7FEFDBC bl Lxx_8055B0Ch ; 08056F94 4C36 ldr r4,=Lxx_4E1h ;Cyber Harpie, from array 08056F96 2001 mov r0,1h ; 08056F98 1C21 mov r1,r4 ; 08056F9A F7FEFDB7 bl Lxx_8055B0Ch ; 08056F9E 2001 mov r0,1h ; 08056FA0 1C21 mov r1,r4 ; 08056FA2 F7FEFDB3 bl Lxx_8055B0Ch ; 08056FA6 2001 mov r0,1h ; 08056FA8 1C21 mov r1,r4 ; 08056FAA F7FEFDAF bl Lxx_8055B0Ch ; 08056FAE 249E mov r4,9Eh ; 08056FB0 0064 lsl r4,r4,1h ;Cyber Shield 08056FB2 2001 mov r0,1h ; 08056FB4 1C21 mov r1,r4 ; 08056FB6 F7FEFDA9 bl Lxx_8055B0Ch ; 08056FBA 2001 mov r0,1h ; 08056FBC 1C21 mov r1,r4 ; 08056FBE F7FEFDA5 bl Lxx_8055B0Ch ; 08056FC2 2001 mov r0,1h ; 08056FC4 1C21 mov r1,r4 ; 08056FC6 F7FEFDA1 bl Lxx_8055B0Ch ; 08056FCA 3401 add r4,1h ;Elegant Egotist 08056FCC 2001 mov r0,1h ; 08056FCE 1C21 mov r1,r4 ; 08056FD0 F7FEFD9C bl Lxx_8055B0Ch ; 08056FD4 2001 mov r0,1h ; 08056FD6 1C21 mov r1,r4 ; 08056FD8 F7FEFD98 bl Lxx_8055B0Ch ; 08056FDC 2001 mov r0,1h ; 08056FDE 1C21 mov r1,r4 ; 08056FE0 F7FEFD94 bl Lxx_8055B0Ch ; 08056FE4 4923 ldr r1,=Lxx_14Fh ;Dark Hole, from array 08056FE6 2001 mov r0,1h ; 08056FE8 F7FEFD90 bl Lxx_8055B0Ch ; 08056FEC 21A8 mov r1,0A8h ; 08056FEE 0049 lsl r1,r1,1h ;Raigeki 08056FF0 2001 mov r0,1h ; 08056FF2 F7FEFD8B bl Lxx_8055B0Ch ; 08056FF6 4920 ldr r1,=Lxx_15Bh ;Swords of Revealing Light, from array 08056FF8 2001 mov r0,1h ; 08056FFA F7FEFD87 bl Lxx_8055B0Ch ; 08056FFE 491F ldr r1,=Lxx_29Fh ;Harpie's Feather Duster, from array 08057000 2001 mov r0,1h ; 08057002 F7FEFD83 bl Lxx_8055B0Ch ; 08057006 21FC mov r1,0FCh ; 08057008 0089 lsl r1,r1,2h ;Monster Reborn 0805700A 2001 mov r0,1h ; 0805700C F7FEFD7E bl Lxx_8055B0Ch ; 08057010 248D mov r4,8Dh ; 08057012 00E4 lsl r4,r4,3h ;Rising Air Current 08057014 2001 mov r0,1h ; 08057016 1C21 mov r1,r4 ; 08057018 F7FEFD78 bl Lxx_8055B0Ch ; 0805701C 2001 mov r0,1h ; 0805701E 1C21 mov r1,r4 ; 08057020 F7FEFD74 bl Lxx_8055B0Ch ; 08057024 3420 add r4,20h ;Premature Burial 08057026 2001 mov r0,1h ; 08057028 1C21 mov r1,r4 ; 0805702A F7FEFD6F bl Lxx_8055B0Ch ; 0805702E 2001 mov r0,1h ; 08057030 1C21 mov r1,r4 ; 08057032 F7FEFD6B bl Lxx_8055B0Ch ; 08057036 3CDD sub r4,0DDh ;Bell of Destruction 08057038 2001 mov r0,1h ; 0805703A 1C21 mov r1,r4 ; 0805703C F7FEFD66 bl Lxx_8055B0Ch ; 08057040 2001 mov r0,1h ; 08057042 1C21 mov r1,r4 ; 08057044 F7FEFD62 bl Lxx_8055B0Ch ; 08057048 21F0 mov r1,0F0h ; 0805704A 0089 lsl r1,r1,2h ;Negate Attack 0805704C 2001 mov r0,1h ; 0805704E F7FEFD5D bl Lxx_8055B0Ch ; 08057052 2184 mov r1,84h ; 08057054 00C9 lsl r1,r1,3h ;Mirror Force 08057056 2001 mov r0,1h ; 08057058 F7FEFD58 bl Lxx_8055B0Ch ; 0805705C 34EF add r4,0EFh ;Aqua Chorus 0805705E F001FAA8 bl Lxx_80585B2h ;
Mai Valentine card_id array
D1 01 00 00 96 04 00 00 81 01 00 00 E1 04 00 00 4F 01 00 00 5B 01 00 00 9F 02 00 00 Skull Red Bird Harpie's Brother Harpie's Pet Dragon Cyber Harpie Dark Hole Swords of Revealing Light Harpie's Feather Duster
CPU decks extra cards
Pointers to subroutines adding specific cards to deck
0x587AC-0x58813
01 - 14 88 05 08 - Mokuba Kaiba 02 - EC 88 05 08 - Anzu Mazaki 03 - EC 88 05 08 - Dinosaur Ryuzaki 04 - EC 88 05 08 - Esper Roba 05 - EC 88 05 08 - Sugoroku Mutou 06 - EC 88 05 08 - Ryuji Otogi 07 - EC 88 05 08 - Ryota Kajiki 08 - EC 88 05 08 - Insector Haga 09 - EC 88 05 08 - Mai Kujaku 10 - EC 88 05 08 - Bandit Keith 11 - EC 88 05 08 - Katsuya Jonouchi 12 - 5C 88 05 08 - Mind-controlled Anzu 13 - 6C 88 05 08 - Rare Hunter 14 - 7C 88 05 08 - Pandora 15 - EC 88 05 08 - Doll 16 - EC 88 05 08 - Mask of Darkness & Mask of Light 17 - 88 88 05 08 - Rishid 18 - EC 88 05 08 - Mind-controlled Jonouchi 19 - EC 88 05 08 - Pegasus J. Crawford 20 - EC 88 05 08 - Marik Ishtar 21 - 94 88 05 08 - Yami Bakura 22 - EC 88 05 08 - Ishizu Ishtar 23 - EC 88 05 08 - Seto Kaiba 24 - EC 88 05 08 - Yami Marik 25 - A4 88 05 08 - Shadi 26 - EC 88 05 08 - Yami Yugi
cpu_opponent_internal_id 2 to 11, 15, 16, 18, 19, 20, 22, 23, 24, 26
- Duplicate of the three last instructions of previous subroutine for clarity in the page navigation
- Anzu Mazaki, Dinosaur Ryuzaki, Esper Roba, Sugoroku Mutou, Ryuji Otogi, Ryota Kajiki, Insector Haga, Mai Kujaku, Bandit Keith, Katsuya Jonouchi, Doll, Mask of Darkness & Mask of Light, Mind-controlled Jonouchi, Pegasus J. Crawford, Marik Ishtar, Ishizu Ishtar, Seto Kaiba, Yami Marik, Yami Yugi
080588EC BC30 pop r4,r5 ; 080588EE BC01 pop r0 ; 080588F0 4700 bx r0 ;
Add specific cards to some opponents based on their flags and on Player's Deck content
080588F2 0000 lsl r0,r0,0h ; 080588F4 B530 push r4,r5,r14 ; 080588F6 B09D add sp,-74h ; 080588F8 2000 mov r0,0h ; 080588FA 4669 mov r1,r13 ; 080588FC F7FCFB48 bl Lxx_8054F90h ;Check cards in Player's Deck 08058900 4CD5 ldr r4,=Lxx_20138ACh ;r4 = pointer_to_cpu_deck 08058902 25A0 mov r5,0A0h ; 08058904 006D lsl r5,r5,1h ;r5 = 320 08058906 1C20 mov r0,r4 ;r0 = pointer_to_cpu_deck 08058908 1C29 mov r1,r5 ;r1 = 320 0805890A F01FFF87 bl Lxx_807881Ch ;Blanks specified RAM area 0805890E 21A0 mov r1,0A0h ; 08058910 0089 lsl r1,r1,2h ; 08058912 1860 add r0,r4,r1 ;r0 = pointer_to_cpu_deck + 640 08058914 1C29 mov r1,r5 ; 08058916 F01FFF81 bl Lxx_807881Ch ;Blanks specified RAM area 0805891A 4AD0 ldr r2,=Lxx_0FFFFF83Fh ; 0805891C 18A5 add r5,r4,r2 ;r5 = pointer_to_cpu_deck - 1985 0805891E 2000 mov r0,0h ; 08058920 7028 strb r0,[r5] ;store 0 in [pointer_to_cpu_deck - 1985] 08058922 49CF ldr r1,=Lxx_0FFFFF841h ; 08058924 1864 add r4,r4,r1 ;r4 = pointer_to_cpu_deck - 1983 08058926 7020 strb r0,[r4] ;store 0 in [pointer_to_cpu_deck - 1983] 08058928 48CE ldr r0,=Lxx_80B5328h ; 0805892A 4CCF ldr r4,=Lxx_3000040h ; 0805892C 4ACF ldr r2,=Lxx_486Ah ; 0805892E 18A4 add r4,r4,r2 ; 08058930 8822 ldrh r2,[r4] ; 08058932 0551 lsl r1,r2,15h ; 08058934 0EC9 lsr r1,r1,1Bh ; 08058936 F7C0F90B bl Lxx_8018B50h ; 0805893A F7C0F90F bl Lxx_8018B5Ch ; 0805893E 8824 ldrh r4,[r4] ; 08058940 0560 lsl r0,r4,15h ; 08058942 0EC0 lsr r0,r0,1Bh ; 08058944 F7FDFF6C bl Lxx_8056820h ;Retrieve primary CPU deck cards 08058948 782D ldrb r5,[r5] ;r5 = number_of_cards_in_cpu_deck ; cpu_opponent_internal_id 2 to 11, 15, 16, 18, 19, 20, 22, 23, 24, 26 branch to here 0805894A 2D27 cmp r5,27h ; 0805894C D900 bls Lxx_8058950h ;if (number_of_cards_in_cpu_deck ≤ 39), skip next instruction 0805894E E0D8 b Lxx_8058B02h ;else branch to 08058B02 08058950 9804 ldr r0,[sp,10h] ;r0 = # of Magic cards in Player's deck 08058952 2564 mov r5,64h ; 08058954 4368 mul r0,r5 ;r0 = number_of_magic_cards_in_player_deck × 100 08058956 9906 ldr r1,[sp,18h] ;r1 = # of valid cards in Player's deck 08058958 F032FC1E bl Lxx_808B198h ;call "ratio TYPE_cards / number_of_cards_in_deck" 0805895C 281D cmp r0,1Dh ; 0805895E DD0C ble Lxx_805897Ah ;if (magic_cards_ratio ≤ 29%), branch to 0805897A 08058960 48C3 ldr r0,=Lxx_80B533Ch ; 08058962 F7C0F8F5 bl Lxx_8018B50h ; 08058966 F7C0F8F9 bl Lxx_8018B5Ch ; 0805896A 49C2 ldr r1,=Lxx_405h ;Magic Jammer 0805896C 2001 mov r0,1h ; 0805896E F7FDF8CD bl Lxx_8055B0Ch ; 08058972 49C1 ldr r1,=Lxx_48Bh ;Morphing Jar #2 08058974 2001 mov r0,1h ; 08058976 F7FDF8C9 bl Lxx_8055B0Ch ; 0805897A 9805 ldr r0,[sp,14h] ; 0805897C 4368 mul r0,r5 ; 0805897E 9906 ldr r1,[sp,18h] ; 08058980 F032FC0A bl Lxx_808B198h ; 08058984 281D cmp r0,1Dh ; 08058986 DD10 ble Lxx_80589AAh ; 08058988 48BC ldr r0,=Lxx_80B5348h ; 0805898A F7C0F8E1 bl Lxx_8018B50h ; 0805898E F7C0F8E5 bl Lxx_8018B5Ch ; 08058992 49BB ldr r1,=Lxx_29Fh ; 08058994 2001 mov r0,1h ; 08058996 F7FDF8B9 bl Lxx_8055B0Ch ; 0805899A 49BA ldr r1,=Lxx_406h ;Seven Tools of the Bandit 0805899C 2001 mov r0,1h ; 0805899E F7FDF8B5 bl Lxx_8055B0Ch ; 080589A2 49B9 ldr r1,=Lxx_486h ;Nobleman of Extermination 080589A4 2001 mov r0,1h ; 080589A6 F7FDF8B1 bl Lxx_8055B0Ch ; 080589AA 9815 ldr r0,[sp,54h] ; 080589AC 9916 ldr r1,[sp,58h] ; 080589AE 1840 add r0,r0,r1 ; 080589B0 4368 mul r0,r5 ; 080589B2 9906 ldr r1,[sp,18h] ; 080589B4 F032FBF0 bl Lxx_808B198h ; 080589B8 2813 cmp r0,13h ; 080589BA DD14 ble Lxx_80589E6h ; 080589BC 48B3 ldr r0,=Lxx_80B5354h ; 080589BE F7C0F8C7 bl Lxx_8018B50h ; 080589C2 24FA mov r4,0FAh ; 080589C4 0064 lsl r4,r4,1h ;Man-Eater Bug 080589C6 2001 mov r0,1h ; 080589C8 1C21 mov r1,r4 ; 080589CA F7FDF89F bl Lxx_8055B0Ch ; 080589CE 2001 mov r0,1h ; 080589D0 1C21 mov r1,r4 ; 080589D2 F7FDF89B bl Lxx_8055B0Ch ; 080589D6 49AE ldr r1,=Lxx_259h ;Penguin Soldier 080589D8 2001 mov r0,1h ; 080589DA F7FDF897 bl Lxx_8055B0Ch ; 080589DE 49AD ldr r1,=Lxx_452h ;Cyber Jar 080589E0 2001 mov r0,1h ; 080589E2 F7FDF893 bl Lxx_8055B0Ch ; 080589E6 9807 ldr r0,[sp,1Ch] ; 080589E8 4368 mul r0,r5 ; 080589EA 9C06 ldr r4,[sp,18h] ; 080589EC 1C21 mov r1,r4 ; 080589EE F032FBD3 bl Lxx_808B198h ; 080589F2 2809 cmp r0,9h ; 080589F4 DC06 bgt Lxx_8058A04h ; 080589F6 9808 ldr r0,[sp,20h] ; 080589F8 4368 mul r0,r5 ; 080589FA 1C21 mov r1,r4 ; 080589FC F032FBCC bl Lxx_808B198h ; 08058A00 2809 cmp r0,9h ; 08058A02 DD14 ble Lxx_8058A2Eh ; 08058A04 48A4 ldr r0,=Lxx_80B5364h ; 08058A06 F7C0F8A3 bl Lxx_8018B50h ; 08058A0A 48A4 ldr r0,=Lxx_200EF88h ; 08058A0C 6840 ldr r0,[r0,4h] ; 08058A0E 2104 mov r1,4h ; 08058A10 4008 and r0,r1 ; 08058A12 2800 cmp r0,0h ; 08058A14 D00B beq Lxx_8058A2Eh ; 08058A16 499A ldr r1,=Lxx_29Fh ;Harpie's Feather Duster 08058A18 2001 mov r0,1h ; 08058A1A F7FDF877 bl Lxx_8055B0Ch ; 08058A1E 49A0 ldr r1,=Lxx_3EAh ;Trap Hole 08058A20 2001 mov r0,1h ; 08058A22 F7FDF873 bl Lxx_8055B0Ch ; 08058A26 499F ldr r1,=Lxx_425h ;Heavy Storm 08058A28 2001 mov r0,1h ; 08058A2A F7FDF86F bl Lxx_8055B0Ch ; 08058A2E 9911 ldr r1,[sp,44h] ; 08058A30 2064 mov r0,64h ; 08058A32 4348 mul r0,r1 ; 08058A34 9906 ldr r1,[sp,18h] ; 08058A36 F032FBAF bl Lxx_808B198h ; 08058A3A 2806 cmp r0,6h ; 08058A3C DD30 ble Lxx_8058AA0h ; 08058A3E 489A ldr r0,=Lxx_80B5378h ; 08058A40 F7C0F886 bl Lxx_8018B50h ; 08058A44 21FC mov r1,0FCh ; 08058A46 0089 lsl r1,r1,2h ;Monster Reborn 08058A48 2000 mov r0,0h ; 08058A4A F7FCFA75 bl Lxx_8054F38h ; 08058A4E 2800 cmp r0,0h ; 08058A50 DD0F ble Lxx_8058A72h ; 08058A52 4996 ldr r1,=Lxx_1ABh ;Magician of Faith 08058A54 2000 mov r0,0h ; 08058A56 F7FCFA6F bl Lxx_8054F38h ; 08058A5A 2801 cmp r0,1h ; 08058A5C DD09 ble Lxx_8058A72h ; 08058A5E 488F ldr r0,=Lxx_200EF88h ; 08058A60 6840 ldr r0,[r0,4h] ; 08058A62 2108 mov r1,8h ; 08058A64 4008 and r0,r1 ; 08058A66 2800 cmp r0,0h ; 08058A68 D003 beq Lxx_8058A72h ; 08058A6A 4991 ldr r1,=Lxx_402h ;Call of the Dark 08058A6C 2001 mov r0,1h ; 08058A6E F7FDF84D bl Lxx_8055B0Ch ; 08058A72 4990 ldr r1,=Lxx_447h ;Call Of The Haunted 08058A74 2000 mov r0,0h ; 08058A76 F7FCFA5F bl Lxx_8054F38h ; 08058A7A 1C04 mov r4,r0 ; 08058A7C 2191 mov r1,91h ; 08058A7E 00C9 lsl r1,r1,3h ; 08058A80 2000 mov r0,0h ; 08058A82 F7FCFA59 bl Lxx_8054F38h ; 08058A86 1824 add r4,r4,r0 ; 08058A88 2C01 cmp r4,1h ; 08058A8A DD09 ble Lxx_8058AA0h ; 08058A8C 4883 ldr r0,=Lxx_200EF88h ; 08058A8E 6840 ldr r0,[r0,4h] ; 08058A90 2104 mov r1,4h ; 08058A92 4008 and r0,r1 ; 08058A94 2800 cmp r0,0h ; 08058A96 D003 beq Lxx_8058AA0h ; 08058A98 4981 ldr r1,=Lxx_3EAh ;Trap Hole 08058A9A 2001 mov r0,1h ; 08058A9C F7FDF836 bl Lxx_8055B0Ch ; 08058AA0 9912 ldr r1,[sp,48h] ; 08058AA2 2064 mov r0,64h ; 08058AA4 4348 mul r0,r1 ; 08058AA6 9906 ldr r1,[sp,18h] ; 08058AA8 F032FB76 bl Lxx_808B198h ; 08058AAC 2809 cmp r0,9h ; 08058AAE DD28 ble Lxx_8058B02h ; 08058AB0 4881 ldr r0,=Lxx_80B5388h ; 08058AB2 F7C0F84D bl Lxx_8018B50h ; 08058AB6 4C79 ldr r4,=Lxx_200EF88h ; 08058AB8 6861 ldr r1,[r4,4h] ; 08058ABA 2080 mov r0,80h ; 08058ABC 0040 lsl r0,r0,1h ; 08058ABE 4008 and r0,r1 ; 08058AC0 2800 cmp r0,0h ; 08058AC2 D01E beq Lxx_8058B02h ; 08058AC4 2004 mov r0,4h ; 08058AC6 4001 and r1,r0 ; 08058AC8 2900 cmp r1,0h ; 08058ACA D003 beq Lxx_8058AD4h ; 08058ACC 497B ldr r1,=Lxx_4C5h ;Card Destruction 08058ACE 2001 mov r0,1h ; 08058AD0 F7FDF81C bl Lxx_8055B0Ch ; 08058AD4 6860 ldr r0,[r4,4h] ; 08058AD6 2108 mov r1,8h ; 08058AD8 4008 and r0,r1 ; 08058ADA 2800 cmp r0,0h ; 08058ADC D008 beq Lxx_8058AF0h ; 08058ADE 21A5 mov r1,0A5h ; 08058AE0 0089 lsl r1,r1,2h ;Crush Card 08058AE2 2001 mov r0,1h ; 08058AE4 F7FDF812 bl Lxx_8055B0Ch ; 08058AE8 4975 ldr r1,=Lxx_475h ;Appropriate 08058AEA 2001 mov r0,1h ; 08058AEC F7FDF80E bl Lxx_8055B0Ch ; 08058AF0 6860 ldr r0,[r4,4h] ; 08058AF2 2102 mov r1,2h ; 08058AF4 4008 and r0,r1 ; 08058AF6 2800 cmp r0,0h ; 08058AF8 D003 beq Lxx_8058B02h ; 08058AFA 4972 ldr r1,=Lxx_24Eh ;Morphing Jar 08058AFC 2001 mov r0,1h ; 08058AFE F7FDF805 bl Lxx_8055B0Ch ; 08058B02 4D66 ldr r5,=Lxx_200EF88h ; 08058B04 6868 ldr r0,[r5,4h] ; 08058B06 2140 mov r1,40h ; 08058B08 4008 and r0,r1 ; 08058B0A 2800 cmp r0,0h ; 08058B0C D010 beq Lxx_8058B30h ; 08058B0E 486E ldr r0,=Lxx_80B5398h ; 08058B10 F7C0F81E bl Lxx_8018B50h ; 08058B14 24F2 mov r4,0F2h ; 08058B16 00A4 lsl r4,r4,2h ;Graceful Charity 08058B18 2001 mov r0,1h ; 08058B1A 1C21 mov r1,r4 ; 08058B1C F7FCFFF6 bl Lxx_8055B0Ch ; 08058B20 2001 mov r0,1h ; 08058B22 1C21 mov r1,r4 ; 08058B24 F7FCFFF2 bl Lxx_8055B0Ch ; 08058B28 4968 ldr r1,=Lxx_3F2h ;Pot of Greed 08058B2A 2001 mov r0,1h ; 08058B2C F7FCFFEE bl Lxx_8055B0Ch ; 08058B30 6868 ldr r0,[r5,4h] ; 08058B32 2180 mov r1,80h ; 08058B34 4008 and r0,r1 ; 08058B36 2800 cmp r0,0h ; 08058B38 D019 beq Lxx_8058B6Eh ; 08058B3A 4C65 ldr r4,=Lxx_231h ;Needle Worm, added by Mind-controlled Anzu 08058B3C 2001 mov r0,1h ; 08058B3E 1C21 mov r1,r4 ; 08058B40 F7FCFFE4 bl Lxx_8055B0Ch ; 08058B44 2001 mov r0,1h ; 08058B46 1C21 mov r1,r4 ; 08058B48 F7FCFFE0 bl Lxx_8055B0Ch ; 08058B4C 2001 mov r0,1h ; 08058B4E 1C21 mov r1,r4 ; 08058B50 F7FCFFDC bl Lxx_8055B0Ch ; 08058B54 21A5 mov r1,0A5h ; 08058B56 0089 lsl r1,r1,2h ;Crush Card 08058B58 2001 mov r0,1h ; 08058B5A F7FCFFD7 bl Lxx_8055B0Ch ; 08058B5E 495D ldr r1,=Lxx_485h ;Nobleman of Crossout 08058B60 2001 mov r0,1h ; 08058B62 F7FCFFD3 bl Lxx_8055B0Ch ; 08058B66 4948 ldr r1,=Lxx_486h ;Nobleman of Extermination 08058B68 2001 mov r0,1h ; 08058B6A F7FCFFCF bl Lxx_8055B0Ch ; 08058B6E 6868 ldr r0,[r5,4h] ; 08058B70 2120 mov r1,20h ; 08058B72 4008 and r0,r1 ; 08058B74 2800 cmp r0,0h ; 08058B76 D023 beq Lxx_8058BC0h ;if (bit_6_not_set), branch to 08058BC0 08058B78 4857 ldr r0,=Lxx_80B53A8h ; 08058B7A F7BFFFE9 bl Lxx_8018B50h ; 08058B7E 24F2 mov r4,0F2h ;Graceful Charity 08058B80 00A4 lsl r4,r4,2h ; 08058B82 2001 mov r0,1h ; 08058B84 1C21 mov r1,r4 ; 08058B86 F7FCFFC1 bl Lxx_8055B0Ch ; 08058B8A 2001 mov r0,1h ; 08058B8C 1C21 mov r1,r4 ; 08058B8E F7FCFFBD bl Lxx_8055B0Ch ; 08058B92 21FC mov r1,0FCh ; 08058B94 0089 lsl r1,r1,2h ;Monster Reborn 08058B96 2001 mov r0,1h ; 08058B98 F7FCFFB8 bl Lxx_8055B0Ch ; 08058B9C 34C0 add r4,0C0h ;Premature Burial 08058B9E 2001 mov r0,1h ; 08058BA0 1C21 mov r1,r4 ; 08058BA2 F7FCFFB3 bl Lxx_8055B0Ch ; 08058BA6 2001 mov r0,1h ; 08058BA8 1C21 mov r1,r4 ; 08058BAA F7FCFFAF bl Lxx_8055B0Ch ; 08058BAE 3C89 sub r4,89h ;Tribute to The Doomed 08058BB0 2001 mov r0,1h ; 08058BB2 1C21 mov r1,r4 ; 08058BB4 F7FCFFAA bl Lxx_8055B0Ch ; 08058BB8 2001 mov r0,1h ; 08058BBA 1C21 mov r1,r4 ; 08058BBC F7FCFFA6 bl Lxx_8055B0Ch ; 08058BC0 21A8 mov r1,0A8h ; 08058BC2 0049 lsl r1,r1,1h ;Raigeki 08058BC4 2000 mov r0,0h ;(player's deck) 08058BC6 F7FCF9B7 bl Lxx_8054F38h ;Counts number of a specific card in deck 08058BCA 2800 cmp r0,0h ; 08058BCC D103 bne Lxx_8058BD6h ;if (raigeki_in_player_deck), branch to 08058BD6 08058BCE 4943 ldr r1,=Lxx_3FEh ;Anti Raigeki 08058BD0 2001 mov r0,1h ;(cpu) 08058BD2 F7FDF885 bl Lxx_8055CE0h ;Remove card from deck 08058BD6 4942 ldr r1,=Lxx_14Fh ;Dark Hole 08058BD8 2000 mov r0,0h ; 08058BDA F7FCF9AD bl Lxx_8054F38h ; 08058BDE 2800 cmp r0,0h ; 08058BE0 D103 bne Lxx_8058BEAh ; 08058BE2 4940 ldr r1,=Lxx_3FBh ;White Hole 08058BE4 2001 mov r0,1h ; 08058BE6 F7FDF87B bl Lxx_8055CE0h ; 08058BEA 21FC mov r1,0FCh ; 08058BEC 0089 lsl r1,r1,2h ;Monster Reborn 08058BEE 2000 mov r0,0h ; 08058BF0 F7FCF9A2 bl Lxx_8054F38h ; 08058BF4 2800 cmp r0,0h ; 08058BF6 D107 bne Lxx_8058C08h ; 08058BF8 493B ldr r1,=Lxx_3FDh ;Call of the Grave 08058BFA 2001 mov r0,1h ; 08058BFC F7FDF870 bl Lxx_8055CE0h ; 08058C00 492B ldr r1,=Lxx_402h ;Call of the Dark 08058C02 2001 mov r0,1h ; 08058C04 F7FDF86C bl Lxx_8055CE0h ; 08058C08 491D ldr r1,=Lxx_29Fh ;Harpie's Feather Duster 08058C0A 2000 mov r0,0h ;(player's deck) 08058C0C F7FCF994 bl Lxx_8054F38h ;Counts number of a specific card in deck 08058C10 2800 cmp r0,0h ; 08058C12 D103 bne Lxx_8058C1Ch ;if (harpie_feather_duster_in_player_deck), branch to 08058C1C 08058C14 4935 ldr r1,=Lxx_426h ;Gryphon Wing 08058C16 2001 mov r0,1h ;(cpu) 08058C18 F7FDF862 bl Lxx_8055CE0h ;Remove card from deck 08058C1C 2001 mov r0,1h ; 08058C1E F7FDFDA1 bl Lxx_8056764h ;Remove cards exceeding Banned and Restricted allowed copies 08058C22 4811 ldr r0,=Lxx_3000040h ; 08058C24 4911 ldr r1,=Lxx_486Ah ; 08058C26 1840 add r0,r0,r1 ; 08058C28 8800 ldrh r0,[r0] ; 08058C2A 0540 lsl r0,r0,15h ; 08058C2C 0EC0 lsr r0,r0,1Bh ; 08058C2E 2101 mov r1,1h ; 08058C30 4249 neg r1,r1 ; 08058C32 F7FDFD1B bl Lxx_805666Ch ;Prolly the random Normal Monsters subroutine 08058C36 2001 mov r0,1h ; 08058C38 4669 mov r1,r13 ;r1 = pointer_to_types_of_cards_in_player_deck 08058C3A F7FCF9A9 bl Lxx_8054F90h ;Check cards in Player's Deck 08058C3E 482C ldr r0,=Lxx_80B53B8h ; 08058C40 492C ldr r1,=Lxx_2012384h ; 08058C42 4A2D ldr r2,=Lxx_0D67h ; 08058C44 1889 add r1,r1,r2 ; 08058C46 7809 ldrb r1,[r1] ; 08058C48 F7BFFF82 bl Lxx_8018B50h ; 08058C4C F7BFFF86 bl Lxx_8018B5Ch ; 08058C50 B01D add sp,74h ; 08058C52 BC30 pop r4,r5 ; 08058C54 BC01 pop r0 ; 08058C56 4700 bx r0 ;
Internal Data for Yu-Gi-Oh! Duel Monsters 6: Expert 2
| |
|---|---|