Site Tools


documentation:games:opera:game_technical_information

A list of technical facts about 3DO games.

Fields

Resolution

The 3DO was released in both NTSC and PAL regions. The OS lets the software query available resolutions and field rates. In total there are three (though they are hard coded into the ROMs to prevent using an unsupported configuration).

  • NTSC: 320×240 @ 60Hz
  • PAL1: 320×240 (or 320×288) @ 50Hz
  • PAL2: 384×288 @ 50Hz

VDLP

The 3DO's VDLP (video display line processor) supports a number of features. A special 320×240 → 640×480 (or PAL equivalent) interpolation upscale; a CLUT (color lookup table) bypass mode; merging of another video source (SlipStream); extending the 0555 RGB color space to 888 RGB by a logical shift left and optionally ORing with 3 bits of pseudo random data; etc.

Legend for below: B = CLUT bypass; R = random lower order bits; V = vertical interpolation; H = horizontal interpolation

SWI

Some OS calls use the ARM CPU's SWI (software interrupt) feature. Knowing which games use certain calls can be useful in developing high level emulation (HLE). Primarily matrix arithmetic. Full list of SWIs can be found here.

240p Issue

Some versions of Japanese Panasonic 3DO models have a switch which puts the DAC into 240p mode which can greatly improve the visual clarity of most games. However, unfortunately, certain games run at upto 2x speed as a result of this because the DAC feeds the field value back to the system which now skips fields which messes up games which use that for synchronization. It might be possible to patch games to work but more research needs to be done. Learn more about it here: 240p_mode

Media Codecs

The Opera SDKs included a library to do data streaming that included support for audio and video. A codec supported out of the box was Cinepak but not all games used it.

Requires Kanji ROM

Self descriptive. Some games require the Kanji ROM to run.

Compatibility

The 3DO Opera platform doesn't generally have any hardware level region lockouts. There isn't even a region explicitly defined anywhere. That said… the regions do have slightly different hardware and software settings. Asian consoles have the Kanji ROM. European consoles support PAL1 and PAL2 modes rather than NTSC. Assuming the software doesn't require the ROM or are hard coded to PAL they tend to work on any console.

List

Game Res240p
issue
VDLPSWIMedia CodecsKanji ROMCompatibility
3D AtlasNANTSC??None
Alone in the DarkNANTSC??None
Alone in the DarkJPNTSC??None required
Alone in the Dark 2NANTSC??None
Armageddon NTSC??None
AutoBahn TokioJPNTSC??None
BladeforceNANTSC??None
Blue Forest StoryJPNTSC??? required
Burning SoldierNANTSC??0x50011: MulVec3Mat33DivZ_F16
Burning SoldierEUPAL2??0x50011: MulVec3Mat33DivZ_F16
Crash & BurnNANTSC??0x50002: MulManyVec3Mat33_F16
CyberdilloNANTSC??None
DeathKeepNANTSC??0x50002: MulManyVec3Mat33_F16
DecathlonNANTSC??None
Doctor HauzerNANTSC??0x50000: MulVec3Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x5000C: Dot3_F16
DoomNANTSC??None
Escape from Monster ManorNANTSCYES?0x50001: MulMat33Mat33_F16
0x50002: MulManyVec3Mat33_F16
F1GPJPNTSC??None
FIFA SoccerNANTSC??None
Foes of AliNANTSC??None
ImmercenaryNANTSC??None
Iron Angel of the ApocalypseNANTSC??None
Iron Angel of the Apocalypse: The ReturnNANTSC??None
John Madden FootballNANTSC??None
Jurassic ParkNANTSC??0x50008: MulMat44Mat44_F16
0x50009: MulManyVec4Mat44_F16
Killing TimeNANTSC??0x50008: MulMat44Mat44_F16
0x50009: MulManyVec4Mat44_F16
Life StageNANTSC??None
Lucienne's QuestNANTSC??None
Need For SpeedNANTSC??0x50000: MulVec3Mat33_F16
0x50001: MulMat33Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x5000C: Dot3_F16
0x5000E: Cross3_F16
Olympic Summer GamesNANTSC??None
Off-World InterceptorNANTSC??None
PaTaankNANTSC??0x50000: MulVec3Mat33_F16
0x50001: MulMat33Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x50006: MulScalerF16
0x5000C: Dot3_F16
0x5000F: AbsVec3_F16
Powers KingdomEUPAL2??
PO'edNANTSC??0x50002: MulManyVec3Mat33_F16
0x50005: MulManyF16
0x50006: MulScalerF16
0x5000C: Dot3_F16
0x5000E: Cross3_F16
0x50012: MulManyVec3Mat33DivZ_F16
QuarantineNANTSC??None
Return FireNANTSC??0x50000: MulVec3Mat33_F16
0x50001: MulMat33Mat33_F16
0x50002: MulManyVec3Mat33_F16
Rise of the RobotsEUPAL2??None
Robinson's RequiemNANTSC??
Road RashNANTSC??None
Shock WaveNANTSC??0x50000: MulVec3Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x50012: MulManyVec3Mat33DivZ_F16
Shock Wave - Operation JumpgateNANTSC??0x50000: MulVec3Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x50012: MulManyVec3Mat33DivZ_F16
Shock Wave 2 - Beyond the GateNANTSC??0x50000: MulVec3Mat33_F16
0x50002: MulManyVec3Mat33_F16
0x50012: MulManyVec3Mat33DivZ_F16
SlayerNANTSC??0x50001: MulMat33Mat33_F16
0x50002: MulManyVec3Mat33_F16
Sword and SorceryJPNTSC??? required
Star FighterNANTSC??None
Star FighterEUPAL1??None
StrikerNANTSC??None
Total EclipseNANTSC??None
Twinkle KnightsJPNTSC??? required
Wolfenstein 3DNANTSCYES?None
documentation/games/opera/game_technical_information.txt · Last modified: 2022/05/26 13:20 by trapexit