- Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.
- Added
dst
,litp
andbreak
instructions (thanks to @Tilka). - Added check to enforce index regs being used only with floating point vector uniforms.
- Renamed index registers to match D3D naming conventions (
a0.x
,a0.y
,aL
) (old names still accepted). - Miscellaneous bugfixes and improvements (thanks to @lioncash).
- Fixed several compilation errors in some compilers.
- Reduced
mad
opdesc allocation errors by automatically swapping out of bounds opdesc entries with other ones in the addressable range (5 bits).
- Added
.in
directive for explicit specifying (and allocating) input registers and exporting them in the DVLE uniform table. - Added support for dollar signs (
$
) in identifier names, which are translated to period characters (.
) in DVLE uniform names. - Output registers
o7
througho15
are now allowed in vertex shaders (as dummy outputs). - DVLE uniform table is now sorted by register position.
- The
.gsh
directive has been enhanced to provide full support for all geometry shader operation modes (point, variable-sized primitive and fixed-size primitive). This also effectively separates vertex shader uniform space from geometry shader uniform space. - The
.out
directive has been enhanced to allow wiring semantics to any arbitrary output register. Additionally thedummy
semantic was added while the7
semantic was removed. - Added auto-insertion of NOP instruction in corner cases involving flow of control instructions, together with the
--no-nop
directive which instead of adding NOPs warns the user about the corner cases. - Added support for
rgba
andstpq
in addition toxyzw
. - Added an error message for invalid input register use (e.g.
add r0, v1, v2
). - The operand descriptor allocation algorithm has been enhanced to take into account unused operands.
- The
6
and7
conditional operators have been removed since they actually do not exist. - Really corrected MAD instruction encoding.
- Several miscellaneous issues were fixed.
- Corrected MAD instruction encoding.
- Added command line flag for retrieving the picasso version.
- Added
.constfa
for creating floating-point vector constant arrays. - Fixed
.nodvle
bug.
- Added proper support for the MOVA instruction.
- Added support for inverting the condition in JMPU.
- Fixed
lcnt
bug.
- Fixed input file open error message.
- Fixed
.constf
misallocation bug.
- (Breaking change) Command line format changed.
- Added support for assembling multiple shaders (DVLEs) into a single SHBIN.
- Added new directives:
.entry
,.nodvle
,.gsh
,.setf
,.seti
,.setb
. - Added auto-detection of inverted forms of opcodes. (Explicitly using
dphi
,sgei
,slti
andmadi
is now deprecated) - Several miscellaneous bug fixes.
- Initial release.