Skip to content

prerelease SNAPSHOT 2016-02-26 HOTFIX1

Compare
Choose a tag to compare
@Artanejp Artanejp released this 26 Feb 16:33
· 3718 commits to master since this release

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

                                                      Feb 26, 2016
                        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 Win32 with MINGW binaries are avaiable, packed with 7zip'ed format:

https://www.sendspace.com/file/w9cqpb
or
http://www1.axfc.net/u/3625609

MD5SUM: b78f3f0e5d6a36311b4eadcc4b9ec4d2
SHA256SUM: 6e6829d5d776d80c667bef5c6cb49183e820f92ff86ac6d89f387d9b96570608
Source Code:
https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20160226_HOTFIX1

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:

  • SNAPSHOT Feb 26, 2016 HOTFIX 1
    • [FM7/77/8] Fix reset sequence of PSG/OPN/WHG/THG.
      This fixes lower tone of PSG with FM-7/77.
    • Built with commit 2e87abc + .

-- Sat 27, 2016 01:37:13 +0900 K.Ohta whatisthis.sowhat@gmail.com

  • SNAPSHOT Feb 26, 2016
    • Merge upstream 2016-02-26.
    • Windows: Fix wrond key conversion from SCAN to VK.
    • Enable to build within native Windows host with MinGW.
    • Debugger: Fix weird command interpreting.
    • FM7: Fix wrong key assigning.
    • FM7/6809: Fix wrond debugger APIs.
    • Help Menu: Add FAQs and about settings of BIOS and Key assigns.
    • Add documentation how to build.
    • Built with commit 82115cc or later .

-- Sat 27, 2016 00:13:09 +0900 K.Ohta whatisthis.sowhat@gmail.com

Upstream changes:

2/26/2016

[WINMAIN] refactor codes
[WIN32] fix routine to check the Windows Vista or later
[WIN32/INPUT] improve DirectInput codes for newer DirectX 9.0 SDK
[WIN32/VIDEO] improve routine to copy DirectShow buffer to vm screen buffer

[VM/HD46505] support to set character clock
[VM/MC6840] reimplement based on MAME 0.168
[VM/T3444A] fix build error
[VM/YM2203] fix to clear output register and mode register in reset()

2/21/2016

[VM/MB8877] fix timing to start read/write sector for invalid format track
[VM/T3444A] fix timing to start read/write sector for invalid format track

[MZ2500/CMT] fix reset signal again for Laydock

2/19/2016

[ALL] add VC++2013 project files
[ALL] change many public method names according to common naming convention

[COMMON] add create_string() function
[WINMAIN] copy codes to read clipboard for auto key from osd class
[EMU] copy codes for auto key and joystick mapping from osd class
[EMU/OSD] remove codes for auto key and joystick mapping

[VM/PRNFILE] fix not to register ack event in initialize() for debug build
[VM/MZ1P17] fix not to register ack event in initialize() for debug build
[VM/MZ1P17] fix font rom loader for MZ-80B/2000/2200

[MZ2200/MEMORY80B] fix green monitor color


Have fun!
-- Ohta.