Commit Graph

10 Commits

Author SHA1 Message Date
Lephenixnoir 97029d4f3e
clang-format and other minor changes 2023-08-20 17:54:03 +02: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 12845a1675 Improve command classification 2022-04-15 06:09:18 +09:30
Lephenixnoir e90ef447fc
more refactoring, still less exceptions: os 2022-03-27 17:39:42 +01:00
Lephenixnoir 3b684389e9
replace CLI with WIP shell (huge commit) 2022-03-04 11:29:33 +00:00
Lephenixnoir 245af5e993
rename Target into VirtualSpace 2021-03-16 14:43:43 +01:00
Lephenixnoir 9c49114928
symbols: add os and mpu constraints to symbol tables
Each of these constraints is specified in the header by an [os] or [mpu]
line. For the symbol table to be usable on a disassembly, both
constraints must be met:

* Either [os] is unset, no OS is used for disassembly, or the OS type is
  the same as the [os] constraint (either "fx" or "cg");
* Either [mpu] is unset, the disassembled target has no specified MPU,
  or the MPU type of the target is the same as the [mpu] constraint (eg
  "sh7305").
2020-06-13 11:23:46 +02:00
Lephenixnoir 54a79ca4b4
add support for flexible location specifiers 2020-02-17 22:56:41 +01:00
Lephenixnoir d5c5fa6aeb
implement the syscall pass, and symbol resolution
New features:
* The syscall pass now resolves syscalls for the input target, provided
  that an OS is mapped on the ROM region.
* Formalized the variations of print's arguments as a sequence (tree, to
  be precise) of /promotions/.
* Added a short notion of Symbol and SymbolTable, and a loader for them.
  Data files of type "symbol" are read as such and provide name to
  syscalls or arbitrary addresses.

Code changes:
* The disassembly operation of the command-line interface is now finally
  in its own file with more room.
* Encoded the tree structure of promotions as a sequence of (mainly
  tail-calling) inter-calling methods in the print pass.
2020-02-15 18:42:14 +01:00