Skip to content

Releases: mkoloberdin/rasm

v0.99

16 Aug 13:56
Compare
Choose a tag to compare
v0.99 Pre-release
Pre-release

update v0.99 - 2018.08.16

  • new directive UNDEF
  • bugfix memory leaks
  • bugfix calculations with a function followed by two or more opened parenthesis

update v0.98 - 2018.08.03

  • bugfix with snapshot v2 memory size detection
  • new optional parameter to get file size when load and crunch on the fly
  • new option to remove warnings
  • new fake instructions RR, RL, SRL ,SRA ,SLL ,SLA with 16 bits (BC, DE, HL) registers
  • preprocessing does not allow empty parameter to avoid confusion
  • extended error may suggest a name if a variable/label/alias looks similar to a 'not found' value

update v0.97 - 2018.07.27

  • bugfix conditionnal code inhibition with macro declaration
  • better alias infinite recursivity detection

update v0.96 - 2018.07.25

  • bugfix memory leak in tag translation with PRINT directive
  • bugfix negative offset with INCBIN
  • bugfix autotests memory handling
  • added include path in command line

update v0.95 - 2018.07.22

  • allow spaces in tags inside strings with PRINT directive
  • display warning if you try to export symbols or breakpoints with snapshot version 2
  • proximity label beginning with BRK will generate an exportable breakpoint
  • new enhanced LD instructions (see online documentation)

update v0.94 - 2018.07.20

  • bugfix using macro parameter inside print quote
  • bugfix multiple memory leak with tag replacement
  • bugfix command line side effect with wrong option
  • better hack in expression calculator for expression beginning with negative value
  • better equality processing in expression calculator
  • dependencies export do not display preprocessing message anymore

update v0.93 - 2018.07.14

  • bugfix RUN gate array configuration
  • overriding an alias with a label will trigger an error
  • PRINT directive may use escaped chars in strings
  • tags BANK, PAGE, PAGESET may be used with current adress $

update v0.92 - 2018.07.10

  • bugfix PAGE tag when using BANK in snapshot mode

update v0.91 - 2018.07.10

  • bugfix school case with crunched block
  • bugfix proximity labels when using loops or macros
  • bugfix imbricated IFUSED/IFNUSED
  • new directive FAIL will print a message before exiting with an error flag
  • label usage may use formula
  • escaped codes support in strings (disregarding the current charset)
  • PRINT directive may compute formula in strings when using curly brackets
  • RUN directive may set the gate array configuration for snapshots
  • generated label with negative index will trigger an error
  • overriding an alias with a variable will trigger an error
  • overriding a variable with an alias will trigger an error
  • missing ENDIF at the end of the source will trigger an error

update v0.90 - 2018.06.27

  • PROTECT directive does not increase automatic binary size anymore
  • bugfix memory leak with proximity labels
  • proximity label properties also for EQU aliases
  • label declaration may use formula

update v0.89 - 2018.06.26

  • bugfix dependencies export
  • multiple bugfix in preprocessor
  • simplify path of dependencies when possible
  • enhanced ASSERT may PRINT additional parameters

update v0.88

  • bugfix another cases during preprocessing

update v0.87 - 2018.06.24

  • new proximity labels
  • rasm is able to use variables inside label names
  • INCBIN directive enhanced for WAV import as a CPC sample or DMA list
  • REPEAT directive may export internal counter to a variable
  • new directive IFUSED & IFNUSED
  • new math operator ! for NOT
  • new math function PSGVALUE
  • rasm return 1 to shell when there is error(s)
  • new options to export dependencies (makefile style)
  • new option to define variable(s) from command line
  • new option for extended error messages
  • bugfix cases during preprocessing
  • bugfix tags PAGE & PAGESET
  • new autotests embedded in Rasm in order to reduce regressions

v0.86

15 May 14:47
Compare
Choose a tag to compare
v0.86 Pre-release
Pre-release

update v0.86 - 2018.04.27

  • fix many bugs in label import
  • fix multi-nops
  • fix automatic extension for primary source
  • fix infinite loop when error on reserved keyword in an expression
  • shortcuts LD BC/DE/HL,BC/DE/HL (uz80 style)

update v0.85 - 2018.04.18

  • fix some regressions introduced by STRUCT code modifications

update v0.84 - 2018.04.18

  • new directives STRUCT and ENDSTRUCT, ENDS to create structures
  • fix regression introduced with v0.75 and embedded usage (like Arkos Tracker II does)

update v0.83 - 2018.04.11

  • NOCODE output must increment current adress in all cases
  • new directives DR & DEFR to define REAL values (Amstrad firmware compatible)

update v0.82 - 2018.04.09

  • better infinite loop detection
  • bugfix while 0 loop (check and disable block)
  • repeat until internal counter harmonisation
  • alias SL1 for SLL instruction
  • remove CLang warnings on Linux

v0.81

05 Apr 19:19
Compare
Choose a tag to compare
v0.81 Pre-release
Pre-release

