This commit is contained in:
zilmar 2015-03-05 17:10:40 +11:00
commit 34b5892e2c
9 changed files with 396 additions and 201 deletions

View File

@ -2976,7 +2976,7 @@ Core Note=unstable (see GameFAQ)
Plugin Note=[rsp] interpreter only [video] errors:various (see GameFAQ)
32bit=No
RDRAM Size=8
FuncFind=2
FuncFind=1
HLE GFX=No
ViRefresh=1400
RSP-JumpTableSize=3584
@ -2996,7 +2996,7 @@ Status=Only intro/part OK
Core Note=unstable (see GameFAQ)
Plugin Note=[rsp] interpreter only [video] errors:various (see GameFAQ)
32bit=No
FuncFind=2
FuncFind=1
HLE GFX=No
ViRefresh=1400
RSP-JumpTableSize=3584

View File

@ -5,7 +5,7 @@
#1 # "English" // LANGUAGE ID
#2 # "Tooie" // Author
#3 # "2.2" // Version
#4 # "February, 2015" // Date
#4 # "March, 2015" // Date
//About DLL Dialog
#5 # "Current Language"
@ -48,7 +48,7 @@
#129# "Current Save S&tate"
#130# "Cheats..."
#131# "GS Button"
#132# "Resume"
#132# "R&esume"
#133# "&Soft Reset"
#134# "&Hard Reset"
@ -171,12 +171,13 @@
#316# "Genre"
#317# "Players"
#318# "Force Feedback"
#319# "File Format"
//Select Rom
#320# "Select current Rom Directory"
//Messages
#340# "Bad ROM? Use GoodN64 & check for updated RDB"
#340# "Bad ROM? Use GoodN64 & check for updated INI"
/*********************************************************************************
* Options *
@ -190,16 +191,16 @@
#403# "Options"
#404# "Rom Selection"
#405# "Advanced"
#406# "Rom Settings"
#406# "General Settings"
#407# "Shell Integration"
#408# "Rom Notes"
#408# "Notes"
#409# "Keyboard Shortcuts"
#410# "Status"
#411# "Recompiler"
//Plugin Dialog
#420# "About"
#421# " Reality Signal Processor plugin: "
#421# " RSP (reality signal processor) plugin: "
#422# " Video (graphics) plugin: "
#423# " Audio (sound) plugin: "
#424# " Input (controller) plugin: "
@ -214,15 +215,15 @@
#443# " Instant saves: "
#444# " Screen Shots: "
#445# "Last folder that a rom was open from."
#446# "Select Plugin Directory"
#447# "Select Rom Directory"
#448# "Select Automatic save Directory"
#449# "Select Instant save Directory"
#450# "Select snap shot Directory"
#446# "Select plugin directory"
#447# "Select rom directory"
#448# "Select automatic save directory"
#449# "Select instant save directory"
#450# "Select snap shot directory"
#451# " Texture Directory: "
#452# "Select texture pack directory"
//Options Dialog
//Options (general) Tab
#460# "Pause emulation when window is not active?"
#461# "On loading a ROM go to full screen"
#462# "Hide Advanced Settings"
@ -346,14 +347,6 @@
#710# "Increase Game Speed"
#711# "Decrease Game Speed"
// short cut editor
#1100# "Reset Short Cuts"
#1101# "Are you sure you want to reset the short cuts?\n\nThis action cannot be undone."
#1102# "File Menu"
#1103# "System Menu"
#1104# "Options"
#1105# "Save Slots"
/*********************************************************************************
* ROM Information *
*********************************************************************************/
@ -391,11 +384,6 @@
#1009# "Clear"
#1010# " Cheat Notes: "
#1011# "Add to DB"
#1022# "Add Cheat"
#1023# "New Cheat"
#1024# "<address> <value>"
#1025# "Options:"
#1026# "<value> <label>"
//Code extension
#1012# "Code Extensions"
@ -410,6 +398,11 @@
#1019# "from"
#1020# "to"
#1021# "&Notes:"
#1022# "Add Cheat"
#1023# "New Cheat"
#1024# "<address> <value>"
#1025# "Options:"
#1026# "<value> <label>"
//Edit Cheat
#1027# "Edit Cheat"
@ -422,69 +415,46 @@
#1041# "Edit"
#1042# "Delete"
// short cut editor
#1100# "Reset Short Cuts"
#1101# "Are you sure you want to reset the short cuts?\n\nThis action cannot be undone."
#1102# "File Menu"
#1103# "System Menu"
#1104# "Options"
#1105# "Save Slots"
/*********************************************************************************
* Messages *
*********************************************************************************/
#2000# "*** CPU PAUSED ***"
#2001# "CPU Resumed"
#2002# "In a permanent loop that cannot be exited.
Emulation will now stop.
Verify ROM and ROM Settings."
#2002# "In a permanent loop that cannot be exited. \nEmulation will now stop. \n\nVerify ROM and ROM Settings."
#2003# "Failed to allocate Memory"
#2004# "The default or selected video plugin is missing or invalid.
Check that you have at least one compatible plugin file in your plugin folder."
#2005# "The default or selected audio plugin is missing or invalid.
Check that you have at least one compatible plugin file in your plugin folder."
#2006# "The default or selected RSP plugin is missing or invalid.
Check that you have Project64 properly installed with a valid plugin path."
#2007# "The default or selected input plugin is missing or invalid.
Check that you have at least one compatible plugin file in your plugin folder."
#2004# "The default or selected video plugin is missing or invalid. \n\nYou need to go into Settings and select a video (graphics) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder."
#2005# "The default or selected audio plugin is missing or invalid. \n\nYou need to go into Settings and select a audio (sound) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder."
#2006# "The default or selected RSP plugin is missing or invalid. \n\nYou need to go into Settings and select a RSP (reality signal processor) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder."
#2007# "The default or selected input plugin is missing or invalid. \n\nYou need to go into Settings and select an input (controller) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder."
#2008# "Failed to load plugin:"
#2009# "Failed to load word
Verify ROM and ROM Settings."
#2009# "Failed to load word\n\nVerify ROM and ROM Settings."
#2010# "Failed to open Save File"
#2011# "Failed to open Eeprom"
#2012# "Failed to open Flashram"
#2013# "Failed to open mempak"
#2014# "Attempt to open zip file failed.
Missing or corrupt zip file - check path and file.
You may need to restart the application."
#2014# "Attempt to open zip file failed. \n\nProbably a corrupt zip file - try unzipping ROM manually."
#2015# "Attempt to open file failed."
#2016# "Error occurred when trying to open zip file."
#2017# "File loaded does not appear to be a valid Nintendo64 ROM.
Verify your ROMs with GoodN64."
#2017# "File loaded does not appear to be a valid Nintendo64 ROM. \n\nVerify your ROMs with GoodN64."
#2018# "Unknown country"
#2019# "Unknown Cic Chip"
#2020# "Unknown file format"
#2021# "Unknown memory action
Emulation now stoped"
#2021# "Unknown memory action\n\nEmulation stop"
#2022# "Unhandled R4300i OpCode at"
#2023# "Executing from non-mapped space.
Verify ROM and ROM Settings."
#2024# "State save does not appear to match the running ROM.
State saves must be saved & loaded between 100% identical ROMs,
in particular the REGION and VERSION need to be the same.
Loading this state is likely to cause the game and/or emulator to crash.
Are you sure you want to continue loading?"
#2023# "Executing from non-mapped space.\n\nVerify ROM and ROM Settings."
#2024# "State save does not appear to match the running ROM. \n\nState saves must be saved & loaded between 100% identical ROMs, \nin particular the REGION and VERSION need to be the same. \nLoading this state is likely to cause the game and/or emulator to crash. \n\nAre you sure you want to continue loading?"
#2025# "Error"
#2026# "Copyright sequence not found in LUT. Game will no longer function."
#2027# "Copy Protection Failure"
#2028# "Changing a plugin requires Project64 to reset a running ROM.
If you don't want to lose your place, answer No and make a state save first.
Change plugins and restart game now?"
#2028# "Changing a plugin requires Project64 to reset a running ROM. \nIf you don't want to lose your place, answer No and make a state save first. \n\nChange plugins and restart game now?"
#2029# "Change Plugins"
#2030# "Emulation ended"
#2031# "Emulation started"

