After a bit of poking around the C65-mode BASIC interpreter I worked out that I had forgot to implement PHW absolute mode (immediate mode was already working). So after a quick fix, BASIC in C65 mode is now superficially working, as can be seen here. GO64 also works fine to drop to C64 mode.
However, problems still remain. When I tried to get the disk directory, it reads the first part, and then stops, and further attempts to read the directory fail. The same thing happens if I use LOAD"$",8. This is quite odd, because the same thing works just fine in C64 mode. Curiously, if I load a program before trying to load the directory, that works okay. But if I try it after it fails. It might be that there are still missing instructions that are used in the C65 DOS access routines. I really need to finish my suite of 4510 instruction tests.
Also, as can be seen, once the screen scrolls, the copying of the colour memory goes a bit weird. This uses the DMA controller in copy mode. Hopefully a bit of poking around with that will reveal the nature of the problem.
But in the meantime, a happy piece of progress that BASIC is now responsive.