MegaDrive++ : new switchless region + IGR mod

Discussion in 'Sega Discussion' started by keropi, Apr 26, 2016.

  1. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    Just tested again, and I do measure 5v between the 5V and GND on the nano itself.

    Continuity is fine between GND on nano and GND elsewhere on the Megadrive board.
     
  2. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Mmmh, I can't really understand what is going on. If you have another Nano, I guess we can try it, at this point. I've run out of ideas :(.
     
  3. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    No worries! All your assistance is much appreciated! =)

    I've gone ahead and ordered another. I'll report back in about a week or two when it arrives for testing.
     
  4. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    OK. Did you get Sonic in the meantime?
     
  5. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    I did. I have Sonic 2 and 3 here.
     
  6. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Mmmh, I only tested Sonic 1. Does MD++ work any better with those?
     
  7. Koritha

    Koritha Member

    Joined:
    Nov 16, 2016
    Messages:
    16
    Likes Received:
    1

    Ah, no. I probably didn't. I did get a proper rgb led since and everything is working perfectly. :)
     
  8. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    Sorry, didn't see the message before. They both start fine. The system seems to be stuck between a NA and JP mode. The Sonic games played fine, but Ecco craps out when it's in JP mode and you reset. But until reset is pressed (button or IGR), it runs fine.

    If it'd help, I can take a short video demonstrating exactly what happens.

    New nano should be here in a week or two. Hoping that fixes the problem.
     
  9. X5900

    X5900 Rising Member

    Joined:
    Jul 11, 2016
    Messages:
    51
    Likes Received:
    7
    Just a quick question. I have one of those 16x2 I2C LCD displays laying around, is it possible to reroute the output from the serial monitor to the LCD?
     
  10. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    Got the new nano, but still no luck. Gonna try and take it over to a friend's place in a week or two and hook it up to a scope he has, see if we can figure out the problem. Will report back then!
     
  11. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    I'm sorry to hear that :(. Just for information, are you sure you are using the code from the sixbutton branch and the connections I gave in an earlier post? Also does it still work fine if you hook it up to the PC on USB?

    I could add support for the LCD, it's not there at the moment, but I'm not really sure it'd be much useful, since a ton of stuff gets printed and 2 lines wouldn't allow you to see much.
     
  12. X5900

    X5900 Rising Member

    Joined:
    Jul 11, 2016
    Messages:
    51
    Likes Received:
    7
    I've tried to do myself, but it just kinda worked. The serial output is a really nice feature, especially when using a Nano with USB Port. But adding a USB Port to the case, just to hook up a computer is a bit overkill. The I2C LCD's on the other hand are dirt cheap and you could fit them on the case, with some modifications, pretty easy. They won't need to display all of the serial output, just shortened lines of relevant events, like "Startup", "Reset", "US REGION 60Hz" , "EUR REGION 50Hz" i.e. ... There are already libraries for those 2 wire I2C LCD's . If you think it's doable, I have the setup still on a breadboard, for testing.
     
  13. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    So, let me see if I understand correctly: you want to fit one of these on your MD's case?

    [​IMG]

    Well, that could certainly be done, but it looks a bit... horrible to me :eek:.

    Or did you mean one of these tiny 0.96" OLEDs?

    [​IMG]
    Anyway they're both pretty easy to add, there's a library supporting both. I will have a go at it ASAP.
     
  14. X5900

    X5900 Rising Member

    Joined:
    Jul 11, 2016
    Messages:
    51
    Likes Received:
    7
    No, I had the 16x2 LCD in mind, but simply because I've thought the little OLEDs are harder to implement and to actually see from normal distance (when setting the console via controller IGR) , they're more for handheld devices and stuff . On the other hand, since space is a commodity in these consoles, they would be easier to fit. I don't know how much more effort this would be? They're graphic displays and you would have to wiggle with fonts, sizes and icons etc.

    I'll be testing the nano with your code on a Sega Saturn in the next days, from what I've read it should work.
     
  15. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Ok, I see your point. As I said there's a library supporting both displays, so everyone will be able to choose the one they prefer.

    This will only happen on the 6button branch though, and I will have to move some pin assignments in order to free A4 and A5 (which are the Arduino hardware i2c pins). Since A0 and A1 are currently free, I will just shift A2-A5 to A0-A3.

    I'm not sure MD++ works on a Saturn. I think someone reported it does, but I'm not familiar at all with that console. Never even seen one in real life, as far as I can remember. It was never popular here in Italy. It has always been a PlayStation-dominated country until the XBox 360 came out and gained its own share.
     
    Last edited: Feb 6, 2017
  16. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    Yeah, definitely using the 6 button branch. And with the cinnections shown a few pages back.

    When friend and I hooked it up to a scope, we found this:
    During boot up, the nano defaults to EUR setting until the settings stored in eeprom are set. This causes all games to start in euro mode.

    We could see it start, and then briefly later it sets to the stored region. It's just enough delay for a U.S. game to start.

    The problem doesn't occur on USB power because the nano is already booted before turning on the Mega Drive's power.
     
  17. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    Nice find, although that shouldn't happen. MD++ holds the reset signal while it is initializing and only releases it after the desired mode has been set. Maybe it is not detecting the correct reset level? Could you please try enabling FORCE_RESET_ACTIVE_LEVEL? Try to set it low and then high, if it still doesn't work.
     
  18. Stupid Dufus

    Stupid Dufus Site Supporter 2017

    Joined:
    Jul 18, 2006
    Messages:
    145
    Likes Received:
    0
    Set it to LOW, and when Ecco (US) was inserted, it would start ok in US mode. But when in JP mode, sound would start then immediately freeze and show a garbled region lock screen. So it seems to switch the region quicker than before.

    With Virtua Racing (JP) in JP mode it would show the region lock screen, then immediately there'd be a screen flash like it was resetting, and again region lock screen.

    When set to HIGH, it's back to the old behavior I started with.

    I have an RGB LED now I can hook up if you think it might help with debugging on my end.
     
  19. SukkoPera

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

    Joined:
    May 6, 2016
    Messages:
    152
    Likes Received:
    27
    So, I have done a quick hack to add LCD support on a separate branch. Some caveats, please read carefully before updating:
    • THE WIRING HAS CHANGED (Again, I know)! A2/3/4/5 have been moved to A0/1/2/3, so just move all wires 2 pins down. Single led pin has been moved to pin 8. Please see the updated wiring diagram at the top of the sketch.
    • To enable LCD support, please uncomment ENABLE_LCD.
    • LCD support uses the New LiquidCrystal library, get it here: https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home. I have a feeling that it will also work with the standard LiquidCrystal library, if you change the LCD initializiation line, see next point.
    • LCD initialization is at line 223 and works for MY display, YMMV. I would suggest to first get your LCD working with the examples from the library you want to use, and then replace that line with the one that works for you. This page might help with weird displays (such as mine): https://arduino-info.wikispaces.com/LCD-Blue-I2C.
    • I have kept info on the LCD to 16x2, since the smallest displays I know of are this size. It's enough to understand what's going on. It will show the Reset line level, the current mode and all detected keypresses. It will also show some status messages.
    Check it out at https://github.com/SukkoPera/MegaDrivePlusPlus/tree/lcd_support.

    @Stupid Dufus: That branch also contains a change that might fix your issue, so please test it!
     
    Last edited: Feb 6, 2017
    zeruel85 and X5900 like this.
  20. MoockyLoock

    MoockyLoock Robust Member

    Joined:
    Apr 22, 2015
    Messages:
    265
    Likes Received:
    50
    'llo here.
    Hey SukkoPera, didn't hear 'bout you. Did you read my last PM ?
     
sonicdude10
Draft saved Draft deleted
Insert every image as a...
  1.  0%

Share This Page