;Format Sample ;[xxxx] ;User-defined Name (Max:31 chars) ;Mode = 1 ;1:Fixcode; 2:Fixvalue; 3:Mask; 4:Palette; 5:Double Frame Buffer ;Type = 0 ;0:Begin 1:End ;Index = 0 ;Index ;Address = x1F8000 ;ROM Address ;MemAddress = x2000 ;RAM Address ;Fixcode = 0 ;Mode1: Fixed Rom Code; Mode2: Fixed Value ;DelayFrame = 0 ;Delay Frame ;FadeFrame = 0 ;Fade Frame 0:Off ;DarkEnable0 = 0 ;0:Off, 1:On (for Normal Mode) ;ReduceEnable0 = 0 ;0:Off, 1:On (for Normal Mode) ;MotionBEnable0 = 0 ;0:Off, 1:Black Fade, 2:, 3:Frame Blend (for Normal Mode) ;Dark0 = 10 ;0~10 (for Normal Mode) ;ReduceColorR0 = 0 ;0~31 (for Normal Mode) ;ReduceColorG0 = 0 ;0~31 (for Normal Mode) ;ReduceColorB0 = 0 ;0~31 (for Normal Mode) ;MotionBlur0 = 31 ;0~31 (for Normal Mode) ;DarkEnable1 = 0 ;0:Off, 1:On (for Green Mode) ;ReduceEnable1 = 0 ;0:Off, 1:On (for Green Mode) ;MotionBEnable1 = 0 ;0:Off, 1:Black Fade, 2:, 3:Frame Blend (for Green Mode) ;Dark1 = 10 ;0~10 (for Green Mode) ;ReduceColorR1 = 0 ;0~31 (for Green Mode) ;ReduceColorG1 = 0 ;0~31 (for Green Mode) ;ReduceColorB1 = 0 ;0~31 (for Green Mode) ;MotionBlur1 = 31 ;0~31 (for Green Mode) ;PaletteX = c31,31,31 ;X:0~15, cR,G,B (0~31) [SaveLimit] Mode = 12 Type = 1 Index = {hex sGameData} Address = {hex sGameDataEnd} ;[Fix_print] ;Mode = 1 ;Address = 0x40130 ;Fixcode = a3: 00 00 00 [disable_print] Mode = 1 Address = {hex @+1} Fixcode = {PATCH +1} ;[Fix pokemon] ;Mode = 2 ;Address = 0x1551 ;Type = 3 [MiniGame] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [MiniGame-HighScorePC@MiniGameHighScorePC] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [send_send_buf2] Mode = 2 Address = {HEX @} Type = 29 [send_send_buf2_ret] Mode = 2 Address = {HEX @} Type = 30 [send_byt2] Mode = 2 Address = {HEX @+5} Type = 31 [send_byt2_ret] Mode = 2 Address = {HEX @} Type = 32 [send_dummy] Mode = 2 Address = {HEX @} Type = 33 [send_dummy_end] Mode = 2 Address = {HEX @} Type = 34 [FIGHT] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [FIGHT2] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [Network10] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [Network11] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [Network424] Mode = 2 Address = {HEX @} Type = 4 [Network200] Mode = 2 Address = {HEX @} Type = 4 ;[RND_HACK] ;Mode = 1 ;Address = 0x3E70 ;Fixcode = a10: 3E 3D 00 00 00 00 00 00 00 00 ;[PLAY_HACK] ;Mode = 2 ;Address = 0x2238 ;Type = 5 ;[PLAY_MUTE] ;Mode = 1 ;Address = 0x150 ;Fixcode = 0xC9 [PLAY_MUTE] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH +1} [PLAY_HACK] Mode = 2 Address = {HEX @} Type = 6 [PLAY_NEW] Mode = 2 Address = {HEX @} Type = 21 [Network_RECHECK] Mode = 2 Address = {HEX @} Type = 7 [Network_STOP] Mode = 2 Address = {HEX @} Type = 8 [Network_END] Mode = 2 Address = {HEX @} Type = 9 [Network_RESET] Mode = 2 Address = {HEX @} Type = 10 [linkCable fake begin] Mode = 2 Address = {HEX @} Type = 16 [linkCable fake end] Mode = 2 Address = {HEX @} Type = 17 [linkCable block input] Mode = 2 Address = {HEX @+5} Type = 18 ;[save game start] ;Mode = 2 ;Address = 0x5A84 ;Type = 19 [save game end] Mode = 2 Address = {HEX @} Type = 20 [Change_MSG] Mode = 1 Address = {HEX @+1} Fixcode = {PATCH_ +1 20} [fight_ret] Mode = 1 Address = {hex @} Fixcode = {PATCH} [fight_ret_c] Mode = 2 Address = {hex @} Type = 98 ;Mem Write: pc32 = 0xf992d addr = 0xc634 value = 0xe ;Mem Write: pc32 = 0xf9e51 addr = 0xc635 value = 0x1 [FPA 031801 Begin1] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 28 ConditionType = 0 ConditionValueA = {dws_ wYellowIntroCurrentScene} ConditionValueB = {dws_ == } ConditionValueC = {dws_ 0x0e } ;34 6F 26 00 ;Mem Write: pc32 = 0xf9e51 addr = 0xc635 value = 0x33 [FPA 031801 End1] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wYellowIntroCurrentScene wYellowIntroSceneTimer} ConditionValueB = {dws_ == == } ConditionValueC = {dws_ 0x0e 0x33 } ;rsm095822 ;Mem Write: pc32 = 0xf9d8b addr = 0xc635 value = 0x28 ;30 [FPA 031801 Begin2] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 4 ConditionType = 0 ConditionValueA = {dws_ wYellowIntroCurrentScene} ConditionValueB = {dws_ == } ConditionValueC = {dws_ 0x0f } [FPA 031801 End2] Mode = 3 Type = 1 Address = 0xF9e4b ConditionType = 0 ConditionValueA = {dws_ wYellowIntroCurrentScene} ConditionValueB = {dws_ == } ConditionValueC = {dws_ 0x0f } ;222222aaaaaaaaaaaaaaaa: pc32 = 0xf984b addr = 0xffb3 value = 0x0 ;000f984bh: F0 B3 E6 0B [FPA 031801 End3] Mode = 3 Type = 1 Address = {hex @} ConditionType = 11 ConditionValueA = {dws_ wYellowIntroCurrentScene 00 wYellowIntroCurrentScene} ConditionValueB = {dws_ == || == } ConditionValueC = {dws_ 0x0e 00 0x0f } ; The effect_no decide which animation will be played. ; So we use it as a condition value. The address of effect_no is 0xd076 ; a7 c0 3e 05 ea ; and a A7 ; ret nz C0 ; ; ld a,5 3E 05 ; ld (anime_buf),a EA ; ; ;effect_select_rdy: ; ld (effect_no),a ; ; call put_wait ; ; ld a,B_EFFECT_SELECT ;rsm002551 ;Mem Write: pc32 = 0x781c5 addr = 0xd086 value = 0x3 ;17 --13 ;No151 Mega Punch [FPA 001 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 11 ConditionType = 11 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == == || == == == == == || == == == == == } ConditionValueC = {dws_ "M" "E" "G" "A" "P" MEGA_PUNCH 00 "E" "X" "P" "L" MEGA_PUNCH 00 "S" "E" "L" "F" MEGA_PUNCH } [FPA 001 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID} ConditionValueB = {dws_ == == == == == == } ConditionValueC = {dws_ "M" "E" "G" "A" "P" MEGA_PUNCH } ;rsm103725 ;Mem Write: pc32 = 0x781c5 addr = 0xd086 value = 0x3 ;No117 Guillotine [FPA 002 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 7 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "G" "U" "I" "L" GUILLOTINE } [FPA 002 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "G" "U" "I" "L" GUILLOTINE } ;rsm142438 ;17 --13 ;No150 Mega Kick [FPA 003 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 10 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID} ConditionValueB = {dws_ == == == == == == } ConditionValueC = {dws_ "M" "E" "G" "A" "K" MEGA_KICK } [FPA 003 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID} ConditionValueB = {dws_ == == == == == == } ConditionValueC = {dws_ "M" "E" "G" "A" "K" MEGA_KICK } ;rsm154217 blizzard ;No131 [FPA 004 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 11 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "B" "L" "I" "Z" BLIZZARD } [FPA 004 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "B" "L" "I" "Z" BLIZZARD } ;rsm163638 bubblebeam ;No123 [FPA 005 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 15 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "B" "U" "B" "B" BUBBLEBEAM } [FPA 005 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "B" "U" "B" "B" BUBBLEBEAM } ;Mem Write: pc32 = 0xc2 addr = 0xcfd1 value = 0x3f ;Pallte Write: pc32 =00078e79 00000048 e4 ;No116 hyper beam [FPA 006 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 6 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wAnimationID} ConditionValueB = {dws_ == == == == } ConditionValueC = {dws_ "H" "Y" "P" HYPER_BEAM } ;rsm112921 thunderbolt ;15 -- 13 ;No57 thunderbolt [FPA 007 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 13 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "T" "H" "U" "N" THUNDERBOLT } [FPA 007 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "T" "H" "U" "N" THUNDERBOLT } ; ;rsm130806 haze ;No40 haze [FPA 008 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 28 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "H" "A" "Z" "E" HAZE } [FPA 008 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 11 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wAnimationID} ConditionValueB = {dws_ == == == == == || == == == == } ConditionValueC = {dws_ "H" "A" "Z" "E" HAZE 00 "H" "Y" "P" HYPER_BEAM } ;rsm131656 reflect ;No159 [FPA 009 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 6 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "R" "E" "F" "L" REFLECT } [FPA 009 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "R" "E" "F" "L" REFLECT } ;rsm132935 selfdestruct ;No56 [FPA 010 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 11 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "S" "E" "L" "F" SELFDESTRUCT} [FPA 010 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 11 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == || == == == == == } ConditionValueC = {dws_ "S" "E" "L" "F" MEGA_PUNCH 00 "S" "E" "L" "F" SELFDESTRUCT} ;rsm013740 explosion ;No76 [FPA 011 Begin] Mode = 3 Type = 0 Address = {hex @} MotionBEnable0 = 3 MotionBlur0 = 11 ConditionType = 0 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == } ConditionValueC = {dws_ "E" "X" "P" "L" EXPLOSION } [FPA 011 End] Mode = 3 Type = 1 Address = {hex @} ConditionType = 11 ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID} ConditionValueB = {dws_ == == == == == || == == == == == } ConditionValueC = {dws_ "E" "X" "P" "L" MEGA_PUNCH 00 "E" "X" "P" "L" EXPLOSION }