--- /dev/null
+# Build Common Sourcecode Project, Qt.
+# (C) 2014 K.Ohta <whatisthis.sowhat@gmail.com>
+# This is part of XM7/SDL, but license is apache 2.2,
+# this part was written only me.
+
+cmake_minimum_required (VERSION 2.6)
+cmake_policy(SET CMP0011 NEW)
+
+message("")
+message("** Start of configure CommonSourceProject,X1, Qt **")
+message("")
+
+set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/../cmake")
+
+
+project (emumz1500)
+
+set(LOCAL_LIBS vm_mz700
+ vm_vm
+ common_common
+ vm_fmgen
+# common_scaler-generic
+ qt_mz700
+ qt_gui
+ )
+
+set(VMFILES_BASE
+ z80.cpp
+ beep.cpp
+ hd46505.cpp
+ i8255.cpp
+ i8253.cpp
+ pcm1bit.cpp
+
+ datarec.cpp
+
+ and.cpp
+
+ event.cpp
+ io.cpp
+ memory.cpp
+)
+
+set(VMFILES_MZ800 ${VMFILES_BASE}
+ mb8877.cpp
+ disk.cpp
+
+ not.cpp
+ sn76489an.cpp
+ z80pio.cpp
+ z80sio.cpp
+)
+
+set(VMFILES_MZ1500 ${VMFILES_MZ800}
+ ym2203.cpp
+)
+
+
+
+set(BUILD_MZ800 OFF CACHE BOOL "Build EMU-MZ800")
+set(BUILD_MZ1500 ON CACHE BOOL "Build EMU-MZ1500")
+set(USE_CMT_SOUND OFF CACHE BOOL "Using sound with CMT")
+
+set(BUILD_SHARED_LIBS OFF)
+set(USE_OPENMP ON CACHE BOOL "Build using OpenMP")
+set(USE_OPENCL ON CACHE BOOL "Build using OpenCL")
+set(USE_OPENGL ON CACHE BOOL "Build using OpenGL")
+set(XM7_VERSION 3)
+#set(WITH_DEBUGGER ON CACHE BOOL "Build witnDebugger.")
+
+include(detect_target_cpu)
+#include(windows-mingw-cross)
+# set entry
+set(CMAKE_SYSTEM_PROCESSOR ${ARCHITECTURE} CACHE STRING "Set processor to build.")
+
+
+if(BUILD_MZ1500)
+
+set(VMFILES ${VMFILES_MZ1500})
+add_definitions(-D_MZ1500)
+set(EXEC_TARGET emumz1500)
+
+elseif(BUILD_MZ800)
+
+set(VMFILES ${VMFILES_MZ800})
+add_definitions(-D_MZ800)
+set(EXEC_TARGET emumz800)
+
+else()
+
+set(VMFILES ${VMFILES_BASE})
+add_definitions(-D_MZ700)
+set(EXEC_TARGET emumz700)
+
+endif()
+
+if(USE_CMT_SOUND)
+add_definitions(-DDATAREC_SOUND)
+endif()
+
+
+#include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/vm)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/vm/mz700)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/vm/fmgen)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/qt/mz700)
+
+
+include(config_commonsource)
+
+
+
+if(USE_SSE2)
+# include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/vm/fm7/vram/sse2)
+# add_subdirectory(../../src/vm/fm7/vram/sse2 vm/fm7/vram/sse2)
+endif()
+
+
+if(USE_SSE2)
+# include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../src/qt/common/scaler/sse2)
+endif()
+
+add_subdirectory(../../src/vm/mz700 vm/mz700)
+add_subdirectory(../../src/vm/fmgen vm/fmgen)
+add_subdirectory(../../src/qt/mz700 qt/mz700)
+
+
+add_subdirectory(../../src/qt/common qt/common)
sn76489an.cpp
z80pio.cpp
z80sio.cpp
- quickdisk.cpp
)
set(VMFILES_MZ1500 ${VMFILES_MZ800}
- ym2608.cpp
+ ym2203.cpp
)
\r
bool check_file_extension(_TCHAR* file_path, _TCHAR* ext)\r
{\r
-#if defined(_USE_AGAR) || defined(_USE_QT)\r
+#if defined(_USE_AGAR)\r
int nam_len = strlen(file_path);\r
int ext_len = strlen(ext);\r
\r
return (nam_len >= ext_len && strncmp(&file_path[nam_len - ext_len], ext, ext_len) == 0);\r
+#elif defined(_USE_QT)\r
+ QString s_fpath = file_path;\r
+ QString s_ext = ext;\r
+ bool f = false;\r
+ s_fpath = s_fpath.toUpper();\r
+ s_ext = s_ext.toUpper();\r
+ if(s_fpath.length() < s_ext.length()) return false;\r
+ s_fpath = s_fpath.right(s_ext.length());\r
+ if(s_fpath == s_ext) return true;\r
+ return false;\r
#else\r
int nam_len = _tcslen(file_path);\r
int ext_len = _tcslen(ext);\r
#if defined(USE_QD1) || defined(USE_QD2)
void OnOpenQD(QWidget *parent, int drive)
{
- if(emu) open_quickdisk_dialog(AGWIDGET(hWindow), drive);
+// if(emu) open_quickdisk_dialog(AGWIDGET(hWindow), drive);
}
void OnCloseQD(int drive)
{
- if(emu) emu->close_quickdisk(drive);
+// if(emu) emu->close_quickdisk(drive);
}
void OnRecentQD(int drive, int menunum)
#ifdef USE_QD1
-void OnOpenQDSub(AG_Event *event)
+void OnOpenQDSub(void)
{
- AG_FileType *filetype = (AG_FileType *)AG_PTR(3);
+#if 0
+ AG_FileType *filetype = (AG_FileType *)AG_PTR(3);
char *path = AG_STRING(2);
int drv = AG_INT(1);
AG_FileDlg *my = (AG_FileDlg *)AG_SELF();
strcpy(config.initial_quickdisk_dir, path_shadow);
if(emu) emu->open_quickdisk(drv, path, 0);
}
+#endif
}
-void open_quickdisk_dialog(AG_Widget *hWnd, int drv)
+void open_quickdisk_dialog(int drv)
{
+#if 0
char path_shadow[AG_PATHNAME_MAX];
const char *ext = "*.mzt,*.q20,*qdf";
char *desc = _N("Quick Disk");
AG_FileDlgAddType(dlg, desc, ext, OnOpenQDSub, "%i", drv);
AG_WindowShow(win);
return;
+#endif
}
#endif
#endif
#if defined(USE_QD1) || defined(USE_QD2)
-void OnOpenQD(QWidget *parent, int drive);
-void OnCloseQD(int drive);
-void OnRecentQD(QWidget *parent, int drive, int menunum);
+//void OnOpenQD(QWidget *parent, int drive);
+//void OnCloseQD(int drive);
+//void OnRecentQD(QWidget *parent, int drive, int menunum);
#endif
#ifdef USE_TAPE
memset(ram, 0, sizeof(ram));\r
play_fio->Fread(ram + offs, size, 1);\r
file_size -= size;\r
-//#if defined(_MZ80K) || defined(_MZ700) || defined(_MZ1200) || defined(_MZ1500)\r
-#if 0\r
+#if defined(_MZ80K) || defined(_MZ700) || defined(_MZ1200) || defined(_MZ1500)\r
+//#if 0\r
// apply mz700win patch\r
if(header[0x40] == 'P' && header[0x41] == 'A' && header[0x42] == 'T' && header[0x43] == ':') {\r
int patch_ofs = 0x44;\r
int load_tap_image();\r
int load_mzt_image();\r
#if defined(_USE_AGAR) || defined(_USE_SDL) || defined(_USE_QT) \r
- unsigned int min(int *x, unsigned int y) {\r
+ unsigned int min(int x, unsigned int y) {\r
if((unsigned int)x < y) return (unsigned int)x;\r
return y;\r
}\r
- unsigned int max(int *x, unsigned int y) {\r
+ unsigned int max(int x, unsigned int y) {\r
if((unsigned int)x > y) return (unsigned int)x;\r
return y;\r
}\r
message("* vm/mz700")
+if(BUILD_MZ800)
+
add_library(vm_mz700
cmos.cpp
emm.cpp
memory.cpp
mz700.cpp
ramfile.cpp
-)
-
-if(BUILD_MZ800)
-add_library(vm_mz700
floppy.cpp
quickdisk.cpp
)
-endif()
-if(BUILD_MZ1500)
-if(not BUILD_MZ800)
+elseif(BUILD_MZ1500)
+
add_library(vm_mz700
+ cmos.cpp
+ emm.cpp
+ kanji.cpp
+ keyboard.cpp
+ memory.cpp
+ mz700.cpp
+ ramfile.cpp
floppy.cpp
quickdisk.cpp
ramfile.cpp
psg.cpp
)
-endif()
+
+else()
+
+add_library(vm_mz700
+ cmos.cpp
+ emm.cpp
+ kanji.cpp
+ keyboard.cpp
+ memory.cpp
+ mz700.cpp
+ ramfile.cpp
+)
+
+
endif()
}\r
}\r
\r
+void VM::write_protect_fd(int drv, bool flag)\r
+{\r
+ fdc->write_protect_fd(drv, flag);\r
+}\r
+\r
+bool VM::is_write_protect_fd(int drv)\r
+{\r
+ return fdc->is_write_protect_fd(drv);\r
+}\r
+\r
void VM::open_disk(int drv, _TCHAR* file_path, int offset)\r
{\r
fdc->open_disk(drv, file_path, offset);\r
void open_disk(int drv, _TCHAR* file_path, int offset);\r
void close_disk(int drv);\r
bool disk_inserted(int drv);\r
+ void write_protect_fd(int drv, bool flag);\r
+ bool is_write_protect_fd(int drv);\r
#endif\r
bool now_skip();\r
\r