script "Infinite Time"  
run:
    if (peek($FF8AC2)==$00)and(peek($FF8ABE)>$01)
      dpoke $FF8ABE $9928
      dpoke $FFDDA2 $203C
    endif
script "Finish this Round Now!"  
on:
    dpoke $FF8ABE $0101
script "Disable projectile impact slowdown"  
run:
    if (peek($FF83E8)!=$FF)and(peek($FF86E8)!=$FF)
      poke $FF82E2 $00
    endif
script "Select Starting Stage" \
 "0x0000/Stage 1"\
 "0x0100/Stage 2"\
 "0x0200/Stage 3"\
 "0x0300/Bonus stage: car"\
 "0x0301/Stage 4"\
 "0x0401/Stage 5"\
 "0x0501/Stage 6"\
 "0x0601/Bonus stage: barrels"\
 "0x0602/Stage 7"\
 "0x0702/Stage 8"\
 "0x0802/Stage 9 (Boxer)"\
 "0x0902/Bonus stage: drums"\
 "0x0903/Stage 10 (Claw)"\
 "0x0A03/Stage 11 (Sagat)"\
 "0x0B03/Stage 12 (Dictator)" 
run:
    if (dpeek($FF89ED)==$0000)or(dpeek($FF89ED)==param)
      poke $FF89C1 param/$100
    endif
    if dpeek($FF89ED)==$0000
      dpoke $FF89ED param
    endif
script "No Wait Mode"  
run:
    poke $FF82DD $01
script "Select Background" \
 "0x00/Ryu"\
 "0x01/E.Honda"\
 "0x02/Blanka"\
 "0x03/Guile"\
 "0x04/Ken"\
 "0x05/Chun Li"\
 "0x06/Zangief"\
 "0x07/Dhalsim"\
 "0x08/Dictator"\
 "0x09/Sagat"\
 "0x0A/Boxer"\
 "0x0B/Claw" 
run:
    dpoke $FFDD5E param
script "Select Ending" \
 "0/No Losses"\
 "1/No Continues"\
 "2/Normal" 
run:
    if param<2
      poke $FF831D $00
      poke $FF8A0D param
    endif
    if param==$2
      poke $FF831D $01
    endif
script " "  
script "P1 Infinite Energy"  
run:
    if (dpeek($FF83E8)<$60)and((peek($FF83C1)&$10)==$00)and(peek($FF89D4)==$0)
      dpoke $FF83E8 $90
      dpoke $FF857A $90
    endif
script "P1 Dizzy Status" \
 "0x00/Never get dizzied"\
 "0x40/Always get dizzied" 
run:
    dpoke $FF841A param
    dpoke $FF841C param
script "P1 Always have No Energy"  
run:
    poke $FF83E9 $00
    poke $FF857B $00
script "P1 Drain All Energy Now!"  
on:
    poke $FF83E9 $00
    poke $FF857B $00
script "P1 Finish round to win match"  
run:
    poke $FF864E $02
script "P1 Rounds won always set = 0"  
run:
    poke $FF864E $00
script "P1 Rounds won set = 0 Now!"  
on:
    poke $FF864E $00
script "P1 All normal moves cancellable"  
run:
    poke $FF8553 $01
script "P1 All Hits Keep You Close"  
run:
    poke $FF870A $00
script "P1 Invincibility"  
run:
    poke $FF857D $01
script "P1 Allow special moves during jump"  
run:
    poke $FF853F $00
script "P1 No limit next shot"  
run:
    poke $FF8592 $00
    poke $FF8593 $00
script "P1 Easy button tap moves"  
run:
    temp0=peek($FF83BE+$291)
    if peek($FF83BE)==$0
      temp0=$FF
    endif
    if (temp0==$1)and(peek(FF83BE+$9A)<$2)
      poke ($FF83BE+$9A) $2
    endif
    if (temp0==$1)and(peek(FF83BE+$9C)<$2)
      poke ($FF83BE+$9C) $2
    endif
    if (temp0==$1)and(peek(FF83BE+$9E)<$2)
      poke ($FF83BE+$9E) $2
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF83BE+$9A)<$3)
      poke ($FF83BE+$9A) $3
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF83BE+$9C)<$3)
      poke ($FF83BE+$9C) $3
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF83BE+$9E)<$3)
      poke ($FF83BE+$9E) $3
    endif
script "P1 Shot motion cancel"  
run:
    poke $FF83DC $01
script "P1 Shot motion cancel (Guile)"  
run:
    poke $FF83DC $00
