Skip to content

prerelease SNAPSHOT 2015-12-10

Pre-release
Pre-release
Compare
Choose a tag to compare
@Artanejp Artanejp released this 10 Dec 10:25
· 3921 commits to master since this release

** Qt porting and FM-7/77/AV/AV40/EX for Common Source Code Project **

                                                      Dec 10, 2015
                        K.Ohta  (whatisthis.sowhat _at_ gmail.com)

1.About

This package is Qt5 porting of Common Source Code Project (CSP)
and Built with Visual Studio 2015 + DirectX9 + Direct Input 8 for Win32.

Additional INFO:
GNU/Linux with AMD64 binaries are avaiable, packed with 7zip'ed format:

https://www.sendspace.com/file/ygo3bd
or
http://www1.axfc.net/u/3580680

 MD5SUM: e883316b86d5db2143ccbf409de938d3
 SHA256SUM: 359ddd42cc4a6feebfbc31b4b825173bd409b1a7403322bae0eaa0e79f21c1ab

 Source Code:
    https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20151210

2.Background
Common Source Code Project (CSP) is good emulator writing.
It also distributed with GPLv2, this is good for me.
But codes are specified to M$ Visual C.
I'm using GNU/Linux, and I starting to apply FM-7(or later).
So, I start to port to GNU/Linux and using Qt4/Qt5.

What you need at least:
a. Qt5 (neither Qt3 and Qt4) toolkit.
b. Some OpenGL implementation, maybe at leaset OpenGL v2.x .
c. gcc / g++ (4.7 or later? ) or llvm clang / clang++ (3.5 or later?) toolchain.
d. SDL2 (not SDL1.x).
e. CMake 2.8 or later.

  • TIPS: If emufoo.exe don't show screen drawing, set environment
    variable QT_OPENGL to software (i.e. Using Windows as VirtualBox's gueat OS).

3.How to build:
After extracting (or git pulled) sourcecodes:
$ cd {srctop}/source/build-cmake/{Machine name}/
$ mkdir build
$ cd build

To configure:
$ cmake ..
or
$ ccmake ..

To build:
$ make

To install:
$ sudo make install

4.Qt specified notice:
・Place R@Ms under $HOME/emu{Machine Name}/ , this directory has made
after first using.
・Config file, {foo}.ini is writteon on $HOME/.config/emu{Machine Name}/ .

5.Status
a. I tested to build only under Debian GNU/Linux "sid".
But, perhaps, will succed to build another GNU/Linux OSs or BSD OS variants.

  • On windows, using MinGW is already okay, but not tested drawing.
  • Cross building with GNU/Linux's MinGW32 and Qt5.5.1 (for MinGW) is available.
    Modify and use build-cmake/config_build_cross_win32.sh and related *.cmake files.
  • And, you can also build with M$ Visual Studio 2013 or 2015.

b. Now, I using Qt5 as toolkit, because authors of Qt announced
"Qt4 is obsolete, will be updated no longer".

c. All of virtual machines are already ported to Qt (On Oct 29, 2015):
d. Now using GCC-5.2 with Link Time Optimize to build for distrubuted binaries.

Upstream repositry:
https://github.com/Artanejp/common_source_project-fm7

Upstream (Takeda Toshiya San's original code)
http://homepage3.nifty.com/takeda-toshiya/

Changes:
*** If you want to know full changes, please read 000_gitlog.txt . ***

  • SNAPSHOT Dec 10, 2015
    • MERGE upstream 2015-12-10 .
    • Change APIs to upstream's OSD class , apply to Qt.
    • Still not built for Win32.
    • Built with 3fe6edd ,
      excepts eTK80BS for 79e5e48.

-- Dec 10, 2015 19:18:05 +0900 K.Ohta whatisthis.sowhat@gmail.com

  • SNAPSHOT Nov 20, 2015
    • MERGE upstream 2015-11-18 .
    • Remove original definition min() max() if supplied from toolchain.
    • Qt: (MAYBE) Working with Windows XP, but not tested enough to.
    • Fixed typos.
    • Built with commit 4b3f3a7 and newer Documents.

-- Nov 20, 2015 01:08:28 +0900 K.Ohta whatisthis.sowhat@gmail.com

  • SNAPSHOT Nov 17, 2015
    • Qt: (MAYBE) Working with Windows XP, but not tested enough to.
    • Qt: Working Auto key (paste from clipboard) feature.
    • Qt/Emu: More thread-safety calling via UI <-> EMU.
    • VM/MSX2: Fix wrong color built with Qt.
    • Update credits, thanks to umaiboux San.
    • Built with commit 64f9017 and newer Documents.
      Excepts HC-20/40/80, with commit a249e76.

-- Nov 18, 2015 02:01:48 +0900 K.Ohta whatisthis.sowhat@gmail.com

Upstream changes:

12/10/2015

[COMMON] improve common.h for other environments
[WIN32/SCREEN] fix crt filter issue for eFM-7

12/9/2015

[EMU/OSD] add OSD class and move OS dependent codes to OSD class
[WIN32/SCREEN] support screen rotation 180deg and 270deg, not only 90deg
[WIN32/SCREEN] support to load png image from resource

[FM77AV] import Mr.Artane.'s fixes (Commits on Dec 7, 2015)
[PC9801] fix PC-9801-26(K) irq number on YM2203 port A again
[TK80BS] add printed circuit board picture and buttons
[X1TURBO/PSUB] fix kana key map in keyboard mode B

11/18/2015

[WINMAIN] support to eject disk with d88 bank selection menu open
[EMU/WIN32] add tape_playing(), tape_recording(), and tape_position()

[VM/*] add tape_playing(), tape_recording(), and tape_position()

[FM77AV] import Mr.Artane.'s fixes (Commits on Nov 14, 2015)


Have fun!
-- Ohta.