OSDN Git Service

[DOC] .
[csp-qt/common_source_project-fm7.git] / README.md
1 ** Qt porting for Common Source Code Project **
2                                            Sep 09, 2016
3               K.Ohta <whatisthis.sowhat _at_ gmail.com>
4
5 --- If you can't read Japanese, [english writing is here](/README.en.md/).
6
7 0. About
8    This package is Qt5 porting of Common Source Code Project (CSP).
9    Building with GNU/Linux(64bit) and MinGW(32bit Windows).
10    
11 1. Background
12    Common Source Code Project (CSP) is good emulator writing.
13    But codes are specified to M$ Visual C.
14    I'm using GNU/Linux, and I starting to apply FM-7(or later).
15    So, I start to port to GNU/Linux and using Qt4.
16    
17    * Note: You can build with MinGW32 and Qt 5.5.1(for MinGW).
18
19    * TIPS: If emufoo.exe don't show screen drawing, set environment 
20            variable QT_OPENGL to software (i.e. Using Windows as VirtualBox's gueat OS).
21      
22 2. What you need at least:
23    a. Qt5 (neither Qt3 and Qt4) toolkit.
24    b. Some OpenGL implementation, maybe at leaset OpenGL v3.0 .
25    c. gcc / g++ (4.7 or later? ) or llvm clang / clang++ (3.5 or later?) toolchain.
26    d. SDL2 (not SDL1.x).
27    e. CMake 2.8 or later.
28
29 3. How to build:
30    After extracting (or git pulled) sourcecodes:
31    $ cd {srctop}/source/build-cmake/{Machine name}/
32    $ mkdir build
33    $ cd build
34    
35    To configure:
36    $ cmake ..
37    or
38    $ ccmake ..
39
40    To build:
41    $ make
42
43    To install:
44    $ sudo make install
45
46 4.Qt specified notice (for non-Windows):
47    ・Place R@Ms under $HOME/emu{Machine Name}/ , this directory has made
48      after first using.
49    ・Config file, {foo}.ini is written on $HOME/.config/emu{Machine Name}/ .
50    ・Saved state file, {foo}.sta is written on $HOME/emu{Machine Name}/ .
51    ・Key code conversion file is written on $HOME/.config/emu{Machine Name}/scancode.cfg .
52      This file contains comma separated fields, written at hex-decimal (not decimal), 
53      first is M$ Virtual Key Code,
54      second is Qt's scan code.
55    
56 5.Status
57 a. I tested to build only under Debian GNU/Linux "sid".
58    But, perhaps, will succed to build another GNU/Linux OSs or BSD OS variants.
59    * On windows, using MinGW is already okay.
60    * Cross building with GNU/Linux's MinGW32 and Qt5.5.1 (for MinGW) is available. 
61      Modify and use build-cmake/config_build_cross_win32.sh and related *.cmake files.
62    * And, you can also build with M$ Visual Studio 2013 or 2015.
63    
64   b. Now, I using Qt5 as toolkit, because authors of Qt announced
65      "Qt4 is obsolete, will be updated no longer".
66
67   c. All of virtual machines of upstream (@Dec 17, 2015) are already ported to Qt.
68   d. Now using GCC-5.2 with Link Time Optimize to build for distrubuted binaries.
69
70 6. Upstream repositry:
71       https://github.com/Artanejp/common_source_project-fm7
72       https://www.pikacode.com/Artanejp/common_source_project-fm7/
73       
74 7. Upstream (Takeda Toshiya San's original code) 
75       http://takeda-toshiya.my.coocan.jp/
76
77 Have fun!
78 -- Ohta.
79  
80