Takeda Toshiya氏による、エミュレータコレクション、Common Source Code Project ( http://homepage3.nifty.com/takeda-toshiya/ )をQtに移植した …だけではなく、富士通FM-8/7シリーズのコードを積極的にContribしています。
** Qt porting and FM-7/77/AV/AV40/EX for Common Source Code Project **
1.About
This package is Qt5 porting of Common Source Code Project (CSP) and built with Qt5, for Windows, built with MinGW(32bit).
Source Code:
Additional INFO:
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: Qt5.3 or later.
b. Some OpenGL implementation, maybe at leaset OpenGL v2.x .
c. gcc / g++ (5.0 or later? ) or llvm clang / clang++ (3.5 or later?) toolchain.
d. SDL2 (not SDL1.x).
e. CMake 2.8 or later.
f. Needs ffmpeg.See https://ffmpeg.org/ .
g. FFMpeg has bundled only for Win32.Please install for other OSs if not working.
h. Built with Qt5.5 (for Ubuntu 16.04LTS) or Qt 5.10 (for Win32 and Debian/Sid).
i. Now, changed default drawing infrastructure to OpenGL ES2.You can change --opengl option via comman line (or GUI).
j. Now for Win32 build, using LLVM CLANG cross toolchains on Docker environment.Because exception handling of MinGW-w64's gcc is very slowly (this cause by *evil* Borland).
* 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:
5.Status
a. I tested to build only under Debian GNU/Linux "sid",Ubuntu Linux 16.04LTS "Xenial" for AMD64 (x86_64) and MinGW with GCC6 (Windows 32bit).
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-6.1 with Link Time Optimize to build for distrubuted binaries.
e. Implemented socket, networking for MZ-2500, but, not tested yet (;´Д`)
Repositry:
Project Page:
Upstream (Takeda Toshiya San's original code):
Special thanks to:
Changes:
* To see older changes, read ChangeLog and 000_gitlog.txt.
* SNAPSHOT December 16, 2020
Read from $CONFIG_DIR/joydb.ini as SDL_GAMECONTROLLER format. See https://wiki.libsdl.org/SDL_GameControllerAddMapping .
Maybe fixed https://matsuri.5ch.net/test/read.cgi/i4004/1601147054/21-24.
-- Dec 16, 2020 00:40:21 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
Upstream changes: * To see older upstream's changes, read history.txt.
8/16/2020
VM/SCSI_DEV improve to specify data req signal delay (thanks Mr.Sato) VM/SCSI_DEV fix read6/write6 command in 0 length case (thanks Mr.Sato) VM/SISI_HDD change drive type to hot swappable VM/SISI_HDD improve seek time (thanks Mr.Sato) VM/SASI_HDD support winchester drive parameters command VM/Z80DMA improve to sense rdy signal as level, not edge (thanks Mr.Sato)
MZ2500/CRTC fix sub plane address in 640x200 16colors mode (thanks Mr.856) SVI3X8 support SPECTRAVIDEO SVI-3x8 (thanks Mr.tanam) X1 add menu items for FD2/FD3 (thanks Mr.Sato) X1/DISPLAY fix high speed pcg definition (thanks Mr.YAT) X1TURBOZ/DISPLAY improve palette update timing (thanks Mr.Sato)
8/14/2020
OSD/WIN32 support x64 build (thank Mr.Marukun) OSD/WIN32 support Direct2D
MICOM_MAHJONG support Nippon Mail Service MICOM MAHJONG (thanks Mr.GORRY) TVBOY support GAKKEN TV BOY (thanks Mr.tanam)
Have fun! -- Ohta.
** Qt porting for Common Source Code Project **
K.Ohta <whatisthis.sowhat _at_ gmail.com>
* If you can't read Japanese, read readme.qt.txt .
0. 概要
Win32:
【おねがい】
1. 背景
2. 最低限必要なもの(Qt版)
3. ビルドの方法
4. Qt固有の話
5. 移植状況
6. Upstream repositry:
7. Project Page:
8. Upstream (Takeda Toshiyaさんのオリジナル)
Special thanks to:
Changes:
* 前の変更点をお読みになる場合には、ChangeLogと000_gitlog.txtをお読み下さい。
* SNAPSHOT December 16, 2020
Read from $CONFIG_DIR/joydb.ini as SDL_GAMECONTROLLER format. See https://wiki.libsdl.org/SDL_GameControllerAddMapping .
Maybe fixed https://matsuri.5ch.net/test/read.cgi/i4004/1601147054/21-24.
-- Dec 16, 2020 00:40:21 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
本家の変更: * 前の変更点をお読みになる場合には、history.txtをお読み下さい。
8/16/2020
VM/SCSI_DEV improve to specify data req signal delay (thanks Mr.Sato) VM/SCSI_DEV fix read6/write6 command in 0 length case (thanks Mr.Sato) VM/SISI_HDD change drive type to hot swappable VM/SISI_HDD improve seek time (thanks Mr.Sato) VM/SASI_HDD support winchester drive parameters command VM/Z80DMA improve to sense rdy signal as level, not edge (thanks Mr.Sato)
MZ2500/CRTC fix sub plane address in 640x200 16colors mode (thanks Mr.856) SVI3X8 support SPECTRAVIDEO SVI-3x8 (thanks Mr.tanam) X1 add menu items for FD2/FD3 (thanks Mr.Sato) X1/DISPLAY fix high speed pcg definition (thanks Mr.YAT) X1TURBOZ/DISPLAY improve palette update timing (thanks Mr.Sato)
8/14/2020
OSD/WIN32 support x64 build (thank Mr.Marukun) OSD/WIN32 support Direct2D
MICOM_MAHJONG support Nippon Mail Service MICOM MAHJONG (thanks Mr.GORRY) TVBOY support GAKKEN TV BOY (thanks Mr.tanam)
お楽しみあれ! -- Ohta.
*** If you want to know full changes, please read 000_gitlog.txt and history.txt. ***
* SNAPSHOT December 16, 2020
Read from $CONFIG_DIR/joydb.ini as SDL_GAMECONTROLLER format. See https://wiki.libsdl.org/SDL_GameControllerAddMapping .
Maybe fixed https://matsuri.5ch.net/test/read.cgi/i4004/1601147054/21-24.
-- Dec 16, 2020 00:40:21 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT September 26, 2020
See source/src/vm/fmtowns/00_status.ja.md.
https://matsuri.5ch.net/test/read.cgi/i4004/1526806551/935
-- Sep 26, 2020 18:29:40 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 27, 2020
See event.cpp and qt/common/emu_thread.cpp (& more).
and 000_gitlog.txt .
https://hub.docker.com/repository/docker/artanejp/mingw-w64-llvm10-ubuntu20.04/general ).
-- Jun 27, 2020 01:51:03 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT March 03, 2020
000_gitlog.txt .
-- Mar 03, 2020 15:13:25 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jan 05, 2020
-- Jan 05, 2020 20:59:52 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Oct 15, 2019
-- Oct 15, 2019 02:40:49 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 16, 2019
-- Aug 16, 2019 20:38:06 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 18, 2019
-- May 18, 2019 23:00:59 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT February 22, 2019
-- February 22, 2019 04:44:44 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT January 13, 2019
-- January 13, 2019 01:55:36 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT December 18, 2018
-- December 18, 2018 16:31:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT November 24, 2018
-- November 24, 2018 19:27:42 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT October 28, 2018
-- October 28, 2018 03:36:00 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT September 30, 2018
-- September 30, 2018 17:40:12 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT August 07, 2018
-- August 07, 2018 12:53:45 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT July 13, 2018
-- July 13, 2018 13:09:15 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 16, 2018
-- May 16, 2018 18:09:00 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Mar 26, 2018
-- Mar 26, 2018 01:34:20 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Mar 04, 2018
-- Mar 04, 2018 11:22:02 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Feb 16, 2018 FM7 TEST1
This is compatibility with older settings. GUI's menu (for eFM8/eFMNEW7/eFM7*) must change order of boor menu entry.
-- Feb 16, 2018 06:02:49 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Feb 11, 2018
(or ".\CommonSourceCodeProject\emufoo\" ).
(or ".\CommonSourceCodeProject\emufoo\ at Windows").
See https://matsuri.5ch.net/test/read.cgi/i4004/1483504365/841 .
-- Feb 11, 2018 02:29:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jan 19 2018
-- Jan 19, 2018 01:49:25 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jan 04 2018
-- Jan 04, 2018 11:59:54 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Dec 10, 2017
-- Dec 10, 2017 19:55:30 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Dec 04, 2017
-- Dec 04, 2017 19:29:05 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Oct 18, 2017
-- Oct 18, 2017 16:33:58 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 11, 2017
-- Aug 11, 2017 23:38:49 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT HOTFIX1 May 18, 2017
-- May 18, 2017 19:13:23 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 18, 2017
-- May 17, 2017 22:52:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT April 09, 2017
-- Apr 09, 2017 23:04:45 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT March 07, 2017
-- Mar 07, 2017 15:55:25 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT January 30, 2017
. * VM/MB8877 Fix accessing 2D disk from 2DD mode drive (not 2D mode).
-- Jan 30, 2017 05:04:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT January 24, 2017
-- Jan 24, 2017 01:06:26 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT January 06, 2017
-- Jan 06, 2017 19:56:37 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT November 21, 2016
-- Nov 21, 2016 16:29:24 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT October 27, 2016
-- Oct 27, 2016 17:01:21 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT October 18, 2016
-- Oct 18, 2016 11:22:05 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT October 10, 2016
-- Oct 10, 2016 05:22:18 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT September 23, 2016
-- Sep 23, 2016 19:48:12 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT September 09, 2016
-- Sep 09, 2016 01:02:51 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT August 19, 2016
-- Aug 19, 2016 23:12:36 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT August 15, 2016
-- Aug 16, 2016 02:40:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT August 09, 2016
-- Aug 10, 2016 01:42:51 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT July 25, 2016
-- Jul 25, 2016 21:59:41 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 29, 2016
-- Jun 29, 2016 13:05:15 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 21, 2016
-- Jun 21, 2016 01:07:44 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 18, 2016
-- Jun 18, 2016 03:32:06 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 11, 2016
-- Jun 11, 2016 05:09:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 09, 2016
-- Jun 09, 2016 05:50:50 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT June 08, 2016
-- Jun 08, 2016 07:34:45 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 23-2, 2016
-- May 24, 2016 22:42:00 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 23, 2016
-- May 23, 2016 02:22:07 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT May 11, 2016
-- May 11, 2016 12:18:17 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Apr 28,2016
-- Apr 28, 2016 01:53:55 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Apr 09, 2016
-- Apr 09, 2016 00:16:14 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Mar 25, 2016
-- Mar 25, 2016 13:26:17 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Mar 11, 2016
-- Mar 11, 2016 04:56:20 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Mar 04, 2016
-- Mar 04, 2016 22:56:53 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Feb 26, 2016 HOTFIX 1
-- Feb 27, 2016 01:37:13 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Feb 26, 2016
-- Feb 27, 2016 00:13:09 +0900 K.Ohta <whatisthis.sowhat@gmail.com> * SNAPSHOT Feb 25, 2016
-- Feb 25, 2016 06:53:28 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jan 24, 2016
-- Jan 24, 2016 13:44:50 +0900 K.Ohta <whatisthis.sowhat@gmail.com> * SNAPSHOT Jan 19, 2016-1
-- Jan 19, 2016 14:50:50 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jan 07, 2016-3
-- Jan 08, 2016 12:19:19 +0900 K.Ohta <whatisthis.sowhat@gmail.com> * SNAPSHOT Jan 07, 2016 -2
-- Jan 07, 2016 23:08:35 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Dec 22, 2015
-- Dec 22, 2015 18:22:09 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Dec 10, 2015
-- Dec 10, 2015 19:18:05 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Nov 20, 2015
-- Nov 20, 2015 01:08:28 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Nov 17, 2015
-- Nov 18, 2015 02:01:48 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Nov 14. 2015
-- Nov 14, 2015 20:12:24 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Nov 05. 2015
-- Nov 05, 2015 22:35:05 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Oct 29, 2015
-- Oct 29, 2015 17:40:35 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Sep 26, 2015
-- Sep 26, 2015 02:38:29 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 11, 2015
-- Aug 11, 2015 13:34:20 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 10, 2015
-- Aug 10, 2015 15:04:20 +0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 07, 2015
-- Aug 08, 2015 03:39:15 + 0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Aug 01, 2015
-- Aug 02, 2015 21:00:03 + 0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jul 31, 2015
-- Aug 01, 2015 04:13:13 + 0900 K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jul 26,2015
-- K.Ohta <whatisthis.sowhat@gmail.com>
* SNAPSHOT Jul 25,2015
-- K.Ohta <whatisthis.sowhat@gmail.com>