Skip to content

Releases: AvirukBasak/esoteric-assembly

Version 2022.5.14

14 May 16:22
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, execute the exe in builds from CMD or compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Salient features:

Compatibility

  • Interpreter supports \r\n and \r new line feeds, i.e. it supports asm scripts edited by programs like Notepad.

Safety

  • Custom built funtions (scanStr() in input.c) to provide maximum safety while reading inputs.
  • Ditched scanf()completely.
  • Interpreter is safe from segmentation faults (mostly).
  • Interpreter will halt at EOF.
  • CTRL + D kills interpreter without errors.

Error reporting

  • There is Can't divide by zero safety.
  • Error and warning messages are colored.
  • Error reported line numbers are completely reliable.
  • If tokens of asm script exceed 64 characters, error will be reported.

Coding

  • Intuitive mnemonics (keywords).
  • Extended help option (--help).
  • Traditional coding style.
  • Supports conventional funtion and recursion rules.
  • Debugging tools for both asm scripter and developer (--labels and --dev).
  • Console mode (colored) for quick codes. CLI option --console or -c.

Changes:

  • Changes to installer script.
  • Changed name of author in code.

Version 2021.4.20

23 Apr 22:08
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, execute the exe in builds from CMD or compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Changes:

  • Minor fix regarding \r\n i.e. Windows CRLF line feeds. CRLF is automatically converted to LF in Windows. As a fix, the textfile is read in binary mode to read raw data directly.

Version 2021.3.30

21 Mar 16:23
29df73a
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, execute the exe in builds from CMD or compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Changes:

  • Added single line comments using #.
  • Adding #!/path/to/asm/executable to the top of asm script allows it to be executed directly from your unix shell.
  • See merge #15.

Version 2021.3.15

13 Mar 16:58
5c8c000
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, execute the exe in builds from CMD or compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Changes:

  • Disabled colored output in windows machines. CMD doesn't support ANSII color sequences.
  • See merge #14 for details.

Version 2021.3.14

21 Mar 07:33
8aeb4e1
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, execute the exe in builds or compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Changes:

  • New opcode ram to resize memory.
  • Default RAM memory is 1 * sizeof (int) Bytes instead of 4MB.
  • Updated Test files to use ram opcode.
  • Removed use of dangling pointer due to unpredictable behaviours in some machines.
  • unEscape() now uses a static sized string.
  • For details, see merges #13, #12, and #11.

Version 2021.3.10.4

04 Mar 17:13
fb5f182
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.

Changes:

  • Added new console mode, i.e. a console based code prompt.
  • Fixed bugs regarding console mode.
  • Improved error reporting, quit on error.
  • Added wrapper functions for malloc(), calloc() and realloc(). Properly used these functions.
  • Added unEscape() to replace delimiting characters with escape equivalents for inline printing.
  • Fixed an issue where unusable memory would persist due to unEscape(). Fixed this by returning a dangling pointer from unEscape().
  • Fixed aesthetics bugs regarding console prompts.
  • CTRL + D now kills interpreter.
  • See meges #10 , #9, #8, #7, #4, #3, #2 and #1 for more details.

Version 2021.2.28

26 Feb 18:19
8558553
Compare
Choose a tag to compare

How to install?

  • Download the source from assets.
  • Run install.sh as root on Linux or compile manually.
  • The same should be applicable to macOS as well.
  • On Windows, compile src/main.c manually.
  • Termux users do not require root to run install.sh.
  • In case of Termux, install.sh asks for clang and termux-elf-cleaner. So it is recomended to use the deb package instead.