Aftermarket Guide

From No-Intro ~ Wiki
Revision as of 09:34, 17 September 2024 by Rarenight (talk | contribs)
Jump to navigation Jump to search

tl;dr

When adding a game to DAT-o-MATIC, ask yourself the following question: did the console manufacturer (Nintendo/Sega/etc.) approve the game you're adding for that console at some point, even if it never ended up releasing during the original console's lifespan, or even if the game you're adding is a re-release with new content?

If they approved it for that console at some point:

It's licensed, just add the appropriate distinguishing tag instead, like (Limited Run Games) or (SNES Classic) or (Steam)

If they never approved it for that console:

If it has stolen assets and it's old: (Pirate)
If it has stolen assets and it's new: (Aftermarket) (Pirate)
If it has unique assets and it's old: (Unl)
If it has unique assets and it's new: (Aftermarket) (Unl)

For systems with no approval process, just go by the year the platform was discontinued instead and use your best judgment.

Public vs. Private Entries

New platform

= Private DAT

Legacy platform

Licensed game (including official re-releases)
= Public Entry
Unlicensed game
<10 years old
Free build at time of datting
= Public Entry
Paid build at time of datting
= Private Entry
>10 years old
= Public Entry

Licensed vs. (Unl) vs. (Aftermarket) vs. (Pirate)

  • Licensed = The original console manufacturer approved that game for sale for that console at some point. Preproduction builds count as approved for sale. Official re-releases inherit the licensed status of their original release, and have an additional tag to distinguish them.
  • (Unl) = Short for Unlicensed. Any game that wasn't approved for sale for that console by the original console manufacturer at some point. If there was no approval process, then see the Aftermarket Start Year section below.
  • (Aftermarket) = Any unlicensed game that was first distributed after the last-known original licensed game released for that platform. All aftermarket games must be unlicensed because they were all originally released after the console's licensing period ended. Aftermarket is intended to be a general barometer of console lifespan to help us distinguish unlicensed indie homebrew games released after the console was discontinued.
  • (Pirate) = Any unlicensed game that contains stolen assets.
  • The (Pirate) and (Aftermarket) tags are both subsets of the (Unl) tag and are applied in tandem.
  • If the (Pirate) tag is present, the (Unl) tag is omitted for brevity because an unlicensed status is implicit.
  • If the (Aftermarket) tag is present without the (Pirate) tag, the (Unl) tag is added to emphasize that the (Aftermarket) tag only applies to unlicensed content.
  • All licensed and unlicensed content in DAT-o-MATIC (DOM) span these tag combinations:

Licensed Game

that originally released within the platform's lifespan
= No tag
that was officially re-released after the platform's lifespan
= Distinguishing tag like (Limited Run Games) (Retro-Bit) (Columbus Circle) (Virtual Console) (Switch Online) (Classic Mini) (Evercade) (Steam)

Unlicensed Game

that originally released within the platform's lifespan
with unique assets
= (Unl)
with stolen assets
= (Pirate)
that originally released after the platform's lifespan
with unique assets
= (Aftermarket) (Unl)
with stolen assets
= (Aftermarket) (Pirate)

Aftermarket Start Year

  • For consoles, the Aftermarket Start Year reflects the year that the last-known, original licensed game released for each console. This definition applies to the normal licensed software ecosystem for the console, and is inclusive of licensed regional variants (e.g. Brazilian Tec-Toy games for Genesis).
  • Open computing platforms without a defined lot check system for licensing have an Aftermarket Start Year that matches the year of worldwide hardware ecosystem discontinuation. This is the year that hardware manufacturers for the computer family formally abandoned the platform.
  • Each platform has a unique lifespan, and therefore the Aftermarket Start Years vary per platform and are aggregated in the below list.
  • If a platform doesn't appear in the below list, then the Aftermarket tag is not yet applicable at this time. Entries are only included below for No-Intro sets that currently contain the (Aftermarket) tag. New systems will be added as necessary.

List of Aftermarket Start Years