script "P1 Easy charge moves"  
run:
    temp0=peek($FF83BE+$291)
    if peek($FF83BE)==$0
      temp0=$FF
    endif
    if temp0==$1
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$AB) $01
    endif
    if temp0==$2
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$B4) $01
    endif
    if temp0==$3
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$87) $01
    endif
    if temp0==$5
      poke ($FF83BE+$81) $01
    endif
    if temp0==$8
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$89) $01
      poke ($FF83BE+$92) $01
    endif
    if temp0==$A
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$89) $01
      dpoke ($FF83BE+$B2) $0101
    endif
    if temp0==$B
      poke ($FF83BE+$81) $01
      poke ($FF83BE+$89) $01
    endif
script "P1 Easy QCF + QCB moves"  
run:
    temp0=peek($FF83BE+$291)
    if peek($FF83BE)==$0
      temp0=$FF
    endif
    if (temp0==$0)or(temp0==$4)
      poke ($FF83BE+$90) $04
      poke ($FF83BE+$98) $04
    endif
    if temp0==$7
      lpoke ($FF83BE+$90) $02080004
    endif
    if temp0==$9
      lpoke ($FF83BE+$90) $02080004
      lpoke ($FF83BE+$A0) $02080004
    endif
script "P1 Easy F,D,DF moves"  
run:
    temp0=peek($FF83BE+$291)
    if peek($FF83BE)==$0
      temp0=$FF
    endif
    if (temp0==$0)or(temp0==$4)
      poke ($FF83BE+$A0) $04
    endif
    if temp0==$9
      lpoke ($FF83BE+$98) $02080004
    endif
script "P1 Easy 360, half-circle + tiger-knee moves"  
run:
    temp0=peek($FF83BE+$291)
    if peek($FF83BE)==$0
      temp0=$FF
    endif
    if temp0==$7
      lpoke ($FF83BE+$98) $02080008
    endif
    if (temp0==$6)and(peek(FF83BE+$12)!=$0)
      lpoke ($FF83BE+$80) $06060800
    endif
    if (temp0==$6)and(peek(FF83BE+$12)==$0)
      lpoke ($FF83BE+$80) $06070800
    endif
    if (temp0==$9)and(peek(FF83BE+$AB)<$4)
      lpoke ($FF83BE+$A8) $02080004
    endif
script "P1 Select Character" \
 "comm:Free player selection. Use on the level VS screen." \
 "0x00/Ryu"\
 "0x01/E. Honda"\
 "0x02/Blanka"\
 "0x03/Guile"\
 "0x04/Ken"\
 "0x05/Chun Li"\
 "0x06/Zangief"\
 "0x07/Dhalsim"\
 "0x08/M. Bison"\
 "0x09/Sagat"\
 "0x0A/Balrog"\
 "0x0B/Vega" 
run:
    poke $FF864F param
script "P1 Alternate Outfit"  
run:
    poke $FF8672 $01
off:
    poke $FF8672 $00
script " "  
script "P2 Infinite Energy"  
run:
    if (dpeek($FF86E8)<$60)and((peek($FF86C1)&$10)==$00)and(peek($FF89D4)==$0)
      dpoke $FF86E8 $90
      dpoke $FF887A $90
    endif
script "P2 Dizzy Status" \
 "0x00/Never get dizzied"\
 "0x40/Always get dizzied" 
run:
    dpoke $FF871A param
    dpoke $FF871C param
script "P2 Always have No Energy"  
run:
    poke $FF86E9 $00
    poke $FF887B $00
script "P2 Drain All Energy Now!"  
on:
    poke $FF86E9 $00
    poke $FF887B $00
script "P2 Finish round to win match"  
run:
    poke $FF894E $02
script "P2 Rounds won always set = 0"  
run:
    poke $FF894E $00
script "P2 Rounds won set = 0 Now!"  
on:
    poke $FF894E $00
script "P2 All normal moves cancellable"  
run:
    poke $FF8853 $01
script "P2 All Hits Keep you Close"  
run:
    poke $FF840A $00
script "P2 Invincibility"  
run:
    poke $FF887D $01
script "P2 Allow special moves during jump"  
run:
    poke $FF883F $00
script "P2 No limit next shot"  
run:
    poke $FF8892 $00
    poke $FF8893 $00
