Commit Graph

124 Commits

Author SHA1 Message Date
Dr-Carlos ac7f1eb073 _if: clang-format 2023-08-27 20:08:15 +09:30
Dr-Carlos 46aad4e2d6 _h: print formattable values 2023-08-27 07:19:40 +09:30
Lephenixnoir 0373ae50fe
_ic: also print claims owned by provided address 2023-08-20 20:27:52 +02:00
Lephenixnoir 2dbd910379
fxos, _if: add insufficient call analysis
We look for constants in call instruction parameters, but this only
works for jsr because the register argument in [jmp @rn] is not known to
be a constant yet (some static analysis required).
2023-08-20 20:23:30 +02:00
Lephenixnoir df4bba2c1a
fxos: analyze pcrel in cfg (for future call analysis)
This will not cover advanced stuff that relies on static analysis, but
we don't care at the moment.
2023-08-20 19:42:06 +02:00
Lephenixnoir 12e6cd45a4
_am: add search for OS main menu function 2023-08-20 18:52:34 +02:00
Lephenixnoir 0f23fec85d
shell: fix double syntax errors aborting program
Type e.g. "e 1 + 2 * 3". The first "+" throws a syntax error
(parentheses are needed around expressions) and the "*" another one
during the final exhaust_until_separator phase, which wasn't protected
by a try/catch.
2023-08-20 18:31:30 +02:00
Lephenixnoir 44babe3baf
lib: allow declaring exclusive claims multiple times 2023-08-20 18:31:30 +02:00
Lephenixnoir 97029d4f3e
clang-format and other minor changes 2023-08-20 17:54:03 +02:00
Lephenixnoir a399ed31d7
relconst: fix a printing bug causing some constants to show as 0
Constants (no base) that fit on a single byte would print as 0 due to
flawed logic.
2022-12-29 22:16:47 +01:00
Dr-Carlos 5e20cbe805 Merge pull request 'Add sort option to `is`' (#13) from Dr-Carlos/fxos:sort-is into master
Reviewed-on: #13
2022-12-23 21:30:26 +01:00
Dr-Carlos efaad5b980 add extra symbol comparison methods 2022-12-23 09:51:00 +11:00
Dr-Carlos b494a30404 _is: add sort option 2022-12-23 07:11:16 +11:00
Dr-Carlos f16ecc370c _e: print large demical representations correctly 2022-12-22 09:58:52 +11:00
Dr-Carlos 5a3de5aa17 Allow building fxos with Clang 2022-12-20 15:33:29 +10:30
Lephenixnoir bbd25b625c Merge pull request 'Remove `dr` and integrate into `d`' (#11) from Dr-Carlos/fxos:remove-dr into master
Reviewed-on: #11
2022-12-17 21:54:47 +01:00
Dr-Carlos 111620a649 _d: determine address or range in _d 2022-12-18 07:22:09 +10:30
Dr-Carlos c66ae1d5c6 _d: use expr_or_range to allow addresses or ranges 2022-12-17 20:37:56 +10:30
Dr-Carlos 2f2e4bb1d5 shell: provide parser with expr_or_range() function 2022-12-17 20:37:56 +10:30
Dr-Carlos 1082c451d2 Remove _dr and add token options to atom and expr 2022-12-17 20:37:56 +10:30
Lephenixnoir a277a4ffad
lexer: only allow one leading dot in symbols to avoid clash with ..
The latter is used for ranges. Previously 0..Bdisp_PutDisp_DD would
parse as 0 then the symbol `..Bdisp_PutDisp_DD`.
2022-12-08 17:46:41 +01:00
Lephenixnoir 0a908ad835 Merge pull request 'Update syntax in README' (#9) from Dr-Carlos/fxos:master into master
Reviewed-on: #9
2022-12-08 17:23:23 +01:00
Dr-Carlos ae8ed1fcdd _isc: print syscall to 4 hex digits 2022-12-05 12:19:38 +10:30
Dr-Carlos b402c1804d Update syntax in README 2022-12-04 21:40:57 +10:30
Lephenixnoir 27b2b044fd Merge pull request 'Print all syscalls to 4 hex figures' (#8) from Dr-Carlos/fxos:syscall-lengths into master
Reviewed-on: #8
2022-12-04 11:57:42 +01:00
Dr-Carlos 0e6cec0821 Print all syscalls to 4 hex figures 2022-12-04 21:15:25 +10:30
Lephenixnoir a005b57e72 Merge pull request 'Add vspace and syscall/address option to 'is' command' (#7) from Dr-Carlos/fxos:master into master
Reviewed-on: #7
2022-12-04 11:37:48 +01:00
Dr-Carlos dd09f9a71d _is: use optional, use FxOS log instead of fmt 2022-12-04 20:44:44 +10:30
Dr-Carlos 31406efc13 _is: info for specific symbols and vspace option 2022-12-04 14:34:43 +10:30
Dr-Carlos e5cab0cca9 Add vector include to semantics.h 2022-10-24 06:27:03 +10:30
Lephenixnoir 0bdb98562d Merge pull request 'Move vspace to option in isc command, adding custom addresses as positional arguments' (#6) from Dr-Carlos/fxos:isc into master
Reviewed-on: #6
2022-04-20 10:17:16 +02:00
Dr-Carlos 3308f72773 _isc: sort specific addresses if required 2022-04-19 21:51:27 +09:30
Dr-Carlos 771b12eab8 _isc: resolve vspace when parsing and misc fixes 2022-04-19 21:21:21 +09:30
Dr-Carlos 08c000539c _isc: use os->syscall_at instead of remove_if 2022-04-19 07:32:09 +09:30
Dr-Carlos e037d5889c _isc: print instead of throwing error 2022-04-19 07:13:07 +09:30
Dr-Carlos 86300fc1c7 _isc: add positional arg to specify printed info 2022-04-19 07:13:07 +09:30
Dr-Carlos 631482e4f5 _isc: add vspace as an option and fix it 2022-04-19 07:13:07 +09:30
Lephenixnoir 0f5c1c2eba
shell: improve error behavior of parser and autocompletion
* Example on _e, but other commands are probably affected
* When completing, throw CompletionRequest("_error", <message>) to have
  a reasonable output and not mess up readline
* Avoid early returns (or if a command really cannot be completed,
  adjust the ShellCommand declaration to not run the command)
* Less CommandError in the parser, these would throw during
  autocompletion and annoy everyone
* Allow options with empty value so that we don't throw when
  autocompleting after typing eg. 'vspace='
2022-04-18 11:55:25 +01:00
Lephenixnoir e0783c2348
shell: exhaust parser after parsing error 2022-04-18 11:30:49 +01:00
Lephenixnoir 707c154f00 Merge pull request 'Throw error when e vspace does not exist' (#5) from Dr-Carlos/fxos:master into master
Reviewed-on: #5
2022-04-18 12:07:25 +02:00
Dr-Carlos 789fc3325c _e: print instead of throwing error 2022-04-18 07:23:02 +09:30
Dr-Carlos 9b334d0ee0 _e: throw error when vspace does not exist 2022-04-16 07:53:27 +09:30
Lephenixnoir a6b66f380d Merge pull request 'Improve command classification' (#4) from Dr-Carlos/fxos:classification into master
Reviewed-on: #4
2022-04-15 22:57:40 +02:00
Dr-Carlos b7d9d82482 _ms: evaluate expressions 2022-04-16 06:13:34 +09:30
Lephenixnoir 358ce38db5
rename _ma to _ms (metadata symbol) 2022-04-15 11:19:32 +01:00
Dr-Carlos d943ba12c3 Merge branch 'master' into classification 2022-04-15 07:00:48 +09:30
Dr-Carlos 12845a1675 Improve command classification 2022-04-15 06:09:18 +09:30
Lephenixnoir e8616c4dcc
meta: ignore previous commit in git blame 2022-04-14 15:31:54 +01:00
Lephenixnoir cf2bc1870c
meta: provide automatic formatting with clang-format 2022-04-14 15:28:20 +01:00
Lephenixnoir 3a9a622ee3
_ic: new command to show claims on addresses 2022-04-06 18:41:41 +01:00