Disk Images - jedimatt42/tipi GitHub Wiki

Disk Image Support

TIPI works off of TIFILES based file in a disk (FIAD) archives. While it supports DSK1-4 mapping of drives, it maps those to directories containing the set of FIADs.

When TIPI pretends to be a DSK device, it produces a CATALOG file just like a TI floppy controller, that represents the disk volume name, free and used space and list of contained files.

The volume name is derived from the directory name mapped to the device name. The disk space is fixed. Free space is always reported as just 2 sectors used of the user definable total sector count. See PI.CONFIG for configuration details.

TIPI does not emulate the 127 entry limit in the TI filesystem.

DSK devices on TIPI can be used with subdirectories. You can have DSK1_DIR=TIPI.GAMES and then refer to the path DSK1.EA5.PARSEC. Most software that uses the high level PAB based IO system will handle this fine. It is legacy software that starts enforcing the limitations of legacy hardware where things start to fall down.

Mapping drives

Lots of software can work with the TIPI. device and its subdirectories without resorting to mapping drives. However legacy software may have file entry length limitations or just assume the device name starts with DSK and require you to map the drive.

You can use CALL TIPI from TI BASIC to enter drive mappings. You may also browse to the directory you want to map in the TIPI web-ui, and select the directory, then use the action menu to assign it to DSK1-4. Or you can write configuration items to PI.CONFIG dynamically and change your drive mappings programmatically.

Transferring Disks to TIPI

If you upload a .DSK file, either sector dump or track dump, to the TIPI Samba share, or via the TIPI web-ui, a filesystem monitor service will asynchroniously detect and convert that file to a subdirectory where you uploaded it. The name of the subdirectory will be the volume name in the disk image. If there is a name collision, the name will be modified with _1, _2, etc.

The directory will contain an extraction of each file on the disk to a TIFILES format FIAD. These are used for 99% of the IO on TIPI.

The sector dump that is uploaded ( or converted from a track dump ) will be captured in that generated directory as a .sectors file. This can be used for programs like TI-FORTH, UCSD Psystem, and PLATO learning software that truly require sector read-write support.

Note, sector write operations do not get reflected in the FIADs that were extracted. So if your software is going to write with sector write, it should read with sector read.