This is an OSI dump utility for all OSI disk systems.
It communicates via the OSI serial port.

For video systems OSIDUMP.LOD is loaded via the OSI 65V ROM monitor.
For serial systems OSIDUMP.65A is loaded through the OSI 65A ROM monitor.
Included in the archive are Gotek bootable disk images, one for 5.25, 
one for 8", bypassing the need to upload the program via serial port.

Transfer from OSI can be as ASCII HEX dump or XMODEM/CRC binary dump.
It requires 8K of working RAM and a serial connection to transfer data.



Getting started:
For Gotek ebabled systems, select the disk image, Reset the OSI and press 'D'.

Uploading the program via serial
================================
Connect the OSI system to a PC via a serial cable.  Ensure
you have the correct baud rate for your system (300 or 9600 baud?) and 8bit
no parity, 2 stop bit, no flow control.  (This assumes your OSI has
been modified to use RS-232.)

Reset the OSI system.
========================  
For Video Systems (C1/C2/C4/C8 Superboard):
You should see the D/C/W/M? or H/D/M? prompt.   Choose 'M' (remember all 
OSI commands are upper case) then press 'L' to begin input from serial port.
Begin sending the osidump.lod file using a RAW ASCII send from the PC.

The osidump program begins loading at $0300 which is also the entry point for
the program.  When the osidump.lod file ends, it should automatically start,
and display the message "OSI DUMP ON SERIAL NOW" on screen. If it does not start,
RESET the OSI, at the D/C/W/M or H/D/M? prompt enter 'M' then type 0300G.
========================
For Serial Systems using the 65A monitor (OSI 400, C3, C2 serial)
You should see the H/D/M? prompt.   Choose 'M' (remember all OSI commands 
are upper case) then press 'L' to begin input from serial port.
Begin sending the osidump.65A file using a RAW ASCII send from the PC.
Use 8N2 for the initial upload, later you can use 8N1

The osidump program begins loading at $0300 which is also the entry point for
the program.  When the osidump.65A file ends, it should automatically start,
and display main menu. If it does not start, press G or RESET the OSI, and at the 
H/D/M? prompt enter 'M' then type L012E0300RG
==========================


Operation:


Once running, the terminal should show the disk program's menu below:

 OSI Serial Disk Dump
----------------------
1. Dump Raw Image
3. Select Drive
4. Set Drive Type
5. Set Serial Divisor
6. Xmodem/Hex xfer opts
7. Exit

Drv=A/5.25 Baud@1x  Hex
--->


OSIDump usage:
The options are as follows:
1 - Dumps the selected disk image in HEX or as XMODEM/CRC as selected

3 - Select disk drive A - D (1 - 4)

4 - Select either 8" (79 track) or 5.25" (40 track) disk drive type 

5 - Program the ACIA clock divisor, either normal (/16) or fast (/1)
    divide by 1 allows you to transfer a disk image at 4800baud on a machine
    wired for 300 baud (300x16).

6 - Set desired transfer mode XMODEM, XMODEM/CRC or HEXADECIMAL.  When using HEX
    you will need to convert the resulting data into binary using a program like deHex.
    Xmodem transfers binary images, no additional processing is needed. In addition, 
    the amount of data transferred with Xmodem is less than half of the amount generated
    with a Hexadecimal dump, and it therefore faster!

7 - Exit to reset vector.

8- Hidden menu - force OS65D or OS65U reading (for 8" drives) otherwise autodetects

Once you have selected the appropriate options for your setup, enter '1' to dump a disk.

You will see:
WRITE PROTECT ALL DISKS!

INSERT DISK TO BE DUMPED
ESC KEY OR ^X ABORTS...

PRESS ANY KEY WHEN READY

Insert the disk to be dumped, then 

If using XMODEM press a key to initiate Xmodem send. You will see something similar to:
Begin XMODEM transfer.  Press <ESC> to abort...
Tell your terminal program to receive a binary Xmodem file. (You can abort send by sending several ESC keys.)

If using HEX, begin capturing ASCII Data with your terminal program, then press a key to have the OSI send data.
(You can abort send by pressing ESC).

OSIdump doesn't understand the file system of the disk it is reading, other than recognizing 
the start of an OS65U 8" track which requires a slightly different method to read.  All data 
available is read from the disk, including corrupted tracks or noise.  Fotunately all know 
disk formats use the same basic encoding sequence, so OSIDump is able to read all OS65D, 
Hexdos, Picodos, DOS/65, OSI CP/M, P-System, Forth, FigForth, etc. formats in addition to 
OSI OS65U. YeDos images will not work as it uses a different encoding (8N1) than the others (8E1).

    

