Finally figured out this line in the disassembled arrayforth binary:
xor dword [dword 0x202770],0xe1
where the dword at 0x202770 is the address of a subroutine. What it's doing is toggling between two different subroutines:
xor dword [dword ptr0x202770], ((subr0x201175 - $$) ^ (subr0x201194 - $$))
Yes, I still consider Chuck a brilliant programmer, but some of his assembly language tricks make me gag, regardless.
last updated 2011-11-05 22:55:04. served from tektonic.jcomeau.com