Yes I did! Sorry for not replying, but I was concentrated on solving Dufus's problem and I really can't follow too many things at once . Hopefully we have found out the root issue and a full fix will come soon. Then I will get back to you . You can try the new branch I mentioned above though, maybe it is also beneficial for you, but I think you are having a different (and weirder) issue.
I just noticed that I forgot to push the latest changes to the branch to github, so the current version might have some issues. For instance, the wiring diagrams are not up to date. I will push the changes tonight as soon as I get home, sorry for that.
Hey, no worry at all I'm pretty stuck in my issues.. i mean, i double checked all wirings, etc... even if it's till possible to leave mistakes. I can't find a way to get out. I'll wait for you to finish all your upgrades (code and wiring) and follow the next step. See ya !
I've tested the LCD with your code yesterday, just a quick test but I got the LCD working, really nice. I'll rewire the breadboard with the new wiring diagram and report back
I'm glad you like it . I have just pushed the latest changes to github and added in another possible fix for @Stupid Dufus, go ahead and test it! EDIT: Of course I got something wrong , so I had to commit one more fix. Make sure the latest commit message says "GRRRRRRRRRRR!" when you get the file off github.
Just tried it out on the breadboard, works great. I think I'll go with the single LED option instead of RGB on the Saturn testing, since the LCD already has all informations. Quick question, I have some DUO LEDs somewhere, how do I wire those up with the new sketch?
Just like before: use pins 9/10/11 (R/G/B), according to the colors of your led. Do you mean you have already tested it on the Saturn?
Ok, got it, I just needed to change the RGB values a bit and now I can also use the DUO Led's (R+G): #define MODE_LED_EUR_COLOR {0x00, 0xFF, 0x00} // Green #define MODE_LED_USA_COLOR {0xFF, 0xFF, 0x00} // Orange #define MODE_LED_JAP_COLOR {0xFF, 0x00, 0x00} // Red Since everything's working on my breadboard, I'll go ahead and test it on the Saturn, this will take a while since the disassembly and wiring on the Saturn takes a lot of work, but I'll report back as soon as I'm finished.
Oh, I see. Well, take your time then, as I cannot even assure you that it will work, LOL . It would be great if you could take pictures of the motherboard and of the whole process though, so that we can add to the wiki installation instructions for the Saturn as well, in case.
I can try, but there a shitloads of mainboard revisions (13+) and the jumper layout is different on most of them. But I'll try The switchless mods on the Mega Drive and Saturn are basically the same, as in they use exactly the same code and the same PIC. Figuring out the IGR will be a bit tricky, but one thing at a time.
I have searched a bit for the Saturn controller protocol and, while it sounds simple enough, it is not compatibile with the MD's, so you will only be able to use the reset button to switch modes. No mode switch through the controller and no IGR. The code is surely adaptable though, if you are fluent in C. I'd suggest starting from the master branch though, the 6button branch uses an interrupt-driven mechanism that is tailored for the MD protocol, mainly for timing reasons. Reference: http://www.gamesx.com/controldata/saturn.htm
I have done another bunch of minor updates. The LCD will now also report whether the controller is 3- or 6-buttons. @X5900: I have thought about the Saturn thing: I can try and provide some code to read the controller properly, but you will have to test it and help with the debugging, as I have no Saturn.
getting wort and worst. I downloaded the 6-button branch, uploaded to Nano. Sonic resets once (i mean, it boots, then reboots once as if Reset was pressed). None of the button combo worked, nor the console Reset button. LED Off but i may come from the setting in Nano code. I downloaded the main branch. And now i can't upload the sketch. i always get this error : Sketch uses 2,668 bytes (8%) of program storage space. Maximum is 30,720 bytes. Global variables use 43 bytes (2%) of dynamic memory, leaving 2,005 bytes for local variables. Maximum is 2,048 bytes. avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x3a avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x3a Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions. Weird as it worked before. (i still get the Nano board informations in Nano console soft). I woner if my Nano still works. I hope i'll find time to solder a new one tomorrow. See ya ! EDIT : i'm a real dumb, i had to disconnect the controller. Back to test, report later.
Also, do you have a 16x2 i2c LCD like the one I posted in the topic? It can be useful for the debugging. It only costs a few Euros. Like this one: https://www.aliexpress.com/item/Fre...rial-Interface-Adapter-Module/1935576611.html
back . Well, i'm stuck once again. tested both Master and 6-nuttons branch. None of them works, neither controller nor console side. I uploaded an old build (before the wiring changes), and the console reset worked again (for refresh switching). I really don't know what to do now, i mean, how to start for debugging. I'll try to get an LCD for debugging. Is tehre some kind of code to test the Nano so i could be sure of it ? See ya later !
Sorry for the delay! Finally got around to rewiring and uploading the new LCD sketch. Unfortunately, nothing has changed. =(
Me again. So here are pics of my setup : http://imgur.com/a/OVDV9 By checking once again, i noticed something wrong. i used this diagram for wiring : http://assemblergames.com/l/threads/megadrive-new-switchless-region-igr-mod.61273/page-8#post-922375 But as you'll see here : http://assemblergames.com/l/threads/megadrive-new-switchless-region-igr-mod.61273/page-9#post-923976 The TX1 and RX0 pads are switched. I soldered to the real RX0 pad, but maybe you wanted it to be soldered on the last pad (real TX1). See ya later !
Oh! How did I not notice that? >< Swapped them... but now IGR, button combinations to change region/language pin and holding reset to change don't work.