Skip to content

prerelease SNAPSHOT 2015-11-17

Compare
Choose a tag to compare
@Artanejp Artanejp released this 17 Nov 17:43
· 3973 commits to master since this release

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

                                                      Nov 17, 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 and Built with MinGW for Win32 binaries are
avaiable, packed with 7zip'ed format:

 MD5SUM: 84ae643b5e77773a28fa1c1a0b38b748
 SHA256SUM: e4e3fd44e925c8c17115b12274c1e6b3d68997a671e7d1385745232a91805780

https://www.sendspace.com/file/ze7v29
or
http://www1.axfc.net/u/3568712

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

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 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

  • SNAPSHOT Nov 14. 2015
    • Qt/GUI: Integrate menus to meta-class.
    • Win32/Qt: Enable to build with MinGW32 and Qt 5.5.1, please test!!!
    • Built with commit 910b3cc excepts with newer documents.
    • A lot of fixes.

-- Nov 14, 2015 20:12:24 +0900 K.Ohta whatisthis.sowhat@gmail.com

Upstream changes:

10/31/2015

[WIN32/INPUT] fix broken auto key function
[WIN32/INPUT] support to notify l/r-shift/control/menu key to virtual machine
[WIN32/SOUND] fix not to create a sound buffer on sound card memory

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

10/27/2015

[VM/IO] fix build error
[VM/UPD765A] fix tc signal in exec phase (thanks Mr.PI.)

10/7/2015

[VM/DISK] import Mr.Artane.'s fixes for FM-7 PSY-O-BLADE
[VM/IO] improve debug log for second cpu

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

10/6/2015

[WIN32/DEBUGGER] add > command to output the logfile

[VM/UPD7220] support vram data mask to support 12bit vram for MZ-3500
[VM/Z80] improve disassembler for DD/ED/FD opecodes

[MZ3500/SUB] fix character vram bit width
[MZ3500/SUB] fix graphic vram size
[MZ3500/SUB] fix to negate color palette number of kanji character screen

9/30/2015

[EMU/WIN32] fix eFM77AV40/EX menu issues

[VM/TMS3631] add TMS3631 based on Neko Project 2

[MZ3500/SUB] support monochrome mode
[MZ3500/SUB] support vertical/horizontal line
[MZ3500/SUB] fix character color in the case color number is zero
[PC9801] fix PC-9801-26(K) irq number on YM2203 port A
[PC9801] support PC-9801-14

9/29/2015

[EMU/WIN32] fix terrible mistakes (thanks Mr.Artane.)

[VM/DISK] import Mr.Artane.'s fixes for FM-7 PSY-O-BLADE
[VM/MB8877] import Mr.Artane.'s fixes for FM-7 series

[FM77AV] add eFM77AV40/40EX codes (thanks Mr.Artane.)
[FM77AV] import Mr.Artane.'s fixes (from SNAPSHOT 20150926)
[MZ3500/MAIN] support some dip switches
[MZ3500/SUB] support middle resolution monitor and green monitor
[PC9801] support to enable/disable sound board and sound bios

9/26/2015

[MZ3500/SUB] fix kanji character renderer
[MZ3500/SUB] fix character renderer for non transparent black color

9/25/2015

[MZ3500] support HALT button
[MZ3500/KEYBOARD] support PRO/OP mode switch
[MZ3500/KEYBOARD] support CL and 00 keys
[MZ3500/KEYBOARD] change key assign for program control keys
[MZ3500/MAIN] fix to add one clock wait for each m1 cycle
[MZ3500/MAIN] fix memory mapper to check me1/me2 signals
[MZ3500/MAIN] fix memory mapper to update only when register values are changed
[MZ3500/SUB] support kanji rom and kanji vram
[MZ3500/SUB] implement graphic screen renderer


Have fun!
-- Ohta.