Giter VIP home page Giter VIP logo

Comments (25)

Ancyker avatar Ancyker commented on August 30, 2024 1

It does seem like a good update to throw a compile error of some sort if vselect is enabled and HW is <5 I'd prefer that over having the code ignore it cause people need to know what they are setting.

A warning would also work, i.e.

#warning VSELECT enabled but is only supported on HW5, disabling.

from cartreader.

smesgr9000 avatar smesgr9000 commented on August 30, 2024

I have reworked cart selection today. Could you retest - please update your SD card with the newest files. If not could you describe your issue in more detail. I see no change between 12.8 and 13.1 with menu interaction.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

Thanks, I will give it a go tomorrow.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

Sill not working, here is a video of both the atari2600 menu not working and the SNES menu working from the same build.

1447736373.mp4
867061028.mp4

from cartreader.

smesgr9000 avatar smesgr9000 commented on August 30, 2024

thats odd. The code handling the menu is the same for SNES and Atari 2600. Could you please check if all other systems are working. Sadly I don't have the hardware to debug this issue. Another solution to pinpoint the issue would be to https://git-scm.com/docs/git-bisect this issue until the commit can be narrowed down.

from cartreader.

sanni avatar sanni commented on August 30, 2024

I am not able to recreate this issue with my HW3. Both V13.1 and the current GitHub code work fine. Also the Atari 2600 module was not changed between V12.8 and V13.1, it's the same file.

Have you enabled any other additional modules or options besides Atari 2600? If not try disabling a big module like NES to see if it's a memory issue.

Are you using the portable Arduino IDE from the release section or your own Arduino IDE setup? If you're using your own Arduino IDE try using the libraries from of the portable release.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

Gameboy menu works
NES menu does not work
SNES menu works
N64 menu works
Genesis menu works
Sega Master System menu works
Atari 2600 menu does not work

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

Config.h.txt
Here is the modified config.h file I used.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

OK, I think I figured it out, if I turn off ENABLE_VSELECT the atari 2600 menu works, now the question is do I have the ENABLE_VSELECT or not?

from cartreader.

PsychoFox11 avatar PsychoFox11 commented on August 30, 2024

Not sure what you're asking, but if you have a voltage switch, vselect is off. Vselect is an optional board that sets the voltage for you. If you don't have a voltage switch you probably have one, and can test its functionality with a multimeter, should be 5v on most and 3.3v on GBA/N64.
I have no idea what happens if you configure it incorrectly. I have one unit with it, one without it, but always set it for the specific one.

from cartreader.

smesgr9000 avatar smesgr9000 commented on August 30, 2024

@PsychoFox11 could you check with his configuration on your device? I think @sanni is right and has properly something to do with memory used. VOLTAGE_SELECT does require more program memory than without.

from cartreader.

PsychoFox11 avatar PsychoFox11 commented on August 30, 2024

@PsychoFox11 could you check with his configuration on your device? I think @sanni is right and has properly something to do with memory used. VOLTAGE_SELECT does require more program memory than without.

@smesgr9000 Sure, though I'm on HW5 - is vSelect a HW3 option? (I haven't really paid attention to pre-HW5 stuff as it is where I came in).

I can try with vSelect enabled when it shouldn't be though, and use the config file but changing the HW version. Will try to look into that tomorrow (well much later today as it is 4am) most likely.

from cartreader.

smesgr9000 avatar smesgr9000 commented on August 30, 2024

ah ok sorry thought you had a HW3 - no i don't think this is useful.

from cartreader.

PsychoFox11 avatar PsychoFox11 commented on August 30, 2024

@smesgr9000 @plaidpants From the page on vSelect - https://github.com/sanni/cartreader/wiki/Automatic-Voltage-Selection - it is only an option for HW5, so if it works when disabled, on HW3, it sounds like working as intended...

from cartreader.

PsychoFox11 avatar PsychoFox11 commented on August 30, 2024

