EmuNewz Network

Full Version: Xeuphoric 0.19.0 Released
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
an Oric emulator for X

http://www.teaser.fr/~amajorel/xeuphoric/

Changes :
- Build: "make install" now honours the DESTDIR variable to make life
easier for packagers.

- Cassette: the messages to stderr during CLOAD now include the
current working directory. Also, all unsafe or visually ambiguous
characters are percent-encoded.

- Diskette: better error checking on diskette images. Jasmin emulation
still doesn't seem to work, though.

- Doc: added a state diagram of the interface, a description of the
file selector and some semblance of documentation for the
configuration variables.

- Doc: the "Differences with Euphoric 0.99b" section in the man page
is out of date and updating it would make it even longer so off it
goes.

- Emulation: new option -R to override the ROM file from the command
line.

- Internals: rewrote remove_eol() to deal with empty strings.

- Internals: write_only[], which should have been called read_only[],
has been renamed fd_writable[] and the logic has been reversed.
Truth also is defined the customary way, i.e. != 0, not == 1.

- Keyboard: when the pointer leaves the window (FocusOut and
LeaveNotify events), all keys are considered released. No more Oric
[down] key stuck after switching to another window with [alt]-[tab].

- Keyboard: the Oric [esc] key is now mapped to the host key [esc], in
addition of the host key whose keycode is 49 ([`] on UK and US
QWERTY keyboards, superscript 2 on Belgian and French AZERTY
keyboards).

- Keyboard: the Oric [del] key is now mapped to the host key [del], in
addition of the host key [bs] (backspace).

- Keyboard: added support for the different keycodes that come with
evdev. If [altgr]/right [alt], right [ctrl] and the arrow keys do
nothing on your system, this release is for you.

- Setup screen:

- New and improved file selector. See the man page for details.

- Pathnames now shortened by using "." and "~" when appropriate and
then abbreviated to fit the screen. Any non-ASCII and control
characters are percent-encoded.

- New "CWD" parameter to change directories from within Xeuphoric.
The name passed to CLOAD and CSAVE is relative to the current
working directory.

- Diskette emulation: labels shortened to make room for pathnames.
The write-protect status of a virtual diskette is now indicated by
an "RO" or "RW" label on the right. Only allow diskette image
selection if diskette emulation is enabled.

- Sound: handle OSS ioctl() errors more gracefully (essentially, warn
and proceed).

- Sound: got rid of the loud noise spikes during silent periods by
configuring /dev/dsp for 8-bit signed PCM (instead of unsigned) and
halving the output amplitude. The underruns are still heard when
sound is playing or one or more outputs of the 8912 are held high
(tone generator disabled for channel but non-zero channel volume).

- Sound: fixed a bug in the 8912 emulation which caused noise to turn
on and off every minute or so. (2**32 / 1E6 / 16 / 4 = 67 s ?)

- Video: default zoom factor is now 2.

- Video: new xeuphoricrc variable ColourScheme which can be set from
xeuphoricrc or interactively from the setup screen. See the man page
for details.

- Video: new compile-time option CELL8X8 (see the makefile) to render
8 pixels per byte instead of 6. Messes up the hires screen.

- Video: fixed fatal BadAlloc errors in XShm_Attach when running on a
remote display by substituting explicit XSync(3) calls for
XSynchronize(3). I'm not sure what XSynchronize() really does, but
it's not as simple as the man page suggests.

- xeuphoricrc: removed the ability to change UI messages from inside
xeuphoricrc. ^[0-9][0-9]= lines in xeuphoricrc are now ignored.

- xeuphoricrc: line endings in default xeuphoricrc converted from DOS
(CR LF) to Unix (LF).

- xeuphoricrc: improved the parsing code. Trailing tabs are now
ignored. Read errors and lines too long to fit in the buffer are now
caught and cause Xeuphoric to exit with a non-zero status.

- Misc: many (but not all) pathname buffers enlarged from 256 or less
to PATH_MAX.

- Misc: more unfinished, broken xeuphoric-ng code.