REMOVED old Qt files from trunk. See branches/qt for Qt front-end.
|
@ -39,7 +39,7 @@ They are built with the static C runtime (this is what the releases use).
|
||||||
# Visual C++ 2008 project files #
|
# Visual C++ 2008 project files #
|
||||||
#################################
|
#################################
|
||||||
|
|
||||||
Using Microsoft Visual C++ 2008, you can build the Win32/MFC and the Win32/Qt build.
|
Using Microsoft Visual C++ 2008, you can build the Windows/MFC version.
|
||||||
Refer to the instructions below for further assistance:
|
Refer to the instructions below for further assistance:
|
||||||
|
|
||||||
===Win32/MFC===
|
===Win32/MFC===
|
||||||
|
@ -57,26 +57,3 @@ If you want to enable OpenAL sound output, install the OpenAL SDK. If you do not
|
||||||
Some pixel filters come with assembler code, which compatible to the NASM syntax.
|
Some pixel filters come with assembler code, which compatible to the NASM syntax.
|
||||||
Extract NASM somewhere and add it to your compiler's executable file paths.
|
Extract NASM somewhere and add it to your compiler's executable file paths.
|
||||||
All .asm files will be handled with the "nasm.rules" build rules file which comes with this project file.
|
All .asm files will be handled with the "nasm.rules" build rules file which comes with this project file.
|
||||||
|
|
||||||
===Win32/Qt===
|
|
||||||
The MS Visual C++ 2008 Express-compatible project file can be found in trunk/project/vc2008_qt.
|
|
||||||
It uses the qmake file in trunk/project/qmake, so you always have to add files to the VC++ project file AND the qmake file!
|
|
||||||
IMPORTANT: The Qt-sources have to be compiled with the Microsoft compiler first, in order to use it,
|
|
||||||
because the default binary distribution was compiled with mingw and will not work with the MS Compiler.
|
|
||||||
Continue by reading "How to compile Qt from source with Visual C++ 2008".
|
|
||||||
The release build will automatically be compressed with UPX, make sure to download it and point MSVC++ to it.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
######################################################
|
|
||||||
# How to compile Qt from source with Visual C++ 2008 #
|
|
||||||
######################################################
|
|
||||||
- Download the latest Qt source code archive from http://trolltech.com/developer/downloads/qt/windows
|
|
||||||
- You want "qt-win-opensource-src-x.x.x.zip", not "qt-win-opensource-x.x.x-mingw.exe"
|
|
||||||
- This how-to was witten when Qt 4.4.1 was the current version.
|
|
||||||
- Extract the archive somewhere.
|
|
||||||
- Start a Visual Studio build command promt and cd to the extracted files.
|
|
||||||
- You can find it in the start menu in "Microsoft Visual Studio 2008\Visual Studio Tools\Visual Studio 2008 Command Prompt".
|
|
||||||
- Type & run "configure -release -fast -no-qt3support -platform win32-msvc2008"
|
|
||||||
- When configure finished, simply run "nmake" and get yourself a coffee or ten.
|
|
||||||
- When nmake finished and you've become a coffee addict, add the created lib files to your Visual Studio paths, do the same for the include paths.
|
|
||||||
|
|
463
lang/german.ts
|
@ -1,463 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!DOCTYPE TS><TS version="1.1" language="de_DE">
|
|
||||||
<context>
|
|
||||||
<name>@default</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="96"/>
|
|
||||||
<source>About VBA-M</source>
|
|
||||||
<translation type="obsolete">Über VBA-M</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="97"/>
|
|
||||||
<source>This program is licensed under terms of the GNU General Public License.</source>
|
|
||||||
<translation type="obsolete">Dieses Programm ist unter den Bedingungen der GNU General Public License lizenziert.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="111"/>
|
|
||||||
<source>OpenGL version 2.1 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 2.1 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="114"/>
|
|
||||||
<source>OpenGL version 2.0 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 2.0 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="117"/>
|
|
||||||
<source>OpenGL version 1.5 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 1.5 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="120"/>
|
|
||||||
<source>OpenGL version 1.4 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 1.4 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="123"/>
|
|
||||||
<source>OpenGL version 1.3 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 1.3 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="126"/>
|
|
||||||
<source>OpenGL version 1.2 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 1.2 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="129"/>
|
|
||||||
<source>OpenGL version 1.1 is present.</source>
|
|
||||||
<translation type="obsolete">OpenGL Version 1.1 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="135"/>
|
|
||||||
<source>OpenGL is NOT available!</source>
|
|
||||||
<translation type="obsolete">OpenGL ist NICHT verfügbar!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="138"/>
|
|
||||||
<source>About OpenGL</source>
|
|
||||||
<translation type="obsolete">Über OpenGL</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>ConfigDialog</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="26"/>
|
|
||||||
<source>Close</source>
|
|
||||||
<translation>Schließen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="62"/>
|
|
||||||
<source>Options</source>
|
|
||||||
<translation>Optionen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="70"/>
|
|
||||||
<source>Video</source>
|
|
||||||
<translation>Grafik</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="76"/>
|
|
||||||
<source>Sound</source>
|
|
||||||
<translation>Sound</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="82"/>
|
|
||||||
<source>Input</source>
|
|
||||||
<translation>Eingabe</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>InputOptionsPage</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="49"/>
|
|
||||||
<source>Input Keys</source>
|
|
||||||
<translation>Tastenzuweisung</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="51"/>
|
|
||||||
<source>Start:</source>
|
|
||||||
<translation>Start:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="54"/>
|
|
||||||
<source>Select:</source>
|
|
||||||
<translation>Select:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="57"/>
|
|
||||||
<source>Up:</source>
|
|
||||||
<translation>Hoch:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="60"/>
|
|
||||||
<source>Down:</source>
|
|
||||||
<translation>Runter:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="63"/>
|
|
||||||
<source>Left:</source>
|
|
||||||
<translation>Links:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="66"/>
|
|
||||||
<source>Right:</source>
|
|
||||||
<translation>Rechts:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="69"/>
|
|
||||||
<source>A:</source>
|
|
||||||
<translation>A:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="72"/>
|
|
||||||
<source>B:</source>
|
|
||||||
<translation>B:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="75"/>
|
|
||||||
<source>L:</source>
|
|
||||||
<translation>L:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="78"/>
|
|
||||||
<source>R:</source>
|
|
||||||
<translation>R:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="81"/>
|
|
||||||
<source>Gameshark:</source>
|
|
||||||
<translation>Gameshark:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="84"/>
|
|
||||||
<source>Speed Up:</source>
|
|
||||||
<translation>Beschleunigen:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="87"/>
|
|
||||||
<source>Screenshot:</source>
|
|
||||||
<translation>Screenshot:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="90"/>
|
|
||||||
<source>Multiple key assignments</source>
|
|
||||||
<translation>Mehrfachzuweisungen</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>MainWnd</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="98"/>
|
|
||||||
<source>&File</source>
|
|
||||||
<translation type="obsolete">&Datei</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="103"/>
|
|
||||||
<source>&Settings</source>
|
|
||||||
<translation type="obsolete">&Einstellungen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="109"/>
|
|
||||||
<source>&Tools</source>
|
|
||||||
<translation type="obsolete">&Werkzeuge</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="116"/>
|
|
||||||
<source>&Help</source>
|
|
||||||
<translation type="obsolete">&Hilfe</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="119"/>
|
|
||||||
<source>About &OpenGL...</source>
|
|
||||||
<translation type="obsolete">Über &OpenGL...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="118"/>
|
|
||||||
<source>About &VBA-M...</source>
|
|
||||||
<translation type="obsolete">Über &VBA-M...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="120"/>
|
|
||||||
<source>About &Qt...</source>
|
|
||||||
<translation type="obsolete">Über &Qt...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="314"/>
|
|
||||||
<source>This program is licensed under terms of the GNU General Public License.</source>
|
|
||||||
<translation>Dieses Programm ist unter den Bedingungen der GNU General Public License lizenziert.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="353"/>
|
|
||||||
<source>OpenGL version 2.1 is present.</source>
|
|
||||||
<translation>OpenGL Version 2.1 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="356"/>
|
|
||||||
<source>OpenGL version 2.0 is present.</source>
|
|
||||||
<translation>OpenGL Version 2.0 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="359"/>
|
|
||||||
<source>OpenGL version 1.5 is present.</source>
|
|
||||||
<translation>OpenGL Version 1.5 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="362"/>
|
|
||||||
<source>OpenGL version 1.4 is present.</source>
|
|
||||||
<translation>OpenGL Version 1.4 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="365"/>
|
|
||||||
<source>OpenGL version 1.3 is present.</source>
|
|
||||||
<translation>OpenGL Version 1.3 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="368"/>
|
|
||||||
<source>OpenGL version 1.2 is present.</source>
|
|
||||||
<translation>OpenGL Version 1.2 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="371"/>
|
|
||||||
<source>OpenGL version 1.1 is present.</source>
|
|
||||||
<translation>OpenGL Version 1.1 ist verfügbar.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="377"/>
|
|
||||||
<source>OpenGL is NOT available!</source>
|
|
||||||
<translation>OpenGL ist NICHT verfügbar!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="316"/>
|
|
||||||
<source>About VBA-M</source>
|
|
||||||
<translation>Über VBA-M</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="380"/>
|
|
||||||
<source>About OpenGL</source>
|
|
||||||
<translation>Über OpenGL</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="72"/>
|
|
||||||
<source>Select translation...</source>
|
|
||||||
<translation type="obsolete">Übersetzung auswählen...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="102"/>
|
|
||||||
<source>Select translation</source>
|
|
||||||
<translation type="obsolete">Übersetzung auswählen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="104"/>
|
|
||||||
<source>Translation files (*.qm)</source>
|
|
||||||
<translation type="obsolete">Übersetzungsdateien (*.qm)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="256"/>
|
|
||||||
<source>.qm</source>
|
|
||||||
<translation></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="158"/>
|
|
||||||
<source>Exit</source>
|
|
||||||
<translation>Beenden</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="164"/>
|
|
||||||
<source>Select language...</source>
|
|
||||||
<translation>Sprache auswählen...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="235"/>
|
|
||||||
<source>Select language</source>
|
|
||||||
<translation>Sprache auswählen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="237"/>
|
|
||||||
<source>Language files (*.qm)</source>
|
|
||||||
<translation>Sprachdateien (*.qm)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="332"/>
|
|
||||||
<source>Error!</source>
|
|
||||||
<translation>Fehler!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="247"/>
|
|
||||||
<source>Language file can not be loaded!</source>
|
|
||||||
<translation>Sprachdatei kann nicht geladen werden!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="124"/>
|
|
||||||
<source>Enable translation</source>
|
|
||||||
<translation>Übersetzung aktivieren</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="280"/>
|
|
||||||
<source>
|
|
||||||
No language file loaded.</source>
|
|
||||||
<translation type="obsolete">
|
|
||||||
Deutsche Übersetzung von spacy.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="192"/>
|
|
||||||
<source>Cheats</source>
|
|
||||||
<translation></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="171"/>
|
|
||||||
<source>Show cheats sidebar</source>
|
|
||||||
<translation>Cheats-Seitenleiste anzeigen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="156"/>
|
|
||||||
<source>File</source>
|
|
||||||
<translation>Datei</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="157"/>
|
|
||||||
<source>Open ROM</source>
|
|
||||||
<translation>ROM laden</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="162"/>
|
|
||||||
<source>Settings</source>
|
|
||||||
<translation>Einstellungen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="163"/>
|
|
||||||
<source>Main options...</source>
|
|
||||||
<translation>Optionen...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="169"/>
|
|
||||||
<source>Tools</source>
|
|
||||||
<translation>Werkzeuge</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="176"/>
|
|
||||||
<source>Help</source>
|
|
||||||
<translation>Hilfe</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="178"/>
|
|
||||||
<source>About VBA-M...</source>
|
|
||||||
<translation>Über VBA-M...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="179"/>
|
|
||||||
<source>About OpenGL...</source>
|
|
||||||
<translation>Über OpenGL...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="180"/>
|
|
||||||
<source>About Qt...</source>
|
|
||||||
<translation>Über Qt...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="294"/>
|
|
||||||
<source>Enter ROM loader code here.</source>
|
|
||||||
<translation type="obsolete">Funktionalität noch nicht vorhanden.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="307"/>
|
|
||||||
<source>Version</source>
|
|
||||||
<translation>Version</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="309"/>
|
|
||||||
<source>Compile date:</source>
|
|
||||||
<translation>Bau-Datum:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="312"/>
|
|
||||||
<source>No language file loaded.</source>
|
|
||||||
<translation>Deutsche Übersetzung von spacy.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="324"/>
|
|
||||||
<source>Select ROM</source>
|
|
||||||
<translation>Bitte ROM auswählen</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="319"/>
|
|
||||||
<source>Game Boy Advance ROMs (*.gba);;All Files (*.*)</source>
|
|
||||||
<translation type="obsolete">Game Boy Advance ROMs (*.gba);;Alle Dateien (*.*)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="332"/>
|
|
||||||
<source>Can not load ROM!</source>
|
|
||||||
<translation>ROM kann nicht geladen werden!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="326"/>
|
|
||||||
<source>All ROMs (*.dmg *.sgb *.cgb *.agb *.gb *.gbc *.gba *.bin *.zip *.gz *.rar *.7z *.jma);;Game Boy ROMs (*.dmg *.gb);;Super Game Boy ROMs (*.sgb);;Game Boy Color ROMs (*.cgb *.gbc);;Game Boy Advance ROMs (*.agb *.gba);;Compressed ROMs (*.zip *.gz *.rar *.7z *.jma);;All Files (*.* *)</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>VideoOptionsPage</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="24"/>
|
|
||||||
<source>Renderer Selection</source>
|
|
||||||
<translation>Auswahl der Schnittstelle</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="25"/>
|
|
||||||
<source>Renderer:</source>
|
|
||||||
<translation>Schnittstelle:</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="27"/>
|
|
||||||
<source>OGL</source>
|
|
||||||
<translation type="obsolete">OpenGL</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="28"/>
|
|
||||||
<source>D3D</source>
|
|
||||||
<translation type="obsolete">Direct3D</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="29"/>
|
|
||||||
<source>QPainter</source>
|
|
||||||
<translation type="obsolete">QPainter (Qt)</translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>sidewidget_cheats</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="27"/>
|
|
||||||
<source>Enable</source>
|
|
||||||
<translation>Aktivieren</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="34"/>
|
|
||||||
<source>Search...</source>
|
|
||||||
<translation>Suchen...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="19"/>
|
|
||||||
<source>Cheats</source>
|
|
||||||
<translation></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
</TS>
|
|
|
@ -1,27 +0,0 @@
|
||||||
How to create a new translation for the Qt build:
|
|
||||||
|
|
||||||
For Windows:
|
|
||||||
|
|
||||||
- Add "TRANSLATIONS += path/to/language.ts" to vba-m.pro
|
|
||||||
|
|
||||||
- Execute the "update.cmd" script to create .ts files
|
|
||||||
|
|
||||||
- Edit & translate the .ts file with the "Qt Linguist" tool
|
|
||||||
|
|
||||||
- Execute the "release.cmd" script to compile it to a .qm file
|
|
||||||
|
|
||||||
- The .qm file can now be loaded & used by the application
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
For Linux:
|
|
||||||
|
|
||||||
- Add "TRANSLATIONS += path/to/language.ts" to vba-m.pro
|
|
||||||
|
|
||||||
- Type lrelease vba-m.pro
|
|
||||||
|
|
||||||
- Edit & translate the .ts file with the "Qt Linguist" tool
|
|
||||||
|
|
||||||
- In Qt Linguist, go to File -> release as. This will compile it into a .qm file
|
|
||||||
|
|
||||||
- The .qm file can now be loaded & used by the application
|
|
|
@ -1,2 +0,0 @@
|
||||||
cd ..\project\qmake
|
|
||||||
lrelease vba-m.pro
|
|
378
lang/spanish.ts
|
@ -1,378 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!DOCTYPE TS><TS version="1.1" language="es">
|
|
||||||
<context>
|
|
||||||
<name>ConfigDialog</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="26"/>
|
|
||||||
<source>Close</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="62"/>
|
|
||||||
<source>Options</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="70"/>
|
|
||||||
<source>Video</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="76"/>
|
|
||||||
<source>Sound</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/configdialog.cpp" line="82"/>
|
|
||||||
<source>Input</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>InputOptionsPage</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="49"/>
|
|
||||||
<source>Input Keys</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="51"/>
|
|
||||||
<source>Start:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="54"/>
|
|
||||||
<source>Select:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="57"/>
|
|
||||||
<source>Up:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="60"/>
|
|
||||||
<source>Down:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="63"/>
|
|
||||||
<source>Left:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="66"/>
|
|
||||||
<source>Right:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="69"/>
|
|
||||||
<source>A:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="72"/>
|
|
||||||
<source>B:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="75"/>
|
|
||||||
<source>L:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="78"/>
|
|
||||||
<source>R:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="81"/>
|
|
||||||
<source>Gameshark:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="84"/>
|
|
||||||
<source>Speed Up:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="87"/>
|
|
||||||
<source>Screenshot:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="90"/>
|
|
||||||
<source>Multiple key assignments</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>MainWnd</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="38"/>
|
|
||||||
<source>VBA-M</source>
|
|
||||||
<translation type="obsolete">VBA-M</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="93"/>
|
|
||||||
<source>&File</source>
|
|
||||||
<translation type="obsolete">&Archivo</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="158"/>
|
|
||||||
<source>Exit</source>
|
|
||||||
<translation>Salir</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="98"/>
|
|
||||||
<source>&Settings</source>
|
|
||||||
<translation type="obsolete">&Ajustes</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="72"/>
|
|
||||||
<source>Select translation...</source>
|
|
||||||
<translation type="obsolete">Seleccione traducción...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="104"/>
|
|
||||||
<source>&Tools</source>
|
|
||||||
<translation type="obsolete">&Herramientas</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="108"/>
|
|
||||||
<source>&Help</source>
|
|
||||||
<translation type="obsolete">&Ayuda</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="110"/>
|
|
||||||
<source>About &VBA-M...</source>
|
|
||||||
<translation type="obsolete">Sobre &VBA-M...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="111"/>
|
|
||||||
<source>About &OpenGL...</source>
|
|
||||||
<translation type="obsolete">Sobre &OpenGL...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="112"/>
|
|
||||||
<source>About &Qt...</source>
|
|
||||||
<translation type="obsolete">Sobre &Qt...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="102"/>
|
|
||||||
<source>Select translation</source>
|
|
||||||
<translation type="obsolete">Seleccione traducción</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="104"/>
|
|
||||||
<source>Translation files (*.qm)</source>
|
|
||||||
<translation type="obsolete">Archivos de traducción (*.qm)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="256"/>
|
|
||||||
<source>.qm</source>
|
|
||||||
<translation>.qm</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="316"/>
|
|
||||||
<source>About VBA-M</source>
|
|
||||||
<translation>Sobre VBA-M</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="314"/>
|
|
||||||
<source>This program is licensed under terms of the GNU General Public License.</source>
|
|
||||||
<translation>Este programa se licencia bajo los términos de la Licencia Pública General GNU.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="353"/>
|
|
||||||
<source>OpenGL version 2.1 is present.</source>
|
|
||||||
<translation>OpenGL versión 2.1 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="356"/>
|
|
||||||
<source>OpenGL version 2.0 is present.</source>
|
|
||||||
<translation>OpenGL versión 2.0 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="359"/>
|
|
||||||
<source>OpenGL version 1.5 is present.</source>
|
|
||||||
<translation>OpenGL versión 1.5 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="362"/>
|
|
||||||
<source>OpenGL version 1.4 is present.</source>
|
|
||||||
<translation>OpenGL versión 1.4 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="365"/>
|
|
||||||
<source>OpenGL version 1.3 is present.</source>
|
|
||||||
<translation>OpenGL versión 1.3 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="368"/>
|
|
||||||
<source>OpenGL version 1.2 is present.</source>
|
|
||||||
<translation>OpenGL versión 1.2 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="371"/>
|
|
||||||
<source>OpenGL version 1.1 is present.</source>
|
|
||||||
<translation>OpenGL versión 1.1 está presente.</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="377"/>
|
|
||||||
<source>OpenGL is NOT available!</source>
|
|
||||||
<translation>¡OpenGL no está disponible!</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="380"/>
|
|
||||||
<source>About OpenGL</source>
|
|
||||||
<translation>Sobre OpenGL</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="164"/>
|
|
||||||
<source>Select language...</source>
|
|
||||||
<translation>Seleccione traducción...</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="235"/>
|
|
||||||
<source>Select language</source>
|
|
||||||
<translation>Seleccione traducción</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="237"/>
|
|
||||||
<source>Language files (*.qm)</source>
|
|
||||||
<translation>Archivos de traducción (*.qm)</translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="332"/>
|
|
||||||
<source>Error!</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="247"/>
|
|
||||||
<source>Language file can not be loaded!</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="124"/>
|
|
||||||
<source>Enable translation</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="192"/>
|
|
||||||
<source>Cheats</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="156"/>
|
|
||||||
<source>File</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="157"/>
|
|
||||||
<source>Open ROM</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="162"/>
|
|
||||||
<source>Settings</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="163"/>
|
|
||||||
<source>Main options...</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="169"/>
|
|
||||||
<source>Tools</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="171"/>
|
|
||||||
<source>Show cheats sidebar</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="176"/>
|
|
||||||
<source>Help</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="178"/>
|
|
||||||
<source>About VBA-M...</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="179"/>
|
|
||||||
<source>About OpenGL...</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="180"/>
|
|
||||||
<source>About Qt...</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="307"/>
|
|
||||||
<source>Version</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="309"/>
|
|
||||||
<source>Compile date:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="312"/>
|
|
||||||
<source>No language file loaded.</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="324"/>
|
|
||||||
<source>Select ROM</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="326"/>
|
|
||||||
<source>All ROMs (*.dmg *.sgb *.cgb *.agb *.gb *.gbc *.gba *.bin *.zip *.gz *.rar *.7z *.jma);;Game Boy ROMs (*.dmg *.gb);;Super Game Boy ROMs (*.sgb);;Game Boy Color ROMs (*.cgb *.gbc);;Game Boy Advance ROMs (*.agb *.gba);;Compressed ROMs (*.zip *.gz *.rar *.7z *.jma);;All Files (*.* *)</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainWnd.cpp" line="332"/>
|
|
||||||
<source>Can not load ROM!</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>VideoOptionsPage</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="24"/>
|
|
||||||
<source>Renderer Selection</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/MainOptions.cpp" line="25"/>
|
|
||||||
<source>Renderer:</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
<context>
|
|
||||||
<name>sidewidget_cheats</name>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="27"/>
|
|
||||||
<source>Enable</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="34"/>
|
|
||||||
<source>Search...</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/qt/sidewidget_cheats.ui" line="19"/>
|
|
||||||
<source>Cheats</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
</context>
|
|
||||||
</TS>
|
|
|
@ -1,2 +0,0 @@
|
||||||
cd ..\project\qmake
|
|
||||||
lupdate vba-m.pro
|
|
|
@ -1,176 +0,0 @@
|
||||||
TEMPLATE = app
|
|
||||||
CONFIG += qt release
|
|
||||||
QT += opengl
|
|
||||||
TARGET = VisualBoyAdvance
|
|
||||||
DEFINES += BKPT_SUPPORT NO_PNG
|
|
||||||
|
|
||||||
# Directory Locations
|
|
||||||
M_DIR_QT = ../../src/qt/
|
|
||||||
M_DIR_LANG = ../../lang/
|
|
||||||
M_DIR_SHARED = ../../src/
|
|
||||||
M_DIR_GBAPU = ../../src/dmg/gb_apu/
|
|
||||||
M_DIR_AGB = ../../src/agb/
|
|
||||||
M_DIR_DMG = ../../src/dmg/
|
|
||||||
M_DIR_DEP = ../../../dependencies/msvc/
|
|
||||||
|
|
||||||
|
|
||||||
# OSs
|
|
||||||
!win32 {
|
|
||||||
DEFINES += C_CORE
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Tweaks
|
|
||||||
win32-msvc2008 {
|
|
||||||
DEFINES += _CRT_SECURE_NO_WARNINGS
|
|
||||||
DEFINES += NO_PNG
|
|
||||||
INCLUDEPATH += $${M_DIR_DEP}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Resource Files
|
|
||||||
RESOURCES += $${M_DIR_QT}vba-m.qrc
|
|
||||||
|
|
||||||
win32 {
|
|
||||||
RC_FILE = $${M_DIR_QT}vba-m.rc
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Language Files
|
|
||||||
TRANSLATIONS += $${M_DIR_LANG}german.ts
|
|
||||||
TRANSLATIONS += $${M_DIR_LANG}spanish.ts
|
|
||||||
|
|
||||||
|
|
||||||
# Qt GUI Files
|
|
||||||
PRECOMPILED_HEADER = $${M_DIR_QT}precompile.h
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}version.h
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}main.h
|
|
||||||
SOURCES += $${M_DIR_QT}main.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}MainWnd.h
|
|
||||||
SOURCES += $${M_DIR_QT}MainWnd.cpp
|
|
||||||
|
|
||||||
FORMS += $${M_DIR_QT}sidewidget_cheats.ui
|
|
||||||
HEADERS += $${M_DIR_QT}sidewidget_cheats.h
|
|
||||||
SOURCES += $${M_DIR_QT}sidewidget_cheats.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}MainOptions.h
|
|
||||||
SOURCES += $${M_DIR_QT}MainOptions.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}configdialog.h
|
|
||||||
SOURCES += $${M_DIR_QT}configdialog.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}emu.h
|
|
||||||
SOURCES += $${M_DIR_QT}emu.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}EmuManager.h
|
|
||||||
SOURCES += $${M_DIR_QT}EmuManager.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_QT}GraphicsOutput.h
|
|
||||||
SOURCES += $${M_DIR_QT}GraphicsOutput.cpp
|
|
||||||
|
|
||||||
|
|
||||||
# Shared Core Files
|
|
||||||
HEADERS += $${M_DIR_SHARED}System.h
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Globals.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Globals.cpp
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_SHARED}armdis.h
|
|
||||||
#SOURCES += $${M_DIR_SHARED}armdis.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}bios.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}bios.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Cheats.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Cheats.cpp
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_SHARED}CheatSearch.h
|
|
||||||
#SOURCES += $${M_DIR_SHARED}CheatSearch.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}EEprom.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}EEprom.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Flash.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Flash.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Sram.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Sram.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}elf.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}elf.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}RTC.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}RTC.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Sound.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Sound.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}memgzio.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}memgzio.c
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}fex.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}fex_mini.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_SHARED}Util.h
|
|
||||||
SOURCES += $${M_DIR_SHARED}Util.cpp
|
|
||||||
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode0.cpp
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode1.cpp
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode2.cpp
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode3.cpp
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode4.cpp
|
|
||||||
SOURCES += $${M_DIR_SHARED}Mode5.cpp
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_SHARED}NLS.h
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_SHARED}Port.h
|
|
||||||
|
|
||||||
#SOURCES += $${M_DIR_SHARED}remote.cpp
|
|
||||||
|
|
||||||
|
|
||||||
# GB APU
|
|
||||||
HEADERS += $${M_DIR_GBAPU}blargg_common.h
|
|
||||||
HEADERS += $${M_DIR_GBAPU}blargg_config.h
|
|
||||||
HEADERS += $${M_DIR_GBAPU}blargg_source.h
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_GBAPU}Blip_Buffer.h
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Blip_Buffer.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_GBAPU}Effects_Buffer.h
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Effects_Buffer.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_GBAPU}Gb_Apu.h
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Gb_Apu.cpp
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Gb_Apu_State.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_GBAPU}Gb_Oscs.h
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Gb_Oscs.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_GBAPU}Multi_Buffer.h
|
|
||||||
SOURCES += $${M_DIR_GBAPU}Multi_Buffer.cpp
|
|
||||||
|
|
||||||
|
|
||||||
# GBA Core Files
|
|
||||||
HEADERS += $${M_DIR_AGB}agbprint.h
|
|
||||||
SOURCES += $${M_DIR_AGB}agbprint.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_AGB}GBA.h
|
|
||||||
SOURCES += $${M_DIR_AGB}GBA.cpp
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_AGB}gbafilter.h
|
|
||||||
#SOURCES += $${M_DIR_AGB}gbafilter.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_AGB}GBAGfx.h
|
|
||||||
SOURCES += $${M_DIR_AGB}GBAGfx.cpp
|
|
||||||
|
|
||||||
#HEADERS += $${M_DIR_AGB}GBALink.h
|
|
||||||
#SOURCES += $${M_DIR_AGB}GBALink.cpp
|
|
||||||
|
|
||||||
SOURCES += $${M_DIR_AGB}GBA-arm.cpp
|
|
||||||
SOURCES += $${M_DIR_AGB}GBA-thumb.cpp
|
|
||||||
|
|
||||||
HEADERS += $${M_DIR_AGB}GBAcpu.h
|
|
||||||
HEADERS += $${M_DIR_AGB}GBAinline.h
|
|
|
@ -1,20 +0,0 @@
|
||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual C++ Express 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vba-m", "vba-m.vcproj", "{714B3EF3-5D43-421F-A97E-447540E7C137}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
debug|Win32 = debug|Win32
|
|
||||||
release|Win32 = release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{714B3EF3-5D43-421F-A97E-447540E7C137}.debug|Win32.ActiveCfg = debug|Win32
|
|
||||||
{714B3EF3-5D43-421F-A97E-447540E7C137}.debug|Win32.Build.0 = debug|Win32
|
|
||||||
{714B3EF3-5D43-421F-A97E-447540E7C137}.release|Win32.ActiveCfg = release|Win32
|
|
||||||
{714B3EF3-5D43-421F-A97E-447540E7C137}.release|Win32.Build.0 = release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
|
@ -1,437 +0,0 @@
|
||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="9,00"
|
|
||||||
Name="vba-m"
|
|
||||||
ProjectGUID="{714B3EF3-5D43-421F-A97E-447540E7C137}"
|
|
||||||
RootNamespace="vba-m"
|
|
||||||
Keyword="MakeFileProj"
|
|
||||||
TargetFrameworkVersion="196613"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="debug|Win32"
|
|
||||||
OutputDirectory="$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="0"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCNMakeTool"
|
|
||||||
BuildCommandLine="qmake -makefile -win32 "CONFIG+=debug" ..\qmake\vba-m.pro
nmake debug"
|
|
||||||
ReBuildCommandLine=""
|
|
||||||
CleanCommandLine="nmake distclean
rmdir /S /Q debug
rmdir /S /Q release"
|
|
||||||
Output="$(OutDir)\VisualBoyAdvance.exe"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG"
|
|
||||||
IncludeSearchPath=""$(ProjectDir)""
|
|
||||||
ForcedIncludes=""
|
|
||||||
AssemblySearchPath=""
|
|
||||||
ForcedUsingAssemblies=""
|
|
||||||
CompileAsManaged=""
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="release|Win32"
|
|
||||||
OutputDirectory="$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="0"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCNMakeTool"
|
|
||||||
BuildCommandLine="qmake -makefile -win32 ..\qmake\vba-m.pro
nmake release
upx --best "$(TargetPath)""
|
|
||||||
ReBuildCommandLine=""
|
|
||||||
CleanCommandLine="nmake distclean
rmdir /S /Q debug
rmdir /S /Q release"
|
|
||||||
Output="$(OutDir)\VisualBoyAdvance.exe"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG"
|
|
||||||
IncludeSearchPath=""$(ProjectDir)""
|
|
||||||
ForcedIncludes=""
|
|
||||||
AssemblySearchPath=""
|
|
||||||
ForcedUsingAssemblies=""
|
|
||||||
CompileAsManaged=""
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="GUI"
|
|
||||||
Filter="cpp;h"
|
|
||||||
>
|
|
||||||
<Filter
|
|
||||||
Name="main"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\main.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\main.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="MainWnd"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\MainWnd.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\MainWnd.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="side widgets"
|
|
||||||
>
|
|
||||||
<Filter
|
|
||||||
Name="cheats"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\sidewidget_cheats.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\sidewidget_cheats.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\sidewidget_cheats.ui"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Config Dialog"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\configdialog.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\configdialog.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="Pages"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\MainOptions.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\MainOptions.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="IO"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\GraphicsOutput.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\GraphicsOutput.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Build"
|
|
||||||
Filter="pro"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\qmake\vba-m.pro"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\vba-m.qrc"
|
|
||||||
FileType="13"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\vba-m.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Other"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\precompile.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\version.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<Filter
|
|
||||||
Name="EmuManager"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\emu.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\emu.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\EmuManager.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\qt\EmuManager.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Core"
|
|
||||||
>
|
|
||||||
<Filter
|
|
||||||
Name="Shared"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\bios.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\bios.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Cheats.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Cheats.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\EEprom.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\EEprom.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\elf.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\elf.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\fex.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\fex_mini.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Flash.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Flash.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Globals.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Globals.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\memgzio.c"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\memgzio.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode0.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode1.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode2.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode3.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode4.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Mode5.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\RTC.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\RTC.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Sound.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Sound.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Sram.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Sram.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\System.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Util.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\Util.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="GBA"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\agbprint.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\agbprint.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBA-arm.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBA-thumb.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBA.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBA.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBAcpu.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBAGfx.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBAGfx.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\agb\GBAinline.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="APU"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\blargg_common.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\blargg_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\blargg_source.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Blip_Buffer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Blip_Buffer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Effects_Buffer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Effects_Buffer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Gb_Apu.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Gb_Apu.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Gb_Apu_State.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Gb_Oscs.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Gb_Oscs.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Multi_Buffer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\src\dmg\gb_apu\Multi_Buffer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
|
@ -1,85 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "EmuManager.h"
|
|
||||||
|
|
||||||
|
|
||||||
EmuManager::EmuManager()
|
|
||||||
: romBuffer( 0 )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
EmuManager::~EmuManager()
|
|
||||||
{
|
|
||||||
if( romBuffer != 0 ) {
|
|
||||||
free( romBuffer );
|
|
||||||
romBuffer = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void EmuManager::setROM( QString &file )
|
|
||||||
{
|
|
||||||
romPath = file;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
QString &EmuManager::getROM()
|
|
||||||
{
|
|
||||||
return romPath;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool EmuManager::loadROM()
|
|
||||||
{
|
|
||||||
// validate ROM
|
|
||||||
if( romPath.isEmpty() ) return false;
|
|
||||||
|
|
||||||
QFile file( romPath );
|
|
||||||
|
|
||||||
if( !file.exists() ) return false;
|
|
||||||
|
|
||||||
qint64 size = file.size();
|
|
||||||
if( ( size == 0 ) || ( size > 0x2000000 /* 32MB */ ) ) return false;
|
|
||||||
|
|
||||||
// TODO: add further validation
|
|
||||||
|
|
||||||
// read ROM into memory
|
|
||||||
if( !file.open( QIODevice::ReadOnly ) ) return false;
|
|
||||||
|
|
||||||
if( romBuffer != 0 ) {
|
|
||||||
// resize the buffer
|
|
||||||
unsigned char *temp;
|
|
||||||
temp = (unsigned char *)realloc( romBuffer, size );
|
|
||||||
if( temp == 0 ) {
|
|
||||||
free( romBuffer );
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
romBuffer = temp;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// create the buffer
|
|
||||||
romBuffer = (unsigned char *)malloc( size );
|
|
||||||
if( romBuffer == 0 ) return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( -1 == file.read( (char *)romBuffer, size ) ) return false;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
|
@ -1,46 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef EMUMANAGER_H
|
|
||||||
#define EMUMANAGER_H
|
|
||||||
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
#include "emu.h"
|
|
||||||
|
|
||||||
|
|
||||||
// class to abstract emulation control
|
|
||||||
class EmuManager
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
EmuManager();
|
|
||||||
~EmuManager();
|
|
||||||
|
|
||||||
void setROM( QString &file );
|
|
||||||
QString &getROM();
|
|
||||||
|
|
||||||
bool loadROM();
|
|
||||||
|
|
||||||
private:
|
|
||||||
QString romPath;
|
|
||||||
unsigned char *romBuffer;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
#endif // #ifndef EMUMANAGER_H
|
|
|
@ -1,94 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "GraphicsOutput.h"
|
|
||||||
|
|
||||||
|
|
||||||
GraphicsOutput::GraphicsOutput( QWidget *parent)
|
|
||||||
: QGLWidget( parent ),
|
|
||||||
m_api( NONE )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
GraphicsOutput::~GraphicsOutput()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool GraphicsOutput::setAPI( GraphicsOutput::DISPLAY_API api )
|
|
||||||
{
|
|
||||||
if( ( api == OPENGL ) && ( !QGLFormat::hasOpenGL() ) ) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_api = api;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
GraphicsOutput::DISPLAY_API GraphicsOutput::getAPI()
|
|
||||||
{
|
|
||||||
return m_api;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void GraphicsOutput::render()
|
|
||||||
{
|
|
||||||
repaint(); // immediately calls paintEvent()
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void GraphicsOutput::paintEvent( QPaintEvent * )
|
|
||||||
{
|
|
||||||
if( m_api == NONE ) return;
|
|
||||||
|
|
||||||
QPainter painter;
|
|
||||||
|
|
||||||
painter.begin( this );
|
|
||||||
|
|
||||||
painter.setRenderHint( QPainter::Antialiasing ); // enable AA if supported by OpenGL device
|
|
||||||
|
|
||||||
painter.setRenderHint( QPainter::TextAntialiasing );
|
|
||||||
|
|
||||||
painter.setRenderHint( QPainter::HighQualityAntialiasing );
|
|
||||||
|
|
||||||
painter.fillRect( rect(), QBrush( QColor( 0xFF, 0x00, 0x00 ), Qt::SolidPattern ) );
|
|
||||||
|
|
||||||
painter.setPen( QColor( 0x00, 0x00, 0xFF ) );
|
|
||||||
painter.drawEllipse( rect() );
|
|
||||||
|
|
||||||
static unsigned int counter = 0;
|
|
||||||
static QTime firstTime = QTime::currentTime();
|
|
||||||
|
|
||||||
int tDiff = firstTime.secsTo( QTime::currentTime() );
|
|
||||||
|
|
||||||
int fps = 0;
|
|
||||||
|
|
||||||
if( tDiff != 0 ) {
|
|
||||||
fps = counter / tDiff;
|
|
||||||
}
|
|
||||||
|
|
||||||
painter.setPen( QColor( 0x00, 0xFF, 0x00 ) );
|
|
||||||
painter.setFont( QFont( "Arial", 14, QFont::Bold ) );
|
|
||||||
painter.drawText( rect(), Qt::AlignCenter, "Frame Number " + QString::number( counter++ ) +
|
|
||||||
"\nFPS: " + QString::number( fps ) );
|
|
||||||
|
|
||||||
painter.end();
|
|
||||||
}
|
|
|
@ -1,53 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef GRAPHICSOUTPUT_H
|
|
||||||
#define GRAPHICSOUTPUT_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
// this class uses a QGLWidget with QPainter, which uses OpenGL acceleration if supported
|
|
||||||
class GraphicsOutput : public QGLWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
GraphicsOutput( QWidget *parent );
|
|
||||||
~GraphicsOutput();
|
|
||||||
|
|
||||||
enum DISPLAY_API
|
|
||||||
{
|
|
||||||
NONE,
|
|
||||||
QPAINTER,
|
|
||||||
OPENGL
|
|
||||||
};
|
|
||||||
|
|
||||||
bool setAPI( DISPLAY_API api );
|
|
||||||
DISPLAY_API getAPI();
|
|
||||||
|
|
||||||
public slots:
|
|
||||||
void render();
|
|
||||||
|
|
||||||
protected:
|
|
||||||
void paintEvent( QPaintEvent *event );
|
|
||||||
|
|
||||||
private:
|
|
||||||
DISPLAY_API m_api;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // #ifndef GRAPHICSOUTPUT_H
|
|
|
@ -1,312 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "MainOptions.h"
|
|
||||||
|
|
||||||
VideoOptionsPage::VideoOptionsPage(QWidget *parent)
|
|
||||||
: QWidget(parent)
|
|
||||||
{
|
|
||||||
QGroupBox *RenderGroup = new QGroupBox(tr("Renderer Options"));
|
|
||||||
QLabel *RenderLabel = new QLabel(tr("Renderer:"));
|
|
||||||
QComboBox *RenderCombo = new QComboBox;
|
|
||||||
RenderCombo->addItem("OpenGL");
|
|
||||||
RenderCombo->addItem("QPainter");
|
|
||||||
|
|
||||||
|
|
||||||
QLabel *ResLabel = new QLabel(tr("Resolution:"));
|
|
||||||
QComboBox *ResCombo = new QComboBox;
|
|
||||||
ResCombo->addItem("320x200");
|
|
||||||
ResCombo->addItem("320x240");
|
|
||||||
ResCombo->addItem("400x300");
|
|
||||||
ResCombo->addItem("512x384");
|
|
||||||
ResCombo->addItem("640x480");
|
|
||||||
ResCombo->addItem("800x600");
|
|
||||||
ResCombo->addItem("1024x768");
|
|
||||||
ResCombo->addItem("1280x1024");
|
|
||||||
|
|
||||||
QLabel *SWFilterLabel = new QLabel(tr("Software Filter:"));
|
|
||||||
QComboBox *SWFilterCombo = new QComboBox;
|
|
||||||
SWFilterCombo->addItem("2xSai");
|
|
||||||
SWFilterCombo->addItem("HQ2X");
|
|
||||||
SWFilterCombo->addItem("HQ3X");
|
|
||||||
SWFilterCombo->addItem("HQ4X");
|
|
||||||
SWFilterCombo->addItem("Super Eagle");
|
|
||||||
SWFilterCombo->addItem("SuperScale");
|
|
||||||
SWFilterCombo->addItem("Bilinear Plus");
|
|
||||||
|
|
||||||
QLabel *HWFilterLabel = new QLabel(tr("Hardware Filter:"));
|
|
||||||
QComboBox *HWFilterCombo = new QComboBox;
|
|
||||||
HWFilterCombo->addItem("Nearest");
|
|
||||||
HWFilterCombo->addItem("Bilinear");
|
|
||||||
|
|
||||||
QHBoxLayout *RenderLayout = new QHBoxLayout;
|
|
||||||
RenderLayout->addWidget(RenderLabel);
|
|
||||||
RenderLayout->addWidget(RenderCombo);
|
|
||||||
|
|
||||||
QHBoxLayout *ResLayout = new QHBoxLayout;
|
|
||||||
ResLayout->addWidget(ResLabel);
|
|
||||||
ResLayout->addWidget(ResCombo);
|
|
||||||
|
|
||||||
QHBoxLayout *SWFilterLayout = new QHBoxLayout;
|
|
||||||
SWFilterLayout->addWidget(SWFilterLabel);
|
|
||||||
SWFilterLayout->addWidget(SWFilterCombo);
|
|
||||||
|
|
||||||
QHBoxLayout *HWFilterLayout = new QHBoxLayout;
|
|
||||||
HWFilterLayout->addWidget(HWFilterLabel);
|
|
||||||
HWFilterLayout->addWidget(HWFilterCombo);
|
|
||||||
|
|
||||||
QCheckBox *TripleBufCheckBox = new QCheckBox(tr("Triple Buffering"));
|
|
||||||
QCheckBox *VerticalSyncCheckBox = new QCheckBox(tr("Vertical Sync"));
|
|
||||||
QCheckBox *DisableStatCheckBox = new QCheckBox(tr("Disable status messages"));
|
|
||||||
|
|
||||||
|
|
||||||
QGridLayout *CheckLayout = new QGridLayout;
|
|
||||||
CheckLayout->addWidget(TripleBufCheckBox, 3, 2);
|
|
||||||
CheckLayout->addWidget(VerticalSyncCheckBox, 4, 2);
|
|
||||||
CheckLayout->addWidget(DisableStatCheckBox, 5, 2);
|
|
||||||
|
|
||||||
QVBoxLayout *configLayout = new QVBoxLayout;
|
|
||||||
configLayout->addLayout(RenderLayout);
|
|
||||||
configLayout->addLayout(ResLayout);
|
|
||||||
configLayout->addLayout(HWFilterLayout);
|
|
||||||
configLayout->addLayout(SWFilterLayout);
|
|
||||||
configLayout->addLayout(CheckLayout);
|
|
||||||
RenderGroup->setLayout(configLayout);
|
|
||||||
|
|
||||||
QVBoxLayout *mainLayout = new QVBoxLayout;
|
|
||||||
mainLayout->addWidget(RenderGroup);
|
|
||||||
mainLayout->addStretch(1);
|
|
||||||
setLayout(mainLayout);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
InputOptionsPage::InputOptionsPage(QWidget *parent)
|
|
||||||
: QWidget(parent)
|
|
||||||
{
|
|
||||||
QGroupBox *InputGroup = new QGroupBox(tr("Input Keys"));
|
|
||||||
|
|
||||||
QLabel *StartLabel = new QLabel(tr("Start:"));
|
|
||||||
QLineEdit *StartEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *SelectLabel = new QLabel(tr("Select:"));
|
|
||||||
QLineEdit *SelectEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *UpLabel = new QLabel(tr("Up:"));
|
|
||||||
QLineEdit *UpEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *DownLabel = new QLabel(tr("Down:"));
|
|
||||||
QLineEdit *DownEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *LeftLabel = new QLabel(tr("Left:"));
|
|
||||||
QLineEdit *LeftEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *RightLabel = new QLabel(tr("Right:"));
|
|
||||||
QLineEdit *RightEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *ALabel = new QLabel(tr("A:"));
|
|
||||||
QLineEdit *AEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *BLabel = new QLabel(tr("B:"));
|
|
||||||
QLineEdit *BEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *LLabel = new QLabel(tr("L:"));
|
|
||||||
QLineEdit *LEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *RLabel = new QLabel(tr("R:"));
|
|
||||||
QLineEdit *REdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *GSLabel = new QLabel(tr("Gameshark:"));
|
|
||||||
QLineEdit *GSEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *SpeedUpLabel = new QLabel(tr("Speed Up:"));
|
|
||||||
QLineEdit *SpeedUpEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QLabel *ScreenshotLabel = new QLabel(tr("Screenshot:"));
|
|
||||||
QLineEdit *ScreenshotEdit = new QLineEdit;
|
|
||||||
|
|
||||||
QCheckBox *MultipleAssignCheckBox = new QCheckBox(tr("Multiple key assignments"));
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
QGridLayout *InputLayout = new QGridLayout;
|
|
||||||
InputLayout->addWidget(StartLabel, 0, 0);
|
|
||||||
InputLayout->addWidget(StartEdit, 0, 1);
|
|
||||||
InputLayout->addWidget(SelectLabel, 1, 0);
|
|
||||||
InputLayout->addWidget(SelectEdit, 1, 1);
|
|
||||||
InputLayout->addWidget(UpLabel, 2, 0);
|
|
||||||
InputLayout->addWidget(UpEdit, 2, 1);
|
|
||||||
InputLayout->addWidget(DownLabel, 3, 0);
|
|
||||||
InputLayout->addWidget(DownEdit, 3, 1);
|
|
||||||
InputLayout->addWidget(LeftLabel, 4, 0);
|
|
||||||
InputLayout->addWidget(LeftEdit, 4, 1);
|
|
||||||
InputLayout->addWidget(RightLabel, 5, 0);
|
|
||||||
InputLayout->addWidget(RightEdit, 5, 1);
|
|
||||||
InputLayout->addWidget(ALabel, 6, 0);
|
|
||||||
InputLayout->addWidget(AEdit, 6, 1);
|
|
||||||
InputLayout->addWidget(BLabel, 7, 0);
|
|
||||||
InputLayout->addWidget(BEdit, 7, 1);
|
|
||||||
InputLayout->addWidget(LLabel, 8, 0);
|
|
||||||
InputLayout->addWidget(LEdit, 8, 1);
|
|
||||||
InputLayout->addWidget(RLabel, 9, 0);
|
|
||||||
InputLayout->addWidget(REdit, 9, 1);
|
|
||||||
InputLayout->addWidget(GSLabel, 0, 2);
|
|
||||||
InputLayout->addWidget(GSEdit, 0, 3);
|
|
||||||
InputLayout->addWidget(SpeedUpLabel, 1, 2);
|
|
||||||
InputLayout->addWidget(SpeedUpEdit, 1, 3);
|
|
||||||
InputLayout->addWidget(ScreenshotLabel, 2, 2);
|
|
||||||
InputLayout->addWidget(ScreenshotEdit, 2, 3);
|
|
||||||
InputLayout->addWidget(MultipleAssignCheckBox, 3, 2);
|
|
||||||
|
|
||||||
|
|
||||||
InputGroup->setLayout(InputLayout);
|
|
||||||
|
|
||||||
QVBoxLayout *mainLayout = new QVBoxLayout;
|
|
||||||
mainLayout->addWidget(InputGroup);
|
|
||||||
mainLayout->addSpacing(12);
|
|
||||||
mainLayout->addStretch(1);
|
|
||||||
setLayout(mainLayout);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
SoundOptionsPage::SoundOptionsPage(QWidget *parent)
|
|
||||||
: QWidget(parent)
|
|
||||||
{
|
|
||||||
QGroupBox *SoundGroup = new QGroupBox(tr("Sound Options"));
|
|
||||||
|
|
||||||
QLabel *APILabel = new QLabel(tr("Sound API:"));
|
|
||||||
QComboBox *APICombo = new QComboBox;
|
|
||||||
APICombo->addItem("DirectSound");
|
|
||||||
APICombo->addItem("OpenAL");
|
|
||||||
APICombo->addItem("XAudio2");
|
|
||||||
APICombo->addItem("OSS");
|
|
||||||
|
|
||||||
QLabel *SRLabel = new QLabel(tr("Sample Rate:"));
|
|
||||||
QComboBox *SRCombo = new QComboBox;
|
|
||||||
SRCombo->addItem("11025 Hz");
|
|
||||||
SRCombo->addItem("22050 Hz");
|
|
||||||
SRCombo->addItem("44100 Hz");
|
|
||||||
SRCombo->addItem("48000 Hz");
|
|
||||||
|
|
||||||
QHBoxLayout *APILayout = new QHBoxLayout;
|
|
||||||
APILayout->addWidget(APILabel);
|
|
||||||
APILayout->addWidget(APICombo);
|
|
||||||
|
|
||||||
QHBoxLayout *SRLayout = new QHBoxLayout;
|
|
||||||
SRLayout->addWidget(SRLabel);
|
|
||||||
SRLayout->addWidget(SRCombo);
|
|
||||||
|
|
||||||
QCheckBox *SoundSyncCheckBox = new QCheckBox(tr("Sync game to audio"));
|
|
||||||
QCheckBox *MuteAudioCheckBox = new QCheckBox(tr("Mute audio"));
|
|
||||||
QCheckBox *InterpolateCheckBox = new QCheckBox(tr("Interpolate audio"));
|
|
||||||
QCheckBox *EchoCheckBox = new QCheckBox(tr("GB audio echo"));
|
|
||||||
|
|
||||||
QGridLayout *CheckLayout = new QGridLayout;
|
|
||||||
CheckLayout->addWidget(SoundSyncCheckBox, 3, 2);
|
|
||||||
CheckLayout->addWidget(MuteAudioCheckBox, 4, 2);
|
|
||||||
CheckLayout->addWidget(InterpolateCheckBox, 5, 2);
|
|
||||||
CheckLayout->addWidget(EchoCheckBox, 6, 2);
|
|
||||||
|
|
||||||
QVBoxLayout *configLayout = new QVBoxLayout;
|
|
||||||
configLayout->addLayout(APILayout);
|
|
||||||
configLayout->addLayout(SRLayout);
|
|
||||||
configLayout->addLayout(CheckLayout);
|
|
||||||
SoundGroup->setLayout(configLayout);
|
|
||||||
|
|
||||||
QVBoxLayout *mainLayout = new QVBoxLayout;
|
|
||||||
mainLayout->addWidget(SoundGroup);
|
|
||||||
mainLayout->addStretch(1);
|
|
||||||
setLayout(mainLayout);
|
|
||||||
}
|
|
||||||
|
|
||||||
DirecOptionsPage::DirecOptionsPage(QWidget *parent)
|
|
||||||
: QWidget(parent)
|
|
||||||
{
|
|
||||||
QGroupBox *DirectoryGroup = new QGroupBox(tr("Directory Options"));
|
|
||||||
|
|
||||||
|
|
||||||
QLabel *GBAROMLabel = new QLabel(tr("GBA ROMs:"));
|
|
||||||
QLineEdit *GBAROMEdit = new QLineEdit;
|
|
||||||
QPushButton *GBAROMButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *GBCROMLabel = new QLabel(tr("GBC ROMs:"));
|
|
||||||
QLineEdit *GBCROMEdit = new QLineEdit;
|
|
||||||
QPushButton *GBCROMButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *GBROMLabel = new QLabel(tr("GB ROMs:"));
|
|
||||||
QLineEdit *GBROMEdit = new QLineEdit;
|
|
||||||
QPushButton *GBROMButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *NativeSaveLabel = new QLabel(tr("Native Saves:"));
|
|
||||||
QLineEdit *NativeSaveEdit = new QLineEdit;
|
|
||||||
QPushButton *NativeSaveButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *SaveStateLabel = new QLabel(tr("Savestates:"));
|
|
||||||
QLineEdit *SaveStateEdit = new QLineEdit;
|
|
||||||
QPushButton *SaveStateButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *ScreenshotLabel = new QLabel(tr("Screenshots:"));
|
|
||||||
QLineEdit *ScreenshotEdit = new QLineEdit;
|
|
||||||
QPushButton *ScreenshotButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *GBMonoBIOSLabel = new QLabel(tr("GB Mono BIOS:"));
|
|
||||||
QLineEdit *GBMonoBIOSEdit = new QLineEdit;
|
|
||||||
QPushButton *GBMonoBIOSButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
QLabel *GBABIOSLabel = new QLabel(tr("GBA BIOS:"));
|
|
||||||
QLineEdit *GBABIOSEdit = new QLineEdit;
|
|
||||||
QPushButton *GBABIOSButton = new QPushButton(tr("&..."));
|
|
||||||
|
|
||||||
|
|
||||||
QGridLayout *DirectoryLayout = new QGridLayout;
|
|
||||||
DirectoryLayout->addWidget(GBAROMLabel, 0, 0);
|
|
||||||
DirectoryLayout->addWidget(GBAROMEdit, 0, 1);
|
|
||||||
DirectoryLayout->addWidget(GBAROMButton, 0, 2);
|
|
||||||
DirectoryLayout->addWidget(GBCROMLabel, 1, 0);
|
|
||||||
DirectoryLayout->addWidget(GBCROMEdit, 1, 1);
|
|
||||||
DirectoryLayout->addWidget(GBCROMButton, 1, 2);
|
|
||||||
DirectoryLayout->addWidget(GBROMLabel, 2, 0);
|
|
||||||
DirectoryLayout->addWidget(GBROMEdit, 2, 1);
|
|
||||||
DirectoryLayout->addWidget(GBROMButton, 2, 2);
|
|
||||||
DirectoryLayout->addWidget(NativeSaveLabel, 3, 0);
|
|
||||||
DirectoryLayout->addWidget(NativeSaveEdit, 3, 1);
|
|
||||||
DirectoryLayout->addWidget(NativeSaveButton, 3, 2);
|
|
||||||
DirectoryLayout->addWidget(SaveStateLabel, 4, 0);
|
|
||||||
DirectoryLayout->addWidget(SaveStateEdit, 4, 1);
|
|
||||||
DirectoryLayout->addWidget(SaveStateButton, 4, 2);
|
|
||||||
DirectoryLayout->addWidget(ScreenshotLabel, 5, 0);
|
|
||||||
DirectoryLayout->addWidget(ScreenshotEdit, 5, 1);
|
|
||||||
DirectoryLayout->addWidget(ScreenshotButton, 5, 2);
|
|
||||||
DirectoryLayout->addWidget(GBMonoBIOSLabel, 6, 0);
|
|
||||||
DirectoryLayout->addWidget(GBMonoBIOSEdit, 6, 1);
|
|
||||||
DirectoryLayout->addWidget(GBMonoBIOSButton, 6, 2);
|
|
||||||
DirectoryLayout->addWidget(GBABIOSLabel, 7, 0);
|
|
||||||
DirectoryLayout->addWidget(GBABIOSEdit, 7, 1);
|
|
||||||
DirectoryLayout->addWidget(GBABIOSButton, 7, 2);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
DirectoryGroup->setLayout(DirectoryLayout);
|
|
||||||
|
|
||||||
|
|
||||||
QVBoxLayout *mainLayout = new QVBoxLayout;
|
|
||||||
mainLayout->addWidget(DirectoryGroup);
|
|
||||||
mainLayout->addStretch(1);
|
|
||||||
setLayout(mainLayout);
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,56 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef MAINOPTIONS_H
|
|
||||||
#define MAINOPTIONS_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
class VideoOptionsPage : public QWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
VideoOptionsPage(QWidget *parent = 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
class InputOptionsPage : public QWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
InputOptionsPage(QWidget *parent = 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
class SoundOptionsPage : public QWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
SoundOptionsPage(QWidget *parent = 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
class DirecOptionsPage : public QWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
DirecOptionsPage(QWidget *parent = 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,383 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "MainWnd.h"
|
|
||||||
|
|
||||||
#include "version.h"
|
|
||||||
#include "configdialog.h"
|
|
||||||
#include "sidewidget_cheats.h"
|
|
||||||
|
|
||||||
|
|
||||||
MainWnd::MainWnd( QTranslator **trans, QSettings *settings, QWidget *parent )
|
|
||||||
: QMainWindow( parent ),
|
|
||||||
translator( trans ),
|
|
||||||
settings( settings ),
|
|
||||||
fileMenu( 0 ),
|
|
||||||
settingsMenu( 0 ),
|
|
||||||
enableTranslationAct( 0 ),
|
|
||||||
toolsMenu( 0 ),
|
|
||||||
helpMenu( 0 ),
|
|
||||||
dockWidget_cheats( 0 ),
|
|
||||||
emuManager( 0 ),
|
|
||||||
graphicsOutput( 0 )
|
|
||||||
{
|
|
||||||
createDisplay();
|
|
||||||
setMinimumSize( 320, 240 );
|
|
||||||
setWindowTitle( "VBA-M" );
|
|
||||||
|
|
||||||
createDockWidgets();
|
|
||||||
createActions();
|
|
||||||
createMenus();
|
|
||||||
|
|
||||||
loadSettings();
|
|
||||||
|
|
||||||
emuManager = new EmuManager();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
MainWnd::~MainWnd()
|
|
||||||
{
|
|
||||||
if( emuManager != 0 ) {
|
|
||||||
delete emuManager;
|
|
||||||
emuManager = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( graphicsOutput != 0 ) {
|
|
||||||
delete graphicsOutput;
|
|
||||||
graphicsOutput = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::loadSettings()
|
|
||||||
{
|
|
||||||
QVariant v;
|
|
||||||
|
|
||||||
v = settings->value( "MainWnd/geometry");
|
|
||||||
if( v.isValid() ) {
|
|
||||||
restoreGeometry( v.toByteArray() );
|
|
||||||
}
|
|
||||||
|
|
||||||
v = settings->value( "MainWnd/state" );
|
|
||||||
if( v.isValid() ) {
|
|
||||||
restoreState( v.toByteArray() );
|
|
||||||
}
|
|
||||||
|
|
||||||
v = settings->value( "App/language_file" );
|
|
||||||
if( v.isValid() ) {
|
|
||||||
languageFile = v.toString();
|
|
||||||
if( loadTranslation() ) {
|
|
||||||
// only enable language if it loaded correctly
|
|
||||||
v = settings->value( "App/language_enable" );
|
|
||||||
enableTranslation( v.toBool() );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::saveSettings()
|
|
||||||
{
|
|
||||||
QVariant v;
|
|
||||||
|
|
||||||
v = saveGeometry();
|
|
||||||
settings->setValue( "MainWnd/geometry", v );
|
|
||||||
|
|
||||||
// state of toolbars and dock widgets
|
|
||||||
// all memorizable widgets need an objectName!
|
|
||||||
v = saveState();
|
|
||||||
settings->setValue( "MainWnd/state", v );
|
|
||||||
|
|
||||||
v = enableTranslationAct->isChecked();
|
|
||||||
settings->setValue( "App/language_enable", v );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::createActions()
|
|
||||||
{
|
|
||||||
bool enabled, checked;
|
|
||||||
|
|
||||||
|
|
||||||
if( enableTranslationAct != 0 ) {
|
|
||||||
enabled = enableTranslationAct->isEnabled(); // memorize state
|
|
||||||
checked = enableTranslationAct->isChecked();
|
|
||||||
delete enableTranslationAct;
|
|
||||||
enableTranslationAct = 0;
|
|
||||||
} else {
|
|
||||||
enabled = false;
|
|
||||||
checked = false;
|
|
||||||
}
|
|
||||||
enableTranslationAct = new QAction( tr( "Enable translation" ), this );
|
|
||||||
enableTranslationAct->setEnabled( enabled );
|
|
||||||
enableTranslationAct->setCheckable( true );
|
|
||||||
enableTranslationAct->setChecked( checked );
|
|
||||||
connect( enableTranslationAct, SIGNAL( toggled( bool ) ), this, SLOT( enableTranslation( bool ) ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::createMenus()
|
|
||||||
{
|
|
||||||
if( fileMenu ) {
|
|
||||||
delete fileMenu;
|
|
||||||
fileMenu = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( settingsMenu ) {
|
|
||||||
delete settingsMenu;
|
|
||||||
settingsMenu = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( toolsMenu ) {
|
|
||||||
delete toolsMenu;
|
|
||||||
toolsMenu = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( helpMenu ) {
|
|
||||||
delete helpMenu;
|
|
||||||
helpMenu = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// File menu
|
|
||||||
fileMenu = menuBar()->addMenu( tr( "File" ) );
|
|
||||||
fileMenu->addAction( QIcon( ":/resources/open.png" ), tr( "Open ROM" ), this, SLOT( showOpenROM() ) );
|
|
||||||
fileMenu->addAction( QIcon( ":/resources/exit.png" ), tr( "Exit" ), this, SLOT( close() ) );
|
|
||||||
|
|
||||||
|
|
||||||
// Settings menu
|
|
||||||
settingsMenu = menuBar()->addMenu( tr( "Settings" ) );
|
|
||||||
settingsMenu->addAction( QIcon( ":/resources/settings.png" ), tr( "Main options..." ), this, SLOT( showMainOptions() ) );
|
|
||||||
settingsMenu->addAction( QIcon( ":/resources/locale.png" ), tr( "Select language..." ), this, SLOT( selectLanguage() ) );
|
|
||||||
settingsMenu->addAction( enableTranslationAct );
|
|
||||||
|
|
||||||
|
|
||||||
// Tools menu
|
|
||||||
toolsMenu = menuBar()->addMenu( tr( "Tools" ) );
|
|
||||||
QAction *toggleCheats = dockWidget_cheats->toggleViewAction();
|
|
||||||
toggleCheats->setText( tr( "Show cheats sidebar" ) );
|
|
||||||
toolsMenu->addAction( toggleCheats ) ;
|
|
||||||
|
|
||||||
|
|
||||||
// Help menu
|
|
||||||
helpMenu = menuBar()->addMenu( tr( "Help" ) );
|
|
||||||
|
|
||||||
helpMenu->addAction( QIcon( ":/resources/vba-m.png" ), tr( "About VBA-M..." ), this, SLOT( showAbout() ) );
|
|
||||||
helpMenu->addAction( QIcon( ":/resources/gl.png" ), tr( "About OpenGL..." ), this, SLOT( showAboutOpenGL() ) );
|
|
||||||
helpMenu->addAction( QIcon( ":/resources/qt_logo.png" ), tr( "About Qt..." ), qApp, SLOT( aboutQt() ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::createDockWidgets()
|
|
||||||
{
|
|
||||||
if( dockWidget_cheats != 0 ) {
|
|
||||||
delete dockWidget_cheats;
|
|
||||||
dockWidget_cheats = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cheat Widget
|
|
||||||
dockWidget_cheats = new QDockWidget( tr( "Cheats" ), this );
|
|
||||||
dockWidget_cheats->setObjectName( "dockWidget_cheats" ); // necessary for MainWnd::saveState
|
|
||||||
SideWidget_Cheats *sw_cheats = new SideWidget_Cheats( dockWidget_cheats );
|
|
||||||
dockWidget_cheats->setAllowedAreas( Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea );
|
|
||||||
dockWidget_cheats->setWidget( sw_cheats );
|
|
||||||
addDockWidget( Qt::LeftDockWidgetArea, dockWidget_cheats );
|
|
||||||
dockWidget_cheats->hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool MainWnd::createDisplay()
|
|
||||||
{
|
|
||||||
if( graphicsOutput != 0 ) {
|
|
||||||
delete graphicsOutput;
|
|
||||||
graphicsOutput = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
graphicsOutput = new GraphicsOutput( this );
|
|
||||||
|
|
||||||
if( !graphicsOutput->setAPI( GraphicsOutput::QPAINTER ) ) return false;
|
|
||||||
|
|
||||||
setCentralWidget( graphicsOutput );
|
|
||||||
|
|
||||||
QTimer *timer = new QTimer( this );
|
|
||||||
connect( timer, SIGNAL( timeout() ), graphicsOutput, SLOT( render() ) );
|
|
||||||
timer->start( 15 ); // set to 0 for idle time processing
|
|
||||||
// 1000 / 60 = 60 fps, but only results to 40 fps in reality.
|
|
||||||
// possible workaround: call timer more often and return or wait if too early
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::closeEvent( QCloseEvent * )
|
|
||||||
{
|
|
||||||
saveSettings();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool MainWnd::selectLanguage()
|
|
||||||
{
|
|
||||||
QString file = QFileDialog::getOpenFileName(
|
|
||||||
this,
|
|
||||||
tr( "Select language" ),
|
|
||||||
"lang",
|
|
||||||
tr( "Language files (*.qm)" ) );
|
|
||||||
|
|
||||||
if( file.isNull() ) return false;
|
|
||||||
|
|
||||||
languageFile = file;
|
|
||||||
|
|
||||||
bool ret = loadTranslation();
|
|
||||||
ret &= enableTranslation( true );
|
|
||||||
|
|
||||||
if( ret == false ) {
|
|
||||||
QMessageBox::critical( this, tr( "Error!" ), tr( "Language file can not be loaded!" ) );
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool MainWnd::loadTranslation()
|
|
||||||
{
|
|
||||||
settings->setValue( "App/language_file", languageFile );
|
|
||||||
if( !languageFile.endsWith( tr( ".qm" ), Qt::CaseInsensitive ) ) return false;
|
|
||||||
QString file = languageFile;
|
|
||||||
|
|
||||||
// remove current translation
|
|
||||||
enableTranslation( false );
|
|
||||||
if( *translator != 0 ) {
|
|
||||||
delete *translator;
|
|
||||||
*translator = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
file.chop( 3 ); // remove file extension ".qm"
|
|
||||||
|
|
||||||
// load new translation
|
|
||||||
*translator = new QTranslator();
|
|
||||||
bool ret = (*translator)->load( file );
|
|
||||||
enableTranslationAct->setEnabled( ret );
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool MainWnd::enableTranslation( bool enable )
|
|
||||||
{
|
|
||||||
if( enable ) {
|
|
||||||
if( *translator != 0 ) {
|
|
||||||
qApp->installTranslator( *translator );
|
|
||||||
enableTranslationAct->setChecked( true );
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if( *translator != 0 ) {
|
|
||||||
qApp->removeTranslator( *translator );
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// apply translation
|
|
||||||
// the user might have to restart the application to apply changes completely
|
|
||||||
QByteArray windowState = saveState();
|
|
||||||
createDockWidgets();
|
|
||||||
createActions();
|
|
||||||
createMenus();
|
|
||||||
restoreState( windowState );
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::showAbout()
|
|
||||||
{
|
|
||||||
QString info( "VisualBoyAdvance-M\n" );
|
|
||||||
info += tr( "Version" ) + " " + VERSION_STR + "\n";
|
|
||||||
|
|
||||||
info += tr( "Compile date:" ) + " " + __DATE__ + "\n";
|
|
||||||
|
|
||||||
// translators may use this string to give informations about the language file
|
|
||||||
info += "\n" + tr ( "No language file loaded." ) + "\n";
|
|
||||||
|
|
||||||
info += "\n" + tr ( "This program is licensed under terms of the GNU General Public License." );
|
|
||||||
|
|
||||||
QMessageBox::about( this, tr( "About VBA-M" ), info );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::showOpenROM()
|
|
||||||
{
|
|
||||||
QString file = QFileDialog::getOpenFileName(
|
|
||||||
this,
|
|
||||||
tr( "Select ROM" ),
|
|
||||||
"",
|
|
||||||
tr( "All ROMs (*.dmg *.sgb *.cgb *.agb *.gb *.gbc *.gba *.bin *.zip *.gz *.7z *.jma);;Game Boy ROMs (*.dmg *.gb);;Super Game Boy ROMs (*.sgb);;Game Boy Color ROMs (*.cgb *.gbc);;Game Boy Advance ROMs (*.agb *.gba);;Compressed ROMs (*.zip *.gz *.7z *.jma);;All Files (*.* *)" ) );
|
|
||||||
|
|
||||||
if( file.isNull() ) return;
|
|
||||||
|
|
||||||
emuManager->setROM( file );
|
|
||||||
if( !emuManager->loadROM() ) {
|
|
||||||
QMessageBox::critical( this, tr( "Error!" ), tr( "Can not load ROM!" ) );
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: start emulation
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::showMainOptions()
|
|
||||||
{
|
|
||||||
ConfigDialog dialog;
|
|
||||||
dialog.exec();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void MainWnd::showAboutOpenGL()
|
|
||||||
{
|
|
||||||
QString info;
|
|
||||||
if( QGLFormat::hasOpenGL() ) {
|
|
||||||
QGLFormat::OpenGLVersionFlags flags = QGLFormat::openGLVersionFlags();
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_2_1 ) {
|
|
||||||
info = tr( "OpenGL version 2.1 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_2_0 ) {
|
|
||||||
info = tr( "OpenGL version 2.0 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_1_5 ) {
|
|
||||||
info = tr( "OpenGL version 1.5 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_1_4 ) {
|
|
||||||
info = tr( "OpenGL version 1.4 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_1_3 ) {
|
|
||||||
info = tr( "OpenGL version 1.3 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_1_2 ) {
|
|
||||||
info = tr( "OpenGL version 1.2 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_1_1 ) {
|
|
||||||
info = tr( "OpenGL version 1.1 is present." );
|
|
||||||
} else
|
|
||||||
if( flags & QGLFormat::OpenGL_Version_None ) {
|
|
||||||
info = tr( "OpenGL is NOT available!" );
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
info = tr( "OpenGL is NOT available!" );
|
|
||||||
}
|
|
||||||
|
|
||||||
QMessageBox *test = new QMessageBox( QMessageBox::NoIcon, tr( "About OpenGL" ), info, QMessageBox::NoButton, this );
|
|
||||||
test->setWindowIcon( QIcon( ":/resources/gl.png" ) );
|
|
||||||
test->show();
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef MAINWND_H
|
|
||||||
#define MAINWND_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
#include "EmuManager.h"
|
|
||||||
#include "GraphicsOutput.h"
|
|
||||||
|
|
||||||
class MainWnd : public QMainWindow
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
MainWnd( QTranslator **trans, QSettings *settings, QWidget *parent = 0 );
|
|
||||||
~MainWnd();
|
|
||||||
|
|
||||||
public slots:
|
|
||||||
void closeEvent( QCloseEvent * );
|
|
||||||
|
|
||||||
private:
|
|
||||||
void loadSettings();
|
|
||||||
void saveSettings();
|
|
||||||
bool loadTranslation();
|
|
||||||
void createActions();
|
|
||||||
void createMenus();
|
|
||||||
void createDockWidgets();
|
|
||||||
bool createDisplay();
|
|
||||||
|
|
||||||
QTranslator **translator;
|
|
||||||
QString languageFile;
|
|
||||||
QSettings *settings;
|
|
||||||
QMenu *fileMenu;
|
|
||||||
QMenu *settingsMenu;
|
|
||||||
QAction *enableTranslationAct;
|
|
||||||
QMenu *toolsMenu;
|
|
||||||
QMenu *helpMenu;
|
|
||||||
QDockWidget *dockWidget_cheats;
|
|
||||||
EmuManager *emuManager;
|
|
||||||
GraphicsOutput *graphicsOutput;
|
|
||||||
|
|
||||||
private slots:
|
|
||||||
bool selectLanguage();
|
|
||||||
bool enableTranslation( bool enable );
|
|
||||||
void showAbout();
|
|
||||||
void showAboutOpenGL();
|
|
||||||
void showOpenROM();
|
|
||||||
void showMainOptions();
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // #ifndef MAINWND_H
|
|
|
@ -1,102 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "configdialog.h"
|
|
||||||
|
|
||||||
#include "MainOptions.h"
|
|
||||||
|
|
||||||
ConfigDialog::ConfigDialog()
|
|
||||||
{
|
|
||||||
// close button
|
|
||||||
QPushButton *closeButton = new QPushButton( tr( "Close" ) );
|
|
||||||
closeButton->setMaximumSize( closeButton->sizeHint() );
|
|
||||||
connect( closeButton, SIGNAL( clicked() ), this, SLOT( close() ) );
|
|
||||||
|
|
||||||
// settings
|
|
||||||
pagesWidget = new QStackedWidget;
|
|
||||||
pagesWidget->addWidget( new VideoOptionsPage( pagesWidget ) );
|
|
||||||
pagesWidget->addWidget( new SoundOptionsPage( pagesWidget ) );
|
|
||||||
pagesWidget->addWidget( new InputOptionsPage( pagesWidget ) );
|
|
||||||
pagesWidget->addWidget( new DirecOptionsPage( pagesWidget ) );
|
|
||||||
|
|
||||||
// item box
|
|
||||||
contentsWidget = new QListWidget;
|
|
||||||
contentsWidget->setViewMode( QListView::IconMode );
|
|
||||||
contentsWidget->setIconSize( QSize( 64, 64 ) );
|
|
||||||
contentsWidget->setUniformItemSizes( true ); // enable optimizations
|
|
||||||
contentsWidget->setMovement( QListView::Static );
|
|
||||||
contentsWidget->setResizeMode( QListView::Adjust );
|
|
||||||
contentsWidget->setFlow( QListView::TopToBottom );
|
|
||||||
contentsWidget->setSpacing( 8 );
|
|
||||||
createIcons();
|
|
||||||
contentsWidget->setCurrentRow( 0 );
|
|
||||||
// set optimal width
|
|
||||||
int width = contentsWidget->sizeHintForColumn( 0 ) + 16; // not 100% accurate yet!
|
|
||||||
contentsWidget->setMinimumWidth( width );
|
|
||||||
contentsWidget->setMaximumWidth( width );
|
|
||||||
|
|
||||||
// set up layout
|
|
||||||
QVBoxLayout *verticalLayout = new QVBoxLayout;
|
|
||||||
verticalLayout->addWidget( pagesWidget );
|
|
||||||
verticalLayout->addWidget( closeButton, 0, Qt::AlignRight );
|
|
||||||
|
|
||||||
QHBoxLayout *horizontalLayout = new QHBoxLayout( this );
|
|
||||||
horizontalLayout->addWidget( contentsWidget );
|
|
||||||
horizontalLayout->addLayout( verticalLayout );
|
|
||||||
|
|
||||||
setWindowTitle(tr("Options"));
|
|
||||||
setWindowIcon( QIcon( ":/resources/settings.png" ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
void ConfigDialog::createIcons()
|
|
||||||
{
|
|
||||||
QListWidgetItem *VideoButton = new QListWidgetItem(contentsWidget); // automatically inserts item into parent
|
|
||||||
VideoButton->setIcon(QIcon(":/resources/video.png"));
|
|
||||||
VideoButton->setText(tr("Video"));
|
|
||||||
VideoButton->setTextAlignment(Qt::AlignHCenter);
|
|
||||||
VideoButton->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
|
|
||||||
|
|
||||||
QListWidgetItem *SoundButton = new QListWidgetItem(contentsWidget);
|
|
||||||
SoundButton->setIcon(QIcon(":/resources/sound.png"));
|
|
||||||
SoundButton->setText(tr("Sound"));
|
|
||||||
SoundButton->setTextAlignment(Qt::AlignHCenter);
|
|
||||||
SoundButton->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
|
|
||||||
|
|
||||||
QListWidgetItem *InputButton = new QListWidgetItem(contentsWidget);
|
|
||||||
InputButton->setIcon(QIcon(":/resources/input.png"));
|
|
||||||
InputButton->setText(tr("Input"));
|
|
||||||
InputButton->setTextAlignment(Qt::AlignHCenter);
|
|
||||||
InputButton->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
|
|
||||||
|
|
||||||
QListWidgetItem *DirecButton = new QListWidgetItem(contentsWidget);
|
|
||||||
DirecButton->setIcon(QIcon(":/resources/folder-orange.png"));
|
|
||||||
DirecButton->setText(tr("Directory"));
|
|
||||||
DirecButton->setTextAlignment(Qt::AlignHCenter);
|
|
||||||
DirecButton->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
|
|
||||||
|
|
||||||
connect(contentsWidget,
|
|
||||||
SIGNAL(currentItemChanged(QListWidgetItem *, QListWidgetItem *)),
|
|
||||||
this, SLOT(changePage(QListWidgetItem *, QListWidgetItem*)));
|
|
||||||
}
|
|
||||||
|
|
||||||
void ConfigDialog::changePage(QListWidgetItem *current, QListWidgetItem *previous)
|
|
||||||
{
|
|
||||||
if (!current)
|
|
||||||
current = previous;
|
|
||||||
pagesWidget->setCurrentIndex(contentsWidget->row(current));
|
|
||||||
}
|
|
|
@ -1,41 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef CONFIGDIALOG_H
|
|
||||||
#define CONFIGDIALOG_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
class ConfigDialog : public QDialog
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
ConfigDialog();
|
|
||||||
|
|
||||||
public slots:
|
|
||||||
void changePage( QListWidgetItem *current, QListWidgetItem *previous );
|
|
||||||
|
|
||||||
private:
|
|
||||||
void createIcons();
|
|
||||||
|
|
||||||
QListWidget *contentsWidget;
|
|
||||||
QStackedWidget *pagesWidget;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
175
src/qt/emu.cpp
|
@ -1,175 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
// This file adds all the code required by System.h
|
|
||||||
|
|
||||||
|
|
||||||
#include "emu.h"
|
|
||||||
|
|
||||||
|
|
||||||
int emulating = 0;
|
|
||||||
int systemFrameSkip = 0;
|
|
||||||
int systemSaveUpdateCounter = SYSTEM_SAVE_NOT_UPDATED;
|
|
||||||
u32 systemColorMap32[0x10000];
|
|
||||||
u16 systemColorMap16[0x10000];
|
|
||||||
int systemRedShift = 0;
|
|
||||||
int systemBlueShift = 0;
|
|
||||||
int systemGreenShift = 0;
|
|
||||||
int systemColorDepth = 32;
|
|
||||||
int systemDebug = 0;
|
|
||||||
int systemVerbose = 0;
|
|
||||||
|
|
||||||
void (*dbgSignal)( int sig, int number ) = debuggerSignal;
|
|
||||||
void (*dbgOutput)( const char *s, u32 addr ) = debuggerOutput;
|
|
||||||
|
|
||||||
|
|
||||||
bool systemReadJoypads()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
u32 systemReadJoypad( int which )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void systemUpdateMotionSensor()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int systemGetSensorX()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int systemGetSensorY()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
u32 systemGetClock()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemMessage( int number, const char *defaultMsg, ... )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemScreenCapture( int captureNumber )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemDrawScreen()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemShowSpeed( int speed )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void system10Frames( int rate )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemFrame()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool systemPauseOnFrame()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void debuggerOutput( const char *s, u32 addr )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void debuggerSignal( int sig,int number )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void winlog( const char *msg, ... )
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void systemWriteDataToSoundBuffer()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
void systemSoundShutdown()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
void systemSoundPause()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
void systemSoundResume()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
void systemSoundReset()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
}
|
|
||||||
|
|
||||||
bool systemSoundInit()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool systemCanChangeSoundQuality()
|
|
||||||
{
|
|
||||||
// TODO: implement
|
|
||||||
return false;
|
|
||||||
}
|
|
70
src/qt/emu.h
|
@ -1,70 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef EMU_H
|
|
||||||
#define EMU_H
|
|
||||||
|
|
||||||
|
|
||||||
#include "../System.h"
|
|
||||||
|
|
||||||
|
|
||||||
// Global Variables
|
|
||||||
extern int emulating;
|
|
||||||
extern int systemFrameSkip;
|
|
||||||
extern int systemSaveUpdateCounter;
|
|
||||||
extern u32 systemColorMap32[0x10000];
|
|
||||||
extern u16 systemColorMap16[0x10000];
|
|
||||||
extern int systemRedShift;
|
|
||||||
extern int systemBlueShift;
|
|
||||||
extern int systemGreenShift;
|
|
||||||
extern int systemColorDepth;
|
|
||||||
extern int systemDebug;
|
|
||||||
extern int systemVerbose;
|
|
||||||
|
|
||||||
|
|
||||||
// Global Functions
|
|
||||||
bool systemReadJoypads();
|
|
||||||
u32 systemReadJoypad( int which );
|
|
||||||
void systemUpdateMotionSensor();
|
|
||||||
int systemGetSensorX();
|
|
||||||
int systemGetSensorY();
|
|
||||||
u32 systemGetClock();
|
|
||||||
|
|
||||||
void systemMessage( int number, const char *defaultMsg, ... );
|
|
||||||
void winlog( const char *msg, ... );
|
|
||||||
|
|
||||||
void debuggerSignal( int sig,int number );
|
|
||||||
void debuggerOutput( const char *s, u32 addr );
|
|
||||||
|
|
||||||
bool systemPauseOnFrame();
|
|
||||||
void systemScreenCapture( int captureNumber );
|
|
||||||
void systemDrawScreen();
|
|
||||||
void systemShowSpeed( int speed );
|
|
||||||
void system10Frames( int rate );
|
|
||||||
void systemFrame();
|
|
||||||
|
|
||||||
void systemWriteDataToSoundBuffer();
|
|
||||||
void systemSoundShutdown();
|
|
||||||
void systemSoundPause();
|
|
||||||
void systemSoundResume();
|
|
||||||
void systemSoundReset();
|
|
||||||
bool systemSoundInit();
|
|
||||||
bool systemCanChangeSoundQuality();
|
|
||||||
|
|
||||||
|
|
||||||
#endif // #ifndef EMU_H
|
|
|
@ -1,34 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#include "main.h"
|
|
||||||
|
|
||||||
#include "MainWnd.h"
|
|
||||||
|
|
||||||
int main( int argc, char *argv[] )
|
|
||||||
{
|
|
||||||
QApplication theApp( argc, argv );
|
|
||||||
// create/open ini file for settings
|
|
||||||
QSettings settings( "vba-m.ini", QSettings::IniFormat, &theApp );
|
|
||||||
QTranslator *translator = 0;
|
|
||||||
|
|
||||||
MainWnd *mainWnd = new MainWnd( &translator, &settings, 0 );
|
|
||||||
mainWnd->show();
|
|
||||||
|
|
||||||
return theApp.exec();
|
|
||||||
}
|
|
|
@ -1,24 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef MAIN_H
|
|
||||||
#define MAIN_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
#endif // #ifndef MAIN_H
|
|
|
@ -1,29 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef PRECOMPILE_H
|
|
||||||
#define PRECOMPILE_H
|
|
||||||
|
|
||||||
#if defined __cplusplus
|
|
||||||
// Add C++ includes here
|
|
||||||
#include <QtGui/QtGui>
|
|
||||||
#include <QtOpenGL/QtOpenGL>
|
|
||||||
#include <malloc.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // #ifndef PRECOMPILE_H
|
|
Before Width: | Height: | Size: 842 B |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 599 B |
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 750 B |
Before Width: | Height: | Size: 419 B |
Before Width: | Height: | Size: 451 B |
Before Width: | Height: | Size: 874 B |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 604 B |
Before Width: | Height: | Size: 2.8 KiB |
|
@ -1,24 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
#include "sidewidget_cheats.h"
|
|
||||||
|
|
||||||
SideWidget_Cheats::SideWidget_Cheats( QWidget *parent )
|
|
||||||
: QWidget( parent )
|
|
||||||
{
|
|
||||||
ui.setupUi( this );
|
|
||||||
}
|
|
|
@ -1,36 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
#ifndef SIDEWIDGET_CHEAT_H
|
|
||||||
#define SIDEWIDGET_CHEAT_H
|
|
||||||
|
|
||||||
#include "precompile.h"
|
|
||||||
|
|
||||||
#include "ui_sidewidget_cheats.h"
|
|
||||||
|
|
||||||
class SideWidget_Cheats : public QWidget
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
SideWidget_Cheats( QWidget *parent = 0 );
|
|
||||||
|
|
||||||
private:
|
|
||||||
Ui::sidewidget_cheats ui;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // #ifndef SIDEWIDGET_CHEAT_H
|
|
|
@ -1,47 +0,0 @@
|
||||||
<ui version="4.0" >
|
|
||||||
<class>sidewidget_cheats</class>
|
|
||||||
<widget class="QWidget" name="sidewidget_cheats" >
|
|
||||||
<property name="geometry" >
|
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>0</y>
|
|
||||||
<width>160</width>
|
|
||||||
<height>320</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize" >
|
|
||||||
<size>
|
|
||||||
<width>160</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="windowTitle" >
|
|
||||||
<string>Cheats</string>
|
|
||||||
</property>
|
|
||||||
<layout class="QVBoxLayout" >
|
|
||||||
<item>
|
|
||||||
<layout class="QHBoxLayout" >
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="enableCheatsCheckbox" >
|
|
||||||
<property name="text" >
|
|
||||||
<string>Enable</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QPushButton" name="searchForCheatsButton" >
|
|
||||||
<property name="text" >
|
|
||||||
<string>Search...</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QListWidget" name="cheatListWidget" />
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
<resources/>
|
|
||||||
<connections/>
|
|
||||||
</ui>
|
|
|
@ -1,15 +0,0 @@
|
||||||
<!DOCTYPE RCC><RCC version="1.0">
|
|
||||||
<qresource>
|
|
||||||
<file>resources/video.png</file>
|
|
||||||
<file>resources/input.png</file>
|
|
||||||
<file>resources/sound.png</file>
|
|
||||||
<file>resources/folder-orange.png</file>
|
|
||||||
<file>resources/exit.png</file>
|
|
||||||
<file>resources/locale.png</file>
|
|
||||||
<file>resources/settings.png</file>
|
|
||||||
<file>resources/open.png</file>
|
|
||||||
<file>resources/qt_logo.png</file>
|
|
||||||
<file>resources/gl.png</file>
|
|
||||||
<file>resources/vba-m.png</file>
|
|
||||||
</qresource>
|
|
||||||
</RCC>
|
|
|
@ -1,32 +0,0 @@
|
||||||
#include "version.h"
|
|
||||||
|
|
||||||
IDI_ICON1 ICON DISCARDABLE "../../src/win32/res/VBA.ico"
|
|
||||||
|
|
||||||
|
|
||||||
#include <WinVer.h>
|
|
||||||
|
|
||||||
1 VERSIONINFO /* Must have 1 as ID */
|
|
||||||
FILEVERSION VERSION
|
|
||||||
PRODUCTVERSION VERSION
|
|
||||||
FILEFLAGSMASK 0x0L /* None set */
|
|
||||||
FILEFLAGS 0x0L
|
|
||||||
FILEOS VOS_NT
|
|
||||||
FILETYPE VFT_APP
|
|
||||||
FILESUBTYPE 0x0L
|
|
||||||
BEGIN
|
|
||||||
BLOCK "StringFileInfo"
|
|
||||||
BEGIN
|
|
||||||
BLOCK "040904B0" /* U.S. English & Unicode */
|
|
||||||
BEGIN
|
|
||||||
VALUE "Comments", "Qt build"
|
|
||||||
VALUE "CompanyName", "VBA-M development team"
|
|
||||||
VALUE "FileDescription", "A Nintendo Handheld Console Emulator"
|
|
||||||
VALUE "FileVersion", VERSION_STR
|
|
||||||
VALUE "InternalName", "vba-m"
|
|
||||||
VALUE "LegalCopyright", "Copyright (C) 2008 VBA-M development team"
|
|
||||||
VALUE "OriginalFilename", "VisualBoyAdvance.exe"
|
|
||||||
VALUE "ProductName", "VisualBoyAdvance-M"
|
|
||||||
VALUE "ProductVersion", VERSION_STR
|
|
||||||
END
|
|
||||||
END
|
|
||||||
END
|
|
|
@ -1,26 +0,0 @@
|
||||||
// VBA-M, A Nintendo Handheld Console Emulator
|
|
||||||
// Copyright (C) 2008 VBA-M development team
|
|
||||||
//
|
|
||||||
// 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, 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
#ifndef VERSION_H
|
|
||||||
#define VERSION_H
|
|
||||||
|
|
||||||
// Windows VERSIONINFO compatible
|
|
||||||
#define VERSION 0,0,0,0
|
|
||||||
|
|
||||||
#define VERSION_STR "SVN"
|
|
||||||
|
|
||||||
#endif
|
|