plus4emu / News: Recent posts

plus4emu 1.2.9.1 update

Changes in version 1.2.9.1:

* some improvements and optimizations in the p4fliconv and compress utilities
* a few minor bugs have been fixed

Posted by Istvan Varga 2008-09-25

plus4emu 1.2.9 has been released

Changes in version 1.2.9:

* added a C interface that allows using the emulator as a shared library in other programs; the library and header file can be found in the 'plus4lib' subdirectory of the binary packages, and a simple example program with compile instructions is also included
* implemented IEC level MPS-801 printer emulation, in addition to the previously existing hardware level MPS-802 emulation
* added a new button to the debugger GUI that makes it possible to break only when a branch is taken (i.e. the opposite of 'Step over')
* more accurate PAL emulation in OpenGL mode when the display quality is set to 3
* LED display is now also implemented for IEC level drive emulation
* the ROM images required by the emulator are included with the binary packages, and no longer need to be downloaded separately
* fixed a bug in the 'Step over' function of the debugger
* fixed/improved support for D64 error information; this allows some copy protected games that previously did not work to load correctly
* the 'compress' utility has two new compression methods, some new options, and the original method is 3-5 times faster now while producing identical files; also, compression support in 'p4fliconv' is improved somewhat
* various minor bug fixes, optimizations, and other improvements

Posted by Istvan Varga 2008-08-27

plus4emu 1.2.8 is released

Changes in version 1.2.8:

* new option for saving the printer output to a text file, either as the raw characters sent to the printer, or converted to ASCII
* slightly improved compression when saving the printer output in TGA format
* added Windows icons from the Plus/4 icon set by SVS
* when using the mouse to set the cursor position, the color of the character under the cursor is now saved, set, and restored correctly
* minor utility and Windows installer improvements and fixes
* some optimizations in software video mode, and serial floppy drive and printer emulation

Posted by Istvan Varga 2008-07-21

plus4emu 1.2.7 release

Changes in version 1.2.7:

* added support for using the mouse to change the cursor position in the emulated machine, and copying text to and pasting from the clipboard; the following functions are available:
- left click: sets the cursor position
- right click: sets the cursor position, and copies the selected word to the clipboard
- ctrl + right click: sets the cursor position, and copies text from the selected line to the clipboard
- shift + right click: copies text from the whole screen to the clipboard without changing the cursor position
- middle click: sets the cursor position, and pastes text from the clipboard
- shift + middle click: pastes text from the clipboard without changing the cursor position
Note that these are disabled when a display mode that hides the menu bar and the mouse cursor is selected, or light pen emulation - which also uses the mouse - is enabled.
* new command line option (-keybuf) for typing text of any length at startup; the text can also be read from a file
* added machine configuration option to control the SID output volume; this also affects the sound recorded to AVI files
* increased TED audio output level relative to the default SID output level, for better accuracy in programs that use both types of sound at the same time
* minor sound emulation fixes
* the process priority of the emulator can be changed from the GUI (currently, this is only implemented on Windows)
* some utility improvements: 'compress' has more options now, and is optimized somewhat for slightly better efficiency and speed; 'p4fliconv' automatically detects the use of the C64 palette in GIF files and enables pixel exact reading mode, and there is a new experimental hires conversion algorithm as well
* minor optimizations
* in OpenGL video mode, the vertical interlace effect is now also displayed at quality 1 and 2, and quality 2 uses 32-bit textures for improved color accuracy at the expense of being somewhat slower (previously, both interlace and 32-bit textures were enabled only at quality 3)
* fixed bug that prevented the emulator display from being correctly redrawn when damaged on Windows in software video mode or OpenGL with the quality set to 0
* a few Linux compile and link errors have been fixed

Posted by Istvan Varga 2008-07-06

plus4emu 1.2.6 has been released

Changes in version 1.2.6:

