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.
* 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",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 (;´Д`)
Upstream repositry: https://github.com/Artanejp/common_source_project-fm7
Project Page:
https://osdn.jp/projects/csp-qt/
Upstream (Takeda Toshiya San's original code):
http://takeda-toshiya.my.coocan.jp/
Changes:
* 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>
Upstream changes:
4/2/2017
RESOURCE improve menu items WINMAIN improve menu items
EX80 support to show/hide crt monitor
3/30/2017
COMMON add functions to convert char, wchar_t, and _TCHAR to each other COMMON add _fgetts, _ftprintf, my_ftprintf_s, and my_swprintf_s COMMON/FILEIO add Fgetts and Ftprintf for _TCHAR COMMON/FILEIO fix functions using ZLIB for _UNICODE case EMU/DEBUGGER fix for _UNICODE case WINMAIN improve to update status only when status is changed
VM/HUC6280 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/I8080 improve disassembler to support symbols VM/M6502 support debugger and disassembler (thanks MAME) VM/MCS48 improve disassembler to support symbols VM/TMS9995 fix disassembler for _UNICODE case VM/UPD7810 improve disassembler to support symbols VM/UPD7810 fix disassembler for _UNICODE case
BABBAGE2ND support debugger and save/load state FAMILYBASIC support debugger YS6464A support debugger and save/load state
3/28/2017
COMMON add _tcscat and my_tcscat_s COMMON add structure and functions to support symbols EMU/DEBUGGER improve debugger to support symbols (thanks Mr.Kei Moroboshi)
VM/MC6800 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/MC6809 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/TMS9995 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/UPD7801 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/Z80 improve disassembler to support symbols (thanks Mr.Kei Moroboshi)
3/26/2017
VM/YM2413 support mute
FAMILYBASIC support Family BASIC MMC5/VRC7 MOD FAMILYBASIC support correct scanlines FAMILYBASIC/MEMORY support MMC5/ VRC7 based on unofficial nester FAMILYBASIC/MEMORY fix data recorder signal (thanks MESS)
3/20/2017
COMMON suport to read ascii/binary file compressed by gzip RESOURCE fix fm8/fm7/fm77 dipswitch menu items WINMAIN fix to update status bar twice/second to supress flickar
VM/SCSI_CDROM support CD-ROM bin/img file compressed by gzip VM/DATAREC support tape image file compressed by gzip VM/DATAREC support to save FUJITSU FM-7/77 t77 format tape image
BMJR/MEMORY fix sound mixer not to clear previously mixed sound
3/18/2017
WINMAIN support multiple data recorder EMU support multiple data recorder
VM/DATAREC support HITACH BASIC Master Jr bin format tape image VM/PTF20 support access lamp signal
BMJR/MEMORY fix reading cmt signal BMJR/MEMORY fix sound mixer TK80BS/CMT support TK-80 cmt i/f
3/15/2017
WINMAIN add status bar to draw access lamps EMU add interfaces to get access status of floppy/quick/hard disk drives EMU add interface to get cmt status message
VM/DATAREC support cmt status message VM/HD44102 fix build error VM/MC6800 fix M_RDOP and M_RDOP_ARG macros (thanks PockEmul) VM/LD700 support access lamp signal VM/SCSI_CDROM support access lamp signal VM/SCSI_DEV support access lamp signal VM/SCSI_HDD support access lamp signal
HC20 fix issue that we cannot debug TF-20 CPU JR800 support National JR-800 (thanks PockEmul)
3/12/2017
VM/DATAREC fix issue that fast forward noise may not stop
3/11/2017
VM/DATAREC support to play play/stop/fast-fwd noise VM/MB8877 support to play seek/load/unload noise VM/HD44102 support HD44102 based on MAME 0.171 VM/T3444A support to play seek/load/unload noise VM/UPD765A support to play seek/load/unload noise VM/UPD765A fix seek time (thanks Mr.Artane.)
MZ80B/MEMORY80B fix vgate signal (thanks Mr.Suga)
3/8/2017
VM/DISK improve to check if disk image is modified more strictly VM/DISK import yaya2016-04-13plus1 (thanks Mr.umaiboux) VM/V9938 import yaya2016-04-13plus1 (thanks Mr.umaiboux and MAME) VM/YM2413 import yaya2016-04-13plus1 (thanks Mr.umaiboux)
FMR30 split project for i86 and i286 MSX/* import yaya2016-04-13plus1 (thanks Mr.umaiboux)
3/7/2017
WIN32/INPUT improve to accept shift + caps/kana/kanji
VM/DISK support device name (thanks Mr.Aratane.) VM/EVENT improve to check abnormal scanline number (thanks Mr.Sato) VM/EVENT fix light weight sound rendering (thanks Mr.168) VM/* add device name to all devices of each machine (thanks Mr.Aratane.)
MZ80B change floppy drive type from 2D to 2DD (thanks Mr.Suga) MZ80B/MEMORY80B support I-O DATA PIO-3039 (thanks Mr.Suga)
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固有の話(Windows除く)
5. 移植状況
6. Upstream repositry:
7. Project Page:
8. Upstream (Takeda Toshiyaさんのオリジナル)
Changes:
ChangeLog:
* 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>
本家の変更:
4/2/2017
RESOURCE improve menu items WINMAIN improve menu items
EX80 support to show/hide crt monitor
3/30/2017
COMMON add functions to convert char, wchar_t, and _TCHAR to each other COMMON add _fgetts, _ftprintf, my_ftprintf_s, and my_swprintf_s COMMON/FILEIO add Fgetts and Ftprintf for _TCHAR COMMON/FILEIO fix functions using ZLIB for _UNICODE case EMU/DEBUGGER fix for _UNICODE case WINMAIN improve to update status only when status is changed
VM/HUC6280 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/I8080 improve disassembler to support symbols VM/M6502 support debugger and disassembler (thanks MAME) VM/MCS48 improve disassembler to support symbols VM/TMS9995 fix disassembler for _UNICODE case VM/UPD7810 improve disassembler to support symbols VM/UPD7810 fix disassembler for _UNICODE case
BABBAGE2ND support debugger and save/load state FAMILYBASIC support debugger YS6464A support debugger and save/load state
3/28/2017
COMMON add _tcscat and my_tcscat_s COMMON add structure and functions to support symbols EMU/DEBUGGER improve debugger to support symbols (thanks Mr.Kei Moroboshi)
VM/MC6800 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/MC6809 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/TMS9995 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/UPD7801 improve disassembler to support symbols (thanks Mr.Kei Moroboshi) VM/Z80 improve disassembler to support symbols (thanks Mr.Kei Moroboshi)
3/26/2017
VM/YM2413 support mute
FAMILYBASIC support Family BASIC MMC5/VRC7 MOD FAMILYBASIC support correct scanlines FAMILYBASIC/MEMORY support MMC5/ VRC7 based on unofficial nester FAMILYBASIC/MEMORY fix data recorder signal (thanks MESS)
3/20/2017
COMMON suport to read ascii/binary file compressed by gzip RESOURCE fix fm8/fm7/fm77 dipswitch menu items WINMAIN fix to update status bar twice/second to supress flickar
VM/SCSI_CDROM support CD-ROM bin/img file compressed by gzip VM/DATAREC support tape image file compressed by gzip VM/DATAREC support to save FUJITSU FM-7/77 t77 format tape image
BMJR/MEMORY fix sound mixer not to clear previously mixed sound
3/18/2017
WINMAIN support multiple data recorder EMU support multiple data recorder
VM/DATAREC support HITACH BASIC Master Jr bin format tape image VM/PTF20 support access lamp signal
BMJR/MEMORY fix reading cmt signal BMJR/MEMORY fix sound mixer TK80BS/CMT support TK-80 cmt i/f
3/15/2017
WINMAIN add status bar to draw access lamps EMU add interfaces to get access status of floppy/quick/hard disk drives EMU add interface to get cmt status message
VM/DATAREC support cmt status message VM/HD44102 fix build error VM/MC6800 fix M_RDOP and M_RDOP_ARG macros (thanks PockEmul) VM/LD700 support access lamp signal VM/SCSI_CDROM support access lamp signal VM/SCSI_DEV support access lamp signal VM/SCSI_HDD support access lamp signal
HC20 fix issue that we cannot debug TF-20 CPU JR800 support National JR-800 (thanks PockEmul)
3/12/2017
VM/DATAREC fix issue that fast forward noise may not stop
3/11/2017
VM/DATAREC support to play play/stop/fast-fwd noise VM/MB8877 support to play seek/load/unload noise VM/HD44102 support HD44102 based on MAME 0.171 VM/T3444A support to play seek/load/unload noise VM/UPD765A support to play seek/load/unload noise VM/UPD765A fix seek time (thanks Mr.Artane.)
MZ80B/MEMORY80B fix vgate signal (thanks Mr.Suga)
3/8/2017
VM/DISK improve to check if disk image is modified more strictly VM/DISK import yaya2016-04-13plus1 (thanks Mr.umaiboux) VM/V9938 import yaya2016-04-13plus1 (thanks Mr.umaiboux and MAME) VM/YM2413 import yaya2016-04-13plus1 (thanks Mr.umaiboux)
FMR30 split project for i86 and i286 MSX/* import yaya2016-04-13plus1 (thanks Mr.umaiboux)
3/7/2017
WIN32/INPUT improve to accept shift + caps/kana/kanji
VM/DISK support device name (thanks Mr.Aratane.) VM/EVENT improve to check abnormal scanline number (thanks Mr.Sato) VM/EVENT fix light weight sound rendering (thanks Mr.168) VM/* add device name to all devices of each machine (thanks Mr.Aratane.)
MZ80B change floppy drive type from 2D to 2DD (thanks Mr.Suga) MZ80B/MEMORY80B support I-O DATA PIO-3039 (thanks Mr.Suga)
お楽しみあれ! -- Ohta.
*** If you want to know full changes, please read 000_gitlog.txt and history.txt. ***
* 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>