{{htmlmetatags>metatag-robots=()
metatag-title=(MMOVE | ugBASIC User Manual)
metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum)
metatag-description=(Manual page for MMOVE)
metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png)
metatag-og:title=(MMOVE | ugBASIC User Manual)
metatag-og:description=(Manual page for MMOVE)
}}
====== ugBASIC User Manual ======
===== MMOVE =====
===== SYNTAX =====
MMOVE [VIDEO] address TO [VIDEO] address SIZE size
==== PURPOSE ====
This low-level command can be used to move memory blocks at high speed
between addresses. There are several cases that are covered by this
command. The simplest is to copy data from one or more CPU memory
locations (RAM) to another CPU memory location (RAM). This can be
achieved with the standard version of the command.
If you add the ''VIDEO'' keyword, you can indicate that the memory to copy
from or to copy to is not in the CPU RAM but in the RAM possibly
dedicated to the GPU. In this case it is called VRAM.
You cannot move overlapped area or VRAMS together.
==== EXAMPLE ====
MMOVE $0000 TO $C000 SIZE 1024
MMOVE VIDEO $1800 TO $C000 SIZE 960
MMOVE $C000 TO VIDEO $0000 SIZE 2048
MMOVE VIDEO $1800 TO VIDEO $0000 SIZE 2048
==== ABBREVIATION ====
Mmv
==== AVAILABLE ON ====
* Dragon 32
* Commodore 128 (Zilog Z80)
* Commodore 128 (MOS 8502)
* SEGA SG-1000
* ZX Spectrum 48
* Commodore 64
* Commodore VIC-20
* Atari (400/800)
*
* Commodore PLUS/4
* VG-5000
* Olivetti Prodest PC128
* Dragon 64
* Thomson MO5
* Amstrad CPC 664
* SEGA SC-3000
* ColecoVision
* TRS-80 Color Computer 3
* MSX
* TRS-80 Color Computer
==== ANY PROBLEM? ====
If you have encountered a problem using this command, if you think there is a bug or the explanation is unclear, please [[https://github.com/spotlessmind1975/ugbasic/issues/new?title=ISSUE ON MMOVE|open an issue]] for this keyword on GitHub. Thank you!===== POWERED BY =====
[[:ugbasic:user:index|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]