Xcpc emulator

Amstrad CPC emulator

Xcpc v0.31.1 has been released

cover🔗 published by Olivier Poncet on Monday, Mar 29, 2021 at 08:30

The version v0.31.1 of Xcpc has been released !

What’s new ?

This release is a bugfix version …

This new version includes a quick fix on my original Xdnd implementation.

A nice user of xcpc on a netbsd distro on a Sun Sparc has reported a fairly old bug that has been present since 2007. After analysis, I found a misuse of XChangeProperty which produces a SIGBUS error on 64-bits big-endian systems. This Xlib function requires 32-bits properties to be encoded with long integers, even on 64-bits platforms …

Damn it ! It’s just one line of code … Thanks to Connor McLaughlan for the bug report.

(gdb) run
Starting program: /usr/pkg/bin/xcpc

Program received signal SIGBUS, Bus error.
0x0000000041d63808 in _XData32 () from /usr/X11R7/lib/libX11.so.7
(gdb) bt
#0  0x0000000041d63808 in _XData32 () from /usr/X11R7/lib/libX11.so.7
#1  0x0000000041d873fc in XChangeProperty () from /usr/X11R7/lib/libX11.so.7
#2  0x000000000016d458 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb)

ChangeLog

2021-03-29	Olivier Poncet <olivier.poncet@xcpc-emulator.net>

	* SIGBUS error fix on big-endian systems (Sparc, ...)

Download

You can download this new version by clicking on the following links:

You can also find all previous versions on the download page.

Source code

You can browse the source code by clicking on the following links:

You can also clone the git repository:

git clone -b xcpc-0.31.1 git@github.com:ponceto/xcpc-emulator.git
git clone -b xcpc-0.31.1 git@gitlab.com:ponceto/xcpc-emulator.git
git clone -b xcpc-0.31.1 git@bitbucket.org:ponceto/xcpc.git