Commit Graph

42 Commits

Author SHA1 Message Date
fincs
d822bd4e26 Add support for inverting the condition in JMPU (addresses #9) 2016-01-25 12:52:35 +01:00
fincs
956a328a6f Add proper support for the MOVA instruction 2016-01-24 11:58:16 +01:00
Yuri Kunde Schlesner
02c0cd4b08 Return correct value for a2/lcnt index register 2016-01-21 23:18:05 -08:00
fincs
36fa1cd15a Fix compilation with GCC 4.7 2015-10-25 19:33:29 +01:00
fincs
e462d199da Fix #5 2015-09-05 11:42:22 +02:00
fincs
7ae2c49768 Fix #4 2015-09-04 23:45:25 +02:00
fincs
cefa910b58 Implement .gsh directive 2015-08-22 23:21:49 +02:00
fincs
8366ecf660 Add changelog 2015-08-22 13:46:22 +02:00
fincs
011668baef Implement .setf/.seti/.setb with documentation 2015-08-22 13:30:33 +02:00
fincs
ae2f31ab01 Merge branch 'master' of github.com:fincs/picasso 2015-08-21 12:41:57 +02:00
fincs
3eba3a0701 Autodetect between inverted and non-inverted versions of opcodes 2015-08-21 12:41:35 +02:00
Luke Street
c3c94c6574 Use built-in byte swap functions on LLVM 2015-08-17 11:36:46 -04:00
fincs
556fbe1d82 Ensure DVLEs are word aligned 2015-08-15 13:03:11 +02:00
fincs
04d3edce72 Proper argument parsing, reenable header file generation 2015-08-13 23:54:04 +02:00
fincs
e152f4e626 WIP multi-shader support, see details:
- picasso now accepts several input files, which are each compiled
  into DVLE objects inside the .shbin
- Uniform allocation is shared amongst all DVLEs.
- Constant allocation is private to each DVLE.
- Header file generation is temporarily disabled.
- New directives:
  .nodvle
    Disables the generation of a DVLE object for the current input file.
    This allows sharing code amongst shaders.
  .entry entryName
    Specifies the name of the entrypoint procedure of the current DVLE.
    By default it's 'main'.
2015-08-13 21:46:08 +02:00
fincs
b250513be0 Fix invalid string management [thanks to mtheall for pointing this out] 2015-03-06 21:16:00 +01:00
fincs
6e176f33c5 Geoshader support! 2015-03-04 22:42:34 +01:00
fincs
01104710fd Actually output whole opdesc 2015-03-02 18:07:06 +01:00
fincs
35e187eb27 Fix condition field 2015-03-02 17:52:50 +01:00
fincs
28c07f3363 Add more output types & correct number of integer uniforms 2015-03-02 17:37:46 +01:00
fincs
8437350b4b LRP -> MADI 2015-03-02 17:36:47 +01:00
fincs
19f705076a Add support for BREAKC/CALLC/IFC/JMPC 2014-12-15 22:59:06 +01:00
fincs
af4f62dab0 Rename ARL to MOVA 2014-12-14 13:31:47 +01:00
fincs
091795c102 Add FOR/CALLU/IFU/JMPU (format 3 instructions) 2014-12-12 00:14:46 +01:00
fincs
1d71ea12e7 Add CALL 2014-12-11 23:23:13 +01:00
fincs
3cedc996fc Add CMP src1, cmpx, cmpy, src2 2014-12-11 22:11:51 +01:00
fincs
ded7491f19 Add DPHI/SGEI/SLTI 2014-12-11 21:41:24 +01:00
fincs
efa5faabd6 Fix .h header generation to support ivec and bool uniforms 2014-12-11 21:18:54 +01:00
fincs
694a07a8a1 Add support for integer vector uniforms/constants and boolean uniforms 2014-12-11 17:23:29 +01:00
fincs
4b1f834e01 __BYTE_ORDER__ not supported on GCC 4.0 2014-12-11 00:38:25 +01:00
fincs
d6485ea332 Correct uniform handling value [pointed out by smea] 2014-12-11 00:04:31 +01:00
fincs
c06de444da Use strcasecmp on non-Windows 2014-12-10 23:14:19 +01:00
fincs
b2e0b2b96e Downgrade to C++03 due to OSX's GCC being **MASSIVELY** out of date (4.0) 2014-12-10 22:29:42 +01:00
fincs
fb190d38d5 Add many new opcodes: DPH,SGE,SLT,EX2,LG2,FLR,LRP 2014-11-25 21:36:52 +01:00
fincs
07099be5bb Add ARL & support for relative indexing, e.g: someArray[lcnt+1] 2014-11-19 18:28:41 +01:00
fincs
d5c6748e0f Correct parameter order in MAD 2014-11-16 23:22:38 +01:00
fincs
68f90ffdc1 Some error handling refactoring 2014-11-16 23:11:37 +01:00
fincs
f5e312392b Add support for the MAD opcode 2014-11-16 23:04:51 +01:00
fincs
e47de22f60 Refactor opdesc allocation algorithm 2014-11-16 21:20:45 +01:00
fincs
e6e92aff48 Add support for operand negation (-reg) 2014-11-16 20:52:18 +01:00
fincs
d41106a672 Change uniform index syntax to [] instead of () 2014-11-16 20:20:37 +01:00
fincs
9d8ec29538 Initial commit 2014-11-16 18:59:54 +01:00