Skip to content

Releases: commanderx16/x16-emulator

x16-emulator-r31

20 Sep 11:56
Compare
Choose a tag to compare

Main differences:

  • BREAKING CHANGE: VERA 0.8 register layout. All programs accessing VERA (VPOKE, vera_lo/mid/hi) need to be updated! Check the VERA Reference for more info: https://github.com/commanderx16/x16-docs/blob/master/VERA%20Programmer's%20Reference.md
  • ISO mode: hit Ctrl+o to switch to ISO mode: the character encoding is now ASCII/ISO-8859-15, and you can enter and print the following characters: "¡¢£€¥Š§š©ª«¬®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ". You will need to enter BASIC keywords in upper case!

Emulator:

  • VERA 0.8 register layout
  • removed "-char" (character ROM is now part of rom.bin)
  • GIF recording using -gif [Neil Forbes-Richardson]
  • numpad support [Maurizio Porrato]
  • fake support of VIA timers to work around BASIC RND(0)
  • default ROM is taken from executable's directory [Michael Watters]
  • emulator window has a title [Michael Watters]
  • -debug allows specifying a breakpoint [Frank Buss]
  • package contains the ROM symbols in rom.txt
  • support for VERA SPI

ROM:

  • switched to VERA 0.8 register layout; character ROM is uploaded on startup
  • ISO mode: ISO-8859-15 character set, standard ASCII keyboard
  • keyboard
    • completed US and UK keymaps so all C64 characters are reachable
    • support for AltGr
    • support for F9-F12
  • allow hex and binary numbers in DATA statements [Frank Buss]
  • switched SD card from VIA SPI to VERA SPI (works on real hardware!)
  • fix: VPEEK overwriting POKER ($14/$15)
  • fix: STOP sometimes not registering in BASIC programs

Known Issues:

  • Emulator: LOAD"$ (and LOAD"$",1) will show host uppercase filenames as garbage. Use Ctrl+o to switch to ISO mode for a workaround.
  • Shift+AltGr keyboard combinations don't work

x16-emulator-r30

12 Sep 20:12
Compare
Choose a tag to compare

Emulator:

  • VERA can now generate VSYNC interrupts
  • added -keymap for setting the keyboard layout
  • added -scale for integer scaling of the window [Stephen Horn]
  • added -log to enable various logging features (can also be enabled at runtime (POKE $9FB0+) [Randall Bohn])
  • changed -run to be an option to -prg and -bas
  • emulator detection: read $9FBE/$9FBF, must read 0x31 and 0x36
  • fix: -prg and -run no longer corrupt BASIC programs.
  • fix: LOAD,1 into RAM bank [Stephen Horn]
  • fix: 2bpp and 4bpp drawing [Stephen Horn]
  • fix: 4bpp sprites [MonstersGoBoom]
  • fix: build on Linux/ARM

ROM:

  • support for 13 keyboard layouts; cycle through them using F9
  • GETJOY call will fall back to keyboard (cursor/Ctrl/Alt/Space/Return), see Programmer's Reference Guide on how to use it
  • startup message now shows ROM revision
  • $FF80 contains the prerelease revision (negated)
  • the 60 Hz IRQ is now generated by VERA VSYNC
  • fix: VPEEK tokenization
  • fix: CBDOS was not correctly preserving the RAM bank
  • fix: KERNAL no longer uses zero page $FC-$FE

Known Issues:

  • Emulator: LOAD"$ (and LOAD"$",1) will show host uppercase filenames as garbage. Use Ctrl+N to switch to the X16 upper/lower character set for a workaround.
  • BASIC: $ and % prefixes don't work for DATA entries
  • RND(0) always returns 0

x16-emulator-r29

06 Sep 17:11
Compare
Choose a tag to compare

Emulator:

  • better keyboard support: if you pretend you have a US keyboard layout when typing, all keys should now be reachable [Paul Robson]
  • -debug will enable the new debugger [Paul Robson]
  • runs at the correct speed (was way too slow on most machines)
  • keyboard shortcuts work on Windows/Linux: Ctrl + F/R/S/V
  • Ctrl + V pastes the clipboard as keypresses
  • -bas file.txt loads a BASIC program in ASCII encoding
  • -echo prints all BASIC/KERNAL output to the terminal, use it with LIST to convert a BASIC program to ASCII
  • -run acts like -prg, but also autostarts the program
  • JMP $FFFF and SYS 65535 exit the emulator and save memory the host's storage
  • the packages now contain the current version of the Programmer's Reference Guide (HTML)
  • fix: on Windows, some file load/saves may be been truncated

ROM:

  • fixed BRK handling in the monitor

Known issues:

  • Emulator: LOAD"$ (and LOAD"$",1) will show host uppercase filenames as garbage. Use Ctrl+N to switch to the X16 upper/lower character set for a workaround.
  • Emulator: -prg and -run may corrupt BASIC programs. Use the LOAD command in BASIC instead.
  • BASIC: $ and % prefixes don't work for DATA entries
  • KERNAL: The LOAD KERNAL API ignores the current RAM bank.
  • VPEEK might print errors in certain cases.

x16-emulator-r28

04 Sep 21:24
Compare
Choose a tag to compare
  • support for 65C02 opcodes [Paul Robson]
  • keep aspect ratio when resizing window [Sebastian Voges]
  • updated sprite logic to VERA 0.7 – the layout of the sprite data registers has changed, you need to change your code!

x16-emulator-r27

03 Sep 00:08
Compare
Choose a tag to compare

First public release. Available for macOS and Windows. Make sure to read the documentation included in the ZIP files.