|
1 | 1 | # Changelog |
2 | 2 |
|
3 | 3 | - Unreleased |
| 4 | +- 1.1.0 (2025-10-07) |
| 5 | + - DATE (**Major UI Change**) |
| 6 | + - Support additional method of entry of Duration objects: |
| 7 | + - compact string form, `{dd}D{hh}H{mm}M{ss}S`, e.g. `1D30M2S` for |
| 8 | + `DR{1,0,30,2}`. |
| 9 | + - Obsoletes the "Duration Colon Modifier" entry form |
| 10 | + `{nn}:{modifier}`. Currently retained for backwards |
| 11 | + compatibility. |
| 12 | + - incremental building of Duration components using the `DAY>`, |
| 13 | + `HR>`, `MIN>`, and `SEC>` menu functions |
| 14 | + - Add MenuFolder for the 7 Date types: `D`, `T`, `DT`, `TZ`, `DZ`, `DR`, |
| 15 | + `DW` |
| 16 | + - add convenience menu function that inserts the Date-type prefix |
| 17 | + (i.e. "D{", "T{", "DT{", "TZ{", "DZ{", "DR{", "DW{"), to make |
| 18 | + entering Date-objects much easier |
| 19 | + - add complete list of polymorphic functions that apply to each |
| 20 | + Date-object under each menu folder |
| 21 | + - Remove `DOPS` folder, and scatter its functions (`LEAP`, `DSHK`, |
| 22 | + `DEXD`, `DCUT`, `DLNK`) under the 3 Date-object folders which support |
| 23 | + them: `D`, `DT`, `DZ` |
| 24 | + - Assume that `DT` (DateTime) is always in UTC timezone whenever its |
| 25 | + timezone is needed in a calculation |
| 26 | + - HMS functions |
| 27 | + - **New** Add `HMS+` and `HMS-` menu functions under `CONV` menu folder. |
| 28 | + - **Bug Fix**: Add normalization to `>HMS` conversion function to |
| 29 | + prevent bug that caused `[1.32] [1.32] [HMS+]` to return `3.0360` |
| 30 | + instead of `3.04`. |
| 31 | + - Validate `mm` and `ss` fields of `hh.mmss` and throw `Err:Invalid` if |
| 32 | + greater than than 60. |
| 33 | + - UNIT menu (**Complete Reimplementation**) |
| 34 | + - Reimplement the underlying architecture using a workflow similar to |
| 35 | + the UNITS menu of the HP-19BII and TI-85 |
| 36 | + - Pressing a UNIT menu converts a Real number to a Denominate number |
| 37 | + (i.e. a number with units). |
| 38 | + - Pressing a subsequent UNIT menu converts that Denominate number |
| 39 | + into the unit requested by the menu key. |
| 40 | + - Support misc Unit Functions (UFCN) |
| 41 | + - UVAL: return display value without units |
| 42 | + - UBAS: convert to its "base unit" |
| 43 | + - Increase number of supported units from 30 to 169. |
| 44 | + - Support *all* units in the HP-19BII and the TI-85. |
| 45 | + - Reorganize UNIT menus across 13 sub MenuFolders: UFCN, LENG, AREA, |
| 46 | + VOL, TEMP, MASS, FORC, PRES, ENER, TIME, SPD, PWR, FUEL. |
| 47 | + - Support basic arithmetic operations on units: `CHS`, `+`, `-`, `*`, |
| 48 | + `/` |
| 49 | + - Support most NUM operations on units: `%`, `%CH`, `IP`, `FP`, |
| 50 | + `FLR`,`CEIL`, `NEAR`, `ABS`, `SIGN`, `MOD`, `MIN`, `MAX`, `RNDF`, |
| 51 | + `RNDN`, `RNDG` (i.e. all NUM functions except GCD, LCM, and PRIM) |
| 52 | + - Support Storage Register arithmetics with UNIT objects. |
| 53 | + - BASE (**UI Reorganization**) |
| 54 | + - move most menu functions under 5 new subfolders: LOGI, ROTS, BITS, |
| 55 | + BFCN, BCFS ("Configs" or "Carry Flag and Word Size") |
| 56 | + - rename (B+ B- B* B/) to (BAS+ BAS- BAS* BAS/) for better |
| 57 | + self-documentation |
| 58 | + - no functional change |
| 59 | + - RPN Stack (**Bug Fixes**) |
| 60 | + - **Bug Fix**: Fix incorrect stack lift behavior for functions that |
| 61 | + produce a value without consuming the X register (e.g. PI, E, MEAN). |
| 62 | + Previously, these functions would ignore the 'disable stack lift' |
| 63 | + setting. Now, they will correctly interpret that flag and overwrite |
| 64 | + the existing X register. |
| 65 | + - **Bug Fix**: Preserve `LASTX` during `CLST` (Clear Stack), consistent |
| 66 | + with HP-42S. |
| 67 | + - **Bug Fix**: Handle an empty string input buffer correctly for all |
| 68 | + commands including the 'disable stack lift' behavior. |
| 69 | + - Handle edge case of `STO` which consumes `X` but spits back the same |
| 70 | + value. Input termination must occur and stack lift must be enabled. |
| 71 | + - Terminate input buffer and correctly enable stack lift for stack |
| 72 | + manipulation commands: `DUP`, `Rollup`, `Rolldown`, `DROP`, `X<>Y`. |
| 73 | + - Input Termination (**Consistency**) |
| 74 | + - Update all functions and menu navigation to avoid input termination |
| 75 | + for as long as it makes sense. See the new [Input |
| 76 | + Termination](docs/USER_GUIDE_BASIC.md#input-termination) section for |
| 77 | + full details. |
| 78 | + - Key bindings (**New**) |
| 79 | + - Add `2ND v` as a shortcut to `UVAL` menu function under `UNIT`. Allows |
| 80 | + quick extraction of the value part of a Denominate object. |
| 81 | + - SHOW (**Workflow**) |
| 82 | + - Pass along most button keys to the main command processor so that |
| 83 | + their normal function are directly invoked from SHOW mode. Previously, |
| 84 | + all button presses were consumed by the SHOW mode. So to enter a new |
| 85 | + number from SHOW mode, the digit key (0-9) had to be pressed twice. |
| 86 | + - Preserve previous behavior for 4 buttons: `DEL`, `CLEAR`, `ENTER`, |
| 87 | + `ON/EXIT`. These buttons are consumed by the SHOW mode, and simply |
| 88 | + cause the SHOW mode to exit back to the normal mode. The user must |
| 89 | + press these buttons again in normal mode to invoke their normal |
| 90 | + function. |
| 91 | + - RPN83P application size |
| 92 | + - increase to 64kiB (4 flash pages) from 48kiB |
| 93 | + - **WARNING** Most MODE settings will be lost when upgrading from v1.0 to |
| 94 | + v1.1. Variables and registers will be preserved. |
| 95 | + - Lost |
| 96 | + - Pending entry in the input buffer |
| 97 | + - FIX, SCI, ENG selection |
| 98 | + - Trig modes (DEG, RAD) |
| 99 | + - Complex result (CRES,RRES) |
| 100 | + - Complex display modes (RECT, PRAD, PDEG) |
| 101 | + - `,EE` or `EE,` selection |
| 102 | + - `{..}` or `".."` selection |
| 103 | + - 'BASE > DEC|BIN|OCT|HEX' selection |
| 104 | + - 'BASE > WSIZ' selection |
| 105 | + - 'BASE > CF' flag |
| 106 | + - 'DATE > EPCH' selection and custom epoch date |
| 107 | + - 'DATE > CLK > ATZ' application timezone |
| 108 | + - 'DATE > CLK > CTZ' clock timezone |
| 109 | + - TVM Solver parameters: IYR1, IYR2, TMAX |
| 110 | + - Preserved |
| 111 | + - Storage registers (R00-R99) |
| 112 | + - Storage variables (A-Z,Theta) |
| 113 | + - RPN stack registers (X,Y,Z,T,A,B,C,D) |
| 114 | + - STAT registers (ΣX to ΣYLX) |
| 115 | + - TVM variables: N, I%YR, PV, PMT, FV, P/YR, C/YR, BEG, END |
4 | 116 | - 1.0.0 (2024-07-19) |
5 | 117 | - RPN83P is now out of beta! |
6 | 118 | - Documentation |
|
0 commit comments