View File

@ -4,7 +4,7 @@
//About DLL
#1 # "Español" // LANGUAGE ID
#2 # "MELERIX" // Author
#3 # "20150301" // Version
#3 # "2.2" // Version
#4 # "March, 2015" // Date
//About DLL Dialog
@ -48,7 +48,7 @@
#129# "&Partida Guardada Actual"
#130# "Trucos..."
#131# "Botón GS"
#132# "Continuar"
#132# "C&ontinuar"
#133# "&Reinicio Simple"
#134# "&Reinicio Completo"
@ -171,12 +171,13 @@
#316# "Genero"
#317# "Jugadores"
#318# "Retroalimentación de Fuerza"
#319# "Formato del Archivo"
//Select Rom
#320# "Seleccionar Directorio actual de Roms"
//Messages
#340# "ROM Dañado? Usa GoodN64 y verifica por una RDB actualizada"
#340# "ROM Dañado? Usa GoodN64 y comprueba por un INI actualizado"
/*********************************************************************************
* Options *
@ -190,19 +191,19 @@
#403# "Opciones"
#404# "Selección de Rom"
#405# "Avanzado"
#406# "Ajustes del Rom"
#406# "Ajustes Generales"
#407# "Integración de Shell"
#408# "Notas del Rom"
#408# "Notas"
#409# "Atajos de Teclado"
#410# "Estado"
#411# "Recompilador"
//Plugin Dialog
#420# "Acerca de"
#421# " plugin de Reality Signal Processor: "
#421# " plugin de RSP (reality signal processor): "
#422# " plugin de Vídeo (gráficos): "
#423# " plugin de Audio (sonido) : "
#424# " plugin de Control (mando): "
#424# " plugin de Entrada (mando): "
#425# "Usar GFX de Alto Nivel?"
#426# "Usar Audio de Alto Nivel?"
#427# "** Usar Plugin de Sistema **"
@ -214,11 +215,11 @@
#443# " Guardados Instantáneos: "
#444# " Capturas de Pantalla: "
#445# "Ultima Carpeta de la cual un rom fue abierto."
#446# "Seleccionar Directorio de Plugins"
#447# "Seleccionar Directorio de Roms"
#448# "Seleccionar Directorio de Guardados Automáticos"
#449# "Seleccionar Directorio de Guardados Instantáneos"
#450# "Seleccionar Directorio de capturas de pantalla"
#446# "Seleccionar directorio de plugins"
#447# "Seleccionar directorio de roms"
#448# "Seleccionar directorio de guardados automáticos"
#449# "Seleccionar directorio de guardados instantáneos"
#450# "Seleccionar directorio de capturas de pantalla"
#451# " Directorio de Texturas: "
#452# "Seleccionar directorio de paquetes de texturas"
@ -247,7 +248,7 @@
#492# "Actualizar navegador automáticamente"
//Advanced Options
#500# "La mayoría de estos cambios no tendrán efecto hasta que un nuevo rom sea abierto o el actual rom sea reiniciado."
#500# "La mayoría de estos cambios no tendrán efecto hasta que un nuevo rom sea abierto o el rom actual sea reiniciado."
#501# "Predeterminados del Núcleo"
#502# "Estilo de núcleo del CPU:"
#503# "Método de código Self-mod:"
@ -346,14 +347,6 @@
#710# "Incrementar Velocidad del Juego"
#711# "Disminuir Velocidad del Juego"
// short cut editor
#1100# "Reiniciar Accesos Directos"
#1101# "Estás seguro de que quieres reiniciar los accesos directos?\n\nEsta acción no se puede deshacer."
#1102# "Menú de Archivo"
#1103# "Menú de Sistema"
#1104# "Opciones"
#1105# "Ranuras de Guardado"
/*********************************************************************************
* ROM Information *
*********************************************************************************/
@ -391,11 +384,6 @@
#1009# "Limpiar"
#1010# " Notas del Truco: "
#1011# "Añadir a la BD"
#1022# "Agregar Truco"
#1023# "Nuevo Truco"
#1024# "<dirección> <valor>"
#1025# "Opciones:"
#1026# "<valor> <etiqueta>"
//Code extension
#1012# "Extensiones de Código"
@ -410,6 +398,11 @@
#1019# "de"
#1020# "para"
#1021# "&Notas:"
#1022# "Agregar Truco"
#1023# "Nuevo Truco"
#1024# "<dirección> <valor>"
#1025# "Opciones:"
#1026# "<valor> <etiqueta>"
//Edit Cheat
#1027# "Editar Truco"
@ -422,69 +415,46 @@
#1041# "Editar"
#1042# "Borrar"
// short cut editor
#1100# "Reiniciar Accesos Directos"
#1101# "Estás seguro de que quieres reiniciar los accesos directos?\n\nEsta acción no se puede deshacer."
#1102# "Menú de Archivo"
#1103# "Menú de Sistema"
#1104# "Opciones"
#1105# "Ranuras de Guardado"
/*********************************************************************************
* Messages *
*********************************************************************************/
#2000# "*** CPU PAUSADO ***"
#2001# "CPU Reanudado"
#2002# "En un bucle permanente que no se puede salir.
La Emulación ahora se detendrá.
Comprueba el ROM y los Ajustes del ROM."
#2002# "En un bucle permanente que no se puede salir. \nLa Emulación ahora se detendrá. \n\nComprueba el ROM y los Ajustes del ROM."
#2003# "Error al asignar Memoria"
#2004# "El plugin predeterminado o seleccionado de vídeo falta o es invalido.
Comprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2005# "El plugin predeterminado o seleccionado de audio falta o es invalido.
Comprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2006# "El plugin predeterminado o seleccionado de RSP falta o es invalido.
Comprueba que tengas Project64 correctamente instalado con una ruta valida de plugins."
#2007# "El plugin predeterminado o seleccionado de entrada falta o es invalido.
Comprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2004# "El plugin predeterminado o seleccionado de vídeo falta o es invalido. \n\nNecesitas entrar en Ajustes y seleccionar un plugin de vídeo (gráficos).\nComprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2005# "El plugin predeterminado o seleccionado de audio falta o es invalido. \n\nNecesitas entrar en Ajustes y seleccionar un plugin de audio (sonido).\nComprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2006# "El plugin predeterminado o seleccionado de RSP falta o es invalido. \n\nNecesitas entrar en Ajustes y seleccionar un plugin RSP.\nComprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2007# "El plugin predeterminado o seleccionado de entrada falta o es invalido. \n\nNecesitas entrar en Ajustes y seleccionar un plugin de vídeo (gráficos).\nComprueba que tengas al menos un archivo de plugin compatible en tu carpeta de plugins."
#2008# "Error al cargar plugin:"
#2009# "Error al cargar palabra
Compruebe el ROM y los Ajustes del ROM."
#2010# "Error al abrir el Archivo Guardado"
#2009# "Error al cargar palabra\n\nComprueba el ROM y los Ajustes del ROM."
#2010# "Error al abrir el Archivo de Guardado"
#2011# "Error al abrir Eeprom"
#2012# "Error al abrir Flashram"
#2013# "Error al abrir mempak"
#2014# "Intento de abrir el archivo zip fallido.
Falta o esta corrupto el archivo zip - comprueba la ruta y el archivo.
Es posible que necesites reiniciar la aplicación."
#2014# "Intento de abrir el archivo zip fallido. \n\nProbablemente un archivo zip corrupto - prueba descomprimir el ROM manualmente."
#2015# "Intento de abrir el archivo fallido."
#2016# "Ocurrió un error cuando se intentaba abrir el archivo zip."
#2017# "El archivo cargado no parece ser un ROM de Nintendo64 valido."
Verifica tus ROMs con GoodN64."
#2017# "El archivo cargado no parece ser un ROM de Nintendo64 valido. \n\nComprueba tus ROMs con GoodN64."
#2018# "País desconocido"
#2019# "Chip CIC desconocido"
#2020# "Formato de Archivo desconocido"
#2021# "Acción de Memoria desconocida
Emulación detenida"
#2020# "Formato de archivo desconocido"
#2021# "Acción de memoria desconocida\n\nEmulación detenida"
#2022# "OpCode R4300i no manejado en"
#2023# "Ejecutando desde un espacio no-mapeado.
Verifica el ROM y los Ajustes del ROM."
#2024# "La partida guardada no parece coincidir con el ROM en ejecución.
Las Partidas Guardadas deben ser guardadas y cargadas entre ROMs 100% idénticos,
en particular la REGION y VERSION necesita ser la misma.
Cargar esta partida es probable que cause al juego y/o al emulador se bloquee.
Estas seguro de que quieres continuar cargando?"
#2023# "Ejecutando desde un espacio no-mapeado.\n\nComprueba el ROM y los Ajustes del ROM."
#2024# "La partida guardada no parece coincidir con el ROM en ejecución. \n\nLas Partidas Guardadas deben ser guardadas y cargadas entre ROMs 100% idénticos, \nen particular la REGION y VERSION necesita ser la misma. \nCargar esta partida es probable que cause al juego y/o al emulador se bloquee. \n\nEstas seguro de que quieres continuar cargando?"
#2025# "Error"
#2026# "Secuencia de Copyright no encontrada en el LUT. El Juego ya no funcionara."
#2027# "Falla en la Protección de Copia"
#2028# "Cambiar un plugin requiere que Project64 reinicie un ROM en ejecución.
Si no quieres perder tu posición, responde No y guarda una partida primero.
¿Cambiar plugins y reiniciar juego ahora?"
#2028# "Cambiar un plugin requiere que Project64 reinicie un ROM en ejecución. \nSi no quieres perder tu posición, responde No y guarda una partida primero. \n\nCambiar plugins y reiniciar juego ahora?"
#2029# "Cambiar Plugins"
#2030# "Emulación finalizada"
#2031# "Emulación iniciada"

