Compute xkcd's Wrong Times Table
Python 3, 119 ... 110 105 bytes

-14 bytes thanks to @xnor

Takes as input an array \$ a\$ consisting of the two integers. Outputs the product of the two numbers based on the Wrong Times Table. For the case [1, 2] or [2, 1], it outputs .5.



lambda a:b' \0&#127;&#8;&#4;&#5;\n&#5;&#6;&#16; &#6;&#12;\r&#25;2&#7;&#14;&#12;&#25;&#24; &#8;&#12;&#24;&#29;(0*&#9;&#18; $-260\n&#19;&#21;&#28;(H&lt;JH&#9;&#22;!0&lt;HT8Qn'[max(a)*~-max(a)//2+min(a)]%126.5


Try it online!

Explanation

We use a compressed string which stores the answers as ASCII values. And since multiplication is commutative, it doesn't matter in which order the two numbers appear, effectively reducing the compression size by a half.

For the .5 edge case, we assign the character with the ASCII value 127 to it. Then we apply modulo 126.5 to it. This results in 127 % 126.5 returning .5, but all the other values stay the same.