Use EXX instead of the stack for HL protection and remove all spurious uses of chkPS, I wanted to inline chkPS in next because of its "tight loop" status, but for reasons I don't understand, doing so breaks Collapse OS. Later...
Now I struggle to remember why I ever did things they way I did. There must have been a reason...