Homebrew IS-NITRO-EMULATOR Firmware Patches

Stickteo

Member
OP
Newcomer
Joined
Aug 21, 2020
Messages
5
Trophies
0
Age
33
XP
220
Country
United States
IS-NITRO-EMULATOR Firmware Patches

@famiac and I wanted this development system to run games and output to a monitor without the use of a PC, so we created a series of IPS patches for the firmware to enable these functions.
A lot of thanks goes to @Gericom for documenting the IS-NITRO-EMULATOR registers and USB functions. All of this wouldn't have happened without their initial labor in putting the documentation together.

You can check out the documentation on the NSMBHD forum by searching for the thread:
4438-nintendo-ds-dev-hardware-is-nitro-emulator-and-co

Patches
These patches are in IPS format for transparency. We only changed a few bytes.
I included an attachment to download as well as a string of hex values you can put into a hex editor to save directly as an IPS file. (I recommend HxD)

GBA Cart Enable:
Code:
50 41 54 43 48 0B 1A B0 00 01 C4 0B 1A B8 00 0A
FF FF FF FF FF 31 7F FE 3D 56 0B 1A D0 00 01 FF
0B 1A D7 00 00 00 16 FF 45 4F 46

Video Enable: (For systems that don't have this option enabled)
Code:
50 41 54 43 48 0B 7B 48 00 01 FF 0B 80 7A 00 01
FF 0B 80 A2 00 01 FF 0B 80 D4 00 01 FF 45 4F 46

Video Aspect Ratio and Border Fix: (On J rev machines, the image gets stretched unnecessarily)
Code:
50 41 54 43 48 0B 7B FB 00 01 03 0B 7C 03 00 01
03 0B 7D 47 00 01 06 0B 7D 55 00 07 06 FF FF 43
61 6B 06 45 4F 46

All Patches:
Code:
50 41 54 43 48 0B 1A B0 00 01 C4 0B 1A B8 00 0A
FF FF FF FF FF 31 7F FE 3D 56 0B 1A D0 00 01 FF
0B 1A D7 00 00 00 16 FF 0B 7B 48 00 01 FF 0B 7B
FB 00 01 03 0B 7C 03 00 01 03 0B 7D 47 00 01 06
0B 7D 55 00 07 06 FF FF 43 61 6B 06 0B 80 7A 00
01 FF 0B 80 A2 00 01 FF 0B 80 D4 00 01 FF 45 4F
46

Usage
  1. Restore IS-NITRO-EMULATOR firmware (This is almost verbatim from the manual) (The DEBUGGER software will only update older firmware versions)
    • Set DIP switch #4 on your machine to ON, all of the others should be OFF.
    • Turn on your machine.
    • Wait 30 sec until SYSTEM1 LED turns OFF, SYSTEM2 LED should stay ON.
    • Turn off the machine.
    • Set DIP switch 4 OFF. (Otherwise you will restore the firmware again when you turn it back on)
  2. Install IS-NITRO-DEBUGGER v2 03 on your PC
    • Must be this version since we're doing byte patches.
    • May not work with Windows 10 x64, but it works fine on Windows 7 x64 and should work on older versions of Windows as well.
    • Use conmpatibility mode with Windows XP SP2 if needed.
  3. Find the ISNITRO.dll file located in
    • C:\Windows\System32 for 32-bit Windows install or
    • C:\Windows\SysWOW64 for 64-bit Windows install
  4. Back up the ISNITRO dll before applying any patches. You can create a copy in a different folder, or copy and rename in system folder.
  5. Apply the patches you want
    • I used Floating IPS to create the patch and apply it.
  6. Copy your modified ISNITRO.dll back into your system folder (no need to reset PC)
  7. Plug your machine into your PC using a USB type B cable.
  8. Turn on the machine. The drivers should auto-detect the NITRO.
  9. If not, disable driver signature enforcement, and specify the location of the drivers in the INTELLIGENT SYSTEMS program files folder.
  10. Run ISND.exe (there should be a desktop shortcut created)
  11. The program will automatically prompt you to update the machine. Allow it to run. If this goes wrong, you can always restore using DIP switch 4.
    • The update will persist unless a factory reset is performed (using DIP switch 4)

ISNITRO.dll Checksums
  • CRC32: 73e9b9d2
  • MD5: 980fc2173d015889f374ff7621bae6c1
  • SHA1: b3edbfb588d80860f8e94680399a4c20c71f2975
  • SHA256: 09dfb4960c7a7c68a3de178469e6506f0a39038b7ac6becc2382f68eab2560f2

Background
In general, there is an MCU in the EMULATOR machine that interfaces between the PC and the NDS CPU. So, there is a separate firmware for the MCU besides the firmware that the NDS CPU runs. @Gericom reversed the USB commands and documented the system registers that the MCU manipulates. This was in 2018. A major roadblock was trying to figure out how to reflash the MCU firmware by software. We had thought for a while that the firmware embedded in the ISND exe is what gets flashed to the system. We realized quickly this wasn't the case, and the project kinda sat on the backburner. It took an embarrassingly long time to try snooping in the system folder, which lead to the current ISNITRO.dll patching state of the "jailbreak".

Future Work
We hope to implement a firmware mod that will enable the NDS cart slot in the near future.

Edits
2020 August 22: initial post
 

Attachments

  • is-nitro-emulator_fw_patches_200822.7z
    350 bytes · Views: 364

famiac

Member
Newcomer
Joined
Aug 22, 2020
Messages
11
Trophies
0
XP
79
Country
United States
can't post a demo shot, cause I'm still new here, but I will when I can! But with these patches we hope more NITRO owners can get some use out of their systems
 

centaur2

New Member
Newbie
Joined
Jul 12, 2006
Messages
3
Trophies
1
XP
48
Country
Germany
I can't get this to work on my J4 IS-Nitro-Emulator.

The ISNITRO.DLL files has the correct SHA1, so I am using the right version.
Applying any of the IPS patches does not do anything after the Update.

The TV output pane under settings is still greyed out.

Any suggestions?
 

Stickteo

Member
OP
Newcomer
Joined
Aug 21, 2020
Messages
5
Trophies
0
Age
33
XP
220
Country
United States
I can't get this to work on my J4 IS-Nitro-Emulator.

The ISNITRO.DLL files has the correct SHA1, so I am using the right version.
Applying any of the IPS patches does not do anything after the Update.

The TV output pane under settings is still greyed out.

Any suggestions?
I guess you are using the PC software? Since you mentioned the TV output pane...

Have you tried just attaching the Nitro to a display to see if there's any video? (We mainly developed this patch so the video output will work without having a PC attached.)

In the case you want to use it with the PC software, I would guess ISND.exe checks the video option in a different way that we didn't patch for.
 

centaur2

New Member
Newbie
Joined
Jul 12, 2006
Messages
3
Trophies
1
XP
48
Country
Germany
I guess you are using the PC software? Since you mentioned the TV output pane...

Have you tried just attaching the Nitro to a display to see if there's any video? (We mainly developed this patch so the video output will work without having a PC attached.)

In the case you want to use it with the PC software, I would guess ISND.exe checks the video option in a different way that we didn't patch for.

Thanks for your info, I was simply unlucky as my cable was bad. I switched cables and now get picture on both AV ports, even without the PC software.

Thank you for your excellent and elegant solution!

Are you still working on the DS slot patch?
 

Stickteo

Member
OP
Newcomer
Joined
Aug 21, 2020
Messages
5
Trophies
0
Age
33
XP
220
Country
United States
Great to see the patch works for you!

The project is currently on hiatus... We do hope to eventually figure out the DS slot patch.

I believe the PC software uses some sequence to enable the slot... So the DS slot patch would need to emulate that sequence. Any ideas would certainly help!
 

gudenau

Largely ignored
Member
Joined
Jul 7, 2010
Messages
3,882
Trophies
2
Location
/dev/random
Website
www.gudenau.net
XP
5,364
Country
United States
@Stickteo Any idea what's going on here? I used that GitHub project to convert the ROMs for the software and even tried putting the cart into SLOT-1.

 

famiac

Member
Newcomer
Joined
Aug 22, 2020
Messages
11
Trophies
0
XP
79
Country
United States
it's been a long time, but we noticed a bug with save data and i believe this patch fixed it.
Note: you need to set DIP switch #2 to activate the hack.
It's nice because you can go back and forth between factory firmware and "game-playing" mode.

there's only one IPS file in the zip folder. I'll put out a version with aspect ratio correction eventually.
 

Attachments

  • ISNITRO_gamehookvideo_savefixed.zip
    392 bytes · Views: 38
Last edited by famiac,

MSX

Member
Newcomer
Joined
Sep 2, 2021
Messages
19
Trophies
0
XP
114
Country
United States
So I have an IS-NITRO-CAPTURE without WiFi and an IS-NITRO-EMUALTOR with WiFi. I tried swapping the hardware, but unsurprisingly, the Capture doesn't post with the WiFi card. I'm guessing it's firmware related. Any chance of a patch that enables the WiFi?
 

famiac

Member
Newcomer
Joined
Aug 22, 2020
Messages
11
Trophies
0
XP
79
Country
United States
i don't think so. but i still want to get DS games working on the EMULATOR. It will likely require a hardware hack, so if you're comfortable taking your machine apart, you should be able to do it.
 

Shadow_The_Hedgehog82

Well-Known Member
Member
Joined
Jul 22, 2018
Messages
282
Trophies
0
Age
42
XP
943
Country
Australia
Hi I saw a nitro emulator for sale the sticker on the side only has usg and wireless ticked am i able to get video output with the above patch or does it require extra internal hardware?
 

gudenau

Largely ignored
Member
Joined
Jul 7, 2010
Messages
3,882
Trophies
2
Location
/dev/random
Website
www.gudenau.net
XP
5,364
Country
United States
Hi I saw a nitro emulator for sale the sticker on the side only has usg and wireless ticked am i able to get video output with the above patch or does it require extra internal hardware?
That's just software so you should be good.

i don't think so. but i still want to get DS games working on the EMULATOR. It will likely require a hardware hack, so if you're comfortable taking your machine apart, you should be able to do it.
From looking a video of someone taking apart an IS-NITRO-CAPTURE it appears as though the only difference between the units is that first board and it's daughter board. The rest of the cards in it where even labeled with the emulator nomenclature.
 

tobeder

New Member
Newbie
Joined
Sep 7, 2023
Messages
2
Trophies
0
Age
41
XP
26
Country
Mexico

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: @SylverReZ, Indeed lol