OSDN Git Service

[General][Qt] Add NEC HE's PC Engine.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Tue, 27 Jan 2015 13:12:25 +0000 (22:12 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Tue, 27 Jan 2015 13:12:25 +0000 (22:12 +0900)
source/src/qt/gui/menu_cart.cpp
source/src/qt/gui/menu_control.cpp
source/src/qt/pcengine/CMakeLists.txt [new file with mode: 0644]
source/src/qt/pcengine/MainWindow.cpp [new file with mode: 0644]
source/src/qt/pcengine/menuclasses.h [new file with mode: 0644]
source/src/vm/pcengine/CMakeLists.txt [new file with mode: 0644]
source/src/vm/pcengine/pce.h

index f94c473..5fb280b 100644 (file)
@@ -62,7 +62,7 @@ void Ui_MainWindow::open_cart_dialog(int drive)
   desc2 = desc1 + " (" + ext.toLower() + ")";
   desc1 = desc1 + " (" + ext.toUpper() + ")";
   
-  if(config.initial_tape_dir != NULL) {
+  if(config.initial_cart_dir != NULL) {
      dirname = QString::fromUtf8(config.initial_cart_dir);             
   } else {
     char app[PATH_MAX];
index 2f740d3..b457241 100644 (file)
@@ -189,8 +189,9 @@ void Ui_MainWindow::ConfigControlMenu(void)
   actionLoad_State->setObjectName(QString::fromUtf8("actionLoad_State"));
   connect(actionLoad_State, SIGNAL(triggered()),
                   this, SLOT(OnLoadState())); // OK?  
-#endif
+#endif // USE_STATE
    
+#ifdef USE_DEBUGGER
   actionDebugger_1 = new Action_Control(this);
   actionDebugger_1->setObjectName(QString::fromUtf8("actionDebugger_1"));
   actionDebugger_1->binds->setValue1(0);
@@ -214,6 +215,7 @@ void Ui_MainWindow::ConfigControlMenu(void)
   connect(actionClose_Debuggers, SIGNAL(triggered()),
                   this, SLOT(OnCloseDebugger())); // OK?  
 
+#endif // USE_DEBUGGER
   ConfigCpuSpeed();
 }
 
@@ -238,7 +240,9 @@ void Ui_MainWindow::connectActions_ControlMenu(void)
         menuControl->addAction(menuCopy_Paste->menuAction());
         menuControl->addSeparator();
         menuControl->addAction(menuState->menuAction());
+#ifdef USE_DEBUGGER
         menuControl->addAction(menuDebugger->menuAction());
+#endif
         menuControl->addSeparator();
         menuControl->addAction(actionExit_Emulator);
 #ifdef USE_STATE
@@ -253,11 +257,13 @@ void Ui_MainWindow::connectActions_ControlMenu(void)
         menuCpu_Speed->addAction(actionSpeed_x4);
         menuCpu_Speed->addAction(actionSpeed_x8);
         menuCpu_Speed->addAction(actionSpeed_x16);
+#ifdef USE_DEBUGGER
         menuDebugger->addAction(actionDebugger_1);
         menuDebugger->addAction(actionDebugger_2);
         menuDebugger->addAction(actionDebugger_3);
         menuDebugger->addSeparator();
         menuDebugger->addAction(actionClose_Debuggers);
+#endif
 }
 
 void Ui_MainWindow::createContextMenu(void)
@@ -269,7 +275,9 @@ void Ui_MainWindow::createContextMenu(void)
         addAction(menuCpu_Speed->menuAction());
         addAction(menuCopy_Paste->menuAction());
         addAction(menuState->menuAction());
+#ifdef USE_DEBUGGER
         addAction(menuDebugger->menuAction());
+#endif
         addAction(actionExit_Emulator);
 }
 
@@ -297,17 +305,19 @@ void Ui_MainWindow::retranslateControlMenu(const char *SpecialResetTitle,  bool
   actionLoad_State->setText(QApplication::translate("MainWindow", "Load State", 0, QApplication::UnicodeUTF8));
 #endif
    
+#ifdef USE_DEBUGGER
   actionDebugger_1->setText(QApplication::translate("MainWindow", "Debugger 1", 0, QApplication::UnicodeUTF8));
   actionDebugger_2->setText(QApplication::translate("MainWindow", "Debugger 2", 0, QApplication::UnicodeUTF8));
   actionDebugger_3->setText(QApplication::translate("MainWindow", "Debugger 3", 0, QApplication::UnicodeUTF8));
   actionClose_Debuggers->setText(QApplication::translate("MainWindow", "Close Debuggers", 0, QApplication::UnicodeUTF8));
-
+  menuDebugger->setTitle(QApplication::translate("MainWindow", "Debugger", 0, QApplication::UnicodeUTF8));
+#endif   
   menuControl->setTitle(QApplication::translate("MainWindow", "control", 0, QApplication::UnicodeUTF8));
   menuState->setTitle(QApplication::translate("MainWindow", "State", 0, QApplication::UnicodeUTF8));
 
   menuCopy_Paste->setTitle(QApplication::translate("MainWindow", "Copy/Paste", 0, QApplication::UnicodeUTF8));
   menuCpu_Speed->setTitle(QApplication::translate("MainWindow", "Cpu Speed", 0, QApplication::UnicodeUTF8));
-  menuDebugger->setTitle(QApplication::translate("MainWindow", "Debugger", 0, QApplication::UnicodeUTF8));
+
 }
 
 QT_END_NAMESPACE
