this is the first iteration of the Down Load program for UNIX

it is basically the DLOAD program for CPM ...(need to make it a pipe component)

since there's no difference between text and binary files for unix, those features are removed.

since there's no way to get a physically shared segment with r1.v2.8, a special emulator only instruction was created. That instruction is an F-line instruction and causes an F-line exception if not enabled via checking the menu item Options->Move Physical Enable

if enabled then the opcode is decoded as follows...

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

where 

  D   is direction 0=(An)->Dn  1= Dn->(An)
  ss  is size 00=byte  01=word 10=long
  aaa is the address register
  ddd is the data register

no condition codes are affected.

the memory access, by-passes the MMU, such that it always accesses the physical address.

the file  peekpoke.c  is the prototype for creating the peek and poke routines.

peekpoke.c was compiled with the -S option to create an assembly output file, peekpoke.s, this assembly file was edited to replace the normal memory access with the special physical memory access opcode.

to compile with unix C

 cc dloadv1.c peekpoke.s

after compile, use a.out to test..(or use -o option)

to get dloadv1.c and peekpoke.s on to the unix disk

using a CRT or TTY emulator on a MVME400 port...

 cat >dloadv1.c

then paste as input the file dloadv1.c (dont forget the ^d to terminate)

 cat >peekpoke.s 

the paste as input the file peekpoke.s (dont forget the ^d to terminate)



WARNING -  this move physical special opcode is VERY VERY DANGEROUS ... wrong parameters will most likely CRASH unix..resulting in possible disk corruption. 

NOTE -  you will need to telinit 2 to switch to multiuser mode, so that you can use a MVME400 port..

( or switch the dev console) 

NOTE - if you loose characters while pasting as input, you may need to adjust the throttle labeled 4. It defaults to 9=511 but you might need to make it bigger 10=1023, etc..