Platform Year
Atari - 2600 1992
Atari - 5200 1987
Atari - 7800 1992
Atari - 8-bit Family 1992*
Atari - Jaguar 1998
Commodore - Commodore 64 1994*
Microsoft - MSX 1993*
Microsoft - MSX2 1993*
NEC - PC Engine - TurboGrafx 16 1994
Nintendo - Family Computer Disk System 1992
Nintendo - Game Boy 2001
Nintendo - Game Boy Advance 2008
Nintendo - Game Boy Color 2003
Nintendo - Nintendo 64 2002
Nintendo - Nintendo DS 2016
Nintendo - Nintendo Entertainment System 1995
Nintendo - Satellaview 2000
Nintendo - Super Nintendo Entertainment System 2000
Nintendo - Virtual Boy 1996
Sega - Game Gear 1997
Sega - Master System - Mark III 1998
Sega - Mega Drive - Genesis 2002
Sega - SG-1000 1987

*Year Discontinued

Datting Algorithm

A licensed status means the original console manufacturer approved that game for sale at some point. Official re-releases inherit the licensed status of their original release.

If:
Original console manufacturer approved game for that console at some point
Licensed -> yes
Original console manufacturer approved game for that console at some point, but it got cancelled pre-release
Licensed -> yes
Original console manufacturer did not approve game for that console, but they did for another console
Licensed -> no: other
Original console manufacturer did not approve game for that console at some point, and the game has unique assets
Licensed -> no: other
Original console manufacturer did not approve game for that console at some point, and the game has stolen assets
Licensed -> no: pirate

If an unlicensed status is determined, then if the year an unlicensed game originally released was the Aftermarket Start Year or sooner, add the (Aftermarket) tag when datting. Otherwise, omit it.

We intend for the Aftermarket Start Year to be a general barometer of lifespan in order to delineate newer unlicensed games from older ones. Therefore, only the year of original release for the content is relevant to compare with the Aftermarket Start Year.

If:
Licensed -> yes
Aftermarket -> no
If:
Licensed -> no: other
or
Licensed -> no: pirate
Then:
If year content originally released was before the Aftermarket Start Year:
Aftermarket -> no
If year content originally released was the Aftermarket Start Year or sooner:
Aftermarket -> yes

Licensed Examples

Is it an originally licensed game?
Licensed -> yes, Aftermarket -> no
(Example: GoldenEye 007 on N64)
Is it an official re-release of an originally licensed game?
Licensed -> yes, Aftermarket -> no
(Example: GoldenEye 007 for N64 on Switch Online)
Is it an official re-release of a originally licensed game with additional content added?
Licensed -> yes, Aftermarket -> no
(Example: Ninja JaJaMaru: The Great World Adventure DX for GBC on Switch)
Is it an official re-release of a previously-licensed proto that was cancelled?
Licensed -> yes, Aftermarket -> no
(Example: Star Fox 2 for SNES on SNES Classic Mini)
Is it an official re-release of a previously-licensed proto that was cancelled but revived and enhanced?
Licensed -> yes, Aftermarket -> no
(Example: Darius for Genesis on Genesis Mini)

Unlicensed and Non-Aftermarket Examples

Is it an old pirate cart that originally released before the Aftermarket Start Year?
Licensed -> no: pirate, Aftermarket -> no
(Example: 290-in-1 on NES)
Is it an official re-release of an unlicensed bootleg game that originally released before the Aftermarket Start Year?
Licensed -> no: other or no: pirate, Aftermarket -> no
(Example: Magic Girl for Genesis on Evercade)
Is it an old application that originally released before the Aftermarket Start Year?
Licensed -> no: other, Aftermarket -> no
(Example: Action Replay DS on DS)

Unlicensed and Aftermarket Examples

