const int kyra1FloppyNeed[] = { kKallakWritingSeq, kMalcolmTreeSeq, kWestwoodLogoSeq, kKyrandiaLogoSeq, kKallakMalcolmSeq, kForestSeq, kIntroCPSStrings, kIntroCOLStrings, kIntroWSAStrings, kIntroStrings, kRoomList, kRoomFilenames, kCharacterImageFilenames, kDefaultShapes, kItemNames, kTakenStrings, kPlacedStrings, kDroppedStrings, kNoDropStrings, kAmuleteAnimSeq, kPaletteList1, kPaletteList2, kPaletteList3, kPaletteList4, kPaletteList5, kPaletteList6, kPaletteList7, kPaletteList8, kPaletteList9, kPaletteList10, kPaletteList11, kPaletteList12, kPaletteList13, kPaletteList14, kPaletteList15, kPaletteList16, kPaletteList17, kPaletteList18, kPaletteList19, kPaletteList20, kPaletteList21, kPaletteList22, kPaletteList23, kPaletteList24, kPaletteList25, kPaletteList26, kPaletteList27, kPaletteList28, kPaletteList29, kPaletteList30, kPaletteList31, kPaletteList32, kPaletteList33, kPutDownString, kWaitAmuletString, kBlackJewelString, kHealingTipString, kPoisonGoneString, kHealing1Shapes, kHealing2Shapes, kThePoisonStrings, kFluteStrings, kPoisonDeathShapes, kFluteShapes, kWinter1Shapes, kWinter2Shapes, kWinter3Shapes, kDrinkShapes, kWispShapes, kMagicAnimShapes, kBranStoneShapes, kWispJewelStrings, kMagicJewelStrings, kFlaskFullString, kFullFlaskString, kOutroReunionSeq, kOutroHomeString, kVeryCleverString, kGUIStrings, kNewGameString, kConfigStrings, -1 }; const int kyra1CDNeed[] = { kKallakWritingSeq, kMalcolmTreeSeq, kWestwoodLogoSeq, kKyrandiaLogoSeq, kKallakMalcolmSeq, kForestSeq, kIntroCPSStrings, kIntroCOLStrings, kIntroWSAStrings, kIntroStrings, kRoomList, kRoomFilenames, kCharacterImageFilenames, kDefaultShapes, kItemNames, kTakenStrings, kPlacedStrings, kDroppedStrings, kNoDropStrings, kAmuleteAnimSeq, kPaletteList1, kPaletteList2, kPaletteList3, kPaletteList4, kPaletteList5, kPaletteList6, kPaletteList7, kPaletteList8, kPaletteList9, kPaletteList10, kPaletteList11, kPaletteList12, kPaletteList13, kPaletteList14, kPaletteList15, kPaletteList16, kPaletteList17, kPaletteList18, kPaletteList19, kPaletteList20, kPaletteList21, kPaletteList22, kPaletteList23, kPaletteList24, kPaletteList25, kPaletteList26, kPaletteList27, kPaletteList28, kPaletteList29, kPaletteList30, kPaletteList31, kPaletteList32, kPaletteList33, kPutDownString, kWaitAmuletString, kBlackJewelString, kHealingTipString, kPoisonGoneString, kHealing1Shapes, kHealing2Shapes, kThePoisonStrings, kFluteStrings, kPoisonDeathShapes, kFluteShapes, kWinter1Shapes, kWinter2Shapes, kWinter3Shapes, kDrinkShapes, kWispShapes, kMagicAnimShapes, kBranStoneShapes, kWispJewelStrings, kMagicJewelStrings, kFlaskFullString, kFullFlaskString, kOutroReunionSeq, kOutroHomeString, kVeryCleverString, kGUIStrings, kNewGameString, kConfigStrings, -1 }; const int kyra1DemoNeed[] = { kWestwoodLogoSeq, kKyrandiaLogoSeq, kIntroCPSStrings, kIntroCOLStrings, kIntroWSAStrings, kIntroStrings, kDemo1Seq, kDemo2Seq, kDemo3Seq, kDemo4Seq, -1 }; const int kyra1TownsEngNeed[] = { kKallakWritingSeq, kMalcolmTreeSeq, kWestwoodLogoSeq, kKyrandiaLogoSeq, kKallakMalcolmSeq, kForestSeq, kIntroCPSStrings, kIntroCOLStrings, kIntroWSAStrings, kIntroStrings, kRoomList, kRoomFilenames, kCharacterImageFilenames, kDefaultShapes, kItemNames, kTakenStrings, kPlacedStrings, kDroppedStrings, kNoDropStrings, kAmuleteAnimSeq, kPaletteList1, kPaletteList2, kPaletteList3, kPaletteList4, kPaletteList5, kPaletteList6, kPaletteList7, kPaletteList8, kPaletteList9, kPaletteList10, kPaletteList11, kPaletteList12, kPaletteList13, kPaletteList14, kPaletteList15, kPaletteList16, kPaletteList17, kPaletteList18, kPaletteList19, kPaletteList20, kPaletteList21, kPaletteList22, kPaletteList23, kPaletteList24, kPaletteList25, kPaletteList26, kPaletteList27, kPaletteList28, kPaletteList29, kPaletteList30, kPaletteList31, kPaletteList32, kPaletteList33, kPutDownString, kWaitAmuletString, kBlackJewelString, kHealingTipString, kPoisonGoneString, kHealing1Shapes, kHealing2Shapes, kThePoisonStrings, kFluteStrings, kPoisonDeathShapes, kFluteShapes, kWinter1Shapes, kWinter2Shapes, kWinter3Shapes, kDrinkShapes, kWispShapes, kMagicAnimShapes, kBranStoneShapes, kWispJewelStrings, kMagicJewelStrings, kFlaskFullString, kFullFlaskString, kOutroReunionSeq, kOutroHomeString, kVeryCleverString, kGUIStrings, kNewGameString, kConfigStrings, kKyra1TownsSFXTable, kCreditsStrings, kMenuSKB, kSjisVTable, -1 }; const int kyra1TownsJapNeed[] = { kIntroStrings, kItemNames, kTakenStrings, kPlacedStrings, kDroppedStrings, kNoDropStrings, kPutDownString, kWaitAmuletString, kBlackJewelString, kHealingTipString, kPoisonGoneString, kThePoisonStrings, kFluteStrings, kWispJewelStrings, kMagicJewelStrings, kFlaskFullString, kFullFlaskString, kOutroHomeString, kVeryCleverString, kGUIStrings, kNewGameString, kConfigStrings, -1 }; const int kyra1AmigaNeed[] = { kKallakWritingSeq, kMalcolmTreeSeq, kWestwoodLogoSeq, kKyrandiaLogoSeq, kKallakMalcolmSeq, kForestSeq, kIntroCPSStrings, kIntroWSAStrings, kIntroCOLStrings, kIntroStrings, kRoomList, kRoomFilenames, kCharacterImageFilenames, kDefaultShapes, kItemNames, kTakenStrings, kPlacedStrings, kDroppedStrings, kNoDropStrings, kAmuleteAnimSeq, kPutDownString, kWaitAmuletString, kBlackJewelString, kHealingTipString, kPoisonGoneString, kHealing1Shapes, kHealing2Shapes, kThePoisonStrings, kFluteStrings, kPoisonDeathShapes, kFluteShapes, kWinter1Shapes, kWinter2Shapes, kWinter3Shapes, kDrinkShapes, kWispShapes, kMagicAnimShapes, kBranStoneShapes, kWispJewelStrings, kMagicJewelStrings, kFlaskFullString, kFullFlaskString, kOutroReunionSeq, kOutroHomeString, kVeryCleverString, kGUIStrings, kNewGameString, kConfigStrings, kCreditsStrings, -1 }; const GameNeed gameNeedTable[] = { { kKyra1, -1, kyra1FloppyNeed }, { kKyra1, kTalkieVersion, kyra1CDNeed }, { kKyra1, kFMTownsVersionE , kyra1TownsEngNeed }, { kKyra1, kFMTownsVersionJ, kyra1TownsJapNeed }, { kKyra1, kAmigaVersion, kyra1AmigaNeed }, { kKyra1, kDemoVersion, kyra1DemoNeed }, { -1, -1, 0 } }; const SpecialExtension specialTable[] = { { kTalkieVersion, "CD" }, { kDemoVersion, "DEM" }, { kFMTownsVersionE , "TNS" }, { kFMTownsVersionJ, "TNS" }, { kAmigaVersion, "AMG" }, { -1, 0 } }; const Language languageTable[] = { { EN_ANY, "ENG" }, { DE_DEU, "GER" }, { FR_FRA, "FRE" }, { IT_ITA, "ITA" }, { ES_ESP, "SPA" }, { JA_JPN, "JPN" }, { -1, 0 } };