Binary file not shown.

View File

@ -22,6 +22,12 @@
#include <IL/il.h>
#endif
/*
* `GetSystemSetting` and `FindSystemSettingId` from Project64 debugger
* used only in DisplayError when OpenGL extension loading fails on WGL
*/
#include "../Settings/Settings.h"
struct ResolutionInfo
{
unsigned int dwW, dwH, dwF;
@ -248,12 +254,50 @@ static inline void opt_glCopyTexImage2D( GLenum target,
#ifdef _WIN32
/*
* Some post-1.1 OpenGL functions can fail to be loaded through GL extensions
* when running primitive OpenGL contexts on Microsoft Windows, specifically.
*
* As of the Project64 Glide64 version, Glitch64 now assigns these GL
* functions to dummy functions to prevent access violations, while also
* displaying error information showing the missing OpenGL support.
*/
void DisplayError(const char * message)
{
if (GetSystemSetting(FindSystemSettingId("Debugger")) == 0)
return;
MessageBoxA(NULL, message, NULL, MB_ICONERROR);
return;
}
PFNGLACTIVETEXTUREARBPROC glActiveTextureARB;
PFNGLBLENDFUNCSEPARATEEXTPROC glBlendFuncSeparateEXT;
PFNGLMULTITEXCOORD2FARBPROC glMultiTexCoord2fARB;
PFNGLFOGCOORDFPROC glFogCoordfEXT;
void APIENTRY dummy_glActiveTexture(GLenum/*texture*/)
{ /* GLX render opcode 197, req. OpenGL 1.3 (1.2 w/ ARB_multitexture) */
DisplayError("glActiveTexture");
}
void APIENTRY dummy_glMultiTexCoord2f(GLenum/*target*/, GLfloat/*s*/, GLfloat/*t*/)
{ /* GLX render opcode 203, req. OpenGL 1.3 (1.2 w/ ARB_multitexture) */
DisplayError("glMultiTexCoord2f");
}
void APIENTRY dummy_glFogCoordf(GLfloat/*coord*/)
{ /* GLX render opcode 4124, req. OpenGL 1.4 (1.1 w/ EXT_fog_coord) */
DisplayError("glFogCoordf");
}
void APIENTRY dummy_glBlendFuncSeparate(GLenum, GLenum, GLenum, GLenum)
{ /* GLX render opcode 4134, req. OpenGL 1.0 w/ EXT_blend_func_separate */
DisplayError("glBlendFuncSeparate");
}
PFNWGLGETEXTENSIONSSTRINGARBPROC wglGetExtensionsStringARB;
const char * APIENTRY dummy_wglGetExtensionsString(HDC)
{
DisplayError("wglGetExtensionsString");
return NULL;
}
PFNGLBINDFRAMEBUFFEREXTPROC glBindFramebufferEXT;
PFNGLFRAMEBUFFERTEXTURE2DEXTPROC glFramebufferTexture2DEXT;
@ -265,6 +309,47 @@ PFNGLRENDERBUFFERSTORAGEEXTPROC glRenderbufferStorageEXT = NULL;
PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC glFramebufferRenderbufferEXT = NULL;
PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC glCheckFramebufferStatusEXT;
PFNGLDELETEFRAMEBUFFERSEXTPROC glDeleteFramebuffersEXT;
void APIENTRY dummy_glGenRenderbuffers(GLsizei/*n*/, GLuint* /*renderbuffers*/)
{ /* GLX vendor opcode 1423, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glGenRenderbuffers");
}
void APIENTRY dummy_glGenFramebuffers(GLsizei/*n*/, GLuint* /*framebuffers*/)
{ /* GLX vendor opcode 1426, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glGenFramebuffers");
}
GLenum APIENTRY dummy_glCheckFramebufferStatus(GLenum/*target*/)
{ /* GLX vendor opcode 1427, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glCheckFramebufferStatus");
return 0x00008CDD; /* GL_FRAMEBUFFER_UNSUPPORTED */
}
void APIENTRY dummy_glBindRenderbuffer(GLenum/*target*/, GLuint/*renderbuffer*/)
{ /* GLX render opcode 4316, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glBindRenderbuffer");
}
void APIENTRY dummy_glDeleteRenderbuffers(GLsizei/*n*/, const GLuint* /*renderbuffers*/)
{ /* GLX render opcode 4317, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glDeleteRenderbuffers");
}
void APIENTRY dummy_glRenderbufferStorage(GLenum, GLenum, GLsizei, GLsizei)
{ /* GLX render opcode 4318, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glRenderbufferStorage");
}
void APIENTRY dummy_glBindFramebuffer(GLenum/*target*/, GLuint/*framebuffer*/)
{ /* GLX render opcode 4319, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glBindFramebuffer");
}
void APIENTRY dummy_glDeleteFramebuffers(GLsizei/*n*/, const GLuint* /*framebuffers*/)
{ /* GLX render opcode 4320, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glDeleteFramebuffers");
}
void APIENTRY dummy_glFramebufferTexture2D(GLenum, GLenum, GLenum, GLuint, GLint)
{ /* GLX render opcode 4322, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glFramebufferTexture2D");
}
void APIENTRY dummy_glFramebufferRenderbuffer(GLenum, GLenum, GLenum, GLuint)
{ /* GLX render opcode 4324, req. OpenGL 1.2 w/ EXT_framebuffer_object */
DisplayError("glFramebufferRenderbuffer");
}
PFNGLCREATESHADEROBJECTARBPROC glCreateShaderObjectARB;
PFNGLSHADERSOURCEARBPROC glShaderSourceARB;
@ -282,6 +367,73 @@ PFNGLDELETEOBJECTARBPROC glDeleteObjectARB;
PFNGLGETINFOLOGARBPROC glGetInfoLogARB;
PFNGLGETOBJECTPARAMETERIVARBPROC glGetObjectParameterivARB;
PFNGLSECONDARYCOLOR3FPROC glSecondaryColor3f;
void APIENTRY dummy_glSecondaryColor3f(GLfloat/*red*/, GLfloat/*green*/, GLfloat/*blue*/)
{ /* GLX render opcode 4129, req. OpenGL 1.4 (1.1 w/ EXT_secondary_color) */
DisplayError("glSecondaryColor3f");
}
GLuint APIENTRY dummy_glCreateShader(GLenum/*type*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glCreateShader");
return ((GLuint)(NULL));
}
void APIENTRY dummy_glShaderSource(GLuint, GLsizei, const GLchar **, GLint *)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glShaderSource");
}
void APIENTRY dummy_glCompileShader(GLuint/*shader*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glCompileShader");
}
GLuint APIENTRY dummy_glCreateProgram(void)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glCreateProgram");
return ((GLuint)(NULL));
}
void APIENTRY dummy_glAttachObject(GLhandleARB, GLhandleARB)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glAttachObject");
}
void APIENTRY dummy_glLinkProgram(GLuint/*program*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glLinkProgram");
}
void APIENTRY dummy_glUseProgram(GLuint/*program*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glUseProgram");
}
GLint APIENTRY dummy_glGetUniformLocation(GLuint/*program*/, GLchar* /*name*/)
{ /* GLX single opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glGetUniformLocation");
return -1;
}
void APIENTRY dummy_glUniform1i(GLint/*location*/, GLint/*v0*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glUniform1i");
}
void APIENTRY dummy_glUniform4i(GLint/*location*/, GLint, GLint, GLint, GLint)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glUniform4i");
}
void APIENTRY dummy_glUniform1f(GLint/*location*/, GLfloat/*v0*/)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glUniform1f");
}
void APIENTRY dummy_glUniform4f(GLint/*location*/, GLfloat, GLfloat, GLfloat, GLfloat)
{ /* GLX render opcode ?, req. OpenGL 2.0 (1.2 w/ ARB_shader_objects) */
DisplayError("glUniform4f");
}
void APIENTRY dummy_glDeleteObject(GLhandleARB/*obj*/)
{ /* GLX render opcode ?, req. OpenGL 1.2 w/ ARB_shader_objects */
DisplayError("glDeleteObject");
}
void APIENTRY dummy_glGetInfoLog(GLhandleARB, GLsizei, GLsizei *, GLcharARB *)
{ /* GLX single opcode ?, req. OpenGL 1.2 w/ ARB_shader_objects */
DisplayError("glGetInfoLog");
}
void APIENTRY dummy_glGetObjectParameteriv(GLhandleARB, GLenum, GLint *)
{ /* GLX single opcode ?, req. OpenGL 1.2 w/ ARB_shader_objects */
DisplayError("glGetObjectParameteriv");
}
// FXT1,DXT1,DXT5 support - Hiroshi Morii <koolsmoky(at)users.sourceforge.net>
// NOTE: Glide64 + GlideHQ use the following formats
@ -290,6 +442,10 @@ PFNGLSECONDARYCOLOR3FPROC glSecondaryColor3f;
// GL_COMPRESSED_RGB_FXT1_3DFX
// GL_COMPRESSED_RGBA_FXT1_3DFX
PFNGLCOMPRESSEDTEXIMAGE2DPROC glCompressedTexImage2DARB;
void APIENTRY dummy_glCompressedTexImage2D(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)
{ /* GLX render opcode 215, req. OpenGL 1.3 (1.2 w/ ARB_texture_compression) */
DisplayError("glCompressedTexImage2D");
}
#endif // _WIN32
@ -980,6 +1136,11 @@ grSstWinOpen(
#ifdef _WIN32
glActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC)wglGetProcAddress("glActiveTextureARB");
glMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC)wglGetProcAddress("glMultiTexCoord2fARB");
if (glActiveTextureARB == NULL)
glActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC)dummy_glActiveTexture;
if (glMultiTexCoord2fARB == NULL)
glMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC)dummy_glMultiTexCoord2f;
#endif // _WIN32
nbTextureUnits = 0;
@ -1016,6 +1177,8 @@ grSstWinOpen(
#ifdef _WIN32
glBlendFuncSeparateEXT = (PFNGLBLENDFUNCSEPARATEEXTPROC)wglGetProcAddress("glBlendFuncSeparateEXT");
if (glBlendFuncSeparateEXT == NULL)
glBlendFuncSeparateEXT = (PFNGLBLENDFUNCSEPARATEEXTPROC)dummy_glBlendFuncSeparate;
#endif // _WIN32
if (isExtensionSupported("GL_EXT_fog_coord") == 0)
@ -1025,10 +1188,14 @@ grSstWinOpen(
#ifdef _WIN32
glFogCoordfEXT = (PFNGLFOGCOORDFPROC)wglGetProcAddress("glFogCoordfEXT");
if (glFogCoordfEXT == NULL)
glFogCoordfEXT = (PFNGLFOGCOORDFPROC)dummy_glFogCoordf;
#endif // _WIN32
#ifdef _WIN32
wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)wglGetProcAddress("wglGetExtensionsStringARB");
if (wglGetExtensionsStringARB == NULL)
wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)dummy_wglGetExtensionsString;
#endif // _WIN32
#ifdef _WIN32
@ -1038,11 +1205,33 @@ grSstWinOpen(
glCheckFramebufferStatusEXT = (PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)wglGetProcAddress("glCheckFramebufferStatusEXT");
glDeleteFramebuffersEXT = (PFNGLDELETEFRAMEBUFFERSEXTPROC)wglGetProcAddress("glDeleteFramebuffersEXT");
if (glBindFramebufferEXT == NULL)
glBindFramebufferEXT = (PFNGLBINDFRAMEBUFFEREXTPROC)dummy_glBindFramebuffer;
if (glFramebufferTexture2DEXT == NULL)
glFramebufferTexture2DEXT = (PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)dummy_glFramebufferTexture2D;
if (glGenFramebuffersEXT == NULL)
glGenFramebuffersEXT = (PFNGLGENFRAMEBUFFERSEXTPROC)dummy_glGenFramebuffers;
if (glCheckFramebufferStatusEXT == NULL)
glCheckFramebufferStatusEXT = (PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)dummy_glCheckFramebufferStatus;
if (glDeleteFramebuffersEXT == NULL)
glDeleteFramebuffersEXT = (PFNGLDELETEFRAMEBUFFERSEXTPROC)dummy_glDeleteFramebuffers;
glBindRenderbufferEXT = (PFNGLBINDRENDERBUFFEREXTPROC)wglGetProcAddress("glBindRenderbufferEXT");
glDeleteRenderbuffersEXT = (PFNGLDELETERENDERBUFFERSEXTPROC)wglGetProcAddress("glDeleteRenderbuffersEXT");
glGenRenderbuffersEXT = (PFNGLGENRENDERBUFFERSEXTPROC)wglGetProcAddress("glGenRenderbuffersEXT");
glRenderbufferStorageEXT = (PFNGLRENDERBUFFERSTORAGEEXTPROC)wglGetProcAddress("glRenderbufferStorageEXT");
glFramebufferRenderbufferEXT = (PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)wglGetProcAddress("glFramebufferRenderbufferEXT");
if (glBindRenderbufferEXT == NULL)
glBindRenderbufferEXT = (PFNGLBINDRENDERBUFFEREXTPROC)dummy_glBindRenderbuffer;
if (glDeleteRenderbuffersEXT == NULL)
glDeleteRenderbuffersEXT = (PFNGLDELETERENDERBUFFERSEXTPROC)dummy_glDeleteRenderbuffers;
if (glGenRenderbuffersEXT == NULL)
glGenRenderbuffersEXT = (PFNGLGENRENDERBUFFERSEXTPROC)dummy_glGenRenderbuffers;
if (glRenderbufferStorageEXT == NULL)
glRenderbufferStorageEXT = (PFNGLRENDERBUFFERSTORAGEEXTPROC)dummy_glRenderbufferStorage;
if (glFramebufferRenderbufferEXT == NULL)
glFramebufferRenderbufferEXT = (PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)dummy_glFramebufferRenderbuffer;
#endif // _WIN32
use_fbo = config.fbo && glFramebufferRenderbufferEXT;
@ -1083,6 +1272,42 @@ grSstWinOpen(
#ifdef _WIN32
glCompressedTexImage2DARB = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)wglGetProcAddress("glCompressedTexImage2DARB");
if (glCreateShaderObjectARB == NULL)
glCreateShaderObjectARB = (PFNGLCREATESHADEROBJECTARBPROC)dummy_glCreateShader;
if (glShaderSourceARB == NULL)
glShaderSourceARB = (PFNGLSHADERSOURCEARBPROC)dummy_glShaderSource;
if (glCompileShaderARB == NULL)
glCompileShaderARB = (PFNGLCOMPILESHADERARBPROC)dummy_glCompileShader;
if (glCreateProgramObjectARB == NULL)
glCreateProgramObjectARB = (PFNGLCREATEPROGRAMOBJECTARBPROC)dummy_glCreateProgram;
if (glAttachObjectARB == NULL)
glAttachObjectARB = (PFNGLATTACHOBJECTARBPROC)dummy_glAttachObject;
if (glLinkProgramARB == NULL)
glLinkProgramARB = (PFNGLLINKPROGRAMARBPROC)dummy_glLinkProgram;
if (glUseProgramObjectARB == NULL)
glUseProgramObjectARB = (PFNGLUSEPROGRAMOBJECTARBPROC)dummy_glUseProgram;
if (glGetUniformLocationARB == NULL)
glGetUniformLocationARB = (PFNGLGETUNIFORMLOCATIONARBPROC)dummy_glGetUniformLocation;
if (glUniform1iARB == NULL)
glUniform1iARB = (PFNGLUNIFORM1IARBPROC)dummy_glUniform1i;
if (glUniform4iARB == NULL)
glUniform4iARB = (PFNGLUNIFORM4IARBPROC)dummy_glUniform4i;
if (glUniform4fARB == NULL)
glUniform4fARB = (PFNGLUNIFORM4FARBPROC)dummy_glUniform4f;
if (glUniform1fARB == NULL)
glUniform1fARB = (PFNGLUNIFORM1FARBPROC)dummy_glUniform1f;
if (glDeleteObjectARB == NULL)
glDeleteObjectARB = (PFNGLDELETEOBJECTARBPROC)dummy_glDeleteObject;
if (glGetInfoLogARB == NULL)
glGetInfoLogARB = (PFNGLGETINFOLOGARBPROC)dummy_glGetInfoLog;
if (glGetObjectParameterivARB == NULL)
glGetObjectParameterivARB = (PFNGLGETOBJECTPARAMETERIVARBPROC)dummy_glGetObjectParameteriv;
if (glSecondaryColor3f == NULL)
glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)dummy_glSecondaryColor3f;
if (glCompressedTexImage2DARB == NULL)
glCompressedTexImage2DARB = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)dummy_glCompressedTexImage2D;
#endif

