NES DLC idea

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Drag
Posts: 1350
Joined: Mon Sep 27, 2004 2:57 pm
Contact:

Re: NES DLC idea

Post by Drag »

I think it'd be more reliable to do it the old-fashioned 8-bit computer way of using cassette tapes. If you need sample code to read/write cassette tape data, Excite Bike and Wrecking Crew have it built-in (look at the load/save options in edit mode, on the NES version). The DLC can be read off of the tape and stored on battery-backed RAM inside the cart for convenience.

You could also use the FDS, but you have to deal with load times. That and I don't think anyone makes FDS disks anymore, let alone devices to write to them.
User avatar
MottZilla
Posts: 2835
Joined: Wed Dec 06, 2006 8:18 pm

Re: NES DLC idea

Post by MottZilla »

We should definitely make our own Tape Deck interface. It's the future of whatever it is we are doing... They still make Cassette tapes right?

Anyway I think you'd need an actual computer program to run to display your encoded video stream of data. To reduce the possibility of performance/frame rate issues. But in the end a serial cable of some kind is probably better.
lidnariq
Posts: 10677
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: NES DLC idea

Post by lidnariq »

The nice thing about an audio format like the Family Basic Data Recorder is that you can also use MP3s. However, that's only useful to people with the original keyboard. And once you're building new hardware, you may as well use a design like blargg's asynchronous serial interface or byuu's SPI interface.
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: NES DLC idea

Post by Sik »

MottZilla wrote:They still make Cassette tapes right?
Yeah, they're being quite profitable for TDK actually. They went the way of vinyl, a small niche market but with a strong demand. Especially for good quality ones.

How does the tape deck on the Famicom work though? Because if it takes an audio-in line from a generic tape player you don't even need tapes at all, you could just connect anything that makes sound to it.
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Re: NES DLC idea

Post by Shiru »

The beauty of the original idea is that it is plain simple - just use existing hardware, point the gun at TV. Tape interfaces aren't available on the stock consoles, so it is not interesting anymore, you could just add a SD, USB, Ethernet or whatever interface as well.
User avatar
rainwarrior
Posts: 8062
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES DLC idea

Post by rainwarrior »

Well, this is an idea for a cartridge that you can download content to. With this in mind, specialized hardware might be acceptable as long as it's part of the cartridge or comes with it.

Connecting a stereo mini or RCA cable directly to the cart might be acceptable. Turning the audio signal into some pollable registers on the cartridge probably wouldn't take too much hardware. Alternatively you could package with a controller port to USB connector, or something like that.
lidnariq
Posts: 10677
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: NES DLC idea

Post by lidnariq »

Sik wrote:How does the tape deck on the Famicom work though? Because if it takes an audio-in line from a generic tape player you don't even need tapes at all, you could just connect anything that makes sound to it.
Two mono 3.5mm jacks, so yes, you can use things other than the tape deck. But as Shiru and I pointed out, the number of people with Famicoms and Family Basic Keyboards is miniscule and once you're building any hardware, you may as well use something with better bandwidth.

If you're going to put hardware in the cartridge, you may as well use a cheap PIC and use the extra pins for mapper control.
User avatar
Dwedit
Posts: 4470
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: NES DLC idea

Post by Dwedit »

There's just one really obvious with the whole zapper approach. Load time. Let's say you're using something like Run Length Limited, and letting each frame stay on the screen for two frames, for about 6 bits transferred every 16 frames.
To transfer 8192 bytes would take 48 minutes at that speed. If you were using the highest possible speed (one bit per frame), it would still take 18 minutes.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Re: NES DLC idea

Post by Shiru »

Still acceptable for an extra level in Battle City or Lode Runner, though. In fact, the concept could be extended even further - a save feature through a VCR. To save data, a game plays the blinking sequence that could be recorded on a VCR, and to load, you playback the recording reading it with Zapper. Even more fun than a mile long password.
User avatar
Memblers
Site Admin
Posts: 3902
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Re: NES DLC idea

Post by Memblers »