It does seem like a good update to throw a compile error of some sort if vselect is enabled and HW is <5
I'd prefer that over having the code ignore it cause people need to know what they are setting.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

@PsychoFox11 could you check with his configuration on your device? I think @sanni is right and has properly something to do with memory used. VOLTAGE_SELECT does require more program memory than without.

I did try it with only the atari2600 enabled and the problem persisted with the vselect enabled, so seems like there should have been enough memory.

from cartreader.

Ancyker avatar Ancyker commented on August 30, 2024

@smesgr9000 @plaidpants From the page on vSelect - https://github.com/sanni/cartreader/wiki/Automatic-Voltage-Selection - it is only an option for HW5, so if it works when disabled, on HW3, it sounds like working as intended...

There's nothing technically preventing someone from using VSELECT on HW3, it's just that it doesn't make much sense to since you'd still need to switch the clock. I targeted HW5 with it because it was the only switch left on it other than the power switch.

from cartreader.

Ancyker avatar Ancyker commented on August 30, 2024

@plaidpants I'm curious, what happens if you update with https://oscr.tools/update ?

Edit: Oh right the Atari menu isn't enabled in that build, well that won't be useful derp 😅

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

@plaidpants I'm curious, what happens if you update with https://oscr.tools/update ?

Edit: Oh right the Atari menu isn't enabled in that build, well that won't be useful derp 😅

I am able to update and the NES menu that did not work previously works now however like you said the atari2600 menu is not enabled in that build.

from cartreader.

Ancyker avatar Ancyker commented on August 30, 2024

@plaidpants I'm curious, what happens if you update with https://oscr.tools/update ?
Edit: Oh right the Atari menu isn't enabled in that build, well that won't be useful derp 😅

I am able to update and the NES menu that did not work previously works now however like you said the atari2600 menu is not enabled in that build.

Reset your Config.h to untouched and only enable the options you checked in the updater.

Specifically, you probably want HW3, ENABLE_UPDATER, and clockgen_installed (if you have the clock generator). Don't enable anything else.

Once you do that, see if it still works. If it does, enable the Atari core (ENABLE_2600) and see if it continues to work.

Don't touch anything other than those options while testing. Enable things one at a time so that if it breaks you know the last option you enabled is what broke it.


The Firmware Updater on OSCR.Tools is a good test because the binaries are cached forever once built -- that means anyone selecting the same options as you is getting literally the exact same binary. This helps rule out a compilation bug specific to your system.

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

Rebuild with HW3, ENABLE_UPDATER, and clockgen_installed, all menus work, added ENABLE_2600, still works.

from cartreader.

smesgr9000 avatar smesgr9000 commented on August 30, 2024

is there a TODO open?

from cartreader.

plaidpants avatar plaidpants commented on August 30, 2024

from cartreader.

Ancyker avatar Ancyker commented on August 30, 2024

Yeah, there's not much to do here. They enabled a hardware option in the firmware that their hardware doesn't have.

from cartreader.

Ancyker avatar Ancyker commented on August 30, 2024

Btw, the reason it caused that is VSELECT on HW5 connects to PD7 for toggling the voltages. On HW5 this was the status LED, but on HW3 it's the input button:

# if defined(HW5) && !defined(ENABLE_VSELECT)
  /**
   * HW5 has status LED connected to PD7
   * Set LED Pin PD7 to Output
   **/
  DDRD |= (1 << 7);
  PORTD |= (1 << 7);
# elif defined(ENABLE_VSELECT)
  /**
   * VSELECT uses pin PD7
   * Set LED Pin PD7 to Output
   **/
  DDRD |= (1 << 7);
# else /* !defined(HW5) && !defined(HW5) */
  /**
   * HW1-3 have button connected to PD7
   * Set pin PD7 to input for button
   **/
  DDRD &= ~(1 << 7);
# endif /* HW5 &| ENABLE_VSELECT */

So on HW3, a different pin would need to be chosen for VSELECT's toggle if we were to want to add support for it on HW3.

from cartreader.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.