From 0b580ad05da4840cb0bed0d23ebd8759b4123abc Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Thu, 1 Jun 2023 20:23:04 +0200 Subject: [PATCH] v9 upgrading doc --- docs/source/todo.rst | 19 +------------------ docs/source/upgrading8.rst | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/docs/source/todo.rst b/docs/source/todo.rst index 5ebebac22..a842d6814 100644 --- a/docs/source/todo.rst +++ b/docs/source/todo.rst @@ -1,24 +1,7 @@ TODO ==== -For 9.0 major changes -^^^^^^^^^^^^^^^^^^^^^ -- DONE: added 'cbm' block in the syslib module that now contains all CBM compatible kernal routines and variables -- DONE: added min(), max() builtin functions. For floats, use floats.minf() and floats.maxf(). -- DONE: added clamp(value, minimum, maximum) to restrict a value x to a minimum and maximum value. For floats, use floats.clampf(f, minv, maxv). -- DONE: rename sqrt16() to just sqrt(), make it accept multiple numeric types including float. Removed floats.sqrt(). -- DONE: abs() now supports multiple datatypes including float. Removed floats.fabs(). -- DONE: divmod() now supports multiple datatypes. divmodw() has been removed. -- DONE: cx16diskio module merged into diskio (which got specialized for commander x16 target). load() and load_raw() with extra ram bank parameter are gone. -- DONE: drivenumber parameter removed from all routines in diskio module. The drive to work on is now simply stored as a diskio.drivenumber variable, which defaults to 8. -- DONE: for loops now skip the whole loop if from value already outside the loop range (this is what all other programming languages also do) -- DONE: asmsub params or return values passed in cpu flags (like carry) now must be declared as booleans (previously ubyte was still accepted). -- DONE: (on cx16) added diskio.save_raw() to save without the 2 byte prg header -- DONE: added sys.irqsafe_xxx irqd routines -- DONE: added gfx2.fill() flood fill routine -- DONE: added @split storage class for (u)word arrays to store them as split lsb/msb arrays which is more efficient (but doesn't yet support all array operations) -- DONE: added -splitarrays command line option and '%option splitarrays' to treat all word arrays as tagged with @split - +... Need help with diff --git a/docs/source/upgrading8.rst b/docs/source/upgrading8.rst index 53216aa09..bfd2deb06 100644 --- a/docs/source/upgrading8.rst +++ b/docs/source/upgrading8.rst @@ -4,6 +4,27 @@ Upgrading from version 8 How to upgrade older programs written for Prog8 version 8 or earlier to version 9. +List of new stuff in version 9 +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Details of several important ones and how to convert version 8 code can be found below this list. + +- added 'cbm' block in the syslib module that now contains all CBM compatible kernal routines and variables +- added min(), max() builtin functions. For floats, use floats.minf() and floats.maxf(). +- added clamp(value, minimum, maximum) to restrict a value x to a minimum and maximum value. For floats, use floats.clampf(f, minv, maxv). +- rename sqrt16() to just sqrt(), make it accept multiple numeric types including float. Removed floats.sqrt(). +- abs() now supports multiple datatypes including float. Removed floats.fabs(). +- divmod() now supports multiple datatypes. divmodw() has been removed. +- cx16diskio module merged into diskio (which got specialized for commander x16 target). load() and load_raw() with extra ram bank parameter are gone. +- drivenumber parameter removed from all routines in diskio module. The drive to work on is now simply stored as a diskio.drivenumber variable, which defaults to 8. +- for loops now skip the whole loop if from value already outside the loop range (this is what all other programming languages also do) +- asmsub params or return values passed in cpu flags (like carry) now must be declared as booleans (previously ubyte was still accepted). +- (on cx16) added diskio.save_raw() to save without the 2 byte prg header +- added sys.irqsafe_xxx irqd routines +- added gfx2.fill() flood fill routine +- added @split storage class for (u)word arrays to store them as split lsb/msb arrays which is more efficient (but doesn't yet support all array operations) +- added -splitarrays command line option and '%option splitarrays' to treat all word arrays as tagged with @split + + ``cx16diskio`` is now just ``diskio`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^