3-d vector arithmetic

It's expected that vectors are 16-bit fractions.

Storage

Space is left at address 0 to store two 3-vectors. This seems optimal for their cross-product.

*.

16-bit fraction multiply, discarding multiplicand

*v

Cross product. Wikipedia lists the result as A neat way of access is to save all components. Then read through them, saving those needed on stack and return stack

.v

Dot product.

+v

Add 2 vectors. Similar storage as for .v.