mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-02 08:19:19 +00:00
TOOLS: Add header files to create_mortdat, remove second parameter
This commit is contained in:
parent
94d881b141
commit
3529fec5a9
@ -38,74 +38,11 @@
|
||||
#include <string.h>
|
||||
|
||||
#include "common/endian.h"
|
||||
|
||||
enum AccessMode {
|
||||
kFileReadMode = 1,
|
||||
kFileWriteMode = 2
|
||||
};
|
||||
|
||||
class File {
|
||||
private:
|
||||
FILE *f;
|
||||
public:
|
||||
bool open(const char *filename, AccessMode mode = kFileReadMode) {
|
||||
f = fopen(filename, (mode == kFileReadMode) ? "rb" : "wb");
|
||||
return (f != NULL);
|
||||
}
|
||||
void close() {
|
||||
fclose(f);
|
||||
f = NULL;
|
||||
}
|
||||
int seek(int32 offset, int whence = SEEK_SET) {
|
||||
return fseek(f, offset, whence);
|
||||
}
|
||||
long read(void *buffer, int len) {
|
||||
return fread(buffer, 1, len, f);
|
||||
}
|
||||
void write(const void *buffer, int len) {
|
||||
fwrite(buffer, 1, len, f);
|
||||
}
|
||||
byte readByte() {
|
||||
byte v;
|
||||
read(&v, sizeof(byte));
|
||||
return v;
|
||||
}
|
||||
uint16 readWord() {
|
||||
uint16 v;
|
||||
read(&v, sizeof(uint16));
|
||||
return FROM_LE_16(v);
|
||||
}
|
||||
uint32 readLong() {
|
||||
uint32 v;
|
||||
read(&v, sizeof(uint32));
|
||||
return FROM_LE_32(v);
|
||||
}
|
||||
void writeByte(byte v) {
|
||||
write(&v, sizeof(byte));
|
||||
}
|
||||
void writeWord(uint16 v) {
|
||||
uint16 vTemp = TO_LE_16(v);
|
||||
write(&vTemp, sizeof(uint16));
|
||||
}
|
||||
void writeLong(uint32 v) {
|
||||
uint32 vTemp = TO_LE_32(v);
|
||||
write(&vTemp, sizeof(uint32));
|
||||
}
|
||||
void writeString(const char *s) {
|
||||
write(s, strlen(s) + 1);
|
||||
}
|
||||
uint32 pos() {
|
||||
return ftell(f);
|
||||
}
|
||||
};
|
||||
|
||||
File outputFile, mortCom;
|
||||
#include "create_mortdat.h"
|
||||
#include "enginetext.h"
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
#define VERSION_MAJOR 1
|
||||
#define VERSION_MINOR 0
|
||||
|
||||
void openOutputFile(const char *outFilename) {
|
||||
outputFile.open(outFilename, kFileWriteMode);
|
||||
|
||||
@ -171,143 +108,29 @@ void writeStaticStrings(const char **strings, int languageId) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Write out the French strings previously hard-coded into the application
|
||||
* Write out the strings previously hard-coded into the engine
|
||||
*/
|
||||
void writeEnglishStaticStrings() {
|
||||
const char *string_list[] = {
|
||||
"[2][ ][YES][NO]",
|
||||
"Go to",
|
||||
"Someone enters, looks surised, but says nothing",
|
||||
"Cool",
|
||||
" Lourde ",
|
||||
"Malsaine",
|
||||
"Idem",
|
||||
"You",
|
||||
"are",
|
||||
"Alone",
|
||||
|
||||
"Gosh! You hear some noise...",
|
||||
" | You should have noticed, | ",
|
||||
"% of hints...",
|
||||
"Do you want to wake up?",
|
||||
"OK",
|
||||
"",
|
||||
" Save",
|
||||
|
||||
" Load",
|
||||
" Restart ",
|
||||
"F3: Repeat",
|
||||
"F8: Proceed",
|
||||
"Hide self",
|
||||
"take",
|
||||
" probe ",
|
||||
" raise ",
|
||||
" -SUITE- ",
|
||||
" -STOP- ",
|
||||
"[1] [So, use the DEP menu] [Ok]",
|
||||
"lift",
|
||||
"read",
|
||||
|
||||
"look",
|
||||
"search",
|
||||
"open",
|
||||
"put",
|
||||
"turn",
|
||||
"tie",
|
||||
"close",
|
||||
"hit",
|
||||
"pose",
|
||||
"smash",
|
||||
|
||||
"smell",
|
||||
"scratch",
|
||||
"probe",
|
||||
"[1] [ | Before, use the DEP menu...] [Ok]",
|
||||
"& day",
|
||||
NULL
|
||||
};
|
||||
|
||||
writeStaticStrings(string_list, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Write out the French strings previously hard-coded into the application
|
||||
*/
|
||||
void writeFrenchStaticStrings() {
|
||||
const char *string_list[] = {
|
||||
"[2][ ][OUI][NON]",
|
||||
"aller",
|
||||
"quelqu'un entre, parait ‚tonn‚ mais ne dit rien",
|
||||
"Cool",
|
||||
" Lourde ",
|
||||
"Malsaine",
|
||||
"Idem",
|
||||
"Vous",
|
||||
"ˆtes",
|
||||
"SEUL",
|
||||
|
||||
"Mince! Vous entendez du bruit...",
|
||||
" | Vous devriez avoir remarqu‚| ",
|
||||
"% des indices...",
|
||||
"D‚sirez-vous vous r‚veiller?",
|
||||
"OK",
|
||||
"",
|
||||
" Sauvegarde",
|
||||
|
||||
" Chargement",
|
||||
" Recommence ",
|
||||
"F3: Encore",
|
||||
"F8: Suite",
|
||||
"se cacher",
|
||||
|
||||
"prendre",
|
||||
" sonder ",
|
||||
"soulever",
|
||||
" -SUITE- ",
|
||||
" -STOP- ",
|
||||
"[1][Alors, utilisez le menu DEP...][ok]",
|
||||
"soulever",
|
||||
"lire",
|
||||
|
||||
"regarder",
|
||||
"fouiller",
|
||||
"ouvrir",
|
||||
"mettre",
|
||||
"tourner",
|
||||
"attacher",
|
||||
"fermer",
|
||||
"frapper",
|
||||
"poser",
|
||||
"d‚foncer",
|
||||
|
||||
"sentir",
|
||||
"gratter",
|
||||
"sonder",
|
||||
"[1][ | Avant, utilisez le menu DEP...][ok]",
|
||||
"& jour",
|
||||
NULL
|
||||
};
|
||||
|
||||
writeStaticStrings(string_list, 0);
|
||||
void writeEngineStrings() {
|
||||
writeStaticStrings(engineDataEn, 1);
|
||||
writeStaticStrings(engineDataFr, 0);
|
||||
}
|
||||
|
||||
void process() {
|
||||
writeFontBlock();
|
||||
writeEnglishStaticStrings();
|
||||
writeFrenchStaticStrings();
|
||||
writeEngineStrings();
|
||||
}
|
||||
|
||||
/**
|
||||
* Main method
|
||||
*/
|
||||
int main(int argc, char *argv[]) {
|
||||
if (argc != 3) {
|
||||
printf("Format: input_filename output_filename\n", argv[0]);
|
||||
if (argc != 2) {
|
||||
printf("Usage:\n%s input_filename\nWhere input_filename is the name of the Mortevielle DOS executable", argv[0]);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
mortCom.open(argv[1], kFileReadMode);
|
||||
openOutputFile(argv[2]);
|
||||
openOutputFile("mort.dat");
|
||||
|
||||
process();
|
||||
|
||||
|
90
devtools/create_mortdat/create_mortdat.h
Normal file
90
devtools/create_mortdat/create_mortdat.h
Normal file
@ -0,0 +1,90 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
* This is a utility for extracting needed resource data from different language
|
||||
* version of the Mortevielle executable files into a new file mort.dat - this
|
||||
* is required for the ScummVM Mortevielle module to work properly
|
||||
*/
|
||||
|
||||
#define VERSION_MAJOR 1
|
||||
#define VERSION_MINOR 0
|
||||
|
||||
enum AccessMode {
|
||||
kFileReadMode = 1,
|
||||
kFileWriteMode = 2
|
||||
};
|
||||
|
||||
class File {
|
||||
private:
|
||||
FILE *f;
|
||||
public:
|
||||
bool open(const char *filename, AccessMode mode = kFileReadMode) {
|
||||
f = fopen(filename, (mode == kFileReadMode) ? "rb" : "wb");
|
||||
return (f != NULL);
|
||||
}
|
||||
void close() {
|
||||
fclose(f);
|
||||
f = NULL;
|
||||
}
|
||||
int seek(int32 offset, int whence = SEEK_SET) {
|
||||
return fseek(f, offset, whence);
|
||||
}
|
||||
long read(void *buffer, int len) {
|
||||
return fread(buffer, 1, len, f);
|
||||
}
|
||||
void write(const void *buffer, int len) {
|
||||
fwrite(buffer, 1, len, f);
|
||||
}
|
||||
byte readByte() {
|
||||
byte v;
|
||||
read(&v, sizeof(byte));
|
||||
return v;
|
||||
}
|
||||
uint16 readWord() {
|
||||
uint16 v;
|
||||
read(&v, sizeof(uint16));
|
||||
return FROM_LE_16(v);
|
||||
}
|
||||
uint32 readLong() {
|
||||
uint32 v;
|
||||
read(&v, sizeof(uint32));
|
||||
return FROM_LE_32(v);
|
||||
}
|
||||
void writeByte(byte v) {
|
||||
write(&v, sizeof(byte));
|
||||
}
|
||||
void writeWord(uint16 v) {
|
||||
uint16 vTemp = TO_LE_16(v);
|
||||
write(&vTemp, sizeof(uint16));
|
||||
}
|
||||
void writeLong(uint32 v) {
|
||||
uint32 vTemp = TO_LE_32(v);
|
||||
write(&vTemp, sizeof(uint32));
|
||||
}
|
||||
void writeString(const char *s) {
|
||||
write(s, strlen(s) + 1);
|
||||
}
|
||||
uint32 pos() {
|
||||
return ftell(f);
|
||||
}
|
||||
};
|
||||
|
||||
File outputFile, mortCom;
|
||||
|
136
devtools/create_mortdat/enginetext.h
Normal file
136
devtools/create_mortdat/enginetext.h
Normal file
@ -0,0 +1,136 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
* This is a utility for extracting needed resource data from different language
|
||||
* version of the Mortevielle executable files into a new file mort.dat - this
|
||||
* is required for the ScummVM Mortevielle module to work properly
|
||||
*/
|
||||
|
||||
#ifndef ENGINEDATA_H
|
||||
#define ENGINEDATA_H
|
||||
|
||||
const char *engineDataEn[] = {
|
||||
"[2][ ][YES][NO]",
|
||||
"Go to",
|
||||
"Someone enters, looks surised, but says nothing",
|
||||
"Cool",
|
||||
" Lourde ",
|
||||
"Malsaine",
|
||||
"Idem",
|
||||
"You",
|
||||
"are",
|
||||
"Alone",
|
||||
|
||||
"Gosh! You hear some noise...",
|
||||
" | You should have noticed, | ",
|
||||
"% of hints...",
|
||||
"Do you want to wake up?",
|
||||
"OK",
|
||||
"",
|
||||
" Save",
|
||||
|
||||
" Load",
|
||||
" Restart ",
|
||||
"F3: Repeat",
|
||||
"F8: Proceed",
|
||||
"Hide self",
|
||||
"take",
|
||||
" probe ",
|
||||
" raise ",
|
||||
" -SUITE- ",
|
||||
" -STOP- ",
|
||||
"[1] [So, use the DEP menu] [Ok]",
|
||||
"lift",
|
||||
"read",
|
||||
|
||||
"look",
|
||||
"search",
|
||||
"open",
|
||||
"put",
|
||||
"turn",
|
||||
"tie",
|
||||
"close",
|
||||
"hit",
|
||||
"pose",
|
||||
"smash",
|
||||
|
||||
"smell",
|
||||
"scratch",
|
||||
"probe",
|
||||
"[1] [ | Before, use the DEP menu...] [Ok]",
|
||||
"& day",
|
||||
NULL
|
||||
};
|
||||
|
||||
const char *engineDataFr[] = {
|
||||
"[2][ ][OUI][NON]",
|
||||
"aller",
|
||||
"quelqu'un entre, parait ‚tonn‚ mais ne dit rien",
|
||||
"Cool",
|
||||
" Lourde ",
|
||||
"Malsaine",
|
||||
"Idem",
|
||||
"Vous",
|
||||
"ˆtes",
|
||||
"SEUL",
|
||||
|
||||
"Mince! Vous entendez du bruit...",
|
||||
" | Vous devriez avoir remarqu‚| ",
|
||||
"% des indices...",
|
||||
"D‚sirez-vous vous r‚veiller?",
|
||||
"OK",
|
||||
"",
|
||||
" Sauvegarde",
|
||||
|
||||
" Chargement",
|
||||
" Recommence ",
|
||||
"F3: Encore",
|
||||
"F8: Suite",
|
||||
"se cacher",
|
||||
|
||||
"prendre",
|
||||
" sonder ",
|
||||
"soulever",
|
||||
" -SUITE- ",
|
||||
" -STOP- ",
|
||||
"[1][Alors, utilisez le menu DEP...][ok]",
|
||||
"soulever",
|
||||
"lire",
|
||||
|
||||
"regarder",
|
||||
"fouiller",
|
||||
"ouvrir",
|
||||
"mettre",
|
||||
"tourner",
|
||||
"attacher",
|
||||
"fermer",
|
||||
"frapper",
|
||||
"poser",
|
||||
"d‚foncer",
|
||||
|
||||
"sentir",
|
||||
"gratter",
|
||||
"sonder",
|
||||
"[1][ | Avant, utilisez le menu DEP...][ok]",
|
||||
"& jour",
|
||||
NULL
|
||||
};
|
||||
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user