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
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
Dr-Carlos
ae8ed1fcdd
_isc: print syscall to 4 hex digits
2022-12-05 12:19:38 +10:30
Dr-Carlos
0e6cec0821
Print all syscalls to 4 hex figures
2022-12-04 21:15:25 +10:30
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
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
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
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
12845a1675
Improve command classification
2022-04-15 06:09:18 +09:30
Lephenixnoir
3a9a622ee3
_ic: new command to show claims on addresses
2022-04-06 18:41:41 +01:00
Lephenixnoir
ee1c36db4e
_ads: functions now claim the instructions they explore
2022-04-06 12:15:34 +01:00
Lephenixnoir
8a2c67d83f
fix token memory leaks in lexer
2022-04-06 12:02:53 +01:00
Dr-Carlos
5f82ad29e7
Enable -l for log option
2022-04-06 07:28:28 +09:30
Lephenixnoir
23275d99c7
add infrastructure for function claiming parts of the binary
...
The CFG pass will soon be extended to actually emit the claims.
2022-04-05 19:35:52 +01:00
Lephenixnoir
8b1105fb03
shell: add --log CLI parameter
2022-04-05 15:36:24 +01:00
Lephenixnoir
6ae1a88bf7
_ads: register functions during discovery
2022-04-05 14:02:06 +01:00
Lephenixnoir
613e5b07f4
remove explicit \e coloring
2022-04-05 12:23:39 +01:00
Lephenixnoir
d7b3fd0de8
add infrastructure for function passes
...
Ported existing passes to the new pass interface, now working properly.
2022-04-05 11:11:19 +01:00
Lephenixnoir
d61f4e0a2f
meta: fix uninitialized command-line argument logic
2022-04-05 11:11:19 +01:00
Lephenixnoir
45888eb01c
add infrastructure for function passes (WIP)
2022-04-04 22:53:05 +01:00
Lephenixnoir
f7f5fbf884
shell: fix uninitialized CLI parameters
...
Could start with show_help = true at higher optimization levels.
2022-04-04 10:51:31 +01:00
Lephenixnoir
11ca1cc2fc
ads: actually analyze *all* syscalls
2022-04-03 21:36:59 +01:00
Dr-Carlos
ef40cb3469
Add comments and allow multiple -e options
2022-04-01 06:24:48 +10:30
Dr-Carlos
446590448b
Change debugger to disassembler in --help
2022-03-31 20:04:04 +10:30
Dr-Carlos
b6fbc352e0
Add --norc, --help, -e, and FILE options
2022-03-31 19:54:44 +10:30
Lephenixnoir
59ed0c8621
add main disassembly, ad and ads commands
2022-03-28 22:42:53 +01:00
Lephenixnoir
29cd2815ec
refactor disassembly infrastructure and passes
2022-03-28 20:59:30 +01:00
Lephenixnoir
1f475b0863
refactor vspace - remove most memory simulation
...
All of it can be derived from translate_dynamic().
2022-03-27 18:32:28 +01:00
Lephenixnoir
a9660da767
get rid of exceptions in the library, use explicit errors
2022-03-27 13:59:49 +01:00
Lephenixnoir
50963d7c20
refactor logging utility
2022-03-27 12:57:36 +01:00
Lephenixnoir
36fe7fcff4
refactor library utils
2022-03-27 12:12:53 +01:00
Lephenixnoir
54721cac93
README for the shell interface
2022-03-06 23:39:44 +00:00
Lephenixnoir
2394725074
add OS checksum computations
2022-03-06 22:50:48 +00:00
Lephenixnoir
4e76ff3a24
add command help messages
2022-03-06 16:15:19 +00:00