Pixel exact emulation of the Commodore 128,Commodore 64, Spectrum 48/128K,VIC 20 and Atari 2600
Z64K should run on any platform with an updated java runtime environment installed. I will update this site when I get some free time but in the mean time feel free to drop me a message via the contact page with feedback or questions. The changelog only includes changes not shown on this homepage.
Use -Dsun.java2d.d3d=false Java VM option if UI shows glitches.
eg. use javaw -Dsun.java2d.d3d=false -jar Z64K.jar to start Z64Kvia command line.
*tip: ALT-ENTER togglesfullscreen mode
***JAVA 9, 10 and 11 users should use the –Dsun.java2d.uiScale=1.0 option if the screen does not render nicely on your setup. See https://bugs.openjdk.java.net/browse/JDK-8189416***
LINUX users: You might need to change the permission of Z64K.jar to allow execution. e.g. chmod +x Z64K.jar.
Latest version 2 of Z64K in development stage. Requires JRE 8 or better. For latest features use this version.*
* last updated 30 August 2021
Size : 2054.525 Kb
Type : jar
Size : 2.583 Kb
Type : txt
Size : 1104.5 Kb
Type : doc
Size : 6.989 Kb
Type : txt
Version 1 of Z64K..
Note: This version is no longer being updated except for bug fixes..
Size : 2158.658 Kb
Type : jar
- ALT+O = Toggle output of VICIIe/VDC to main screen (C128 only)
- ALT+2 = Toggle 2nd display ON/OFF (C128 only)
- ALT+ENTER = Toggle Fullscreen mode
- ALT+INSERT = Paste text from clipboard
- ALT+DELETE = Copy screen text to clipboard
- ALT+Q = Toggle capture mouse (C128 & C64)
- ALT+R = Soft reset
- CTRL+ALT+R = Hard reset
- ALT+W = Toggle Warp mode
The following keymappings override the values in the keyboard configuration editor for the C128
F9 = F1/F2
Other changes are:-
PC CAPS LOCK = C128 SHIFT LOCK
For emulated NUMPAD Joystick Num Lock needs to be OFF.
C128 NUMPAD keys works with Num Lock ON.
There is an option to enable/disable extra c128 keys via settings==>setup==>Extended Keyboard keys in the latest downloadable version of the emulator. Default is enable extended keyboard keys in C128/CPM modes only.
The C128 Direction keys are mapped to PC cursor keys, and CRSR U/D and CRSR L/R mapped to PC NUMPAD / and * when Extended Keyboard keys enabled.
Version 1- http://www.z64k.com/resources/Z64K.jar
Version 2 (in development) - http://www.z64k.com/resources/version2/Z64K.jar
UNLESS otherwise stated assume updates apply to Version 2 of Z64K only
- Fixed reset bug that wasn't clearing Z80 HALT state when interrupts were disabled.
- Improvements with Z80 HALT timing
- More improvements to ZX spectrum snow effect
- Applied some improvements to ZX Spectrum snow effect as discussed at Playing Robotics on ZX UNO+ - Page 3 - Spectrum Computing Forums
- Setting of Z80 registers using machine monitor is now functional
- Setting of Z80/6502 registers with machine monitoruses current radix
- C128 d7xx floating IO
- refresh DRAM in 2 Mhz mode reads valid data. https://sourceforge.net/p/vice-emu/code/HEAD/tree/testprogs/c128/openio/htst.prg flickers display like real hardware
- Default internal modem with echo off, verbose on, and quiet on.
- Improved internal modem Hayes command set.
- Option to disable userport rs232 modem emulation. Allows connection to tcpser etc.
- Fixed broken fast 1581 serial caused by recent changes to support UP9600
- Included a default keyboard mapping for German keyboards thanks to Tokra . Disclaimer: not thoroughly tested but is much better than the default English mapping when using a German Keyboard. :)
- Fixed restore key for VIC20.
- VIC 20 uses mike-pal.vpl as default
- Some minor fixes with timing of VIC interlace signal
- Userport rs232 modem synchronisation greatly improved. Data transfers much more reliable with UP9600 and standard userport drivers.
- Minor adjustment to value read for VIC $9004 register when in NTSC mode depending on cycle
- Added UP9600 rs232 modem support.
- Fixed bug with automatic loading of SDR value into CIA shift register when loaded at same time as final bit of previous SDRshifted out.
- Improvements to Userport RS232. Huge improvement with sending valid data!
- Fixed ZX spectrum settings title
- Allow ZX spectrum to be default application on startup
- Fixed bug with command line option -limitcycles that caused it not to trigger with TestBench scripts.
- Minor change to latching behaviour to trigger on correct edge as set in ACR. Drive sends pulse from byte ready signalto trigger latching.
- Update to VIA port latching. Fixes VICE bug#582 and Freespin still works!
- Fixed bug with VIA latching not clearing when CA1 interrupt is cleared. Freespin demo doesn't crash anymore. :)
- Added undocumented drive machine monitor commands motor and track
motor [on:off] - turn motor on/off , without arguments prints status of drive motor
track [in:out] - move rw head in/out 1 half track, without arguments prints current track
- Adjusted disk SYNC detection. his-protection test passes.
- Enabled Internal Palette selector available in settings.
- Updated default VDC palette to c128-vdc-deekay.vpl as suggested by Deekay in the readme of the Colour Spectrum demo.
- Freespin runs on 1571 drive in addition to 1541
- C128 support of drive GPU required for Freespin demo
- Improved sync detection. Freespin display a lot more stable (when it actually runs).
- Fixed bug with VIA reset code that would lock drive if PB7 output was on. Freespin no longer locks the drive after reset.
- Show correct frames/second in the frame title for all video chips, including simulated drive gpu.
- Added sound support for Freespin demo. note: Demo still does not run reliably every time yet in emulation but it is improving.
- Improved Freespin demo support. Better drive sync detection. Displays graphical effects correctly (when it works) warning: sometimes crashes the drive where the entire emulator needs to be closed and restarted. Freespin support is still a work in progress.
To play the Freespin demo, after the drive code has loaded, select Drive GPU from Machine settings==> Model panel. When screen turn blacks reattach the same disk image to start the demo.
- Fix debugging of Z80 LD A,I and LD A,R
- Added option to use disk drive as GPU for Freespin demo. note: Not reliable and does not play sounds yet.
- Some improvements to userport rs232 emulation.