Hi, all.
Just to make everyone ( almost MRC users ) of what i've discovered about write 0 to the command register.
The offiicial docs, say "STOP", meaning that the current command is stopped.
What really happens inside vdp is that the current command is freezed, waiting to BE RESUMED!
so for example if a command was in progress (say 144 decimal code, logical copy ) and you write 0 to the cmd register, the command halt.
But, later if you, write to cmd register the same opcode, 144, the command resumes EXACTLY where it stopped!
I see two uses of this:
1) temporary stopping a command when one need to change R18 (it's know that vram is corrupted)
2) fine check of timings of vdp engine. (Start a command, delay loop, write 0, check vram changes)
For example, in basic i've just started a copy command of entire screen stopped it, and resumed as a byte copy command, by resuming the execution with the high speed copy opcode.
I've also resumed (for fun) a copy command like it was a line.... (
)
Maybe this could interest someone.....

with disk to rom I get 128K