summaryrefslogtreecommitdiff
path: root/vc/pokered.patch.template
diff options
context:
space:
mode:
authorvulcandth <vulcandth@gmail.com>2022-03-26 15:59:36 -0500
committerGitHub <noreply@github.com>2022-03-26 16:59:36 -0400
commitfe8d3c51a4056f0dd61dbef332ad9e714b82089a (patch)
tree871eb178792c4355564b858e79e0e61963e0ffef /vc/pokered.patch.template
parent07df4a5f88aa5b9927a0f8a7c317afa57a313ab9 (diff)
Build the Virtual Console patches with `make red_vc` and `make blue_vc` (#351)
Diffstat (limited to 'vc/pokered.patch.template')
-rw-r--r--vc/pokered.patch.template482
1 files changed, 482 insertions, 0 deletions
diff --git a/vc/pokered.patch.template b/vc/pokered.patch.template
new file mode 100644
index 00000000..52f5d0fe
--- /dev/null
+++ b/vc/pokered.patch.template
@@ -0,0 +1,482 @@
+;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 pokemon]
+;Mode = 2
+;Address = 0x1551
+;Type = 3
+
+[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}
+
+[Network17]
+Mode = 2
+Address = {HEX @}
+Type = 5
+
+[Network424]
+Mode = 2
+Address = {HEX @}
+Type = 4
+
+[Network200]
+Mode = 2
+Address = {HEX @}
+Type = 4
+
+[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 = 0x59E6
+;Type = 19
+
+[save game end]
+Mode = 2
+Address = {HEX @}
+Type = 20
+
+;93 A7 A4 7F AB A8 AD AA 7F A7
+;at 93
+[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
+
+; The effect_no decide which animation will be played.
+; So we use it as a condition value. The address of effect_no is 0xd07c
+; 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
+
+
+;rsm033659
+;no151 mega punch
+[FPA 001 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 21
+MotionBEnable1 = 3
+MotionBlur1 = 21
+ConditionType = 11
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == == || == == == == == == || == == == == == }
+ConditionValueC = {dws_ "M" "E" "G" "A" "P" MEGA_PUNCH 00 "S" "E" "L" "F" "D" MEGA_PUNCH 00 "E" "X" "P" "L" 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 }
+
+
+;rsm032916
+;no117 guillotine
+[FPA 002 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 9
+MotionBEnable1 = 3
+MotionBlur1 = 8
+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 }
+
+
+;rsm041307
+;no150 mega kick
+[FPA 003 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 25
+MotionBEnable1 = 3
+MotionBlur1 = 21
+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 }
+
+
+;rsm001929
+;no123 bubble beam
+[FPA 004 Begin@FPA_Bubblebeam_Begin]
+Mode = 3
+Type = 0
+Address = {hex @}
+MotionBEnable0 = 3
+MotionBlur0 = 30
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "B" "U" "B" "B" BUBBLEBEAM }
+
+[FPA 004 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 wStringBuffer+5 wAnimationID}
+ConditionValueB = {dws_ == == == == == || == == == == == == }
+ConditionValueC = {dws_ "B" "U" "B" "B" BUBBLEBEAM 00 "M" "E" "G" "A" "K" MEGA_KICK }
+
+
+;rsm103658
+;no116 hyper beam
+[FPA 005 Begin@FPA_Hyper_Beam_Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 1
+MotionBlur0 = 5
+MotionBEnable1 = 1
+MotionBlur1 = 5
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "H" "Y" "P" "E" HYPER_BEAM }
+
+[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_ "H" "Y" "P" "E" HYPER_BEAM }
+
+
+;rsm133358
+;no57 thunderbolt
+[FPA 006 Begin@FPA_Thunderbolt_Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 30
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "T" "H" "U" "N" THUNDERBOLT }
+
+
+[FPA 006 End@FPA_Thunderbolt_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 }
+
+;rsm152340
+;no159 reflect
+[FPA 007 Begin@FPA_Reflect_Begin]
+Mode = 3
+Type = 0
+Address = {hex @}
+MotionBEnable0 = 1
+MotionBlur0 = 6
+MotionBEnable1 = 1
+MotionBlur1 = 5
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "R" "E" "F" "L" REFLECT }
+
+[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_ "R" "E" "F" "L" REFLECT }
+
+;rsm171812
+;no156 dream eater
+[FPA 008 Begin@FPA_Dream_Eater_Begin]
+Mode = 3
+Type = 0
+Address = {hex @}
+MotionBEnable0 = 3
+MotionBlur0 = 10
+MotionBEnable1 = 3
+MotionBlur1 = 7
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "D" "R" "E" "A" DREAM_EATER }
+
+[FPA 008 End]
+Mode = 3
+Type = 1
+Address = {HEX @}
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4} {dws/ wAnimationID}
+ConditionValueB = {dws_ == == == == == } {dws/ == }
+ConditionValueC = {dws_ "B" "L" "I" "Z" "Z" } {dws/ BLIZZARD }
+
+;rsm174650
+;no36 spore
+[FPA 009 Begin@FPA_Spore_Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 8
+MotionBEnable1 = 3
+MotionBlur1 = 8
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "S" "P" "O" "R" SPORE }
+
+
+;rsm152115
+;no12 rock slide
+[FPA 010 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 27
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID}
+ConditionValueB = {dws_ == == == == == }
+ConditionValueC = {dws_ "R" "O" "C" "K" ROCK_SLIDE }
+
+[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 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4 wAnimationID 00 wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4 wAnimationID 00 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_ "D" "R" "E" "A" DREAM_EATER 00 "R" "O" "C" "K" ROCK_SLIDE 00 "S" "P" "O" "R" SPORE 00 "S" "E" "L" "F" "D" MEGA_PUNCH 00 "S" "E" "L" "F" "D" SELFDESTRUCT 00 "C" "O" "N" "F" "S" CONFUSION 00 "E" "X" "P" "L" EXPLOSION 00 "E" "X" "P" "L" MEGA_PUNCH }
+
+
+;explosion
+;No76 explosion
+[FPA 76 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_ "E" "X" "P" "L" EXPLOSION }
+
+
+;No56 self-destruct
+[FPA 56 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 23
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4 wAnimationID}
+ConditionValueB = {dws_ == == == == == == }
+ConditionValueC = {dws_ "S" "E" "L" "F" "D" SELFDESTRUCT}
+
+
+;No131 blizzard
+[FPA 131 Begin]
+Mode = 3
+Type = 0
+Address = {HEX @}
+MotionBEnable0 = 3
+MotionBlur0 = 26
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+4 wAnimationID}
+ConditionValueB = {dws_ == == == == == == }
+ConditionValueC = {dws_ "B" "L" "I" "Z" "Z" BLIZZARD }
+
+
+;confusion
+[FPA conf Begin]
+Mode = 3
+Type = 0
+Address = {hex @}
+MotionBEnable1 = 3
+MotionBlur1 = 21
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID}
+ConditionValueB = {dws_ == == == == == == }
+ConditionValueC = {dws_ "C" "O" "N" "F" "S" CONFUSION }
+
+;phychic
+[FPA phy Begin]
+Mode = 3
+Type = 0
+Address = {hex @}
+MotionBEnable1 = 3
+MotionBlur1 = 21
+ConditionType = 0
+ConditionValueA = {dws_ wStringBuffer wStringBuffer+1 wStringBuffer+2 wStringBuffer+3 wStringBuffer+5 wAnimationID}
+ConditionValueB = {dws_ == == == == == == }
+ConditionValueC = {dws_ "P" "S" "Y" "C" "I" PSYCHIC_M }
+
+[FPA phy 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_ "P" "S" "Y" "C" "I" PSYCHIC_M }
+
+