sannybuilder/dev

DRAFT: Break down Disassembler and Compiler options

x87 opened this issue · 3 comments

x87 commented

Current set of options is limited and some of the options are overloaded and have different meaning during disassembling and compilation. For example, Condition Check or Write Opcodes.

Need to create options for disassembler and compiler that could be toggled on and off individually.

Allow override via CLI.

Add more options for more granular control over de/compilation process.

Change Options

  • Write opcodes - make disassembler only, remove checks from the compiler, disabled by default
  • Conditions Check - make disassembler only (always enabled in the compiler + see Strict IF validation), enabled by default
  • Formats->Case Converting - separate options for disassembler (UPPER) and compiler (As is)

New Options

Disassembler

  • Inline GXT content - add GXT content in comments to instructions using GXT keys, enabled by default

Compiler

  • Strict IF validation - throw error on empty conditions, disabled by default
  • Optimization - see #44 , disabled by default
x87 commented

by Fireboyd78:

  • add option to toggle on/off classes in disassembler (use only command names/keywords).
  • option to control keyword letter case (upper/lower)
x87 commented

another idea is to customize offset format when CODE_OFFSETS are enabled

  • decimal/hexadecimal
  • global/relative offset

made up syntax:

{%d global% | 0x%x local%}

:INITIAL
{194138 | 0x0} script_name 'INITIAL'

x87 commented

by Miran

  • option to disallow unknown escape sequences (dubbed \{char}) in string literals.

"\h" should error with this option enabled