Clearly the correct operation of zero-page and the stack page is the most critical. Without them, a significant proportion of 6502 opcodes become useless. But I think we can now assume that the VIA and ROM are working correctly.
Your code is on my list to try out.