[net.micro.atari8] writing DOS files

jhs@MITRE-BEDFORD.ARPA (10/30/86)

OOPS, I guess my question could be misinterpreted.  I want to cause DOS to
write out a copy of DOS.SYS and a copy of DUP.SYS, which it will do only with
the H command.  But I want to do it under the control of an assembly language
program.  I have the DOS 2.0S source listing and a disassembly listing of
DUP.SYS starting from the entry point of record for the H command, but I have
been unable to figure out how to make it all work.

Inside Atari DOS gives this listing for a routine called WRTDOS, which seems
to do the deed, but it doesn't do it for me if I JSR to the advertised
address.  I wonder if I have to do an OPEN or something, as it says in the
fine print "the CLOSE writes the final sector...".

The reason for all this is to set up DOS files on a newly-installed RAMdisk.
DOS won't let me just copy the DOS files over because it knows that the boot
sector would be wrong.

-John S.

jhs@MITRE-BEDFORD.ARPA (10/31/86)

Has anybody figured out how to make DOS 2.0S or DOS 2.5 write DOS files
under program control?

I am trying to automate setting up a RAMdisk for specific applications.
So far, I have load modules which will (a) install a RAMdisk, (b) INITialize
the RAMdisk, (c) automatically copy a list of files from one disk to another,
e.g. the boot disk to the RAMdisk.  I would like to be able to insert a module
which writes the DOS files before copying any other files.  However, I have
not yet been able to figure out how to do this.  Any help that is forthcoming
will be greatly appreciated.

-John Sangster
jhs@mitre-bedford.arpa

cabbie@chinet.UUCP (Richard Andrews) (11/02/86)

In article <8610292217.AA02663@mitre-bedford.ARPA> jhs@MITRE-BEDFORD.ARPA writes:
>OOPS, I guess my question could be misinterpreted.  I want to cause DOS to
>write out a copy of DOS.SYS and a copy of DUP.SYS, which it will do only with
>the H command.  But I want to do it under the control of an assembly language
>program.  I have the DOS 2.0S source listing and a disassembly listing of
>DUP.SYS starting from the entry point of record for the H command, but I have
>been unable to figure out how to make it all work.
>
>Inside Atari DOS gives this listing for a routine called WRTDOS, which seems
>to do the deed, but it doesn't do it for me if I JSR to the advertised
>address.  I wonder if I have to do an OPEN or something, as it says in the
>fine print "the CLOSE writes the final sector...".
>
>The reason for all this is to set up DOS files on a newly-installed RAMdisk.
>DOS won't let me just copy the DOS files over because it knows that the boot
>sector would be wrong.
>
>-John S.

Well John as far as writing out DOS.SYS to a disk, all you have to do is
to open a channel for output with the file spec Dn:DOS.SYS where n is the
drive number you want to write dos.sys to.  To write out DUP.SYS this is
a little trickier because DUP.SYS is not a resident program.  The easiest
way to look at DUP.SYS is that it is a stand alone binary file.  What I 
would do is to execute a simple file copy from D1:DUP.SYS to Dn:DUP.SYS.
You may want to use a different ramdisk routine.  I have one that has
been out for a while.  BTW does anyone want the memory upgrade instructions
for the 130xe?  I published some a while back utilizing both 64k and 256k
ram chips.


					Rich Andrews
					...ihnp4!chinet!cabbie