
-DROPZONE

Use the DROPZONE to drag-n-drop up to 255 files from the Windows Explorer to the Vme10 Emulator. Then use a Guest OS program called DROPZONE(CPM) or DZ(versados) to copy all those files to the Guest OS's filesystem.

The CPM version of dropzone program can be told which disk to deposit the files, and what user number to use.

CPM filenames are in this format... FILENAME.EXT

A>DROPZONE 0B:  (put files in user 0 on drive B:)



The RMS68k user number is a 16 bit number between 0 and 65535, but for Versados, is restricted to ASCII decimal digits between 0000 and 9999. The Versados Dropzone program must be told which user number, catalog and volume to deposit the files.

VersaDOS filenames are this format  -  VOLU:0000.CATALOGE.FILENAME.EX

=DZ SYS:500.TEST  (put files on volume SYS:, user 500, catalog TEST

CAUTION - VersaDOS has programs called ULOAD and DLOAD. They are NOT the emulator's DLOAD and ULOAD. The versaDOS ULOAD and DLOAD are support programs to be used with the TRANSFER program, and do not work with the emualtor. There is a set of Versados Down/UPload programs for the emulator on the disk image WD01.IMD.

Unix filenames can be anything up to 200 characters. The UNIX Dropzone program must make all decisions as to how the files are renamed, and place them in whatever directory they belong. 

Currently, there's no Dropzone or uload for unix. You can download a text file by using the editor (ed) in insert mode and "paste as input" a text file, in 4k chunks,  to the TTY or CRT emulation. There is a DLOAD program that uses a special emulator only instruction to access real memory with out using the MMU.

Dropzone uses addresses in the SCM memory Map

$F1A060 - $F1A06f

| even  | Odd  |
|     word     |
RegDZ + offset offset 

'00: 01:  rw  Dropzone File Count/Set Current File(write zero to reset DropZone)
'02: 03:  ro  DropZone Windows File Name byte (read until NULL)
'04: 05:  ro  DropZone CPM File Name byte  (read until NULL)
'06: 07:  ro  DropZone FileSize high word
'08: 09:  ro  DropZone FileSize low word
'0A: 0b:  ro  DropZone Status Input/Control 0=NOT EOF, 1=EOF 
'0c: 0d:  ro  DropZone Data Input
'0e  0f       unused


access must be odd byte for all but FileSize, which can be byte or word (long word prefered)...

even addresses 0,2,4,a,c will return zero if read byte or word
even addresses 6,8 will return upper word and lower word of filesize


ULOAD/DLOAD (CPM68K)

Single files can be copied from the Vme10 Emulator to the Host OS using ULOAD. 

Single files can be copied from the Host OS to the Vme10 Emulator using DLOAD. 

You must Open the file to be ULOADed or DLOADed, using the ULOAD or DLOAD menu selection.

ULOAD and DLOAD use memory addresses in the SCM memory map.

$F1A070 - $F1A077

RegUD + offset
'00  01 ro  Download input data port
'02  03 rw  Download input status/control port 0=NOT EOF, 1=EOF / 0xff=rewind file
'04  05 wo  Upload output data port
'06  07 rw  Upload input status/control port 0=NOT EOF, 1=EOF / 0xff=rewind file
'08  09 ro  Download filesize high word
'0A  0B ro  Download filesize low word

access must be odd byte for all but FileSize, which can be byte or word (long word prefered)...


even addresses 0,2,4,6 will return zero if read byte or word
even addresses 8,A will return upper word and lower word of filesize

----

there is a special emulator only instruction to aid in unix file transfers. 
  f e d c b a 9 8 7 6 5 4 3 2 1 0
  1 1 1 1 1 1 1 D s s a a a d d d

this appears as a Co-processor instruction CID=7 

 D is direction - 0 = (An)->Dn   1= Dn->(An)
 aaa is An
 ddd is Dn
 ss is size - 00=byte 01=word 10=long 11=invalid

this instruction reads or writes a physical address, bypassing the MMU

if size is invalid then it is an F-line exception

if a berr or aerr occurs, then it does nothing(NOP) 
(note - no berr or aerr exception occurs)

If menu item has the MovePhys disabled, then it is an Fline Exception

Explanation - this was needed because unix r1v2.8 does not have the phyaddr option for shmget, and /dev/mem seems to dislike berr's 

this instruction dissassembes as MOVPHY 
