OSDN Git Service

[VM] Add PC-8001/mk2/8801/mk2.
[csp-qt/common_source_project-fm7.git] / source / build-cmake / cmake / config_pc8801.cmake
1 cmake_minimum_required (VERSION 2.8)
2 cmake_policy(SET CMP0011 NEW)
3
4 set(VM_NAME pc8801)
5 set(USE_FMGEN ON)
6 set(USE_DEBUGGER ON)
7 set(WITH_JOYSTICK ON)
8 set(WITH_MOUSE ON)
9
10 set(VMFILES
11                 event.cpp
12                 io.cpp
13                 memory.cpp
14 )
15 set(VMFILES_LIB
16                 noise.cpp
17                 beep.cpp
18                 datarec.cpp
19                 i8251.cpp
20                 i8255.cpp
21   
22                 pc80s31k.cpp
23                 pcm1bit.cpp
24                 upd1990a.cpp
25                 upd765a.cpp
26                 z80ctc.cpp
27                 z80dma.cpp
28                 z80pio.cpp
29                 z80sio.cpp
30                 disk.cpp
31                 
32                 prnfile.cpp
33 )
34 set(FLAG_USE_Z80 ON)
35
36 set(BUILD_SHARED_LIBS OFF)
37
38 set(BUILD_PC8001 OFF CACHE BOOL "Build for PC8001")
39 set(BUILD_PC8001MK2 OFF CACHE BOOL "Build for PC8001 mk2")
40 set(BUILD_PC8001SR OFF CACHE BOOL "Build for PC8001SR")
41 set(BUILD_PC8801 OFF CACHE BOOL "Build with PC8801")
42 set(BUILD_PC8801MK2 OFF CACHE BOOL "Build with PC8801 mk2")
43 set(BUILD_PC8801MA OFF CACHE BOOL "Build with PC8801MA")
44
45 set(USE_PCG  ON CACHE BOOL "Use PCG8100")
46 set(PC88_EXTRAM_PAGES  "4" CACHE STRING "Set banks of EXTRAM of PC8801, bank = 32Kbytes")
47 set(USE_OPENMP ON CACHE BOOL "Build using OpenMP")
48 set(USE_OPENGL ON CACHE BOOL "Build using OpenGL")
49 set(WITH_DEBUGGER ON CACHE BOOL "Build with Debugger.")
50
51 include(detect_target_cpu)
52 #include(windows-mingw-cross)
53 # set entry
54 set(CMAKE_SYSTEM_PROCESSOR ${ARCHITECTURE} CACHE STRING "Set processor to build.")
55
56 add_definitions(-D_CONFIGURE_WITH_CMAKE)
57
58 if(BUILD_PC8001)
59   set(EXEC_TARGET emupc8001)
60   add_definitions(-D_PC8001)
61   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8001.qrc)
62   
63 elseif(BUILD_PC8001MK2)
64   set(EXEC_TARGET emupc8001mk2)
65   add_definitions(-D_PC8001MK2)
66   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8001mk2.qrc)
67   set(VMFILES_LIB ${VMFILES_LIB}
68                 ym2203.cpp
69   )      
70   
71 elseif(BUILD_PC8001SR)
72   set(EXEC_TARGET emupc8001sr)
73   add_definitions(-D_PC8001SR)
74   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8001mk2sr.qrc)
75   set(VMFILES_LIB ${VMFILES_LIB}
76                 ym2203.cpp
77   )      
78   
79 elseif(BUILD_PC8801)
80   set(EXEC_TARGET emupc8801)
81   add_definitions(-D_PC8801)
82   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8801.qrc)
83
84 elseif(BUILD_PC8801MK2)
85   set(EXEC_TARGET emupc8801mk2)
86   add_definitions(-D_PC8801MK2)
87   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8801mk2.qrc)
88   set(VMFILES_LIB ${VMFILES_LIB}
89                 ym2203.cpp
90   )      
91   
92 elseif(BUILD_PC8801MA)
93   set(EXEC_TARGET emupc8801ma)
94   add_definitions(-D_PC8801MA)
95   set(RESOURCE ${CMAKE_SOURCE_DIR}/../../src/qt/common/qrc/pc8801ma.qrc)
96   set(VMFILES_LIB ${VMFILES_LIB}
97                 ym2203.cpp
98         ym2151.cpp
99   )      
100   set(VMFILES ${VMFILES}
101             scsi_dev.cpp scsi_cdrom.cpp scsi_host.cpp
102   )      
103 endif()
104
105 add_definitions(-DPC88_EXRAM_BANKS=${PC88_EXTRAM_PAGES})
106
107 if(USE_PCG)
108   set(VMFILES_LIB ${VMFILES_LIB}
109             i8253.cpp
110       )      
111   add_definitions(-DSUPPORT_PC88_PCG8100)
112 endif()
113
114 include(config_commonsource)