Is it a brand new port that originally released after the Aftermarket Start Year?
Licensed -> no: other, Aftermarket -> yes
(Example: Zelda II: The Adventure of Link for SNES on homebrew carts)
Is it an old indie homebrew game that originally released the same year as the Aftermarket Start Year?
Licensed -> no: other, Aftermarket -> yes
(Example: Anguna: Warriors of Fate for GBA on the developer's site)
Is it a new indie homebrew game that originally released after the Aftermarket Start Year?
Licensed -> no: other, Aftermarket -> yes
(Example: Swordbird Song: The Iron Owl Tower for GBA on itch.io)
Is it an indie homebrew game that was approved by the manufacturer but only for a different console?
Licensed -> no: other, Aftermarket -> yes
(Example: Goodboy Galaxy for GBA on Switch)

But if aftermarket is just a measure of lifespan, then why aren't re-releases considered aftermarket and/or unlicensed?

We are looking at games from the context of the original console's lifespan. Within the lifespan of the Genesis for example, when Sega was still licensing games for release, what did they approve back then? Who did they give Genesis dev kits to? What games were in development during that time? What bootleg games actually released for the console itself? That bucket of games (and their subsequent re-releases of all sorts) count as non-aftermarket.


When the Genesis died out, there's another bucket of indie homebrew games that were developed for Genesis afterwards to capitalize on nostalgia, primarily on digital sites like itch.io. That bucket of games count as aftermarket. The purpose of the (Aftermarket) (Unl) tags is to separate out those two ecosystems and help us determine what's indie homebrew for those who don't like to collect them.


No-Intro sets are comprised of thousands of bundled re-releases by design. For example, "Super Mario Bros (World).nes" with a CRC32 of d445f698 is actually eight ROMs:

  • Super Mario Bros. NES cart -> CRC32 of d445f698
  • Super Mario Bros. Animal Crossing Gamecube Bonus -> CRC32 of d445f698
  • Super Mario Bros. NES Classic -> CRC32 of d445f698
  • Super Mario Bros. Wii Virtual Console -> CRC32 of d445f698
  • Super Mario Bros. Game & Watch -> CRC32 of d445f698
  • Super Mario Bros. FamicomBox -> CRC32 of d445f698
  • Super Mario Bros. FamicomStation -> CRC32 of d445f698
  • Super Mario Bros. Switch Online -> CRC32 of d445f698

...all bundled into one entry. No-Intro bundles all ROM re-releases in the same sets for consistency. If they have a unique tag like (Evercade) that means the checksums changed (usually due to something small like the publisher changed the copyright from 1987 to 1987-2015), but it's still fundamentally the same ROM.

If we were to consider re-releases as aftermarket and/or unlicensed, then despite having the same checksums, we would need to duplicate Super Mario Bros. seven times unnecessarily, which is antithetical to No-Intro. Our database is structured around efficiency, which means avoiding unnecessary duplicates and bundling the same ROM with the same content in the same DAT where possible.


Considering re-releases as aftermarket and/or unlicensed doesn't work with exclusively unique checksums either. Take GoldenEye 007 for N64 for example:

  • GoldenEye 007 (Japan)
  • GoldenEye 007 (Japan) (Switch Online)
  • GoldenEye 007 (Europe)
  • GoldenEye 007 (USA)
  • GoldenEye 007 (USA, Europe) (Switch Online)

GoldenEye 007 was recently re-released for Switch Online. Its ROM is an exact bit-perfect replica of the original cart ROM, just like the rest of the Switch Online Nintendo 64 re-releases. Except this time for whatever reason Nintendo scrubbed out all the old Bond licenses that were left over, which you can't even access normally in-game without an Action Replay.

So its CRC32 checksums will technically differ, but the person playing GoldenEye 007 will have the exact same bit-perfect experience whether on the Nintendo 64 cart or the Switch Online re-release. So why should we assign the (Aftermarket) or (Unl) tags to this one and separate it out but not all the other Switch Online re-releases which have matching checksums? Because this time around a tiny, inconsequential part of data was scrubbed that the player can't even access in-game? Just because it's technically a re-release with unique checksums? That makes no sense. It's the exact same ROM, so it should be treated like the original.


Imagine if we had to deliberate about the merits of every single re-release like this. It would be endless, inconsistently applied, and confusing. We want to avoid these types of pointless discussions for re-releases by having them always inherit the licensing status of their original releases, and by applying the (Aftermarket) (Unl) tags for games that originally released after the console's lifespan. That definition gives us a consistent and straightforward application which is useful to end users of No-Intro DATs and saves us a lot of headaches.


On a philosophical level, it's still the same ROM that was once approved by Nintendo / Sega / etc. Just because it gets re-released, or has minor changes, or has additional content added to it, the core experience that was once licensed remains intact. And, as stated previously, it's much more efficient for us to structure our database this way. When the ROM is ported in such a way to where it ceases to be compatible with the original console (like with the 2013 Sonic the Hedgehog native iOS ports) that's when it should be no longer bundled in the same set.

So we must consider licensing status on a per-game basis, not per-release, and ROM re-releases cannot be aftermarket or unlicensed.