* implemented IEC level floppy drive emulation; this allows access to a directory on the PC filesystem, and supports reading and writing .prg, .p00, .s00, .u00, and .r00 files, and some commonly used CBM DOS commands
* the debugger window now displays the current state of TED registers
* on Windows and MacOS X the native file selection dialog is used instead of the FLTK one; also, the last PRG and screenshot file selected is remembered by the dialogs
* various improvements have been made to the utilities
* changed the TED luminance table to (hopefully) match the colors of the real machine more accurately
* when recording video to AVI files in RLE8 format, some TV emulation color effects are now also captured using additional palette colors
* D64 files with any number of tracks from 35 to 42 are supported
* new/improved GUI keyboard shortcuts
* the old file I/O hack has been removed, since its functionality is now replaced by the IEC level drive emulation
* added Gtk+ GUI theme (enabled with '-colorscheme 3' command line option)
* some minor bugs have been fixed

Posted by Istvan Varga 2008-05-23

plus4emu 1.2.5.1 is released

Changes in version 1.2.5.1:

* the full speed mode (Alt+W) now restores the original speed setting
when turned off
* added a "go to program counter" button to the disassembler in the
debugger
* some new utilities have been added
* a few minor bugs have been fixed

Posted by Istvan Varga 2008-02-04

plus4emu 1.2.5 has been released

Changes in version 1.2.5:

* implemented Lua scripting in the debugger; this makes it possible to write complex rules for breakpoints, but can have other uses as well, since the script can read and write memory and CPU registers, in addition to having access to the standard Lua library functions
* changed the debugger window layout so that there is a larger window with only two tabs
* the disassembly view in the debugger now allows for paging backward, and the disassembly and memory dump displays can also be scrolled with the mouse wheel
* made the serial bus delay for the 1541 high timing accuracy mode adjustable; while the default setting works with all the disk turbos tested so far, this option may be useful for debugging purposes
* when using audio files as tape images, the signal read or written can optionally be inverted for compatibility with other software
* the enabling of 6551 ACIA emulation is now configurable, rather than being fixed to machine configurations with 64K or more RAM
* SID emulation and floppy drives with no disk image attached can be disabled from the GUI menu to reduce CPU usage; previously, these automatically enabled features could only be turned off by a forced or hard reset
* added new GUI menu items for resetting floppy drives
* new command line option (-tape) for loading tape images on startup; it has also been made possible to automatically load a file with .prg, .p00, .d64, .d81, or .tap extension by using the file name as a single command line argument
* minor bug fixes and optimizations

Posted by Istvan Varga 2007-12-09

plus4emu 1.2.4 release

Changes in version 1.2.4:

* implemented the ACIA 6551 registers at $FD00-$FD0F, which are automatically enabled for configurations with 64K or more RAM; this is not complete yet, but the basic functionality works
* video recording can also be done in RLE8 format now, which allows smaller file sizes than uncompressed YV12, at the expense of some TV emulation effects not being captured
* added new command line option for selecting the GUI style and colors
* various minor improvements and bug fixes

Posted by Istvan Varga 2007-11-23

plus4emu 1.2.3 has been released

Changes in version 1.2.3
------------------------

* video and sound output can be recorded to AVI files
* more accurate colors in NTSC mode
* TED sound emulation improvements
* added hue shift to the display configuration options
* minor optimizations in serial floppy drive and printer emulation
* the drive head position is now also shown on the LED display when it is changing
* a few bug fixes

Posted by Istvan Varga 2007-10-01

plus4emu 1.2.2 is released

Changes in version 1.2.2
------------------------

* implemented Digi-Blaster emulation
* added limited support for error information in D64 files
* new option for setting SID model (6581 or 8580) to be emulated
* P00 format files can be loaded
* emulation speed percentage is now displayed on the title bar; it is also possible to set half, double, etc. speed in the menu
* the head position (track, side, and sector) of all floppy drives can be displayed in a window

Posted by Istvan Varga 2007-09-06

plus4emu 1.2.1 release

Changes in version 1.2.1
------------------------

