1
0
mirror of https://github.com/pfusik/xasm.git synced 2024-12-22 15:31:23 +00:00
xasm/doc/xload.htm

85 lines
3.4 KiB
HTML
Raw Normal View History

1999-09-09 23:20:00 +00:00
<HTML>
<HEAD>
2002-05-22 10:24:30 +00:00
<TITLE>X-LOAD 1.1</TITLE>
1999-09-09 23:20:00 +00:00
</HEAD>
<BODY BACKGROUND="6502proc.gif">
<CENTER>
2002-05-22 10:24:30 +00:00
<H1>X-LOAD version 1.1</H1>
1999-09-09 23:20:00 +00:00
<HR>
</CENTER>
<H2>INTRODUCTION</H2>
2002-05-22 10:24:30 +00:00
This tool may be used to load an Atari executable file, stored on the PC,
into a real Atari computer, via the SIO2PC interface.
Only data input and data output lines are used, so X-LOAD should work
with all types of the interface.<P>
It is experimental version. I'm not sure if it will work
1999-09-09 23:20:00 +00:00
with every hardware. I've noticed it is not stable and sometimes
transmission can hang or distortions in loaded data may appear.
The reason is that there is no error-checking, while transmission is
fast (57.6 kbits/sec).<P>
<H3>CHANGES</H3>
2002-05-22 10:24:30 +00:00
<H4>Version 1.1</H4>
<UL>
<LI> files with no explicit run address are started from the beginning
of the first block
</UL>
1999-09-09 23:20:00 +00:00
<H4>Version 1.0</H4>
<UL>
<LI> first release
</UL>
<HR>
<H2>USAGE</H2>
2002-05-22 10:24:30 +00:00
You should pass as the parameters the executable file name and optionally
the options:<P>
1999-09-09 23:20:00 +00:00
<DL>
<DT><TT>/1</TT> - <TT>/4</TT>
2002-05-22 10:24:30 +00:00
<DD>Serial port number. Default is 2.<P>
1999-09-09 23:20:00 +00:00
<DT><TT>/p</TT>
2002-05-22 10:24:30 +00:00
<DD>Force using 'professional loader', which allows you to load code/data
into the RAM under ROM ($c000-$ffff) and starts the program with disabled
ROM and interrupts. By default, standard loader is used, which can load
any Atari executable not demanding DOS or any special loader.<P>
1999-09-09 23:20:00 +00:00
</DL>
After you run X-LOAD, you only have to boot your Atari and the program
will be loaded and run.<P>
2002-05-22 10:24:30 +00:00
While loading, PC prints memory locations, which the program loads into.<P>
After the program is loaded and run, X-LOAD terminates. You may exit it
earlier at any time by pressing the ESC key.<P>
1999-09-09 23:20:00 +00:00
<HR>
<H2>DETAILS</H2>
2002-05-22 10:24:30 +00:00
First, X-LOAD sends a byte to Atari and then waits until the Atari is booted.
The byte can be used to detect from Atari, that PC is ready for transmission.
1999-09-09 23:20:00 +00:00
When you are testing your program, you may code periodic checking
if a byte was received, and performing cold reset in that case.
2002-05-22 10:24:30 +00:00
So you don't need to touch your Atari to run your program on it.<P>
1999-09-09 23:20:00 +00:00
While booting, X-LOAD accepts two commands for disk drive 1:<P>
<UL>
2002-05-22 10:24:30 +00:00
<LI> <TT>'S'</TT> - read status. Used by the Atari OS to check presence
of a disk drive.
<LI> <TT>'R'</TT> - read sector (only first). Used to transfer the loader.
1999-09-09 23:20:00 +00:00
</UL>
2002-05-22 10:24:30 +00:00
After the Atari receives and runs the loader, the transmission runs at 57600
bits/sec.<P>
The transmission protocol is very simple: Atari sends a byte to inform that
1999-09-09 23:20:00 +00:00
it is ready for receiving data. Then PC sends a 3-byte header and a block
2002-05-22 10:24:30 +00:00
of data. First two bytes of the header are the high and the low byte of the
address of the last byte in the block minus $ff. Third byte equals low byte
of ($100-block_length). Then come block data, which are loaded directly
into their memory locations.
For more details, view source files of the loaders:
1999-09-09 23:20:00 +00:00
<UL>
<LI>Standard: <A HREF="xloadstd.asx">XLOADSTD.ASX</A>
<LI>Professional: <A HREF="xloadpro.asx">XLOADPRO.ASX</A>
</UL>
You may have noticed that X-LOAD is somehow similar to X-BOOT, which also
has two loaders. The main difference is that X-BOOT loaders use system
routines to get sectors at regular speed of 19200 bits/sec.
2002-05-22 10:24:30 +00:00
They use sector buffer and require some low memory locations not to be altered
because of Atari operating system. In this respect X-LOAD loaders are better,
because they allow loading into whole memory except for the loader code.
<P><HR><P><A HREF="index.htm">Back</A>
1999-09-09 23:20:00 +00:00
</BODY>
</HTML>