Main

Introduction |
Quick System Overview | The
History! | The Future! | Schematics
| Additional Pictures

It's
what's on the inside that counts! Honest! Heh, seriously, I'll put it
in a nice stylish case some day, but it works, and being the
developer that I am, I'd rather hack up an old Polystation
III case than craft a nice fitted one, haha. That way, I can
spend my time coding and working on more snazzy gizmos.
The Devtendo is my answer to game
development for the Nintendo NES. It is an incredibly powerful device
which gives the PC complete control over the NES. From the PC,
cartridges can be written, dumped, and debugged. Saved games can be
backed up and written back. The PC can fully communicate and control
the NES remotely!
News
 |  |  |
|---|
 | [2008-05-06 07:33] Devtendo Software/More Released |  |
|---|
 |  |  |
|---|
|
|---|

It's been almost four years, and I decided it was about time to dig this all up and release it. It's collected quite a bit of dust on my hard drive and will need a little tweaking to get it working again, but it's almost all there.
The Devtendo hardware requires both the communication software for the NES and PC. The package just released includes the full source code. It will need a few tweaks as some stuff is hard coded, but otherwise is good to go.
NES cartridges can be read/written with it, and the software supports many different mappers. In addition, I built a Game Boy adaptor, so the software even supports GB carts fed through the NES!
You should now have everything you need to make and use your own Devtendo (with a few tweaks)!
[View] |
|
|---|
 |  |  |
|---|
 | [2008-05-06 05:47] Devtendo Schematics Released |  |
|---|
 |  |  |
|---|
|
|---|

I'm finally getting around to sorting through my old unreleased dev stuff and putting it up here! A special thanks goes out to the people who emailed me about this stuff, without them I probably would've never gotten around to releasing it, and it would've all bit-rotted on my hard drive :)
On that note, let's start the releases with a bang! The Devtendo Schematics!
They should work just fine, but as it's been so long, I can't remember if I made any
changes while building it.
It's only a list of the chips/connectors and their connections, but the other small components should be quite straight forward. Good luck!
[View] |
|
|---|
 |  |  |
|---|
 | [2004-09-08 17:41] Additional Devtendo Pictures Posted |  |
|---|
 |  |  |
|---|
|
|---|

I just dug up an old scan of the original Devtendo board from several months ago when I had just built it. It shows how it has progressed and such. As well, I've added a close up of the current board for comparison. [View] |
|
|---|
 |  |  |
|---|
 | [2004-08-29 17:41] The Devtendo NES Development System Revealed! |  |
|---|
 |  |  |
|---|
|
|---|

I recently purchased a digital camera, and as a result, I'm able to show the world the prototype of The Devtendo, my Nintendo NES Development System!
[View] |
|
|---|
Quick System
Overview
|
The
Devtendo has a small 2K BIOS loaded into the $4800-4FFF memory
space on the NES, memory which is normally unused. To communicate
with the PC, there are four registers, two read and two write,
mapped into the $4400-47FF memory space.
The two write only registers for the
NES can be read by the PC, and the two write only registers for
the PC can be read by the NES. Thus, each end has two read and two
write registers. These registers could be used for anything, but
the BIOS uses one of each for handshaking, and one for data.
If more than 2K of space is needed
for communication code, plugins can be uploaded to the NES' WRAM.
Although the NES only has 2K of WRAM onboard, the plugins can be
unloaded and new ones loaded, thus allowing for as much code as
needed. The plugins are handy as native code can be run to perform
additional tasks. However, they rarely would need to be used, as
the PC can read/write the NES' memory and registers as well, so
nearly anything a plugin can do, the PC code can as well.
Since the PC can remotely read and
write all of the NES' memory and registers. As a matter of fact,
one could technically write a game almost entirely under Windows
or any other PC environment, which simply communicates with the
NES using the Devtendo, reading and writing the NES' registers,
and using the PC for all of the game logic! Native code can also
be uploaded to the NES' RAM (as well as special modified
cartridges of course), so the game could have the speed critical
code running on the console. Woah! I'm getting ahead of myself
here. To sum it up, the Devtendo can do virtually anything with
the NES!
|
The
History
The first NES development device I
built (other than EPROM devcarts), was a simple cable which connected
the NES' second controller port to the PC, along with a special RAM
cart to upload code to. It worked nicely, and required no
modification to the NES itself. However, it was rather slow (about
1KByte per second -- note, I used to just say "1K", but too
many people seem to be confused by this!). I made a second version
with the use of a parallel to serial shift IC, and was able to get it
up to 9KBytes (or 72Kbits in cheat-speak, heh) per second. With a
buffer and some more circuitry, I could surely get 20KB/s at least,
but that still wasn't fast enough for me. I wanted to replace the use
of emulators with development on hardware.
It would be possible to make a special
cartridge that connects to the PC which can be uploaded to with great
speed while sitting in the NES. However, if I did that, the
development would be limited to that cartridge, and if I wanted to
develop for an alternate mapper chip, I'd need to build an entirely
new device! Inspired by Kevin
Horton's CopyNES,
I decided that the only way to have an efficient, versatile
development system for the NES, I needed to mod the console itself.
The result of modding the actual
console to be a development system gives the ability to quickly and
easily whip up RAM/Flash carts for any mapper without any major
circuitry. Simple NROM RAM carts require no extra chips to build! All
I need to do is remove the ROMs and wire in so SRAMs! More complex
carts require and additional 1-2 small ICs, which cost only about
$0.30 each!
As well, when developing new cartridge
hardware (or even expansion port hardware!) for the NES, it can be
fully verified and debugged very easily. For example, when building a
devcart, it can be quickly checked with tests if the /CE, /WE, /OE
are correct, the address lines correct, the data lines correct, as
well as the mapper functioning correctly. It's also relatively easy
to reverse engineer obscure mappers on strange carts!
Additional pictures of the hardware are
available here.
The Future
The next version of the Devtendo will
transfer data as much faster speeds. The current version working
through the parallel port can transfer data at about 40KB/s
(320Kbit/s). With a buffer added, it could get up to at least 80KB/s,
likely much more. I suppose also though, I could start using USB or
such, although the NES is what's really limiting the transfer rate,
not the parallel port, so it would only really add a nice modern
stylishness factor.
Links
Document and Information By Brian
Provinciano
August 28th, 2004
Updated May 6th, 2008