hey, thanks a ton toodles. i’ve been trying to get into programming ICs but simply couldn’t overcome the huge learning curve. Maybe that’s becaues Ive been trying to start from programming something myself from scratch. I guess it’s better if I try and program one that’s done already. Didn’t even know there was a wii modchip :D. I owe you one.
Btw, would you mind if I IM you eventually to ask for help about programming ICs?
lastly. I know you had the flash PCB idea in mind but it’s been a bit dead in the water lately especially due to parts concerns. Since I’m building a vacuum forming machine this summer NO FREAKING MATTER WHAT, I’m wondering if it’s practical to vacuum form a plastic cover of the flash PCB. I could easily make around 36 at once with about 20 dollars worth of plastic.
Parts havent been an issue so much as the housing. The flashes I’ve made work, but seem to have to be tweaked by hand to get them to work right and I want to avoid that. They’re a little flaky but honestly I can’t say they’re more flaky than the originals. I have the CNC mill here, but have a lot of work and learning before I can use it for making housings, or at least a housing prototype. I kicked this project in gear in order to take a break from the flash, but will be focusing on it hard after the next UPCB release when I have a tested and working PS3 support.
If you’re in the market for a programmer/debug, check out the Inchworm+ (an ICD2 clone) at www.blueroomelectronics.com . I have the original Inchworm and the Firefly, and they’re pretty cheap for a solid programmer and in circuit debugger.
I had a thought. Why not include the option of using a parallel in-serial out shift register in conjunction with one of the pins to provide a set of 8 or 16 operating flags?
IE: a set of dip switches to tell the chip it’s in tournament mode, neogeo mode, capcom 6 button mode, etc?
VERY cool project. As with many people around here, I’m sure, I have a ton of hacked gamepads for various systems which are bulky and annoying to switch around - especially when some pads don’t support common grounds (crappy xbox systems…).
This will both be awesome AND useful
Chipper, do you plan on vacuum forming joystick encasements with your machine? I had a friend that I was going to work with on a similar project, and we were debating on whether to go the plastic route, or the folded metal. He works for a solar panel company, and he says they have a machine that could just bang these things out.
Put in support for Saturn and tested with the Innovation converter. Works awesome.
Also put in support for NES, SNES, Genesis (3-button) and TurboGrafx-16 (togglable between 2 and 6 button operation, including autofire for the two button mode). Added information to all of the .h files for each system describing the protocol and pin, and how to create a UPCB cable for them. Added information to the neogeo.h for using the neogeo module with older 80’s systems, including specific pinouts for FM-Town, X68000 (two button), and Sega Mastersystem (which should be the one used for most 9 pin 80’s systems like Commodore 64). All of these in this paragraph are untested because I dont own these systems.
I’m tweaking the USB HID piece, getting ready for Monday when I’ll be testing a bunch of different descriptors to see how well they work with the PS3. Assuming I find one that works awesome, I’ll package everything together for a release on Tuesday.
I am definitly planning on doing at least one of those. Main reason I want a vaccum forming machine is because they are so darn cool though. I also wanted to do a bent metal joystick but a lot of people have already done those (namely finkle) and I don’t have one of those metal bending machines either.
Playstation and Playstation 2 use the same data line for all controllers and memory cards.
What does this mean and why do you care? It means you can cheat. If I tweaked the PSX code, I could beat JWong at PS2 MvC2, me playing on my stick, no matter what stick or controller he played with. I can’t make it ignore things he presses, but I can make it press anything for him. So I can make it always down all 6 buttons so he never attacks; his pressing or not pressing wont matter because the PS2 will always think he held them down. Or if I wanted to get tricky with it, have it only cheat when I wanted to so it wouldnt be immediately obvious, like say have him press up whenever I do a low short. Or if I do a certain combination, he’ll do a DHC after only only a couple of hits from his AHVB, and keep DHC’ing early for low hit count so it drains all his meter. How about forcing your opponent to taunt and the end of a round they win in GG so you get the free meter next round? For all roll cancel attempts to be full rolls? Have it count the frames from when they activate A-groove, so the first free frame they roll?
No this problem does not exist when using the USB converters on PS3. That I know of.
PS3 owning friend is fighting with his wife, so it looks like I wont be visiting his house tonight to test the PS3 support. I copied the USB descriptor from the Pelican adapter, and the information it reports. I haven’t copied everything (like the device ID, manufacturer’s ID, and some other data the device reports, but outside of the descriptor) but it should be plenty for the PS3 to work. I just need five minutes alone with a PS3 to find out.
PS2 is continuing to be a bitch. For no reason I can figure out, it works just fine in the player 2 slot, but not in the player one slot. PSX games work fine, no matter which slot the UPCB is plugged into. My earlier report about it working fine on a PS2 looks to be incorrect. I’m guessing I was playing it with the UPCB in the player 2 port. Motherfucker. There is no reason there should be ANY difference so I’m scratching my head on this one. It makes no damned sense.
If the friends get together tonight gets canceled, I’ll go ahead and release what’s done so far and work on laying out the PCB so I can get some of those made. Even with the PS2 freakiness, it’s more than far enough in my mind to justify installing it in my favorite stick.
I tested on two other PS2 systems. On my GF’s fat PS2, it works on both controller ports. On my sister’s thin PS2, it only works on the P2 side. Mine is a fat PS2, so I’m completely confused about WTF is going on. Broke down and ebay’ed an oscilloscope, so hopefully I can figure out what the fuck is going on. I know I probably should have just made a cheezy parallel port logic analyzer type thing, but I’m sure the Oscope will be very handy.
I laid everything out on a PCB, and the dimensions are just over 3"x3" and includes everything for piggybacking a dreamcast and/or xbox360 controller. I’ll do a little cleaning and prep work on it so I can get an order in. I should be able to get about 14-15 pieces for the order. I plan on taking tons of pictures of builting mine and putting into an instructables.com project. Probably do the same for adding the DC and 360 piggybacking.
I also updated the schematic: I put in values for the pieces that needed it, like the crystal and C3 cap. There was also a minor problem; the connection to the D-Sub cable should have been at RC4 and RC5, not RC6 and RC7. (Edit: WHOOPS. They were supposed to be at RC6 and RC7. Schematic corrected. ) probably wouldnt affect actual use, but still needed changed. They both still connect to the others with the resistors, but the line from the D-Sub should be straight to the top two, and through the 22 Ohm resistors for the bottom two. I also added a pullup resistor to RB4/D-Sub pin 9. This will leave one pin you don’t ever have to worry about soldering in for non-Neogeo cables.
I am certain this is is the only hardware change that will ever be needed. Everything from here can and will be done via firmware upgrades.
At the GF’s now, so will put up the updated schematic tomorrow along with the 1.1 release files, and will update the first post. I’ll be taking a break from this for a little bit to figure out my CNC machine and work on the flash more until the UPCB PCB’s arrive. After I play with timer’s and interrupts more on the PIC’s, I’ll be adding in the recording/playback, tournament mode (good for all consoles), compile time options for the 3 extra pins, Jaguar support, and hopefully N64 and Gamecube support. And hopefully shortly after the Oscope gets here, I’ll be after to say PS2 is 100% working, lock the code, and be done with it.
This is really amazing. Honestly, I was just running out of PS1 dual shocks and tired of hunting down controllers to hack. These sound like a god send.