v9.4 (02-Mar-2008)
[ALL] Enhanced the documentation.
[ALL] .DEFINE without a definition value, and a .DEFINE that would have an address label as the definition value would make WLA count the linenumbers afterwards wrong.
[ALL] Issuing a loose .ENDM will give an error.
[ALL] All macros must have at least a name.
[ALL] Added .DBM (define bytes through a filter macro) and .DWM (define words through a filter macro).
[ALL] Added FILTER to .INCBIN (circulate all the data through a filter macro).
[ALL] Fixed overflow checks in .INCBIN's SKIP and READ.
[ALL] Integrated Mersenne Twister by Takuji Nishimura and Makoto Matsumoto (.SEED, .DBRND and .DWRND use that now instead of the stdlib's srand() and rand()).
[ALL] It's possible to use '\!' to get the name of the currently parsed source file (works like '\@').
[Z80] If a pending computation follows "JR" or "DJNZ", all the label references inside are relative.
[GB ] If a pending computation follows "JR", all the label references inside are relative.
[65?] If a pending computation follows "BCC", "BCS", "BEQ", "BMI", "BNE", "BPL", "BVC", "BVS", all the label references inside are relative.
[65C] If a pending computation follows "BCC", "BCS", "BEQ", "BMI", "BNE", "BPL", "BVC", "BVS", "BRA", "BBR*", "BBS*", all the label references inside are relative.
[658] If a pending computation follows "BCC", "BCS", "BEQ", "BMI", "BNE", "BPL", "BVC", "BVS", "BRA", "BRL", "PER", all the label references inside are relative.
[HuC] If a pending computation follows "BCC", "BCS", "BEQ", "BMI", "BNE", "BPL", "BVC", "BVS", "BSR", "BBR*", "BBS*", "BRA", all the label references inside are relative.
[SPC] If a pending computation follows "BCC", "BCS", "BEQ", "BMI", "BNE", "BPL", "BVC", "BVS", "BRA", "BBS", "BBC", "CBNE *", "DBNZ *", all the label references inside are relative.
|
v9.1 (26-Jun-2004)
[ALL] Sections do not affect the .ORG outside of them.
[ALL] Code cleanups.
[ALL] .IFs can compare string definitions.
[ALL] WLA compiles now "WLAV" library files and "WLAK" object files.
[ALL] Added preliminary support for list files.
[ALL] Added aliases .DEF (.DEFINE), .REDEF (.REDEFINE), .UNDEF (.UNDEFINE), .WORD (.DW), .BYT (.DB), .BYTE (.DB), .ASC (.DB), .EQU (.DEFINE) and .REPEAT (.REPT).
[ALL] Added .FOPEN, .FCLOSE, .FREAD and .FSIZE.
[ALL] Increased the case insensitivity in many directives.
[ALL] It's possible to use "=" in .DEFINE and .REDEFINE.
[ALL] The initial size of a section can now be given with the keyword "SIZE" (take a look at the README).
[ALL] .FAIL exits nicer.
[ALL] .ENUM can do descending enumeration.
[ALL] Added operators '>' (get the high byte) and '<' (get the low byte).
[ALL] FREE, SEMIFREE and SUPERFREE sections can be aligned.
[ALL] Added "FSIZE" to .INCBIN.
[ALL] .STRUCT creates more definitions.
[ALL] Structure members can now be used in computations.
[ALL] Relaxed the handling of '.' in stack calculator. Now for example "AND1 C,1+2+3.3-2-1" works (SPC-700).
[Z80] Fixed opcodes in group 7 to work again. A new feature in 9.0 broke these.
[658] .SNESHEADER, .SNESNATIVEVECTOR and .SNESEMUVECTOR don't work with libraries any more.
[658] .SNESNATIVEVECTOR and .SNESEMUVECTOR don't change .ORG anymore.
[658] All the vectors of .SNESNATIVEVECTOR and .SNESEMUVECTOR are optional and default to $0000.
[658] Added .SMC, .INDEX and .ACCU.
[658] Operand hinting overrides SEP/REP/.INDEX/.ACCU when dealing with immediate value opcodes (now when did this break?), and .8BIT/.16BIT/.24BIT affect only the rest of the opcodes. WARNING! Check your code as this fix may break it.
[658] "LDY.W #?" works now.
[658] Added 24bit operand hint .l.
[65x] Added more operand size checks to opcode parsers.
|