New Master System Mod: Use Start as Pause, IGR and much more

Discussion in 'Sega Discussion' started by SukkoPera, Aug 2, 2016.

  1. abveost

    abveost Robust Member

    Joined:
    Dec 15, 2014
    Messages:
    273
    Likes Received:
    42
    My main target is the Megadrive in SMS mode. It will work on the SMS because the MD controller ports work like an SMS in that mode. Not so much in native mode. Since a pretty much fool proof hardware solution can be used for under $1 more in parts I'm just going to use that.
    The part I'm looking at is MAX14662. I don't have one in hand to test yet but from the datasheet it looks good. It's nice that it saves me a few IO but it also saves space on the board and has inputs and outputs conveniently located on opposite sides of the package.
    I wouldn't have any wires for any controller pins. They'd be replaced by traces on the PCB. Inline resistors would also be on the PCB as would the filters, probably in a smaller form. If you chose to modify an stock Arduino instead of having a new PCB made then yes, buttloads of wires/jumpers/soldering.
     
  2. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    OK, now I see, you want to design a PCB, while I prefer to use single chips/boards that are readily available and easily programmable. The Arduino Nano fits my use case perfectly but yes, it needs a lot of wires.

    Good luck with your project and keep us updated! :)
     
  3. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    I DO like Nano...
    I'll have some request later Sukkopera ;)
     
  4. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Hey @MoockyLoock, on what IRC network and channel can I find you? :)
     
  5. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    'llo here !
    'bout testing the traces, i have a noobie question.
    I wanted to test their continuity without desoldering the Nano, from the pad pins to the IC pins using a multimeter. Will the Nano restore this continuity, as it has wires from pad and to IC ?
     
  6. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Continuity means zero-resistance. There will definitely be some resistance between any two Arduino pins, so the answer is no: if you get continuity it's because the traces weren't cut property.
     
  7. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    I'll check this late afternoon. I think i would prefer that i failed in cutting trace, so it's not a bug in your work.
     
  8. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    LOL, so would I :D. Mostly because the operation when an SMS pad is detected is straightforward, i.e.: just read and pass data through unmodified.

    A bell just rang in my head: could it be that your SMS pad is worn out and gets misdetected as a MD pad? Try turning the console on keeping left (or right) pressed!
     
    Last edited: Sep 7, 2016
  9. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    Well, i tried with two different pads (but both can be worn out, i've had tha case in a PS2 issue ^^).
    Something you must keep in mind is that i have the same behavior when NO pad is connected : tha game start as if Button1 was pressed, and Sonic (my test game included in the console) jump once. If a MS pad is connected, i can go left, right and down. but No button, no Up.
     
  10. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    I was going to say that that is normal but, thinking about it, it's not.

    Thanks for the hint!
     
  11. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    'back here !
    Well, bad news SukkoPera, but all traces are tested as cut (no continuity, result as "1" on multimeter).
    And once again, i tried with no controller, and the game "auto-start" and Sonic jumped once.
    See ya !
     
  12. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Yeah, that's bad news, because I also took some time to do a few tests and weren't able to reproduce the issue. If I power on my console without a joypad connected, SMS++ goes into "SMS pad" mode as it's supposed to, and it detects no keypresses until I actually connect a pad and press some keys.

    I'll have a deeper look into the issue next week, as I said I'm pretty busy this week :(.
     
  13. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    Arf :/ Si it must come from my side. I'll try to find some free time to check once again my set up.
    Maybe desolder the wire that goes from Nano to IC4 Pin29 (Button1) so i'll see if this is the Nano that sends a wrong information.
    Is it a dumb idea ?

    EDIT : you should add your GiHub SMS++ link in the first post of this thread :)
     
  14. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Don't worry, I will send you some instructions to help with the debugging in the weekend!
     
  15. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    'llo here.
    Well, after some troubleshooting (and finally not debugging as there was no bug in the code), with the help of SukkoPera, i could sort out the issue by adding a 1.5KOhms resistor between pad D13 of the Arduino (controller pin 9 input) and VCC 5Volts.
    I have to double check, but it seems coming from a faulty Nano, missing the pull-up resistor.
    I'll report result after the traces and soldering check.
    See ya !
     
  16. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Glad we managed to solve the problem :). There is actually a way to test the Nano, plus I have a new suspect, I'll explain that in private.
     
    Last edited: Sep 14, 2016
  17. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    OK, so it seems we have finally managed to fully identify and fix the issue. To make a long story short, the Arduino pin I was using to read B2 cannot be reliably used as an input on Arduino Nano. I didn't notice this since I mainly develop on an Uno and the issue does not show up with that board, due to hardware differences.

    Anyway I have fixed the issue moving some pins around: now that pin is used as an output and thus should present no issues. The sketch on github has already been updated, so feel free to use it! If you are migrating from an old installation, you will have to swap pins 8-13 with A0-A5, but hopefully not many have treaded into the SMS++ territory yet ;).

    Thanks a lot to @MoockyLoock for all the help he gave me! I got him desoldering and soldering tons of wires and resistors! :D
     
    Last edited: Sep 15, 2016
  18. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    Glad i could help :)
    Now that SMS++ is kinda on its way (maybe any moer testing 'bout Phaser or other peripheral), see ya on MD++ for some new request ;)
     
  19. SukkoPera

    SukkoPera MegaDrive++/SMS++/NES++ Mastermind

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Yeah, it would be great if anyone could test Light Phaser support. It's supposed to work but it has to be tested. I actually have 2 LPs (and 2 CRTs), but I'm not sure any of them works properly, as at least one of them was sold to me as "to be tested".

    I have added a Compatibility List page to the wiki, to be improved!
     
  20. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    I'll try to find some time for testing tonight. And let you know :)
     
sonicdude10
Draft saved Draft deleted
Insert every image as a...
  1.  0%

Share This Page