View File

@ -25,10 +25,10 @@ Filename: "{app}\Project64.exe"; Description: "{cm:LaunchProgram,{#StringChange(
[Files]
Source: "{#BaseDir}\Bin\{#Configuration}\Project64.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "{#BaseDir}\Config\Glide64.rdb"; DestDir: "{app}\Config"
Source: "{#BaseDir}\Config\Project64.cht"; DestDir: "{app}\Config"
Source: "{#BaseDir}\Config\Project64.rdb"; DestDir: "{app}\Config"
Source: "{#BaseDir}\Config\Project64.rdx"; DestDir: "{app}\Config"
Source: "{#BaseDir}\Config\Glide64.rdb"; DestDir: "{app}\Config"
Source: "{#BaseDir}\Lang\Brazilian Portuguese.pj.Lang"; DestDir: "{app}\Lang"
Source: "{#BaseDir}\Lang\Bulgarian.pj.Lang"; DestDir: "{app}\Lang"
Source: "{#BaseDir}\Lang\Chinese (Simplified).pj.Lang"; DestDir: "{app}\Lang"
@ -62,7 +62,6 @@ Source: "{#BaseDir}\Lang\Ukrainian.pj.Lang"; DestDir: "{app}\Lang"
Source: "{#BaseDir}\Plugin\Audio\Jabo_Dsound.dll"; DestDir: "{app}\Plugin\Audio"
Source: "{#BaseDir}\Plugin\GFX\Jabo_Direct3D8.dll"; DestDir: "{app}\Plugin\GFX"
Source: "{#BaseDir}\Plugin\GFX\PJ64Glide64.dll"; DestDir: "{app}\Plugin\GFX"
Source: "{#BaseDir}\Plugin\Input\Jabo_DInput.dll"; DestDir: "{app}\Plugin\Input"
Source: "{#BaseDir}\Plugin\Input\PJ64_NRage.dll"; DestDir: "{app}\Plugin\Input"
Source: "{#BaseDir}\Plugin\RSP\RSP 1.7.dll"; DestDir: "{app}\Plugin\RSP"

View File

@ -5,22 +5,21 @@ cd /d %~dp0..\..\
SET base_dir=%cd%
cd /d %current_dir%
mkdir "%base_dir%\Bin\Package"
mkdir "%base_dir%\Bin\Package\Config"
mkdir "%base_dir%\Bin\Package\Lang"
mkdir "%base_dir%\Bin\Package\Plugin"
mkdir "%base_dir%\Bin\Package\Plugin\Audio"
mkdir "%base_dir%\Bin\Package\Plugin\GFX"
mkdir "%base_dir%\Bin\Package\Plugin\Input"
mkdir "%base_dir%\Bin\Package\Plugin\RSP"
rd "%base_dir%\Bin\Package" /Q /S
md "%base_dir%\Bin\Package"
md "%base_dir%\Bin\Package\Config"
md "%base_dir%\Bin\Package\Lang"
md "%base_dir%\Bin\Package\Plugin"
md "%base_dir%\Bin\Package\Plugin\Audio"
md "%base_dir%\Bin\Package\Plugin\GFX"
md "%base_dir%\Bin\Package\Plugin\Input"
md "%base_dir%\Bin\Package\Plugin\RSP"
copy "%base_dir%\Bin\Release\Project64.exe" "%base_dir%\Bin\Package"
copy "%base_dir%\Docs\Release Docs\PJgameFAQ.chm" "%base_dir%\Bin\Package"
copy "%base_dir%\Docs\Release Docs\Project64.chm" "%base_dir%\Bin\Package"
copy "%base_dir%\Config\Glide64.rdb" "%base_dir%\Bin\Package\Config"
copy "%base_dir%\Config\Project64.cht" "%base_dir%\Bin\Package\Config"
copy "%base_dir%\Config\Project64.rdb" "%base_dir%\Bin\Package\Config"
copy "%base_dir%\Config\Project64.rdx" "%base_dir%\Bin\Package\Config"
copy "%base_dir%\Config\Glide64.rdb" "%base_dir%\Bin\Package\Config"
copy "%base_dir%\Lang\Brazilian Portuguese.pj.Lang" "%base_dir%\Bin\Package\Lang"
copy "%base_dir%\Lang\Bulgarian.pj.Lang" "%base_dir%\Bin\Package\Lang"
copy "%base_dir%\Lang\Chinese (Simplified).pj.Lang" "%base_dir%\Bin\Package\Lang"

View File

@ -16,10 +16,13 @@ enum LanguageStringID{
/*********************************************************************************
* Meta Information *
*********************************************************************************/
//About DLL
LANGUAGE_NAME = 1,
LANGUAGE_AUTHOR =2,
LANGUAGE_VERSION =3,
LANGUAGE_DATE =4,
//About DLL Dialog
INI_CURRENT_LANG =5,
INI_AUTHOR =6,
INI_VERSION =7,
@ -31,6 +34,7 @@ enum LanguageStringID{
//About INI title
INI_TITLE =20,
/*********************************************************************************
* Numbers *
*********************************************************************************/
@ -45,7 +49,10 @@ enum LanguageStringID{
NUMBER_8 = 58,
NUMBER_9 = 59,
// Menu
/*********************************************************************************
* Menu *
*********************************************************************************/
//File Menu
MENU_FILE =100,
MENU_OPEN =101,
MENU_ROM_INFO =102,
@ -57,6 +64,7 @@ enum LanguageStringID{
MENU_RECENT_DIR =108,
MENU_EXIT =109,
//System Menu
MENU_SYSTEM =120,
MENU_RESET =121,
MENU_PAUSE =122,
@ -73,6 +81,7 @@ enum LanguageStringID{
MENU_RESET_SOFT =133, //added in build 1.7.50
MENU_RESET_HARD =134, //added in build 1.7.50
//Options Menu
MENU_OPTIONS = 140,
MENU_FULL_SCREEN= 141,
MENU_ON_TOP = 142,
@ -83,10 +92,13 @@ enum LanguageStringID{
MENU_SHOW_CPU = 147,
MENU_SETTINGS = 148,
//Debugger Menu
MENU_DEBUGGER = 160,
//Language Menu
MENU_LANGUAGE = 175,
//Help Menu
MENU_HELP = 180,
MENU_ABOUT_INI = 181,
MENU_ABOUT_PJ64 = 182,
@ -126,7 +138,7 @@ enum LanguageStringID{
SAVE_SLOT_9 = 229,
SAVE_SLOT_10 = 230,
// Menu Descriptions
// Menu Descriptions (TODO: unused ? implement or remove)
MENUDES_OPEN = 250,
MENUDES_ROM_INFO = 251,
MENUDES_START = 252,
@ -304,7 +316,7 @@ enum LanguageStringID{
CORE_RECOMPILER = 541,
CORE_SYNC = 542,
//Core Styles
//Self Mod Methods
SMCM_NONE = 560,
SMCM_CACHE = 561,
SMCM_PROECTED = 562,
@ -354,7 +366,6 @@ enum LanguageStringID{
ACCEL_CPUSTATE_2 = 689,
ACCEL_CPUSTATE_3 = 690,
ACCEL_CPUSTATE_4 = 691,
// Frame Rate Option
STR_FR_VIS = 700,
@ -403,7 +414,7 @@ enum LanguageStringID{
CHEAT_ADDCHEAT_NOTES= 1010,
CHEAT_ADD_TO_DB = 1011,
//Code extension
//Code extension
CHEAT_CODE_EXT_TITLE =1012,
CHEAT_CODE_EXT_TXT =1013,
CHEAT_OK =1014,
@ -422,10 +433,9 @@ enum LanguageStringID{
CHEAT_ADDCHEAT_OPT =1025,
CHEAT_ADDCHEAT_OPTDES =1026,
//Edit Cheat
CHEAT_EDITCHEAT_WINDOW =1027,
CHEAT_EDITCHEAT_UPDATE =1028,
CHEAT_EDITCHEAT_UPDATE =1028,
CHEAT_CHANGED_MSG =1029,
CHEAT_CHANGED_TITLE =1030,

View File

@ -17,6 +17,17 @@ void CLanguage::LoadDefaultStrings (void)
#define DEF_STR(ID,str) m_DefaultStrings.insert(LANG_STRINGS::value_type(ID,str))
DEF_STR(EMPTY_STRING, L"" );
/*********************************************************************************
* Meta Information *
*********************************************************************************/
//About DLL
DEF_STR(LANGUAGE_NAME, L"" );
DEF_STR(LANGUAGE_AUTHOR, L"" );
DEF_STR(LANGUAGE_VERSION, L"" );
DEF_STR(LANGUAGE_DATE, L"" );
//About DLL Dialog
DEF_STR(INI_CURRENT_LANG, L"Current Language" );
DEF_STR(INI_AUTHOR, L"Author" );
DEF_STR(INI_VERSION, L"Version" );
@ -25,12 +36,9 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(INI_CURRENT_RDB, L"ROM Database (.RDB)" );
DEF_STR(INI_CURRENT_CHT, L"Cheat Code file (.CHT)" );
DEF_STR(INI_CURRENT_RDX, L"Extended Rom Info (.RDX)");
DEF_STR(INI_TITLE, L"About INI Files" );
DEF_STR(LANGUAGE_NAME, L"" );
DEF_STR(LANGUAGE_AUTHOR, L"" );
DEF_STR(LANGUAGE_VERSION, L"" );
DEF_STR(LANGUAGE_DATE, L"" );
//About INI title
DEF_STR(INI_TITLE, L"About INI Files" );
/*********************************************************************************
* Numbers *
@ -46,6 +54,10 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(NUMBER_8, L"8" );
DEF_STR(NUMBER_9, L"9" );
/*********************************************************************************
* Menu *
*********************************************************************************/
//File Menu
DEF_STR(MENU_FILE, L"&File" );
DEF_STR(MENU_OPEN, L"&Open Rom" );
DEF_STR(MENU_ROM_INFO, L"Rom &Info...." );
@ -56,13 +68,11 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(MENU_RECENT_ROM, L"Recent Rom" );
DEF_STR(MENU_RECENT_DIR, L"Recent Rom Directories" );
DEF_STR(MENU_EXIT, L"E&xit" );
//System Menu
DEF_STR(MENU_SYSTEM, L"&System" );
DEF_STR(MENU_RESET, L"&Reset" );
DEF_STR(MENU_RESET_SOFT, L"&Soft Reset" );
DEF_STR(MENU_RESET_HARD, L"&Hard Reset" );
DEF_STR(MENU_RESET, L"&Reset" );
DEF_STR(MENU_PAUSE, L"&Pause" );
DEF_STR(MENU_RESUME, L"R&esume" );
DEF_STR(MENU_BITMAP, L"Generate Bitmap" );
DEF_STR(MENU_LIMIT_FPS, L"Limit FPS" );
DEF_STR(MENU_SAVE, L"&Save" );
@ -70,19 +80,13 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(MENU_RESTORE, L"&Restore" );
DEF_STR(MENU_LOAD, L"Load..." );
DEF_STR(MENU_CURRENT_SAVE,L"Current Save S&tate" );
DEF_STR(MENU_SLOT_DEFAULT,L"Default" );
DEF_STR(MENU_SLOT_1, L"Slot 1" );
DEF_STR(MENU_SLOT_2, L"Slot 2" );
DEF_STR(MENU_SLOT_3, L"Slot 3" );
DEF_STR(MENU_SLOT_4, L"Slot 4" );
DEF_STR(MENU_SLOT_5, L"Slot 5" );
DEF_STR(MENU_SLOT_6, L"Slot 6" );
DEF_STR(MENU_SLOT_7, L"Slot 7" );
DEF_STR(MENU_SLOT_8, L"Slot 8" );
DEF_STR(MENU_SLOT_9, L"Slot 9" );
DEF_STR(MENU_SLOT_10, L"Slot 10" );
DEF_STR(MENU_CHEAT, L"Cheats..." );
DEF_STR(MENU_GS_BUTTON, L"GS Button" );
DEF_STR(MENU_RESUME, L"R&esume" );
DEF_STR(MENU_RESET_SOFT, L"&Soft Reset" );
DEF_STR(MENU_RESET_HARD, L"&Hard Reset" );
//Options Menu
DEF_STR(MENU_OPTIONS, L"&Options" );
DEF_STR(MENU_FULL_SCREEN, L"&Full Screen" );
DEF_STR(MENU_ON_TOP, L"&Always On &Top" );
@ -92,12 +96,39 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(MENU_CONFG_RSP, L"Configure RSP Plugin..." );
DEF_STR(MENU_SHOW_CPU, L"Show CPU usage %" );
DEF_STR(MENU_SETTINGS, L"&Settings..." );
//Debugger Menu
DEF_STR(MENU_DEBUGGER, L"&Debugger" );
//Language Menu
DEF_STR(MENU_LANGUAGE, L"&Language" );
//Help Menu
DEF_STR(MENU_HELP, L"&Help" );
DEF_STR(MENU_ABOUT_INI, L"About &INI Files" );
DEF_STR(MENU_ABOUT_PJ64, L"&About Project 64" );
DEF_STR(MENU_FORUM, L"Support &Forum" );
DEF_STR(MENU_HOMEPAGE, L"&Homepage" );
//Current Save Slot menu
DEF_STR(MENU_SLOT_DEFAULT, L"Default" );
DEF_STR(MENU_SLOT_1, L"Slot 1" );
DEF_STR(MENU_SLOT_2, L"Slot 2" );
DEF_STR(MENU_SLOT_3, L"Slot 3" );
DEF_STR(MENU_SLOT_4, L"Slot 4" );
DEF_STR(MENU_SLOT_5, L"Slot 5" );
DEF_STR(MENU_SLOT_6, L"Slot 6" );
DEF_STR(MENU_SLOT_7, L"Slot 7" );
DEF_STR(MENU_SLOT_8, L"Slot 8" );
DEF_STR(MENU_SLOT_9, L"Slot 9" );
DEF_STR(MENU_SLOT_10, L"Slot 10" );
//Pop up Menu
DEF_STR(POPUP_PLAY, L"Play Game" );
DEF_STR(POPUP_INFO, L"Rom Information" );
DEF_STR(POPUP_SETTINGS, L"Edit Game Settings" );
DEF_STR(POPUP_CHEATS, L"Edit Cheats" );
DEF_STR(POPUP_GFX_PLUGIN,L"GFX Plugin" );
//Alternate Name to save Slot
DEF_STR(SAVE_SLOT_DEFAULT,L"Save Slot - Default" );
@ -111,13 +142,6 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(SAVE_SLOT_8, L"Save Slot - 8" );
DEF_STR(SAVE_SLOT_9, L"Save Slot - 9" );
DEF_STR(SAVE_SLOT_10, L"Save Slot - 10" );
//Pop up Menu
DEF_STR(POPUP_PLAY, L"Play Game" );
DEF_STR(POPUP_INFO, L"Rom Information" );
DEF_STR(POPUP_SETTINGS, L"Edit Game Settings" );
DEF_STR(POPUP_CHEATS, L"Edit Cheats" );
DEF_STR(POPUP_GFX_PLUGIN,L"GFX Plugin" );
/*********************************************************************************
* Rom Browser *
@ -163,15 +187,15 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(TAB_ROMSELECTION,L"Rom Selection");
DEF_STR(TAB_ADVANCED, L"Advanced");
DEF_STR(TAB_ROMSETTINGS, L"General Settings");
DEF_STR(TAB_ROMNOTES, L"Notes");
DEF_STR(TAB_SHELLINTERGATION,L"Shell Integration");
DEF_STR(TAB_ROMNOTES, L"Notes");
DEF_STR(TAB_SHORTCUTS, L"Keyboard Shortcuts");
DEF_STR(TAB_ROMSTATUS, L"Status");
DEF_STR(TAB_RECOMPILER, L"Recompiler");
//Plugin Dialog
DEF_STR(PLUG_ABOUT, L"About");
DEF_STR(PLUG_RSP, L" Reality Signal Processor plugin: ");
DEF_STR(PLUG_RSP, L" RSP (reality signal processor) plugin: ");
DEF_STR(PLUG_GFX, L" Video (graphics) plugin: ");
DEF_STR(PLUG_AUDIO, L" Audio (sound) plugin: ");
DEF_STR(PLUG_CTRL, L" Input (controller) plugin: ");
@ -355,11 +379,6 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(CHEAT_ADDCHEAT_CLEAR, L"Clear");
DEF_STR(CHEAT_ADDCHEAT_NOTES, L" Cheat Notes: ");
DEF_STR(CHEAT_ADD_TO_DB, L"Add to DB");
DEF_STR(CHEAT_ADDCHEAT_ADD, L"Add Cheat");
DEF_STR(CHEAT_ADDCHEAT_NEW, L"New Cheat");
DEF_STR(CHEAT_ADDCHEAT_CODEDES,L"<address> <value>");
DEF_STR(CHEAT_ADDCHEAT_OPT, L"Options:");
DEF_STR(CHEAT_ADDCHEAT_OPTDES, L"<value> <label>");
//Code extension
DEF_STR(CHEAT_CODE_EXT_TITLE, L"Code Extensions");
@ -374,6 +393,11 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(CHEAT_FROM, L"from");
DEF_STR(CHEAT_TO, L"to");
DEF_STR(CHEAT_NOTES, L"&Notes:");
DEF_STR(CHEAT_ADDCHEAT_ADD, L"Add Cheat");
DEF_STR(CHEAT_ADDCHEAT_NEW, L"New Cheat");
DEF_STR(CHEAT_ADDCHEAT_CODEDES,L"<address> <value>");
DEF_STR(CHEAT_ADDCHEAT_OPT, L"Options:");
DEF_STR(CHEAT_ADDCHEAT_OPTDES, L"<value> <label>");
//Edit Cheat
DEF_STR(CHEAT_EDITCHEAT_WINDOW,L"Edit Cheat");
@ -401,10 +425,10 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(MSG_CPU_RESUMED, L"CPU Resumed");
DEF_STR(MSG_PERM_LOOP, L"In a permanent loop that cannot be exited. \nEmulation will now stop. \n\nVerify ROM and ROM Settings.");
DEF_STR(MSG_MEM_ALLOC_ERROR, L"Failed to allocate Memory");
DEF_STR(MSG_FAIL_INIT_GFX, L"The default or selected video plugin is missing or invalid.\n\nYou need to go into Settings and select a video (graphics) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_AUDIO, L"The default or selected audio plugin is missing or invalid.\n\nYou need to go into Settings and select a audio (sound) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_RSP, L"The default or selected RSP plugin is missing or invalid. \n\nYou need to go into Settings and select an RSP plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_CONTROL, L"The default or selected input plugin is missing or invalid. \n\nYou need to go into Settings and select a video (graphics) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_GFX, L"The default or selected video plugin is missing or invalid. \n\nYou need to go into Settings and select a video (graphics) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_AUDIO, L"The default or selected audio plugin is missing or invalid. \n\nYou need to go into Settings and select a audio (sound) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_RSP, L"The default or selected RSP plugin is missing or invalid. \n\nYou need to go into Settings and select a RSP (reality signal processor) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_INIT_CONTROL, L"The default or selected input plugin is missing or invalid. \n\nYou need to go into Settings and select an input (controller) plugin.\nCheck that you have at least one compatible plugin file in your plugin folder.");
DEF_STR(MSG_FAIL_LOAD_PLUGIN, L"Failed to load plugin:");
DEF_STR(MSG_FAIL_LOAD_WORD, L"Failed to load word\n\nVerify ROM and ROM Settings.");
DEF_STR(MSG_FAIL_OPEN_SAVE, L"Failed to open Save File");
@ -447,8 +471,6 @@ void CLanguage::LoadDefaultStrings (void)
DEF_STR(MSG_NO_MENUITEM_SEL, L"You need to select a menu item to assign this key to");
DEF_STR(MSG_MENUITEM_ASSIGNED, L"Short cut has already been assigned to another menu item");
DEF_STR(MSG_NO_SEL_SHORTCUT, L"No shortcut has been selected to be removed");
DEF_STR(MENU_FORUM, L"Support &Forum");
DEF_STR(MENU_HOMEPAGE, L"&Homepage");
DEF_STR(MSG_WAITING_FOR_START, L"Rom Loaded. Waiting for emulation to start.");
DEF_STR(MSG_INVALID_EXE, L"project64 beta is for members only.\n\nif you have an account at pj64.net, you should not be seeing this error!!\nplease contact us on the site");
DEF_STR(MSG_INVALID_EXE_TITLE, L"Program Error");