diff --git a/src/sys/ags.cpp b/src/sys/ags.cpp index 361140a..00a8a02 100644 --- a/src/sys/ags.cpp +++ b/src/sys/ags.cpp @@ -220,6 +220,7 @@ AGS::AGS(NACT* parent, const char* fontfile) : nact(parent), dirty(false) SET_MENU(i, 452, 14, 627, 214, true); break; case CRC32_VAMPIRE: + case CRC32_VAMPIRE_ENG: SET_TEXT(i, 8, 255, 615, 383, false); SET_MENU(i, 448, 11, 615, 224, false); break; diff --git a/src/sys/ags_draw.cpp b/src/sys/ags_draw.cpp index eb02a78..4c536e7 100644 --- a/src/sys/ags_draw.cpp +++ b/src/sys/ags_draw.cpp @@ -43,6 +43,7 @@ void AGS::load_cg(int page, int transparent) load_vsp(data, page, transparent); // 暫定 break; case CRC32_VAMPIRE: + case CRC32_VAMPIRE_ENG: load_vsp2l(data, page, transparent); break; default: diff --git a/src/sys/ags_pms.cpp b/src/sys/ags_pms.cpp index 206798a..30498cb 100644 --- a/src/sys/ags_pms.cpp +++ b/src/sys/ags_pms.cpp @@ -41,7 +41,11 @@ void AGS::load_pms(uint8* data, int page, int transparent) tmp_palette[i * 16 + j] = SETPALETTE256(r, g, b); } } - if(nact->crc32_a == CRC32_RANCE41 || nact->crc32_a == CRC32_RANCE42 || nact->crc32_a == CRC32_HASHIRIONNA2) { + if(nact->crc32_a == CRC32_RANCE41 || + nact->crc32_a == CRC32_RANCE41_ENG || + nact->crc32_a == CRC32_RANCE42 || + nact->crc32_a == CRC32_RANCE42_ENG || + nact->crc32_a == CRC32_HASHIRIONNA2) { // 上下16色は取得しない for(int i = 1; i < 15; i++) { for(int j = 0; j < 16; j++) { @@ -73,7 +77,11 @@ void AGS::load_pms(uint8* data, int page, int transparent) // パレット展開 if (nact->sys_ver == 3) { if((extract_palette && extract_palette_cg[page]) || nact->crc32_a == CRC32_FUNNYBEE_CD) { - if(nact->crc32_a == CRC32_RANCE41 || nact->crc32_a == CRC32_RANCE42 || nact->crc32_a == CRC32_HASHIRIONNA2) { + if(nact->crc32_a == CRC32_RANCE41 || + nact->crc32_a == CRC32_RANCE41_ENG || + nact->crc32_a == CRC32_RANCE42 || + nact->crc32_a == CRC32_RANCE42_ENG || + nact->crc32_a == CRC32_HASHIRIONNA2) { // 上下16色は展開しない for(int i = 1; i < 15; i++) { for(int j = 0; j < 16; j++) { diff --git a/src/sys/crc32.h b/src/sys/crc32.h index 559ede3..08f0a08 100644 --- a/src/sys/crc32.h +++ b/src/sys/crc32.h @@ -30,6 +30,7 @@ #define CRC32_TENGU 0xc942ff58 // あぶないてんぐ伝説 #define CRC32_TOUSHIN_HINT 0xac337537 // 闘神都市 ヒントディスク #define CRC32_VAMPIRE 0x957bcfbf // Little Vampire +#define CRC32_VAMPIRE_ENG 0x61985a7f // Little Vampire (English) Patch 1.5 #define CRC32_YAKATA 0x8cef6fa6 // ALICEの館 // SYSTEM2 @@ -60,7 +61,9 @@ #define CRC32_PROSTUDENTG_CD 0xfb0e4a63 // Prostudent -G- (CD) #define CRC32_PROG_OMAKE 0x8ba18bff // Prostudent G おまけ (CRC32 of AGAME.DAT) #define CRC32_RANCE41 0xa43fb4b6 // Rance 4.1 +#define CRC32_RANCE41_ENG 0x811f4ff3 // Rance 4.1 (English) 1.5 Beta #define CRC32_RANCE42 0x04d24d1e // Rance 4.2 +#define CRC32_RANCE42_ENG 0xa97cc370 // Rance 4.2 (English) 1.5 Beta #define CRC32_AYUMI_CD 0xd2bed9ee // あゆみちゃん物語 (CD) #define CRC32_AYUMI_JISSHA_256 0x00d15a2b // あゆみちゃん物語 実写版 #define CRC32_AYUMI_JISSHA_FULL 0x5f66ff1d // あゆみちゃん物語 フルカラー実写版 diff --git a/src/sys/dri.cpp b/src/sys/dri.cpp index 0ba7652..b1b9bc4 100644 --- a/src/sys/dri.cpp +++ b/src/sys/dri.cpp @@ -113,6 +113,7 @@ uint8* DRI::load_mda(uint32 crc32_a, uint32 crc32_b, int page, int* size) name = "AMUS_T1"; break; case CRC32_VAMPIRE: // Little Vampire + case CRC32_VAMPIRE_ENG: name = "AMUS_LP2"; break; case CRC32_YAKATA: // ALICEの館 @@ -163,9 +164,11 @@ uint8* DRI::load_mda(uint32 crc32_a, uint32 crc32_b, int page, int* size) name = "AMUS_PSG.MDA"; break; case CRC32_RANCE41: // Rance 4.1 + case CRC32_RANCE41_ENG: name = "AMUS_R41.MDA"; break; case CRC32_RANCE42: // Rance 4.2 + case CRC32_RANCE42_ENG: name = "AMUS_R42.MDA"; break; case CRC32_AYUMI_CD: // あゆみちゃん物語 (CD) diff --git a/src/sys/nact_crc32.cpp b/src/sys/nact_crc32.cpp index 18f6071..dd151f7 100644 --- a/src/sys/nact_crc32.cpp +++ b/src/sys/nact_crc32.cpp @@ -35,6 +35,7 @@ const struct CRCTable { {"tengu", 1, "あぶないてんぐ伝説", CRC32_TENGU}, {"toushin_hint", 1, "闘神都市 ヒントディスク", CRC32_TOUSHIN_HINT}, {"little_vampire", 1, "Little Vampire", CRC32_VAMPIRE}, + {"little_vampire_eng", 1, "Little Vampire", CRC32_VAMPIRE_ENG}, {"yakata", 1, "ALICEの館", CRC32_YAKATA}, {"ayumi_fd", 2, "あゆみちゃん物語", CRC32_AYUMI_FD}, @@ -60,7 +61,9 @@ const struct CRCTable { {"prog_cd", 3, "Prostudent G", CRC32_PROSTUDENTG_CD}, {"prog_omake", 3, "Prostudent G おまけ", CRC32_PROG_OMAKE}, {"rance41", 3, "ランス 4.1 〜お薬工場を救え!〜", CRC32_RANCE41}, + {"rance41_eng", 3, "Rance 4.1 ~Save the Medicine Plant!~", CRC32_RANCE41_ENG}, {"rance42", 3, "ランス 4.2 〜エンジェル組〜", CRC32_RANCE42}, + {"rance42_eng", 3, "Rance 4.2 ~Angel Army~", CRC32_RANCE42_ENG}, {"ayumi_cd", 3, "あゆみちゃん物語", CRC32_AYUMI_CD}, {"ayumi_live_256", 3, "あゆみちゃん物語 実写版", CRC32_AYUMI_JISSHA_256}, {"ayumi_live_full", 3, "あゆみちゃん物語 フルカラー実写版", CRC32_AYUMI_JISSHA_FULL}, diff --git a/src/sys/nact_sys1.cpp b/src/sys/nact_sys1.cpp index 0eec841..d06bcbc 100644 --- a/src/sys/nact_sys1.cpp +++ b/src/sys/nact_sys1.cpp @@ -103,6 +103,7 @@ void NACT_Sys1::opening() ags->load_cg(74, -1); break; case CRC32_VAMPIRE: + case CRC32_VAMPIRE_ENG: mako->play_music(4); ags->load_cg(3, -1); WAIT(2000); diff --git a/src/sys/nact_sys3.cpp b/src/sys/nact_sys3.cpp index c8ec971..4a6f1f3 100644 --- a/src/sys/nact_sys3.cpp +++ b/src/sys/nact_sys3.cpp @@ -974,7 +974,8 @@ void NACT_Sys3::cmd_u() output_console("\nU %d,%d:", page, transparent); - if(crc32_a == CRC32_RANCE41 || crc32_a == CRC32_RANCE42) { + if(crc32_a == CRC32_RANCE41 || crc32_a == CRC32_RANCE41_ENG || + crc32_a == CRC32_RANCE42 || crc32_a == CRC32_RANCE42_ENG) { transparent = (transparent == 28) ? 12 : transparent; } ags->load_cg(page, transparent); diff --git a/src/win/mako.cpp b/src/win/mako.cpp index 597f26c..6494450 100644 --- a/src/win/mako.cpp +++ b/src/win/mako.cpp @@ -378,9 +378,17 @@ void MAKO::select_sound(BGMDevice dev) const int8* tracks; switch (nact->crc32_a) { - case CRC32_RANCE41: tracks = RANCE41_tracks; break; - case CRC32_RANCE42: tracks = RANCE42_tracks; break; - case CRC32_DPSALL: tracks = DPSALL_tracks; break; + case CRC32_RANCE41: + case CRC32_RANCE41_ENG: + tracks = RANCE41_tracks; + break; + case CRC32_RANCE42: + case CRC32_RANCE42_ENG: + tracks = RANCE42_tracks; + break; + case CRC32_DPSALL: + tracks = DPSALL_tracks; + break; // For the following games, the default mapping (cd_track[i] = i) works. case CRC32_AYUMI_CD: