isle/tools/reccmp
Mark Langen 694045abd8
Implement MxVector2/3/4 and MxMatrix (#100)
* All of the MxVectors share an inheritance chain. MxVector4 inherits
  from MxVector3 which inherits from MxVector2.

* They all operate on a shared `float*` data member which points to the
  underlying storage.

* There are also MxVector3/4Data classes, which inherit from Vector3/4,
  but add concrete storage for the Vector data rather than just an
  abstract data pointer.

* The same is true for MxMatrix, with there being an abstract and a
  concrete variant of it.

* Also improve reccmp.py register matching algorithm. It previously
  could not recognize an effective match when a swap had to take place
  between two registers used on the same line. It turns out this happens
  a lot in floating point math code so I adjusted the implementation to
  break the disassembly lines on spaces rather than just linebreaks
  allowing the existing effective match code to handle that case too.
2023-08-03 11:25:29 -07:00
..
cvdump.exe rename reccomp to reccmp 2023-06-21 14:36:09 -07:00
isle.png generate progress SVGs 2023-06-27 15:59:44 -07:00
lego1.png generate progress SVGs 2023-06-27 15:59:44 -07:00
reccmp.py Implement MxVector2/3/4 and MxMatrix (#100) 2023-08-03 11:25:29 -07:00
requirements.txt Improve reccmp.py (#49) 2023-06-25 19:01:40 -07:00
template.html reccmp.py improvements (#82) 2023-07-15 23:13:34 -07:00
template.svg reccmp: use "monospace" in svg font 2023-06-30 16:12:22 -07:00