Release 43 ("Stockholm")
Release 43 ("Stockholm")
This is the second release of x16-rom by the X16Community team
- KERNAL
- BREAKING CHANGE
- The keyboard protocol between the SMC and the KERNAL has changed. This release requires a firmware update to the System Management Controller on hardware, or on emulator, release R43 or later.
- This change also affects how the custom keyboard handler vector works (keyhdl). For details, see Chapter 2 of the Programmer's Reference Guide
- Your Keyboard will not work unless you are running
- R43 of both x16-rom and x16-emulator (on emulator)
- R43 of both x16-rom and x16-smc (on hardware)
- Build
- Add git signature to ROM build process
- Update source to use zp addressing mode where appropriate, which suppresses warnings about using absolute mode for zp addresses.
- Due to cc65's use of KERNAL RAM locations,
.assert
s were added to try to stablize RAM locations that are hardcoded in cc65's constants file.
- Hardware support
- Additional support for display preferences and keymap stored in nvram
- Support VPB. Hardware with this design sets the hardware ROM bank to 0 immediately before reading a ROM vector. The previous ROM bank will still be in zp
$01
upon interrupt handler entry. - Bugfix: fix joysticks always being detected
- Editor/Display
- New bordered screen modes to support CRTs
- New behavior for the END key. END will go to the end of the current line. Shift+END will go to the last line on the screen.
- PS/2 Delete key now deletes the character underneath the cursor.
- Blinking cursor should be more visible during movement.
- Support for automatically setting 240p in NTSC and RGB modes for screen modes that are scaled 2x vertically.
- New skinny PET style PETSCII and ISO charsets.
- Replace bold ISO charset [akumanatt]
- BASIC
- New logo splash logic for smaller screen modes
- Show git signature in BASIC splash screen under non-releases
REBOOT
andRESET
behaviors swapped.- Add "I" (instrument) to playstring macros for FMPLAY, PSGPLAY, and friends.
- Bugfix: If unable to read color pref from nvram, use the default white on blue.
- Show DOS status after
SAVE
andDOS
commands. - Modify the output of F-keys in the BASIC editor. Removed F9 for keymap cycling.
- Bugfix: Better support for reading CBM drives' status with the
DOS
command. - Make
FRE(n)
always return a positive value. - New BANNEX (BASIC annex) for overflow code from BASIC.
- New commands:
MENU
- load utilityREN
- renumber BASIC programLINPUT
- Read line from keyboardLINPUT#
- Read delimited data from fileBINPUT#
- Read fixed-length data from fileHELP
- Show short help blurb and hardware versions.
- New functions:
POINTER()
- return pointer to variable structureSTRPTR()
- return pointer to string variable's dataRPT$()
- return a string made up of a repeated byte
- MONITOR
- Bugfix: Better support for reading CBM drives' status with the
@
command - Bugfix: Clear bank flags at init [stefan-b-jakobsson]
- Bugfix: Better support for reading CBM drives' status with the
- API
- Allow
sprite_set_position
to retain existing priority/flip values in attribyte byte 6.
- Allow
- GRAPH
- Fully implement
fb_fill_pixels
[stople]
- Fully implement
- BREAKING CHANGE
KNOWN BUGS
In release R43, due to improper parsing of escape tokens, REN
will improperly treat arguments to these statements as line numbers:
FRAME
RECT
MOUSE
COLOR
PSGWAV