[edit] Apparently Willis82 happened across one of these as well. Read that post here: http://assemblergames.com/l/threads/new-n64-debugger.35579/ Along with the dev 64DD I also received three consoles. One was a KMC rev.B, and there was a thread here earlier on how that mod was done. These other two are have a cable extending from them that serves the same purpose. Both are marked with stickers that say: DEBUGGER-N64用改造機 Both use rev.4 N64 boards, whereas the rev.B used a rev.5 N64 board. Archive of higher-quality pictures is here: http://www.mediafire.com/download/1c0xg1xpl2pm96x/debug_unit.zip Should note that when I opened the first up there was a stripped screw that wasn't worth putzing over so that exterior pic and bottom shot was actually of the other console. They're identical though. Pictures! Effectively that's the same purpose as the other KMC mod, but this one doesn't kill the cart A/V lines to do it. Only the A/V capture cart used these lines, but if you're doing 64DD development then this might be more appealing.
Has anyone ever tried seeing if debug routines still exist in any commercial games? (the routines that would work via /INT4 and things like the Parner-N cart.) I suppose it would be simple enough to just look at the disassembly of a few ROMs, or just trigger /INT4 under MESS and see if the code tries to Write to the cart bus? Just a thought. OzOnE
The interrupt is caught by code on the Partner/IS64. The devices hook the general exception vector in almost the exact same way a GameShark does and filters out the exception. They look for the string "KMC/x00" or "IS64" at a couple different device ranges, though the usual ones are BFF00000 or 803FE000. It also tests the rewritability of cartROM. If any test is true then it replaces the general exception vector with one that runs code from a 0x2000 byte block on the device wherever it found the string. The hooks are slightly tailored to the capabilities detected. In some cases the game will also start a slightly-different alternate main game thread that includes regular I/O with the Partner. Some retail games will still look for the Partner/IS64 and hook it if found, including the disk titles "Doshin the Giant 2" and "Mario Artist: Communications Kit". Setting cartROM writable is enough for it to try hooking those titles and had to cut out the detection when making the cart conversions. The Partner-side code can be found in some of the devkits. It's an EPT file and contains a 0x2000 block for the BFF00000 range, another 0x2000 for the 803FE000 range, and a build of the tron demo appended to that. Haven't seen anything specific to the IS64 yet; it may just be a different identifier for all I know.