Author Topic: Questions about identifying Everdrive revisions during ROM execution  (Read 246 times)

0 Members and 1 Guest are viewing this topic.

Offline buu342

  • Newbie
  • *
  • Posts: 2
  • Karma: +6/-0
    • View Profile
I originally sent this as an email through the support page, but it's been more than a month and every week I get a reply from support saying that they are unable to answer my question because Kirkzz is busy, so I guess this is just the best next thing besides emailing Kirkzz personally.

I'm currently developing a tool for Nintendo64 Homebrew. As of right now, the N64 has three main developer flash carts with USB, being the 64Drive, EverDrive 3.0, and EverDrive X7. These three devices all work slightly differently, and don't even have the same memory addresses, which makes developing tools for homebrew a bit difficult. My project aims to create a library and command prompt interface to allow homebrew developers to upload ROMs via USB and use said USB to interface with the game as its running. I personally own a 64Drive, so I have managed to get all of that functionality working on said cart, but am having some small difficulties with the EverDrive(s). While the ROM uploading works for all three devices, I'm having issues with the N64 software side of the project.

1) Is there any magic value or address that I can read in order to detect whether the game is running on the 3.0 or X7? The only thing I could see is the Version Register, but I can't find any comprehensive list of what the range of values are (does the version refer to hardware revision or OS revision?).

2) Is there any full list of acceptable commands and what they expect as values (the CMDX commands that are sent via USB)? The 64Drive, for instance, has a comprehensive hardware spec document:

3) Is there any other documentation besides the source code provided in ?

Thank you!