In x128 in monitor do
bank vdc
f 0000 0800 00
x
and notice that not only did you fill 2k of VDC ram as expected BUT you also filled 2k of c128 bank 0 ram at the same time (obvious as VIC screen turns to @@@@@ ) and basic will crash.
Also happens with move e.g. replace "f 0000 0800 00" with "t 0000 0800 0800" above and similar chaos happens, the memory is copied to both the VDC and c128 RAM.
Seems to be a long standing bug, went back to v3.3 and present there, didn't bother going further.
A superficial look at mon_memory_fill() and mon_memory_move() in mon_memory.c doesn't throw any obvious red flags but I don't know the monitor code well enough to be certain. Having said that the other routines in that file (hunt, compare etc) all look similar so probably all have the issue...
Fixed in rev 41993, please re-try.
Confirmed fixed, thank you!