update v0.81 - 2018.04.05

  • added special maxam priorities for parenthesis and boolean operators

update v0.80 - 2018.04.05

  • bugfix operator > and >=
  • bugfix Maxam priorities

v0.79

04 Apr 22:08
Compare
Choose a tag to compare
v0.79 Pre-release
Pre-release

update v0.79 - 2018.04.05

  • != operator is back in the new solver

update v0.78 - 2018.04.04

  • DEFS can handle multiple repetition schemas
  • alias DM & DEFM for DEFB

update v0.77 - 2018.03.30

  • even faster expression calculation
  • maxam & AS80 comparison operators are back

update v0.76 - 2018.03.29

  • fix solver when using % prefixed binary values and comparison operators or parenthesis

update v0.75 - 2018.03.29

  • newer and faster expression calculator without limitations of comparisons
  • % may be used as modulo (still used for binary values)
  • Intel hexa & binary style support
  • Binary prefix 0b fixed
  • does not export IX and IY anymore in symbol files
  • better error messages when calculating expressions
  • boolean operators && and ||
  • PUSH & POP may have more than one register in parameters
  • NOP may be multiplied specifying a number of repetition in parameter
  • alias <> for != comparison operator
  • filenames are forced to upper case when saved to EDSK
  • Infinite loop detection won't go to infinite loop anymore ^_^

update v0.74 - 2018.03.18

  • usage of snapshot directives forces snapshot output
  • try to load .asm or .Z80 file if filename given is not found and has no extension
  • BREAKPOINT directive may have an additional parameter to set break address anywhere
  • declaring two MACRO with the same name will trigger an error
  • bugfix regression of -m option handling
  • each REPEAT or WHILE loop export a REPEAT_COUNTER or WHILE_COUNTER variable, locally

v0.73

03 Mar 22:15
Compare
Choose a tag to compare
v0.73 Pre-release
Pre-release

update 2018.02.28 - v0.73

  • bugfix in snapshot directive
  • bugfix in snapshot when using distinct bank instead of banksets

v0.72

03 Mar 22:08
Compare
Choose a tag to compare
v0.72 Pre-release
Pre-release

update 2018.02.26 - v0.72

  • ability to generate v2 snapshot for M4Wifi

v0.71

25 Feb 12:31
Compare
Choose a tag to compare
v0.71 Pre-release
Pre-release

update 2018.02.23 - v0.71

  • math functions HI & LO to get high 8 bits or low 8 bits of a pseudo 16 bits value
  • @ prefix for octal values
  • AS80 assembler compatibility mode (enough to compile CNG player)

update 2018.02.21 - v0.70

  • shifting operator >> bugfix
  • EDSK face selection bugfix

v0.69

19 Feb 10:39
Compare
Choose a tag to compare
v0.69 Pre-release
Pre-release

update 2018.02.15 - v0.69

  • added $ prefix for hex values
  • added 0xb prefix for binary values
  • added shifting operators << and >>
  • EDSK update/generation improvements (make backups before use!)

v0.68

19 Feb 10:27
Compare
Choose a tag to compare
v0.68 Pre-release
Pre-release

update 2018.02.07 - v0.68

  • Morphos compatibility code
  • some error messages modified
  • breakpoint in snapshot with BRKC chunk for ACE emulator
  • shorter splash text
  • unused var cleanup
  • includes or incbin in a disabled section won't warn anymore if file does not exists :o

v0.67

22 Dec 21:51
Compare
Choose a tag to compare
v0.67 Pre-release
Pre-release

update 2017.12.21 - v0.67

  • bugfix buffer overflow with long filenames for export
  • export breakpoint in snapshot (unofficial Winape chunk)
  • new directive BREAKPOINT

update 2017.12.19 - v0.66

  • new directives IFDEF, IFNDEF to test label, variable or alias existence

update 2017.12.19 - v0.65

  • snapshot is initialised with standard CRTC values, all audio channels OFF, all inks to deep blue except ink 1 to bright yellow
  • new directives SETCRTC and SETCPC to select the CRTC and CPC model with snapshots
  • new tag {PAGE} before a label to get the gate array banking value for the bank of a label (ex: #C4 for a label in bank 4)
  • new tag {PAGESET} before a label to get the gate array banking value for the bankset of a label (ex: #C2 for a label in bankset 1 or bank 4,5,6,7)
  • new variable ASSEMBLER_RASM (set to 1) in order to have specific rasm code
  • SAVE may be used to save file in a (new) DSK. I have to work on a update mode
  • "checkmode" option to assemble without writing file(s)
  • moar comprehensive error message when using illegal register combination
  • moar compact splash screen
  • documentation updated

update 2017.12.05 - v0.64

(mostly snapshot related evolutions and fix)

  • bugfix SYMB chunk size
  • added optionnal var export in snapshot SYMB chunk
  • improve bankset switch control (do not mix bank & bankset of the same pages)
  • INCBIN handle negative offset to seek relative to the end of file
  • INCBIN special option to disable overwrite control
  • Documentation updated