|
1 | 1 | # Changelog |
2 | 2 |
|
3 | 3 | - Unreleased |
4 | | - - DATE |
| 4 | + - DATE (**Major UI Change**) |
5 | 5 | - Support additional method of entry of Duration objects: |
6 | 6 | - compact string form, `{dd}D{hh}H{mm}M{ss}S`, e.g. `1D30M2S` for |
7 | 7 | `DR{1,0,30,2}`. |
|
23 | 23 | - Assume that `DT` (DateTime) is always in UTC timezone whenever its |
24 | 24 | timezone is needed in a calculation |
25 | 25 | - HMS functions |
26 | | - - Add `HMS+` and `HMS-` menu functions. |
| 26 | + - **New** Add `HMS+` and `HMS-` menu functions under `CONV` menu folder. |
27 | 27 | - **Bug Fix**: Add normalization to `>HMS` conversion function to |
28 | 28 | prevent bug that caused `[1.32] [1.32] [HMS+]` to return `3.0360` |
29 | 29 | instead of `3.04`. |
30 | 30 | - Validate `mm` and `ss` fields of `hh.mmss` and throw `Err:Invalid` if |
31 | 31 | greater than than 60. |
32 | | - - UNIT menu |
| 32 | + - UNIT menu (**Complete Reimplementation**) |
33 | 33 | - Reimplement the underlying architecture using a workflow similar to |
34 | 34 | the UNITS menu of the HP-19BII and TI-85 |
35 | 35 | - Pressing a UNIT menu converts a Real number to a Denominate number |
|
48 | 48 | - Support most NUM operations on units: `%`, `%CH`, `IP`, `FP`, |
49 | 49 | `FLR`,`CEIL`, `NEAR`, `ABS`, `SIGN`, `MOD`, `MIN`, `MAX`, `RNDF`, |
50 | 50 | `RNDN`, `RNDG` (i.e. all NUM functions except GCD, LCM, and PRIM) |
51 | | - - BASE |
| 51 | + - Support Storage Register arithmetics with UNIT objects. |
| 52 | + - BASE (**UI Reorganization**) |
52 | 53 | - move most menu functions under 5 new subfolders: LOGI, ROTS, BITS, |
53 | 54 | BFCN, BCFS ("Configs" or "Carry Flag and Word Size") |
54 | 55 | - rename (B+ B- B* B/) to (BAS+ BAS- BAS* BAS/) for better |
55 | 56 | self-documentation |
56 | 57 | - no functional change |
57 | | - - RPN Stack |
| 58 | + - RPN Stack (**Bug Fixes**) |
58 | 59 | - **Bug Fix**: Fix incorrect stack lift behavior for functions that |
59 | 60 | produce a value without consuming the X register (e.g. PI, E, MEAN). |
60 | 61 | Previously, these functions would ignore the 'disable stack lift' |
61 | 62 | setting. Now, they will correctly interpret that flag and overwrite |
62 | 63 | the existing X register. |
63 | | - - Handle an empty string input buffer correctly for all commands |
64 | | - including the 'disable stack lift' behavior. |
65 | | - - Avoid terminating the input buffer when a command with argument is |
66 | | - canceled using `ON/EXIT`: `RCL`, `STO`, `FIX`, `SCI`, `ENG`, `SSIZ`, |
67 | | - `RSIZ`, `WSIZ`, `RNDN`. The user can continue to edit the input buffer |
68 | | - after canceling. |
69 | | - - Avoid terminating the input buffer for commands which do not |
70 | | - consume the `X` register, but simply cause an internal state change: |
71 | | - all menu navigation commands (Up, Down, Home, menu folders), DEG, RAD, |
72 | | - RRES, CRES, FIX, SCI, ENG, SSIZ, RSIZ, WSIZ, CCF, SCF. |
| 64 | + - **Bug Fix**: Preserve `LASTX` during `CLST` (Clear Stack), consistent |
| 65 | + with HP-42S. |
| 66 | + - **Bug Fix**: Handle an empty string input buffer correctly for all |
| 67 | + commands including the 'disable stack lift' behavior. |
73 | 68 | - Handle edge case of `STO` which consumes `X` but spits back the same |
74 | 69 | value. Input termination must occur and stack lift must be enabled. |
75 | 70 | - Terminate input buffer and correctly enable stack lift for stack |
76 | 71 | manipulation commands: `DUP`, `Rollup`, `Rolldown`, `DROP`, `X<>Y`. |
77 | | - - **Bug Fix**: Preserve `LASTX` during `CLST` (Clear Stack), consistent |
78 | | - with HP-42S. |
79 | | - - Key bindings |
| 72 | + - Input Termination (**Consistency**) |
| 73 | + - Update all functions and menu navigation to avoid input termination |
| 74 | + for as long as it makes sense. See the new [Input |
| 75 | + Termination](docs/USER_GUIDE_BASIC.md#input-termination) section for |
| 76 | + full details. |
| 77 | + - Key bindings (**New**) |
80 | 78 | - Add `2ND v` as a shortcut to `UVAL` menu function under `UNIT`. Allows |
81 | 79 | quick extraction of the value part of a Denominate object. |
82 | | - - SHOW |
| 80 | + - SHOW (**Workflow**) |
83 | 81 | - Pass along most button keys to the main command processor so that |
84 | 82 | their normal function are directly invoked from SHOW mode. Previously, |
85 | 83 | all button presses were consumed by the SHOW mode. So to enter a new |
|
0 commit comments