I dont have a camera to use at the moment, so no tutorial photos, but heres my schematic and some codes (I did this work on a CG controller so if you have a Matrix change the code accordingly) for Halo and COD4. Just so everybody knows Im not an expert at coding these chips, that being said Im sure someone will come up with a better way of doing it. Presently I have been able to fit COD4 rapidfire/active reload and Halo3 rapidfire/rapid melee all on one 14m, even though its possible to run both I always reflash my controller with a single game code depending on what Im playing, so I will be posting them as seperate codes.
I tried every way possible to interface all of these buttons correctly without a Darlington Array but no matter what I tried I got unreliable results(buttons would work then they wouldnt!), using the Darlington was the only I could get it to work correctly with my limited coding experience. You may also notice the haphazard way I have connected the A,B,X,Y,RB criss-crossed, but it was for a reason, turning the darlinton array 180 degrees allows the +v, 0V and the 14's right side outputs line up with the darlingtons inputs and you can just solder the chips on top of one another. I also have this schematic in Illustrator .ai and Photoshop .psd formats with greater resolution and editibility.

Although Im only utilizing a few of the sub-routines they are all there in the code for ease of combo programming, for example... combos could be written like.
BXB:
gosub Bbtn
gosub Xbtn
gosub Bbtn
then just work out the pauses in between the gosubs, at least that how I did the active reload.
Heres COD4
CODE
Setfreq m8
main:
do
low 0
if pin3 = 1 then gosub Rstick
if pin4 = 1 then exit
loop while pin4 = 0
pause 800
do
high 0
if pin3 = 1 then gosub reload
readadc 0,b0
if b0 > 40 then gosub Rtrig
if pin4 = 1 then exit
loop while pin4 = 0
pause 800
goto main
Rtrig:
do
high portc 3
pause 85
low portc 3
pause 80
b0=b0 and %00000000
Let dirsc=b0
readadc 0,b0
loop while b0 > 40
return
reload:
gosub Xbtn
pause 3000
gosub Ybtn
gosub Ybtn
return
Abtn:
b0=b0 or %00000100
let dirsc=b0
high 5
pause 50
low 5
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Bbtn:
b0=b0 or %00000010
let dirsc=b0
high 4
pause 50
low 4
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Xbtn:
b0=b0 or %00000001
let dirsc=b0
high 3
pause 50
low 3
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Ybtn:
high 2
pause 50
low 2
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
RBumper:
high 1
pause 50
low 1
b0=b0 and %00000000
Let dirsc=b0
pause 50
return
RStick:
b0=b0 or %00100000
let dirsc=b0
high portc 5
pause 50
low portc 5
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Heres Halo3
CODE
Setfreq m8
main:
do
low 0
if pin3 = 1 then gosub Bbtn
if pin4 = 1 then exit
loop while pin4 = 0
pause 800
do
high 0
if pin3 = 1 then gosub Bbtn
readadc 0,b0
if b0 > 40 then gosub Rtrig
if pin4 = 1 then exit
loop while pin4 = 0
pause 800
goto main
Rtrig:
do
high portc 3
pause 106
low portc 3
pause 90
b0=b0 and %00000000
Let dirsc=b0
readadc 0,b0
loop while b0 > 40
return
Abtn:
b0=b0 or %00000100
let dirsc=b0
high 5
pause 50
low 5
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Bbtn:
b0=b0 or %00000010
let dirsc=b0
high 4
pause 50
low 4
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Xbtn:
b0=b0 or %00000001
let dirsc=b0
high 3
pause 50
low 3
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Ybtn:
high 2
pause 50
low 2
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
RBumper:
high 1
pause 50
low 1
b0=b0 and %00000000
Let dirsc=b0
pause 50
return
RStick:
b0=b0 or %00100000
let dirsc=b0
high portc 5
pause 50
low portc 5
pause 50
b0=b0 and %00000000
Let dirsc=b0
return
Heres some YouTube vids of the chip in action. In COD4 the first clip emptied and reloded are without the chip, the remainder is with the chip enabled.
COD4 rapid fire/active reloadHeres a Halo 3 rapid fire/rapid melee video.
Halo 3 Rapid Fire/Rapid MeleeI will get my camera back and do some pics for my next mod and try to make a tutorial. Anyone else get some cool combos worked up let me know, Im currently working on a few simple combos for my son when playing Star Wars:The Force Unleashed.
This post has been edited by razorbackjedi: Oct 19 2008, 08:22 AM