Go to the first, previous, next, last section, table of contents.

# 18 Acknowledgments

VICE derives from X64, the first Commodore 64 emulator for the X Window System. Here is an informal list of the people who were mostly involved in the development of X64 and VICE:

The VICE core team:

- Pottendo Fixed WiC64 support. Most of the former contributions (pre V3.x) have been taken over and/or replaced by other's contributions.
- Marco van den Heuvel Translated the UI to Dutch. Made the internationalization support for the Win32 and Amiga ports. Wrote the GEO-RAM and RamCart cartridge code. Wrote the c64 +60K, +256K and 256K memory expansions code. Wrote the pet REU code. Wrote the plus4 memory expansions code. Made the ethernet support for the DOS port. Maintains the QNX 4.x, QNX 6.x, Solaris, Openserver, Unixware, Minix 3.x, Amiga, Syllable and OS/2 binary ports. Maintains the Win64 and Open Watcom project files. Maintains the SDL port(s). Added new .crt support. Added new screenshot formats. Added new sound recording support. Added SID cartridge support for xpet, xplus4 and xvic. Improved the MMC64 emulation. Added 2 MHz mode and banks 2/3 support for x128. Added the various userport joystick emulations. Added text copy and paste support to the Amiga and BeOS ports. Added DQBB and ISEPIC cartridge support. Added SFX Sound Sampler and SFX Sound Expander support. Added PCI support to the Amiga and DOS ports. Rewrote the sound system into a modular one, added always mono and always stereo support for the sound output. Added the RTC system. Added digiblaster support. Added 3rd SID support. Added the 6309 CPU emulation. Added the 65(S)C02 emulation. Added the 65816 emulation. Added native screenshot (koala/doodle) support. Added 6502/6510/8500/8502 cpu port unused bit fading. Added vice.chm (windows), vice.guide (amiga), vice.hlp (windows), vice.inf (os/2), vice.pdf (generic) and vice.txt documentation generation. Added Android port based on 'AnVICE 1.0.5'. Improved/fixed the 'in-source' FFMPEG support and fixed it for msvc7.0 and up. Generalized the 'RS232 net' support to be able to be used on any network supporting arch. Started the SDL2 port. Added generic sampler input support. Added new joyport system and converted the joystick, mouse and lightpen code to use the new system. Added joyport attached rtc (bbrtc). Added joyport attached cardkey keypad. Added joyport attached coplin keypad. Added joyport attached atari cx21 keypad. Added joyport attached atari cx85 keypad. Added joyport attached paperclip 64 dongle. Added joyport attached rushware keypad. Added joyport attached 2/4 bit samplers. Added vic20 I/O-2 and I/O-3 RAM support. Added the c64 cp/m (z80) cartridge. Added IDE64 digimax short bus device emulation. Added tapeport system and the tapelog, cp-clockf83, tape-sense dongle, and (not yet working) dtl basic dongle devices. Added easy calc result cartridge emulation. Added hardware SID I/O access system which allows CW3, HardSID, ParSID and SSI2001 to work on AmigaOS, BeOS, DOS, SDL, *nix and windows with and without device drivers. Added clockport system for mmc64, mmcreplay, retroreplay and ide64. Added rrnet clockport device. Added mp3@64 clockport device. Added userport snes pad (petscii) support. Extended the joyport system to be able to handle all snes pad buttons. Extended the joyport system to be able to handle 8-player joystick adapters. Added spaceballs joystick adapter support. Added trapthem joyport snes pad adapter support. Added superpad64 support. Added multijoy joystick adapter support. Added inception joystick adapter support. Added protopad support. Added autofire support. Added plus4 Synergy 3-port joystick adapter support. Added userport I/O simulation device. Added Microflyte analog joystick support. Added Stupid Pet Tricks joystick adapter support. And lots of other fixes and improvements.
- Fabrizio Gennari Added some improvements to the DOS and GTK+ ports. Changed the Windows video to use GDI as fallback, making it compile without DX if needed. Fixed the t64 support. Added monitor window support using VTE to the GTK+ GUI. Made some monitor fixes. Fixed some tape code issues.
- Groepaz Added new more precise CRT emulation. Added support for the new cartridge system and many new cartridges. Fixed up parts of cartconv, c1541 and petcat. Added video to audio leak sound support. Improved the GTK3 GUI. Added x64(sc), x128, x64dtv, xplus4, xvic model selection system. Added KoalaPad emulation. Added keyrah keymaps. Added joystick keys mapping to the keymap system. CIA emulation improvements. Added basic support for compute gazette sidplayer files (mus/str) to vsid. Added new palette files. Added 'available features' code. Fixed/added some items in the OSX GUI. Added random tape wobble emulation. Added 64KiB RGCD cartridge emulation. Added psid v4 3sid support to vsid. Added single frame advance. Added drive RPM and wobble support. Added rrnet mk3 emulation. Added GMod2 and GMod3 cartridge emulation. Added xvic BehrBonz cartridge emulation. Added VICII VSP-bug emulation. Wrote alot of test programs. Updated this document after a long period of outdated mess. And various fixes and improvements.
- Olaf Seibert Contributed some PET, including PET DWW hires, Xaw, lightpen, hardware scaling, and disk drive patches. Added proper SuperPET support, including 6809/6309 CPU emulation. Maintained the Xaw UI. Added PET HRE (High Res Emulator) board emulation. Added the 2-chip colour board for the Universal PET mainboard. Added support for 'printer/plotter' Commodore 1520. Overhauled internals of VIA and CIA code. Corrected pre-CRTC PET display timing. REL-file support for the filesystem device and c1541.
- Marcus Sutton Made some console, dialog and joystick fixes for the BeOS port. Maintains the BeOS port. Added some GTK2 fixes. Fixed some PET model selection issues. Revived the Windows NT Unicode port.
- Kajtar Zsolt Wrote the IDE64 interface emulation, FD2000/4000 drive emulation, SCPU64 emulation and alot of fixes. Improved the mouse support. Added drive burst modification support. Added 1541 drive sounds emulation. Improved c64 cart emulation. Added DAC high pass filtering. Added the xscpu64 emulator. Added scroll wheel support for the Micromys mouse emulation. Added Swiss ROM support to x128. Added IDE64 USB server emulation. Added 1540 drive emulation. Improved monitor support. Improved vdrive compatibility. Added godot screenshot support. And fixed various issues.
- AreaScout Fixed the SDL2 port. Revived the Android port. Maintains the SDL1, SDL2 and Android ports.
- Bas Wassink Fixed some gtk2/3 issues. Fixed t64 file handling. Fixed memory leaks. Added more doxygen documentation. Fixed c1541 issues. Updated the Linux-Native-Howto.txt file. Added autoconf, automake and yasm version checking. Fixed runtime linker path issues with *BSD. Fixed out-of-tree building. One of the driving forces behind the GTK3 port.
- Michael C. Martin One of the driving forces behind the GTK3 port.
- June Tate-Gans Made the dual window feature for the SDL2 UI.
- Pablo Roldan Contributed improvements and fixes to the RS-232 emulation. Contributed initial patch for VIC-II PAL-N model selection.