I like the idea, but the problem I see with using the Zapper to transfer data is that from what I understand, (probably already mentioned) that it's only going to work with a 15khz H refresh rate monitor (CRT TV and not much else). Sounds like it's not a problem for some of the Famiclone lightguns though.

I wonder if the Zapper VCR saving idea would work, that would be cool.

BTW, this really should've been on the nesdev main page:
Image
by sepi, this was confirmed to work with Excitebike, etc. recording to a PC soundcard (not sure if he tried tape).
User avatar
noattack
Posts: 147
Joined: Tue Feb 13, 2007 9:02 pm
Location: Richmond, VA

Re: NES DLC idea

Post by noattack »

Just to add to the 15kHz evidence:
The phototransistor serves to detect the light from a target on the television screen to convert it to an electric signal, the output from said phototransistor being amplified by the transistor, and only the detection signal which corresponds to the horizontal oscillation frequency in the television synchronizing signal is extracted by the filter formed of the capacitor and coil, the other frequency components being attenuated.
That's from Nintendo's patent, “Video Target Control and Sensing Circuit for Photosensitive Gun.” And they anticipated players cheating by firing at light bulbs:
The light from this white picture is detected by a phototransistor, whose detection signal, when extracted by a filter, is used as a detection signal from the target. Thus, there is no danger of mistaking the light from an illuminator for the light from the target.
Smart.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: NES DLC idea

Post by tokumaru »

noattack wrote:And they anticipated players cheating by firing at light bulbs
Even if they didn't, this is simple enough to prevent in software: show a black screen before displaying white targets. If the gun is detecting light while the black screen is on, it's obviously not pointed at the screen.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: NES DLC idea

Post by tepples »

Or even quicker, as I discovered during the development of Zap Ruder: If the gun is registering light near the end of vblank, then there are two possibilities. Either it's pointed at a light source other than the TV, or it's not plugged in.
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: NES DLC idea

Post by Sik »

tokumaru wrote:
noattack wrote:And they anticipated players cheating by firing at light bulbs
Even if they didn't, this is simple enough to prevent in software: show a black screen before displaying white targets. If the gun is detecting light while the black screen is on, it's obviously not pointed at the screen.
Which is the method used by Duck Hunt, if I recall correctly. Looks like the programmers were completely unaware of this feature. Then again, is this circuit in all the guns or only the Zapper? Maybe the Famicom gun doesn't have it...

Now, even if we solved all those issues... what about the player having to aim the gun at the screen for all this time? Relax for a split second and you completely broke the transmission. Also I assume this is for LCD screens and the like? Because with a CRT the read needs to happen in the very moment the beam appears in the gun's sight.
Shiru wrote:Still acceptable for an extra level in Battle City or Lode Runner, though.
Calculated this for Battle City: 676 bits (13×13×4-bit). At 60FPS (the maximum, and assuming a perfect transmission), that'd mean around 11.27 seconds. At 30FPS (the original proposed framerate) it'd be 22.53 seconds. And this is not making room for parity bits and such.

Considering how bad your average human is at keeping the arm in the exact same position for long periods of time (you're bound to at least wobble the arm a bit, which can screw things badly)... yeah, it's probably still not acceptable. It'd be very prone to errors still.

EDIT: and since we're also mentioning how if you're making hardware you may as well provide your own way to do it... we could go the extra mile and say we don't even need to do that. Just use a flashcart and replace the ROM whenever you want to add new stuff. Then you could add the DLC through some program with a computer or something.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: NES DLC idea

Post by tokumaru »

Sik wrote:Also I assume this is for LCD screens and the like?
It's still unclear whether the zapper can see light from modern displays.
Because with a CRT the read needs to happen in the very moment the beam appears in the gun's sight.
Why? I don't see why timing is critical for this at all. AFAIK, timing is only critical with the zapper if you're trying to detect the (approximate) coordinates the zapper is aimed at (useful for locating in game objects, but pointless for reading bits into the console).
Considering how bad your average human is at keeping the arm in the exact same position for long periods of time (you're bound to at least wobble the arm a bit
Personally, I'd just put the zapper on a table or any other surface pointed at the TV.
Post Reply