* TED emulation improvements; also fixed a bug introduced in version 1.1.1
* the frame rate in full speed mode is now limited to a maximum of 50 Hz to improve performance
* minor bug fixes

Posted by Istvan Varga 2007-08-09

plus4emu 1.2.0 has been released

Changes in version 1.2.0 (since version 1.1.3)
----------------------------------------------

* many improvements in the TV emulation; to enable all the new features, use OpenGL mode and set the display quality to 3 (requires OpenGL 2.0 or newer and shader support)
* added a tedmon-like monitor to the debugger; it supports all the commands, including assemble, but there are also some improvements and additional features (use ? to print the list of commands, or ? N for help on command N)
* it is now possible to set breakpoints on TED video positions in the debugger
* trace command in the monitor for logging CPU instructions to a text file; when debugging the main CPU, the TED video position at the first cycle of each opcode is also logged
* light pen emulation
* hardware level 1526/MPS-802 printer emulation
* the file I/O ROM module now also includes a tape turbo; to enable it, set $0647 to $17, $27, $37, or $47 to select speed (from slowest to fastest), and use device 7 when saving
* tape playback and recording can be sent to the sound output
* the RAM startup pattern has been made configurable
* minor TED emulation improvements
* various bug fixes

Posted by Istvan Varga 2007-07-25

plus4emu 1.2.0 beta release

A beta release of version 1.2.0 is now available for download. Since this is not the final release yet, there are some new features that are still to be implemented, and bugs may need to be fixed.
Here is a list of changes since version 1.1.3:
* many improvements in the TV emulation; to enable all the new
features, use OpenGL mode and set the display quality to 3 (requires
OpenGL 2.0 or newer and shader support)
* added a tedmon-like monitor to the debugger; it supports all the
commands, including assemble, but there are also some improvements
and additional features (use ? to print the list of commands, or ? N
for help on command N)
* it is now possible to set breakpoints on TED video positions in the
debugger
* trace command in the monitor for logging CPU instructions to a text
file; when debugging the main CPU, the TED video position at the
first cycle of each opcode is also logged
* the file I/O ROM module now also includes a tape turbo; to enable
it, set $0647 to $17, $27, $37, or $47 to select speed (from slowest
to fastest), and use device 7 when saving
* tape playback and recording can be sent to the sound output
* the RAM startup pattern has been made configurable
* various bug fixes

Posted by Istvan Varga 2007-07-15

plus4emu 1.1.3 is released

Changes in version 1.1.3
------------------------

* fixed bug in Hannes memory expansion emulation
* improved 6523 emulation in 1551 floppy drives
* minor bug fixes

Posted by Istvan Varga 2007-06-13

New release (1.1.2) with some bug fixes

Changes in version 1.1.2
------------------------

* fixed bug that caused the tape input signal to get stuck at high
level sometimes even after stopping or closing the tape
* optimized 1541 high timing accuracy mode
* adjusted reSID filter for different clock frequency in Plus/4

Posted by Istvan Varga 2007-06-10

plus4emu 1.1.1 has been released

Changes in version 1.1.1
------------------------

* added new 1541 timing code that fixes some programs that previously
did not load, at the expense of higher CPU usage; it is enabled by
default, and can be turned on/off in the floppy configuration dialog
* more accurate emulation of television vertical synchronization
* MacOS X build fixes; also added patch for FLTK 1.1.7 which fixes the
check callback on OS X
* improvements and fixes in TED video shift register emulation
* fixed CPU I/O port data direction register ($0000)
* the ROM package now includes the 1541 DOS, rather than the 1541-II;
however, it is still possible to use the 1541-II by loading
dos15412.rom to ROM segment 10 in the machine configuration
* minor optimizations

Posted by Istvan Varga 2007-06-06

plus4emu 1.1.0 is released

Changes in version 1.1.0
------------------------

* implemented 1551 drive emulation
* added floppy drive LED display to the GUI (1541 is red, 1551 is
green, and 1581 is yellow)
* the debugger now allows for debugging floppy drives; the drives are
also mapped to the physical address range $180000-$1BFFFF
* fixed 1541 disk change detection
* keyboard map can be configured with the GUI
* external game devices like joysticks and gamepads are supported, and
can be assigned in the keyboard map like normal keys
* the 'step over' button in the debugger now also skips branch
instructions
* invalid opcodes that normally jam the CPU can be used as breakpoints
(with the priority assumed to be 3) that open the debugger, and the
execution of the program can continue as if there was a NOP
instruction
* added new command line options for loading disk image, snapshot, and
demo files on start-up; on Windows, D64 and D81 files are also
optionally associated with the emulator
* it is now possible to use WAV, AIFF, and other sound file formats as
tape images; these files can be read and written, however, new files
are created in plus4emu format
* blank video output is generated when the TED is disabled by setting
bit 5 of $FF07
* reduced horizontal texture resolution to 384 in OpenGL mode when the
quality is set to 0, for improved performance
* minor GUI improvements and fixes

Posted by Istvan Varga 2007-05-15

Another Win32 bug fix (1.0.0.2)

This update fixes glBlendColor() calls with incorrect calling convention on Win32, which could result in crashes in OpenGL mode. Other platforms are not affected by this issue.

Posted by Istvan Varga 2007-04-27

Updated Win32 installer and source package

The original 1.0.0 release had a bug that resulted in the shift keys not working correctly on Windows. For this reason, the Win32 installer and the source package have been replaced with new, fixed ones (having a version number of 1.0.0.1). The Linux binary packages were not affected by the bug.

Posted by Istvan Varga 2007-04-27

plus4emu 1.0.0 has been released

plus4emu is an open source, portable emulator of the Commodore Plus/4
computer, written in C++, and supporting Windows and POSIX platforms
(32 bit Windows, and 32 and 64 bit Linux have been tested).
It implements accurate, high quality hardware emulation, however, the
system requirements are higher than that of most other emulators.

Features

General
-------

* graphical user interface using the FLTK library
* software (FLTK based) or OpenGL video, with resizable emulator
window, fullscreen mode, brightness/contrast/gamma can be set
globally or separately for red/green/blue channels, color
saturation control; additional features in OpenGL mode only: single
or double buffered (with synchronization to vertical refresh) mode,
linear texture filtering, and some display effects
* real time audio output uses the PortAudio library (v18 or v19), with
support for many native audio APIs (MME/DirectSound/ASIO on Windows,
OSS/ALSA/JACK on Linux, and CoreAudio on MacOS X); high quality
sample rate conversion with low aliasing; volume control, two first
order highpass filters with configurable cutoff frequency, and an
optional parametric equalizer can be applied to the audio signal
* recording sound output to a WAV format sound file
* saving and loading snapshots of the state of the emulated machine
* demo recording (snapshot combined with stream of keyboard events
which can be played back with accurate timing)
* tape emulation with playback, recording, and setting tape position;
markers can be created for quick positioning to specific tape
locations (useful for tapes with multiple files); uses custom file
format which is PCM audio data with 1 to 8 bits of sample resolution
and variable sample rate, and header including the table of markers;
there is also limited (read only) support for the commonly used C16
tape files
* simple GUI debugger with support for breakpoints/watchpoints,
viewing the current state of CPU registers and memory paging,
displaying memory dump or loading from or saving to a file in ASCII
or binary format, modifying memory or searching for a pattern of
bytes, disassembler with support for all undocumented 6502 opcodes,
address offset for code that runs at a different location than where
it is at the time of disassembling, and saving disassembly to a
file. For memory operations and the disassembler, addresses can be
16 bit CPU (affected by current paging and includes memory mapped
I/O registers) or 22 bit physical (all ROM and RAM data can be
accessed, regardless of memory paging) addresses.... read more

Posted by Istvan Varga 2007-04-26