Former/inactive team members:

- BSzili Provided many amigaos4 fixes. Maintained the amigaos based and derived ports.
- Errol Smith Improved VDC emulation. Improved MPS803 printer emulation.
- Daniel Kahlin Worked on DTV VIC emulation, palette, DTV SID support in resid, better DMA/Blitter support and did lots of refactoring. Added new monitor commands and features. Improved the VIC emulation for xvic. Made MIDI driver code for Win32. Rewrote the xvic cartridge system. Added Mega-Cart and Final Expansion V3.2 support to xvic. Wrote large parts of the new VIC-II emulation used in x64sc, especially the dot clock domain emulation. Wrote many test programs for hardware analysis.
- Andreas Matthies Improved the datasette support, the VIC20 video emulation and some UI stuff in the Win32 and DOS ports. He also wrote the BeOS port and implemented video/audio capture support. Improved history recording/playback and implemented support for video recording and the netlink feature. Made the Win32 user changable keyboard shortcut system. Improved CIA and VIA emulation. Worked on x64sc, especially interrupt timing. Improved the FFMPEG support and started the 'in-source' FFMPEG support/merge. Wrote test programs. Various bug(fixe)s. ;-)
- Ulrich Schulz Maintains the Dingoo port(s).
- Stefan Haubenthal Added some Amiga fixes.
- Thomas Giesel Added new monitor commands, features and improvements.
- Ingo Korb Corrected block allocation and interleave for c1541/vdrive, added rudimentary xplus4 tape recording support, fixed some GTK2 issues, corrected a case of missing Pi symbols in petcat, changed the trap opcode byte, stopped the high-level serial drive code from responding to addresses 16-30 and was forced to update this entry himself.
- Antti S. Lankila Made the ReSID-fp engine, rewrote the PAL emulation code and fixed the sound core for lower latency. Rewrote DTV SID support (ReSID-dtv). Improved 1541 drive rotation emulation. Worked on x64sc. Added RSID BASIC tunes support to vsid. Several ReSID fixes and improvements.
- Christian Vogelgsang Maintained the Mac OS X port. Added Intel Mac support and universal binary creation. Wrote the build scripts for all external Mac libraries and the bindist bundle tool. Improved the TFE chip emulation. Added some GTK+ fixes.
- Dag Lem Implemented the reSID SID emulation engine and video hardware scaling.
- Spiro Trikaliotis Copyright (C) 2000-2011 Wrote the Win32 console implementation for the built-in monitor, corrected some REU related bugs, improved the CIA emulation, added com-port CIA support to the Win32 port, added text copy and paste support to the Win32 port, added support for the TFE and RR-Net (cs8900a), and wrote some further patches.
- Hannu Nuotio Copyright (C) 2007-2011 Implemented DTV flash emulation, DTV support in the monitor, large parts of the DTV VIC, burst mode and skip cycle emulation as well as many other things. Added NEOS and Amiga mouse, paddle and light pen support. Added new monitor commands and features, including memmap. Made MIDI support and OSS MIDI driver. Implemented most of the SDL UI. Rewrote xvic CPU/VIC-I core for cycle based emulation. Implemented C64 cartridge snapshot support. Initiated and worked on all parts of implementing x64sc. Wrote test programs.
- Andreas Boose Copyright (C) 1998-2010 Gave lots of information and bug reports about the VIC-II, the 6510 and the CIAs; moreover, he wrote several test-routines that were used to improve the emulation. He also added cartridge support and has been the main head behind the drive and datasette emulation since version 0.15. Also added several UI elements to the DOS, Win32 and *nix ports. He rewrote the C128 emulation adding Z80 mode, C64 mode and function ROM support, wrote the screenshot and the event system and started the plus4 emulator. Restructured the serial bus emulation and added realdrive and rawdrive support.
- Tibor Biczo Copyright (C) 1998-2010 Improved the Win32 port and plus4 emulation.
- M. Kiesel Copyright (C) 2007-2010 Started implementing x64dtv. The C64DTV memory model and early versions of the DMA and Blitter engine have been implemented by him. Added new monitor commands and features.
- Andreas Dehmel Copyright (C) 1999-2007 Wrote the Acorn RISC OS port.
- David Hansel Copyright (C) 2003-2005 Wrote the Star NL10 printer driver, implemented IEC devices and improved the tape emulation.
- Markus Brenner Copyright (C) 2000-2004 Added VDC emulation to x128 and added support for some more cartridges.
- Thomas Bretz Copyright (C) 1999-2004 Started the OS/2 port.
- Daniel Sladic Copyright (C) 1997-2001 Started the work on hardware-level 1541 emulation and wrote the new monitor introduced with VICE 0.15.
- Andre Fachat Copyright (C) 1996-2001 Wrote the PET and CBM-II emulators, the CIA and VIA emulation, the IEEE488 interface, implemented the IEC serial bus in `xvic' and made tons of bug fixes.
- Ettore Perazzoli Copyright (C) 1996-1999 Made the 6510, VIC-II, VIC-I and CRTC emulations, part of the hardware-level 1541 emulation, speed optimizations, bug fixes, the event-driven cycle-exact engine, the Xt/Xaw/Xfwf-based GUI for X11, a general code reorganization, the new resource handling, most of the documentation. He also wrote the DOS port and the initial Win32 port (well, somebody had to do it).
- Teemu Rantanen Copyright (C) 1993-1994, 1997-1999 Implemented the SID emulation and the trap-based disk drive and serial bus implementation; added support for multiple display depths under X11. Also wrote `c1541`
- Jouko Valta Copyright (C) 1993-1996 Wrote `petcat` and `c1541`, `T64` handling, user service and maintenance (most of the work in x64 0.3.x was made by him); retired from the project in July 96, after VICE 0.10.0.
- Jarkko Sonninen Copyright (C) 1993-1994 He was the founder of the project, wrote the old version of the 6502 emulation and the XDebugger, and retired from the project after x64 0.2.1.

Internationalization Team:

- Mikkel Holm Olsen Copyright (C) 2009-2017 Provided the Danish user interface translations and fixed a few monitor bugs. Pottendo Copyright (C) 2000-2017 Provided the German user interface translations. Manuel Antonio Rodriguez Bas Copyright (C) 2011-2017 Provided the Spanish user interface translations. Paul Dube Copyright (C) 2004-2017 Provided the French user interface translations. Czirkos Zoltan Copyright (C) 2006-2017 Provided the Hungarian user interface translations. Karai Csaba Copyright (C) 2006-2017 Provided the Hungarian user interface translations. Andrea Musuruane Copyright (C) 2001-2017 Provided the Italian user interface translations. Jesse Lee Copyright (C) 2011-2016 Provided the Korean user interface translations. Marco van den Heuvel Copyright (C) 2005-2017 Provided the Dutch user interface translations. Jarek Sobolewski Copyright (C) 2011-2017 Provided the Polish user interface translations. Michael Litvinov Copyright (C) 2010-2017 Provided the Russian user interface translations. Peter Krefting Copyright (C) 2000-2017 Provided the Swedish user interface translations. Emir Akaydin Copyright (C) 2008-2017 Provided the Turkish user interface translations.

Documentation Team:

- Daniel Kahlin Groepaz Kajtar Zsolt Marco van den Heuvel Olaf Seibert

External contributors:

- Alexis Ballier Provided some ffmpeg fixes.
- Christian Bauer Wrote the very interesting "VIC article" from which we got invaluable information about the VIC-II chip: without this, the VIC-II implementation would not have been possible.
- Anthony J. Bentley Provided some man page fixes.
- Eliseo Bianchi Provided the italian Amiga translations.
- Enrico Bruttomesso Improved some italian translations.
- Frank Buss Provide some midi fixes.
- ck! Provided a win32 cbm character font.
- iAN CooG Added win32 vsid GUI and contributed various patches.
- Mike Dawson Provided the GP2X port.
- Hans Deragon Added support for dead keys in X11.
- Paul David Doherty Wrote `zip2disk`, on which the Zipcode support in `c1541` is based.
- Sven A. Droll Added Supergrafik support to petcat.
- Peter Edwards Implemented the SDL UI slider control and fixed some GP2X/Dingoo SDL UI issues.
- István Fábián Contributed a initial patch with the more correct 1541 bus timing code and which gave us hints for to improving the 1541 emulation.
- Daniel Fandrich Contributed some disk drive patches.
- Dirk Farin Rewrote the MITSHM code.
- Georg Feil Added support for toggling CB2 sound output line in the PET emulator.
- Peter Andrew Felvegi aka Petschy Fixed a couple of bugs in the fast serial emulation.
- Ricardo Ferreira Contributed the `unlynx` and `system` commands in `c1541` and added aRts sound support.
- Flooder Provided parts of the Polish user interface translations.
- Robert H. Forsman Jr. Provided parts of the widget set for implementing the Xaw GUI.
- Ian Gledhill Added support for the catweasel.device driver.
- Peter Gordon Provided support for native AmigaOS4 compiling.
- Richard Hable Contributed the initial version of the REU emulation.
- Shawn Hargreaves Wrote Allegro, the graphics and audio library used in the DOS version.
- Ville-Matias Heikkila Rewrote the vic20 sound code.
- David Holz Provided a label file which gives the built-in monitor the labels for the C64.
- Nathan Huizinga Added support for Expert and Super Snapshot carts.
- Derrick Inksley Fixed loading of zip files with brackets ([]) in the filename for the windows port. Added drive selection functionality to the window sdl port. Some drive sound fixes. Fixed some windows drag'n'drop issues. Fixed some monitor code issues.
- Craig Jackson Contributed miscellaneous patches in the old X64 times.
- Dirk Jagdmann Wrote the Catweasel sound driver.
- Uffe Jakobsen Wrote the Silverrock cartridge emulation and fixed the ocean cartridge bank wrap. Fixed some network code issues. Fixed some monitor issues. Provided some SDL port fixes.
- Lasse Jyrkinen Contributed miscellaneous patches in the old X64 times.
- Peter Karlsson Provided the swedish UI translations in the past.
- Greg King Added a working RTC to the emulation of the IDE64 cartridge. Provided some vdrive fixes. Added Inkwell Systems lightpen support. Fixed some monitor code issues. Provided some windows port fixes. Provided some SDL port fixes.
- Michael Klein Fixed some MacOSX code issues. Contributed the ESD sound driver, basic support for the OPENCBM library and some other patches.
- Frank König Contributed the Win32 joystick autofire feature.
- Bernd Kortz Provided some fixes for ZETA and the ZETA binary package.
- Bernhard Kuhn Made some joystick improvements for Linux.
- Alexander Lehmann Added complete support for all the VIC20 memory configurations for the old VICE 0.12.
- Ilkka "itix" Lehtoranta Provided the routines for the cybergraphics support for the Amiga ports.
- Magnus Lind Atari ST mouse and Atari CX-22 trackball emulation and pixel aspect fixes. Improved the Amiga mouse emulation. Improved the vic20 sound output. Added windows POV hat support. Improved sound fragment size handling. Provided some windows fixes. Provided some gtk port fixes. Provided some SDL port fixes.
- Lioncash Provided some c1541 fixes. Fixed some 'geninfocontrib' helper tool issues. Fixed some 'embedded' build issues. Fixed some memory leaks.
- Locnet Made the initial android port of x64.
- Wolfgang Lorenz Wrote an excellent 6510 test suite that helped us to debug the CPU emulation.
- lvd Provided some monitor fixes.
- Marko Mäkelä Wrote lots of CPU documentation. Wrote the VIC Flash Plugin cartridge emulation in xvic. Wrote the Ultimem cartridge emulation in xvic.
- mar77i Fixed some resource handling issues.
- Robert McIntyre Bugged people enough to get the improved g64 support rolling, updated g64 support to allow variable-length tracks, and performed initial development of half-track support.
- Robert W. McMullen Provided parts of the widget set for implementing the Xaw GUI.
- Jennifer Medkief Was in charge of checking up on the GUIs for elements that are wrong, unaccessable, and missing.
- Dan Miner Contributed some patches to the fast disk drive emulation.
- mjhn Provided some *nix 'readme' fixes.
- Moiree Provided some command line fixes. Improved the build system. Fixed some vsid bugs. Fixed some SDL GUI issues. Fixed some documentation items.
- Luca Montecchiani Contributed a new Unix joystick driver.
- Wolfgang Moser Provided small optimization fixes to the GCR code, provided an excellent REU test suite and added REU fixes, and is always the good guy reviewing and commenting changes in the background.
- Roberto Muscedere Improved support for REL files in vdrive. Added Lt. Kernal Host Adaptor, CMD HD, CMD RAMLINK, and CBM D9090/60 emulation. Added D90 support to vdrive. Added joyport attached paperclip 64E, paperclip 64SC, and paperclip 2 dongle.
- Leandro Nini Improved ReSID emulation. And fixed some c64dtv cpu opcode issues.
- Tomi Ollila Donated `findpath.c`.
- Per Olofsson Digitalized the C64 colors used in the (old) default palette.
- Lasse Öörni Contributed the Windows Multimedia sound driver
- Stein Pedersen Fixed windows midi driver for 64bit windows.
- Helfried Peyrl Supplied a patch that fixes REL file records larger 256 bytes when using vdrive. Christopher Phillips Fixed and improved some Mac OS X gui items.
- Frank Prindle Contributed some patches.
- Giuliano Procida Used to maintain the VICE `deb` package for the Debian distribution, and also helped proofreading the documentation.
- Vesa-Matti Puro Wrote the very first 6502 CPU emulator in x64 0.1.0. That was the beginning of the story...
- Rami Rasanen Rewrote the VIC20 sound code.
- Peter Rittwage Made 1541 GCR hardware tests.
- David Roden Fixed various issues related to ffmpeg settings.
- Mathias Roslund Provided the AmigaOS4 port.
- Gunnar Ruthenberg Provided some VIC-II enhancements and improved the Win32 port.
- Johan Samuelsson Provided the Swedish Amiga translations.
- Oliver Schaertel Wrote the X11 full screen, parts of custom ROM set support and 1351 mouse emulation for unix.
- Peter Schepers Contributed a document describing the G64 image format.
- Michael Schwendt Helped with the SID (audio) chip emulation, bringing important suggestions and bug reports, as well as the wave tables and filter emulation from his SIDplay emulator.
- Heiko Selber Contributed some VIC20 I/O patches.
- John Selck Improved the video rendering and added the fast PAL emulation. Implemented new color generation based on P. Timmermanns knowledge.
- Chris Sharp Wrote the AIX sound driver.
- Andr351 "JoBBo" Siegel Provided the native MorphOS icons.
- Harry "Piru" Sintonen Provided lots of fixes and improvements for the Amiga ports.
- Manfred Spraul Wrote the Win32 text lister.
- Markus Stehr Provided the MMC64 emulation.
- Michael Steil Provided some c1541 fixes.
- Dominique Strigl Contributed miscellaneous patches in the old X64 times.
- Samuli Suominen Fixed XShm includes for newer xextproto versions and updated libpng check for newer versions.
- Steven Tieu Added initial support for 16/24 bpp X11 displays.
- Philip Timmermann Did a lot of research about the VIC-II colors.
- TMLPiper Provided fixes for the osx port.
- Brian Totty Provided parts of the widget set for implementing the Xaw GUI.
- Mustafa "GnoStiC" Tufan Made improvements to the GP2x port.
- Lionel Ulmer Implemented joystick support for Linux and a first try of a SID emulation for SGI machines.
- vonred Added multiple monitor support to the windows port.
- Krister Walfridsson Implemented joystick and sound support for NetBSD.
- webulator Provided Win32 drag & drop support
- Robert Willie Added some additional commands to the fsdevice emulation.
- Peter Weighill Gave many ideas and contributed the ROM patcher.
- Gerhard Wesp Contributed the `extract` command in `c1541`.
- Maciej Witkowiak Did some IDE64 and C1541 fixes.
- David Wood Provided some monitor fixes.
- Count Zero Fixed some monitor issues.
- Bjoern Odendahl Created the new VICE logo and volunteered to create new icons.

(We hope we have not forgotten anybody; if you think we have, please tell us.)

The people around the world providing results from running our test programs on various machines deserve a special mention:

- hedning (Drean C64 PAL-N, various C64 PAL boxes)
- Jason Compton (Various C64 and C128 NTSC boxes)
- The Woz (Drean C64 PAL-N)
- Thierry (Drean C64 PAL-N)
- MOS6569 (C64C PAL)
- Mike (VIC-20 PAL)
- Wilson (VIC-20 NTSC)
- Vicassembly (VIC-20 NTSC)
- David "jbevren" Wood (C64 NTSC-OLD)

Thanks also to everyone else for sending suggestions, ideas, bug reports, questions and requests. In particular, a warm thanks goes to the following people:

- Lutz Sammer
- Ralph Mason
- George Caswell
- Jasper Phillips
- Luca Forcucci
- Asger Alstrup
- Bernhard Schwall
- Salvatore Valente
- Arthur Hagen
- Douglas Carmichael
- Ferenc Veres
- Frank Reichel
- Ullrich von Bassewitz
- Holger Busse
- David "jbevren" Wood
- Gary Glenn

Last but not least, a very special thank to Andreas Arens, Lutz Sammer, Edgar Tornig, Christian Bauer, Wolfgang Lorenz, Miha Peternel, Per Håkan Sundell, David Horrocks, Benjamin Rosseaux and William McCabe for writing cool emulators to compete with. `:-)`

Go to the first, previous, next, last section, table of contents.