script "P2 Easy button tap moves"  
run:
    temp0=peek($FF86BE+$291)
    if peek($FF86BE)==$0
      temp0=$FF
    endif
    if (temp0==$1)and(peek(FF86BE+$9A)<$2)
      poke ($FF86BE+$9A) $2
    endif
    if (temp0==$1)and(peek(FF86BE+$9C)<$2)
      poke ($FF86BE+$9C) $2
    endif
    if (temp0==$1)and(peek(FF86BE+$9E)<$2)
      poke ($FF86BE+$9E) $2
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF86BE+$9A)<$3)
      poke ($FF86BE+$9A) $3
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF86BE+$9C)<$3)
      poke ($FF86BE+$9C) $3
    endif
    if ((temp0==$2)or(temp0==$5))and(peek(FF86BE+$9E)<$3)
      poke ($FF86BE+$9E) $3
    endif
script "P2 Shot motion cancel"  
run:
    poke $FF86DC $01
script "P2 Shot motion cancel (Guile)"  
run:
    poke $FF86DC $00
script "P2 Easy charge moves"  
run:
    temp0=peek($FF86BE+$291)
    if peek($FF86BE)==$0
      temp0=$FF
    endif
    if temp0==$1
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$AB) $01
    endif
    if temp0==$2
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$B4) $01
    endif
    if temp0==$3
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$87) $01
    endif
    if temp0==$5
      poke ($FF86BE+$81) $01
    endif
    if temp0==$8
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$89) $01
      poke ($FF86BE+$92) $01
    endif
    if temp0==$A
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$89) $01
      dpoke ($FF86BE+$B2) $0101
    endif
    if temp0==$B
      poke ($FF86BE+$81) $01
      poke ($FF86BE+$89) $01
    endif
script "P2 Easy QCF + QCB moves"  
run:
    temp0=peek($FF86BE+$291)
    if peek($FF86BE)==$0
      temp0=$FF
    endif
    if (temp0==$0)or(temp0==$4)
      poke ($FF86BE+$90) $04
      poke ($FF86BE+$98) $04
    endif
    if temp0==$7
      lpoke ($FF86BE+$90) $02080004
    endif
    if temp0==$9
      lpoke ($FF86BE+$90) $02080004
      lpoke ($FF86BE+$A0) $02080004
    endif
script "P2 Easy F,D,DF moves"  
run:
    temp0=peek($FF86BE+$291)
    if peek($FF86BE)==$0
      temp0=$FF
    endif
    if (temp0==$0)or(temp0==$4)
      poke ($FF86BE+$A0) $04
    endif
    if temp0==$9
      lpoke ($FF86BE+$98) $02080004
    endif
script "P2 Easy 360, half-circle + tiger-knee moves"  
run:
    temp0=peek($FF86BE+$291)
    if peek($FF86BE)==$0
      temp0=$FF
    endif
    if temp0==$7
      lpoke ($FF86BE+$98) $02080008
    endif
    if (temp0==$6)and(peek(FF86BE+$12)!=$0)
      lpoke ($FF86BE+$80) $06060800
    endif
    if (temp0==$6)and(peek(FF86BE+$12)==$0)
      lpoke ($FF86BE+$80) $06070800
    endif
    if (temp0==$9)and(peek(FF86BE+$AB)<$4)
      lpoke ($FF86BE+$A8) $02080004
    endif
script "P2 Select Character" \
 "comm:Free player selection. Use on the level VS screen." \
 "0x00/Ryu"\
 "0x01/E. Honda"\
 "0x02/Blanka"\
 "0x03/Guile"\
 "0x04/Ken"\
 "0x05/Chun Li"\
 "0x06/Zangief"\
 "0x07/Dhalsim"\
 "0x08/M. Bison"\
 "0x09/Sagat"\
 "0x0A/Balrog"\
 "0x0B/Vega" 
run:
    poke $FF894F param
script "P2 Alternate Outfit"  
run:
    poke $FF8972 $01
off:
    poke $FF8972 $00
script " "  
script "No Background Music"  
on:
        cpu audio
temp0=lpeek($00AA)
        cpu audio
temp1=lpeek($025A)
    cpu main
run:
    cpu audio
    if peek($D048)>00
      lpoke $00AA $00006AC3
    cpu audio
    endif
    if peek($D048)==$00
      lpoke $00AA temp0
      lpoke $025A $00030FC3
    endif
    cpu main
off:
    cpu audio
    lpoke $00AA temp0
    lpoke $025A temp1
    cpu main
script "Select Region" \
 "comm:This cheat sets the machine region - the effectiveness may vary! You have to enable this ASAP - ON or before the ROM check screen! Or enable + RESET" \
 "0x00/Japan"\
 "0x02/USA"\
 "0x04/World" 
on:
    temp0=peek($000191)
run:
    poke $000191 param
off:
    poke $000191 temp0