diff --git a/source/src/qt/pcengine/CMakeLists.txt b/source/src/qt/pcengine/CMakeLists.txt
new file mode 100644 (file)
index 0000000..312894b
--- /dev/null
@@ -0,0 +1,13 @@
+message("* qt/pcengine")
+
+set(s_qt_pce_headers
+         menuclasses.h
+)
+QT4_WRAP_CPP(s_qt_pce_headers_MOC ${s_qt_pce_headers})
+
+add_library(qt_pce
+         MainWindow.cpp
+         ${s_qt_pce_headers_MOC}
+)
+
+
diff --git a/source/src/qt/pcengine/MainWindow.cpp b/source/src/qt/pcengine/MainWindow.cpp
new file mode 100644 (file)
index 0000000..95a0845
--- /dev/null
@@ -0,0 +1,59 @@
+/*
+ * Common Source code Project:
+ * Ui->Qt->MainWindow for PC Engine .
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ *   License : GPLv2
+ *   History :
+ * Jan 14, 2015 : Initial, many of constructors were moved to qt/gui/menu_main.cpp.
+ */
+
+#include <QtCore/QVariant>
+#include <QtGui>
+#include "menuclasses.h"
+#include "emu.h"
+#include "qt_main.h"
+
+//QT_BEGIN_NAMESPACE
+       
+
+void META_MainWindow::setupUI_Emu(void)
+{
+   int i;
+}
+
+void META_MainWindow::retranslateUi(void)
+{
+  retranslateControlMenu("",  false);
+  retranslateCartMenu(0, 1);
+  retranslateSoundMenu();
+  retranslateScreenMenu();
+   
+  this->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
+  
+  
+  actionAbout->setText(QApplication::translate("MainWindow", "About...", 0, QApplication::UnicodeUTF8));
+  
+
+  menuEmulator->setTitle(QApplication::translate("MainWindow", "Emulator", 0, QApplication::UnicodeUTF8));
+  menuMachine->setTitle(QApplication::translate("MainWindow", "Machine", 0, QApplication::UnicodeUTF8));
+  
+  menuHELP->setTitle(QApplication::translate("MainWindow", "HELP", 0, QApplication::UnicodeUTF8));
+} // retranslateUi
+
+
+
+META_MainWindow::META_MainWindow(QWidget *parent) : Ui_MainWindow(parent)
+{
+   setupUI_Emu();
+   retranslateUi();
+}
+
+
+META_MainWindow::~META_MainWindow()
+{
+}
+
+//QT_END_NAMESPACE
+
+
+
diff --git a/source/src/qt/pcengine/menuclasses.h b/source/src/qt/pcengine/menuclasses.h
new file mode 100644 (file)
index 0000000..e9751d1
--- /dev/null
@@ -0,0 +1,27 @@
+
+#ifndef _CSP_QT_MENUCLASSES_H
+#define _CSP_QT_MENUCLASSES_H
+
+#include "mainwidget.h"
+// This extends class CSP_MainWindow as Ui_MainWindow.
+// You may use this as 
+QT_BEGIN_NAMESPACE
+
+
+class Ui_MainWindow;
+//  wrote of X1 Specific menu.
+class META_MainWindow : public Ui_MainWindow {
+  Q_OBJECT
+ protected:
+  void setupUI_Emu(void);
+  void retranslateUi(void);
+ public:
+  META_MainWindow(QWidget *parent = 0);
+  ~META_MainWindow();
+public slots:
+
+};
+
+QT_END_NAMESPACE
+
+#endif // END
diff --git a/source/src/vm/pcengine/CMakeLists.txt b/source/src/vm/pcengine/CMakeLists.txt
new file mode 100644 (file)
index 0000000..dcb6904
--- /dev/null
@@ -0,0 +1,8 @@
+cmake_minimum_required (VERSION 2.8)
+
+message("* vm/pce")
+
+add_library(vm_pce
+           pce.cpp
+          pcengine.cpp
+)
\ No newline at end of file
index db6066f..a5adc63 100644 (file)
 #define VDC_WPF                684     /* width of a line in frame including blanking areas */
 #define VDC_LPF                262     /* number of lines in a single frame */
 
+#if defined(_USE_QT) || defined(_USE_AGAR)
+inline int32 max(int32 a, int32 b) 
+{
+       if(a > b) return a;
+       return b;
+}
+
+inline int32 min(int32 a, int32 b) 
+{
+       if(a < b) return a;
+       return b;
+}
+#endif
+
 class HUC6280;
 
 class PCE : public DEVICE