mirror of
https://github.com/thornAvery/kep-hack.git
synced 2026-02-06 15:45:24 +13:00
Build the Virtual Console patches with make red_vc and make blue_vc (#351)
This commit is contained in:
parent
07df4a5f88
commit
fe8d3c51a4
24 changed files with 1752 additions and 34 deletions
482
vc/pokered.patch.template
Normal file
482
vc/pokered.patch.template
Normal file
|
|
@ -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 }
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue