Fastrom patches?

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

MottZilla wrote:It's sad that a few bad efforts tend to stain a system's record in that way.
Which is exactly why every Nintendo console has had a lockout chip. Shovelware on the Atari 2600 stained the record of video games in general.
6502freak
Posts: 92
Joined: Sun Dec 07, 2008 1:11 pm

Post by 6502freak »

tepples wrote:
MottZilla wrote:It's sad that a few bad efforts tend to stain a system's record in that way.
Which is exactly why every Nintendo console has had a lockout chip. Shovelware on the Atari 2600 stained the record of video games in general.
I think in terms of shovelware, both SNES and Atari VCS can be easily compared. On both platforms, there are lots of great but also lots of bad games. The lockout chip was introduced so that Nintendo would have the absolute monopoly on cartridge production. Everyone had to buy all cartridge stock in advance from Nintendo, with pricing and thus profit margin set by Nintendo. The CIC chip was the key for Nintendo's iron, draconian grip on the market.
tomaitheous
Posts: 592
Joined: Thu Aug 28, 2008 1:17 am
Contact:

Post by tomaitheous »

MottZilla wrote: It's sad that a few bad efforts tend to stain a system's record in that way. Gradius 3's epic slowdowns (which didn't bother me that much, as I said it can be helpful) and I also remember Final Fight being complained about because of few enemys on screen at once, no two player, poor music quality, etc. which some people took to mean it was something wrong with the SNES and not that it was the developer's fault.
I think it made even minor slowdown for SNES games, more apparent. People were looking for it or expecting it. Granted, a lot of the first year release games slowed down quite often from what I remember. A large majority of them. Yet nobody seemed to care when Genesis or TG16/PCE games slowed down. It was acceptable. But, there were certain expectations about the SNES - being the last console out on the market in the 16bit generation (true/real system, not counting that CD-I and other junk). And the slowdown did help out in some games (I was able to beat Super EDF because of one of the weapons that caused the game to slow down a lot) :D
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Some bullet hell games intentionally slow down the frame rate when more than a certain number of objects are present in order to give the player a fighting chance. Even many PC bullet hell games do this, and this number doesn't vary from PC to PC so as not to change the game's difficulty on different hardware. But then this number is often far greater than the number of sprites that the Super NES PPU can show in the first place.

See screenshot
User avatar
MottZilla
Posts: 2837
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

6502freak wrote: I think in terms of shovelware, both SNES and Atari VCS can be easily compared. On both platforms, there are lots of great but also lots of bad games. The lockout chip was introduced so that Nintendo would have the absolute monopoly on cartridge production. Everyone had to buy all cartridge stock in advance from Nintendo, with pricing and thus profit margin set by Nintendo. The CIC chip was the key for Nintendo's iron, draconian grip on the market.
I don't see a problem with having an iron grip on the control of software released for your own platform like they did. I'm not sure which SNES games you can think of as shovelware, I'm sure there is a good bit but I don't think it's on the level of the VCS or other platforms. SNES has some really great games and while games like Final Fight and Gradius 3 suffered from various technical issues I don't believe that it ruined the experience completely. I certainly enjoy Gradius 3 despite the slowdown. And I played Final Fight as a kid and honestly I didn't notice the issues that I would notice today. Ofcourse I never played the arcade original when I first played the SNES version.
User avatar
koitsu
Posts: 4201
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Post by koitsu »

I remember having a chat with Neill Corlett about Gradius 3's slowdown, and based on his disassembly analysis, it appears to be intentional rather than an effective of slow/normal vs. fastrom or CPU speed.
psycopathicteen
Posts: 3140
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen »

koitsu wrote:I remember having a chat with Neill Corlett about Gradius 3's slowdown, and based on his disassembly analysis, it appears to be intentional rather than an effective of slow/normal vs. fastrom or CPU speed.
Something I've always wanted to say but couldn't find a more perfect time to say it.

I always wondered if programmers ever intentionally programmed slowdown because they thought they had to.

I blame the slowdown issue responsible for the long delayed Snes homebrew development scene. Most people simply avoid development for the Super Nintendo with the assumption that everything they do will cause slowdown.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

psycopathicteen wrote:I blame the slowdown issue responsible for the long delayed Snes homebrew development scene.
Since 2002 I've been blaming the GBA, a similarly powerful platform with a far lower barrier to entry.
tomaitheous
Posts: 592
Joined: Thu Aug 28, 2008 1:17 am
Contact:

Post by tomaitheous »

koitsu wrote:I remember having a chat with Neill Corlett about Gradius 3's slowdown, and based on his disassembly analysis, it appears to be intentional rather than an effective of slow/normal vs. fastrom or CPU speed.
I've heard a few people say this too, but what specific area of code points to this? Is his disassembly made public?
User avatar
koitsu
Posts: 4201
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Post by koitsu »

tomaitheous wrote:
koitsu wrote:I remember having a chat with Neill Corlett about Gradius 3's slowdown, and based on his disassembly analysis, it appears to be intentional rather than an effective of slow/normal vs. fastrom or CPU speed.
I've heard a few people say this too, but what specific area of code points to this? Is his disassembly made public?
You'd have to ask him. The conversation was held maybe 8 years ago.
User avatar
MottZilla
Posts: 2837
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

tepples wrote:
psycopathicteen wrote:I blame the slowdown issue responsible for the long delayed Snes homebrew development scene.
Since 2002 I've been blaming the GBA, a similarly powerful platform with a far lower barrier to entry.
Agreed tepples. I don't think the slowdown has anything to do with it. While the SNES CPU speed does discourage C programming which might be related to psycopathicteen's point, you can just as well use ASM. On GBA you don't have this issue but you still have a somewhat similar hardware setup.

Another barrier is the Sound system. On GBA I imagine its easy to get audio going where as on SNES you have limited options, very limited.
mic_
Posts: 922
Joined: Thu Oct 05, 2006 6:29 am

Post by mic_ »

I blame the slowdown issue responsible for the long delayed Snes homebrew development scene.
You mean "long gone"? Several demos and cracktros where released on the SNES in the 1990s.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

MottZilla wrote:Agreed tepples. I don't think the slowdown has anything to do with it. While the SNES CPU speed does discourage C programming which might be related to psycopathicteen's point, you can just as well use ASM.
Let me state the big problem with ASM. There are two parts of a game: the back-end and the front-end. The back-end or "model" implements the rules of the game, such as how high a fat plumber can jump, and the front-end or "view" displays the result to the player. If one language compiles on two platforms, then ports of a game to those platforms can share a back-end, and only the front-end must change between platforms. You can see this in the source code for Lockjaw Tetromino Game, which has both an Allegro front-end and a GBA front-end (which shares a lot of its code with a DS front-end) calling the same back-end. But sharing the back-end across platforms only works among platforms that support a given language. The Super NES alone has two incompatible assembly languages for the two CPUs, one for decoding music sequence data into a series of DSP commands and one for everything else, as you mention next:
Another barrier is the Sound system. On GBA I imagine its easy to get audio going where as on SNES you have limited options, very limited.
On GBA you have the vaguely NES-reminiscent Game Boy APU to get started. You also have a pair of 8-bit PCM audio buffers, and as long as you know the basics of digital signal processing, you can mix those in C for reasonable performance if you're not rich enough to license someone's ASM mixer.
Last edited by tepples on Fri May 21, 2010 10:22 am, edited 1 time in total.
psycopathicteen
Posts: 3140
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen »

mic_ wrote:
I blame the slowdown issue responsible for the long delayed Snes homebrew development scene.
You mean "long gone"? Several demos and cracktros where released on the SNES in the 1990s.
I didn't know there was ever an SNES development scene in the first place.

Anyway, I have a pretty decent SNES game engine that I've been dying on posting the source code. I recommend playing around with it if you want a head start at SNES development without starting from scratch.
User avatar
koitsu
Posts: 4201
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Post by koitsu »

psycopathicteen wrote:I didn't know there was ever an SNES development scene in the first place.
There was -- and it was quite a closely-knit and friendly community -- but is long over with for a lot of different reasons. Consider that I wrote the SNESTECH documents *before* the NESTECH stuff. :-)
Post Reply