#LyX 2.0 created this file. For more info see http://www.lyx.org/
\lyxformat 413
\begin_document
\begin_header
\textclass article
\begin_preamble
\date{}
\usepackage{footnote}
\makesavenoteenv{tabular}
\end_preamble
\use_default_options false
\maintain_unincluded_children false
\language american
\language_package default
\inputencoding auto
\fontencoding global
\font_roman utopia
\font_sans default
\font_typewriter default
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100

\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize default
\spacing single
\use_hyperref true
\pdf_bookmarks true
\pdf_bookmarksnumbered false
\pdf_bookmarksopen true
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks false
\pdf_backref false
\pdf_pdfusetitle false
\pdf_quoted_options "unicode=true"
\papersize a4paper
\use_geometry true
\use_amsmath 1
\use_esint 1
\use_mhchem 1
\use_mathdots 1
\cite_engine basic
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\use_refstyle 0
\index Index
\shortcut idx
\color #008000
\end_index
\leftmargin 2cm
\topmargin 2cm
\rightmargin 2cm
\bottommargin 2cm
\secnumdepth 3
\tocdepth 3
\paragraph_separation skip
\defskip smallskip
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict true
\end_header

\begin_body

\begin_layout Title
TURGEN SYSTEM DOCUMENTATION
\begin_inset Newline newline
\end_inset

version 8.4.5
\end_layout

\begin_layout Author
Michael Kalouš
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Part
TURGEN SYSTEM
\end_layout

\begin_layout Section
Introduction
\end_layout

\begin_layout Subsection
Primary Functionality
\end_layout

\begin_layout Standard
TURGEN SYSTEM converts files to various turbo systems and also to standard
 tape records.
\end_layout

\begin_layout Standard
Output of the program is a WAVE file, an electric signal on the output of
 the sound card, or a tape image.
\end_layout

\begin_layout Standard
TURGEN SYSTEM has special support for conversion of segmented binary files
 which includes a wizard and a set of binary loaders.
\end_layout

\begin_layout Subsection
Auxiliary Functionality
\end_layout

\begin_layout Itemize
Turbo decoder that can be used to retrieve information from tapes
\end_layout

\begin_layout Itemize
Reading of tape images
\end_layout

\begin_layout Itemize
Data transfer via serial port in collaboration with CAS COM utility
\end_layout

\begin_layout Itemize
Tool for merging segments of binary files
\end_layout

\begin_layout Itemize
Tool for embedding tokenized BASIC files to monolithic binary files 
\end_layout

\begin_layout Itemize
Tape image extractor tool that extracts data from tape images
\end_layout

\begin_layout Subsection
Support for Standard Tape Records
\end_layout

\begin_layout Standard
Standard tape records are fully supported.
 Tape images with baud, data, and fsk chunks can be read by the Tape image
 plugin.
 Monolithic binary files, segmented binary files, BASIC files, and plain
 data files can be converted to standard tape records by the Standard plugin.
 Refer to sections 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Standard"

\end_inset

 and 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Tape-Image"

\end_inset

.
\end_layout

\begin_layout Subsection
Hardware that can be used
\end_layout

\begin_layout Standard
Data recorders with or without turbo upgrades, data recorder replacement
 devices, MEGA-CD interface (CD-LINK), SIO2PC, ATART.
\end_layout

\begin_layout Subparagraph*
Important information.
 
\end_layout

\begin_layout Standard
If you are using devices other than data recorder and compact cassettes,
 please read section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Loading-Binary-Files-With-Replacement-Devices"

\end_inset

 that contains vital information about how to use such devices.
 Also read section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Subsection
Target Audience
\end_layout

\begin_layout Standard
Owners of Atari 8-bit computers who use data recorders or replacement devices.
\end_layout

\begin_layout Subsection
Program Characteristics
\end_layout

\begin_layout Standard
TURGEN SYSTEM is written in Java™
\begin_inset space ~
\end_inset

2 programming language and it is a free software distributed under the terms
 of GNU General Public License, version 2.
\end_layout

\begin_layout Subsection
System Requirements
\end_layout

\begin_layout Itemize
Java Runtime Environment 1.5.0 or newer
\end_layout

\begin_layout Itemize
Solaris, Microsoft Windows 98/2000/ME/XP/Vista/7/8, GNU/Linux, Mac OS
\end_layout

\begin_layout Subsection
Abbreviations
\end_layout

\begin_layout Paragraph*
TS.
\end_layout

\begin_layout Standard
TURGEN SYSTEM.
\end_layout

\begin_layout Paragraph*
JRE.
\end_layout

\begin_layout Standard
Java Runtime Environment.
\end_layout

\begin_layout Paragraph*
JDK.
\end_layout

\begin_layout Standard
Java Development Kit.
\end_layout

\begin_layout Subsection
Glossary
\end_layout

\begin_layout Paragraph*
Binary file.
 
\end_layout

\begin_layout Standard
File primarily designed to accommodate a
\emph on
 program
\emph default
 for Atari 8-bit computers.
 Binary file has a well-defined internal structure.
\end_layout

\begin_layout Standard
Every binary file starts with a two-byte header (or eye-catcher).
 Both bytes have value of 255.
\end_layout

\begin_layout Standard
Binary file consist of data blocks called 
\emph on
segments
\emph default
.
 A segment is a block of data that has a 
\emph on
segment header
\emph default
.
 The segment header is four bytes long and accommodates two 16-bit addresses
 (start address and end address).
 These two addresses determine where to place the segment when it is being
 loaded from a peripheral device into memory.
\end_layout

\begin_layout Standard
There are four types of segments.
 All of them are described in table 
\begin_inset CommandInset ref
LatexCommand ref
reference "tab:segments"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float table
placement h
wide false
sideways false
status open

\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="15cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Segment header
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Segment description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
736, 737
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
RUN segment.

\series default
 The segment is always 2 bytes long.
 These two bytes accommodate an address that specifies where to jump after
 all segments of a given binary file are loaded.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
738, 739
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
INIT segment.

\series default
 The segment is always 2 bytes long.
 These two bytes accommodate an address of a subroutine that is executed
 immediately after the INIT segment is loaded.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
736, 739
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
RUNINIT segment.

\series default
 Combination of the previous jump segments.
 4 Bytes long.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Other
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
Data segment.

\series default
 Such segment accommodates executable code or data.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "tab:segments"

\end_inset

Segments
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset VSpace medskip*
\end_inset


\end_layout

\begin_layout Paragraph*

\series bold
\begin_inset CommandInset label
LatexCommand label
name "par:Monolithic-binary-file."

\end_inset

Monolithic binary file.
\end_layout

\begin_layout Standard
Binary file with a very simple structure.
 It consists of exactly one data segment and at most one RUN segment.
\end_layout

\begin_layout Paragraph*
Segmented binary file.
\end_layout

\begin_layout Standard
Binary file that is not monolithic.
\end_layout

\begin_layout Paragraph*
Binary loader.
\end_layout

\begin_layout Standard
Program, or routine (usually part of an operating system) that loads and
 executes binary files.
\end_layout

\begin_layout Paragraph*
Binary load.
\end_layout

\begin_layout Standard
Name for the process of loading and running of a binary file.
 This process is performed by a binary loader.
\end_layout

\begin_layout Paragraph*
Cassette recorder.
\end_layout

\begin_layout Standard
Consumer electronics device designed to read or write electric signal to
 or from compact cassettes.
\end_layout

\begin_layout Paragraph*
Data recorder.
\end_layout

\begin_layout Standard
Device designed to read or write signal to or from compact cassettes, specially
 designed to be connected to computers, for example Atari XC-12.
\end_layout

\begin_layout Paragraph*
Program directory.
\end_layout

\begin_layout Standard
Directory or folder where TURGEN SYSTEM is installed to.
 Special symbol 
\family typewriter
<TSDIR>
\family default
 is also used to reference this directory.
\end_layout

\begin_layout Paragraph*
Configuration directory.
\end_layout

\begin_layout Standard
Directory or folder where TURGEN SYSTEM stores user configuration files.
 Special symbol 
\family typewriter
<CFGDIR>
\family default
 is also used to reference this directory.
\end_layout

\begin_layout Paragraph*
Java home directory.
\end_layout

\begin_layout Standard
Directory or folder where JRE (or JDK) resides.
 Special symbol 
\family typewriter
<JAVAHOME>
\family default
 is also used to reference this directory.
\end_layout

\begin_layout Paragraph
Turbo system.
\end_layout

\begin_layout Standard
This term denominates a system designed to speed up data transfer of the
 original Atari data recorder.
 A typical turbo system consist of three parts: 1.
 Hardware modification of data recorder, 2.
 Software exploiting such hardware modification, 3.
 File format.
 There is not necessarily 1:1:1 relation.
 For one hardware modification of data recorder, there can exist more software
 or more file formats.
\end_layout

\begin_layout Standard
TURGEN SYSTEM restricts this term to systems that use PWM (pulse width modulatio
n) to encode data.
 Some examples of turbo systems are Turbo 2000 or Turbo Blizzard.
 Example of system that is not considered to be turbo system is the IRON
 TURBO.
\end_layout

\begin_layout Subsection
Similar Utilities
\end_layout

\begin_layout Standard
Turgen System provides similar functionality as the following utilities:
 A8CAS, a8cas-util, CAS2WAV, XEX2CAS, and ATART.
\end_layout

\begin_layout Section
Distribution and Installation
\end_layout

\begin_layout Subsection
Preliminary Operations
\end_layout

\begin_layout Standard

\series bold
Before installing TURGEN SYSTEM, do install the Java Runtime Environment
\series default
.
 Download JRE from the following address: 
\begin_inset CommandInset href
LatexCommand href
target "http://java.com/en/download/index.jsp"

\end_inset

.
 It is recommended to download the newest available version of JRE for your
 operating system.
\end_layout

\begin_layout Subsection
Distribution
\end_layout

\begin_layout Standard
Program is distributed in two forms:
\end_layout

\begin_layout Enumerate
Compressed tar files.
 These files are devoted for users that do not use supported versions of
 Microsoft Windows or those who want to avoid overhead of automated installers
 for some reasons.
\end_layout

\begin_layout Enumerate
Automated installer for Microsoft Windows.
 This installer provides convenience and creates shortcuts in the Start
 menu or on the desktop.
 Shortcuts won't be created if JRE (or JDK) is not installed.
\end_layout

\begin_layout Subsection
Installation and Directories
\end_layout

\begin_layout Standard
To install TURGEN SYSTEM, decompress the compressed tar file or run the
 automated installer.
 During installation, the program directory is created and populated with
 files.
\end_layout

\begin_layout Standard
The program directory contains all necessary files required to run TURGEN
 SYSTEM.
 TS never writes to this directory; it is recommended to set read-only access
 to the directory in order to provide security.
\end_layout

\begin_layout Standard
The configuration directory is created by TS when needed (usually during
 the first run).
 Its location is operating system dependent and TS requires read-write access
 for full functionality, however it will still work with limitations even
 though read-write access is not granted.
 To display name of this directory, select 
\emph on
About
\emph default
 item from the 
\emph on
Turgen
\emph default
 menu.
\end_layout

\begin_layout Section
Operations Guide
\end_layout

\begin_layout Subsection
Starting TURGEN SYSTEM
\end_layout

\begin_layout Subsubsection*
The Hard Way
\end_layout

\begin_layout Standard
Program code of the TURGEN SYSTEM is located in the 
\family typewriter
turgen.jar
\family default
 file.
 To run TURGEN SYSTEM, run Java launcher and specify that the program code
 is in the 
\family typewriter
turgen.jar
\family default
 file, using the following commands.
\end_layout

\begin_layout Standard

\family typewriter
<JAVAHOME>/bin/java -jar <TSDIR>/turgen.jar
\family default
 on Unix-like systems or
\begin_inset Newline newline
\end_inset


\family typewriter
<JAVAHOME>
\backslash
bin
\backslash
javaw.exe -jar <TSDIR>
\backslash
turgen.jar
\family default
 under Microsoft Windows.
\end_layout

\begin_layout Subsubsection*
Microsoft Windows
\end_layout

\begin_layout Standard
Use shortcuts created by the automated installer or double-click the 
\family typewriter
turgen.jar
\family default
 file icon.
\end_layout

\begin_layout Subsubsection*
Other Operating Systems
\end_layout

\begin_layout Standard
Create launchers or shortcuts using means provided by your desktop environment.
\end_layout

\begin_layout Subsubsection*
Command Line Parameters
\end_layout

\begin_layout Standard
One command line parameter is accepted - a file that accommodates a playlist.
\end_layout

\begin_layout Subsubsection*
Log File
\end_layout

\begin_layout Standard
Exceptions, traces or other important diagnostic information is stored into
 the 
\family typewriter
turgen.log
\family default
 file located in the configuration directory.
 This file is recycled when it exceeds size of 4 MB.
\end_layout

\begin_layout Subsection
Program Controls
\end_layout

\begin_layout Subsubsection*
Main Menu and Playlist
\end_layout

\begin_layout Standard
The main menu is located on the top of the program window.
 Almost all functions are accessible from the main menu.
\end_layout

\begin_layout Standard
In the middle of the program window, there is 
\emph on
playlist
\emph default
 that accommodates information what files are to be converted and how they
 will be converted.
\end_layout

\begin_layout Subsubsection*
Main Control Buttons
\end_layout

\begin_layout Standard
Under the playlist, there is a panel, where the 
\emph on
main control buttons
\emph default
 are located.
 The most used functions of TS are reachable using these buttons.
 Every button has its icon and name.
 The buttons are depicted in table 
\begin_inset CommandInset ref
LatexCommand ref
reference "tab:Main-control-buttons"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float table
placement h
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="6" columns="4">
<features tabularvalignment="middle">
<column alignment="center" valignment="top" width="0">
<column alignment="left" valignment="middle" width="0">
<column alignment="left" valignment="middle" width="0">
<column alignment="left" valignment="middle" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Icon
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Name
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Icon
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_add.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Add item to playlist
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_up.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Move 1 playlist item up
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_edit.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Edit selected playlist item
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_down.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Move 1 playlist item down
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_delete.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Remove selected playlist items
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_wave.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Generate WAVE file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_all.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Select all playlist items
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_direct.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Generate AUDIO directly
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_instructions.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Generate tape image
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset Graphics
	filename images/action_wiz.png

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wizard for binary files
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "tab:Main-control-buttons"

\end_inset

Main control buttons
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset VSpace medskip*
\end_inset


\end_layout

\begin_layout Standard

\end_layout

\begin_layout Subsubsection*
Progress Monitoring Panel
\end_layout

\begin_layout Standard
This panel is located in the bottom part of the program window.
 Conversions of files can be monitored or stopped here.
 At the very bottom of the program window, there is a status bar.
\end_layout

\begin_layout Standard
\noindent
\align center
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/tgmain.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Program window
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Conversion of Files 
\end_layout

\begin_layout Subsubsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Playlist-Items"

\end_inset

Playlist Items
\end_layout

\begin_layout Standard
In order to convert a file, TURGEN SYSTEM requires information about such
 conversion which includes input file name, input and output format, output
 file name, what loader to prepend and various other parameters.
 Such information is accommodated in 
\emph on
playlist items
\emph default
.
 Playlist items are elements of the 
\emph on
playlist
\emph default
.
\end_layout

\begin_layout Subsubsection
Working with Playlist
\end_layout

\begin_layout Standard
To work with playlist, use the main control buttons or the items from the
 
\emph on
Playlist
\emph default
 menu.
\end_layout

\begin_layout Standard
To add a playlist item to the playlist, click the 
\emph on
Add item to playlist 
\emph default
main control button.
 To edit playlist items, click the 
\emph on
Edit selected playlist item
\emph default
 main control button.
 To remove selected playlist items, click the 
\emph on
Remove selected playlist items
\emph default
 main control button.
\end_layout

\begin_layout Standard
To select playlist items, use keyboard or mouse.
 To select all playlist items, click 
\emph on
Select all playlist items
\emph default
 main control button.
 
\end_layout

\begin_layout Standard
To move single playlist items use 
\emph on
Move 1 playlist item up
\emph default
 and 
\emph on
Move 1 playlist item down
\emph default
 buttons.
\end_layout

\begin_layout Standard
To load or save a playlist, use the 
\emph on
Load 
\emph default
and
\emph on
 Save
\emph default
 items from the 
\emph on
Playlist
\emph default
 menu.
\end_layout

\begin_layout Subsubsection
Playlist Item Manipulation
\end_layout

\begin_layout Standard
TURGEN SYSTEM provides a dialog for playlist item manipulation which is
 depicted on figure
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Manipulating-playlist-item"

\end_inset

.
\end_layout

\begin_layout Standard
\noindent
\align center
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/turborom.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Manipulating-playlist-item"

\end_inset

Manipulating playlist item
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
Use the Combo box 
\emph on
PLUGIN
\emph default
 to choose plugin that will be used for conversion.
 National flags can be used to distinguish from where a particular turbo
 system comes from.
\end_layout

\begin_layout Standard
In the top part of the dialog, there is a common panel that is used to set
 input and output file.
 To display a dialog with information about input file, click the 
\emph on
Input file
\emph default
 label.
 To fill the output file text field automatically, click the 
\emph on
Output file
\emph default
 label.
 To display a file chooser dialog, click the 
\emph on
Browse
\emph default
 buttons.
\end_layout

\begin_layout Standard
In the middle part of the dialog, there are controls specific for the selected
 plugin.
\end_layout

\begin_layout Standard
Use buttons at the bottom to commit or cancel playlist item manipulation.
 Click 
\emph on
Clear
\series bold
 
\series default
\emph default
button to reset controls in the dialog.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Průvodce-pro-převod"

\end_inset

Wizard for Binary Files
\end_layout

\begin_layout Standard
Wizard for binary files provides convenience when converting binary files.
 
\end_layout

\begin_layout Standard
To start the wizard, click the 
\emph on
Wizard for binary files
\emph default
 main control button.
\end_layout

\begin_layout Standard
In the first step, specify a binary file that you want to convert and what
 are the capabilities of your data recorder.
 In the second step, choose one of the conversion methods offered by the
 wizard, output file name and pulses.
\end_layout

\begin_layout Standard
Offered conversion methods are ordered by the number of pilot tones or leaders.
 The wizard also checks (finitely of course) whether the binary file will
 destroy a built-in binary loader that will be prepended.
\end_layout

\begin_layout Subsection
Output
\end_layout

\begin_layout Subsubsection
Output of Electric Signal into WAVE File
\end_layout

\begin_layout Standard
To output electric signal into a WAVE file, select at least one playlist
 item and click the 
\emph on
Generate WAVE file 
\emph default
main control button
\emph on
.
 
\emph default
A separate thread for each selected playlist item is created.
 These threads run in parallel and it is possible to stop them using the
 
\emph on
Stop
\emph default
 buttons that will appear in the progress monitoring panel.

\color red
 
\color inherit
The output files are overwritten without a warning.
\end_layout

\begin_layout Subsubsection
Output of Electric Signal to Computer's Audio System.
\end_layout

\begin_layout Standard
To output electric signal to computer's audio system, select at least one
 playlist item and click the 
\emph on
Generate AUDIO directly
\emph default
 main control button.
 Playlist items are processed serially.
 It is possible to stop the output using 
\emph on
Stop
\emph default
 and 
\emph on
Stop all
\emph default
 buttons that will appear in the progress monitoring panel.
 To resume output, click the 
\emph on
Resume
\emph default
 button.
\end_layout

\begin_layout Subsubsection
Output of Tape Image
\end_layout

\begin_layout Standard
To output a tape image, select at least one playlist item and click the
 
\emph on
Generate tape image
\emph default
 main control button
\emph on
.
 
\emph default
Playlist items are processed serially.
 The output files are overwritten without a warning.
 The format of tape image can be configured using Program configuration
 facility described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Program-configuration-facility"

\end_inset

.
 
\end_layout

\begin_layout Subsection
Input/Output matrix
\end_layout

\begin_layout Standard
Conversion capabilities of Turgen System are enumerated in the following
 table.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="6" columns="5">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="1.5cm">
<column alignment="left" valignment="top" width="1.5cm">
<column alignment="left" valignment="top" width="3cm">
<column alignment="left" valignment="top" width="3cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Input
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Wave file
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Audio system
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Tape Image
\begin_inset Newline newline
\end_inset

with 
\series bold
trXX
\series default
 chunks
\end_layout

\end_inset
</cell>
<cell multirow="3" alignment="left" valignment="middle" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Tape image
\begin_inset Newline newline
\end_inset

with 
\series bold
pwmX
\series default
 chunks
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Regular file
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Binary file
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Tape image (
\series bold
trXX
\series default
 chunks)
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Passed through
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Tape image (
\series bold
pwmX
\series default
 chunks)
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
NO
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Passed through
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Tape image (
\series bold
baud, fsk
\series default
 chunks)
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
YES
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Passed through
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\size small
Passed through
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Pulse Corrections
\end_layout

\begin_layout Subsubsection
Motivation
\end_layout

\begin_layout Standard
Turgen System has a repository of pulses for all supported turbo systems
 (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Repository-of-Pulses"

\end_inset

).
 The values in the repository have been tested using patched Atari800 emulator
 provided by the A8CAS project.
 However, users of TS already reported minor problems when using real hardware.
 In light of this problems, an ability to comfortably correct the pulses
 is highly desired.
\end_layout

\begin_layout Subsubsection
Permanent Pulse Corrections
\end_layout

\begin_layout Standard
To make permanent corrections of pulses, use the Program configuration facility.
 Plugins that support permanent pulse corrections are KSO Turbo 2000, Atari
 Super Turbo, Turbo ROM, and Turbo Blizzard.
\end_layout

\begin_layout Subsubsection
Immediate Pulse Corrections
\end_layout

\begin_layout Standard
You can temporarily correct the pulses for all plugins.
 Select the 
\emph on
Immediate pulse corrections
\emph default
 item from the 
\emph on
Generator
\emph default
 menu.
 A special panel appears.
\end_layout

\begin_layout Standard
Use controls on the special panel to adjust durations of the pulses.
 You can make the pulses narrower (negative values) or wider (positive values).
 One unit represents 1/44100 s.
\end_layout

\begin_layout Standard
Note that immediate pulse corrections always override permanent ones.
 
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement h
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/finetuning.png
	scale 80

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Pulse Corrections
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Silence-Lists"

\end_inset

Silence Lists
\end_layout

\begin_layout Subsubsection
Overview
\end_layout

\begin_layout Standard
The silence lists allow comfortable usage of devices other than data recorder
 and compact cassettes (refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Loading-Binary-Files-With-Replacement-Devices"

\end_inset

).
\end_layout

\begin_layout Standard
The silence lists allow the following:
\end_layout

\begin_layout Itemize
Insert silence of defined duration after a block that contains INIT segments
\end_layout

\begin_layout Itemize
Pause output of electric signal to computer's audio system after a block
 that contains INIT segments
\end_layout

\begin_layout Standard
The silence lists are part of the playlist items (refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Playlist-Items"

\end_inset

).
\end_layout

\begin_layout Subsubsection
Silence List Syntax
\end_layout

\begin_layout Standard
A silence list consists of silence specifications (SPECs) separated by commas:
\begin_inset Newline newline
\end_inset


\family typewriter
SILENCE_LIST:=<SPEC>,<SPEC>,...,<SPEC>
\end_layout

\begin_layout Standard
A silence specification is a number followed by optional P suffix or just
 a P suffix which is an equivalent of 
\family typewriter
1P
\family default
 syntax:
\begin_inset Newline newline
\end_inset


\family typewriter
SPEC:=n[P]|P
\end_layout

\begin_layout Standard
where n is a number of seconds of silence that will be generated.
 P suffix indicates that output of electric signal to computer's audio system
 will be paused.
\end_layout

\begin_layout Subsubsection
Examples
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="2">
<features tabularvalignment="middle">
<column alignment="center" valignment="top" width="0">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Silence List
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Explanation
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\family typewriter
1,3,0,4
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1 second of silence after 1st INIT segment
\begin_inset Newline newline
\end_inset

3 seconds of silence after 2nd INIT segment
\begin_inset Newline newline
\end_inset

No silence after 3rd INIT segment
\begin_inset Newline newline
\end_inset

4 seconds of silence after 4th INIT segment
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\family typewriter
3,2P,P
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3 seconds of silence after 1st INIT segment
\begin_inset Newline newline
\end_inset

2 seconds of silence after 2nd INIT segment, output of electric signal to
 computer's audio system will be paused
\begin_inset Newline newline
\end_inset

1 second of silence after 3rd INIT segment, output of electric signal to
 computer's audio system will be paused
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Program-configuration-facility"

\end_inset

Program Configuration Facility
\end_layout

\begin_layout Standard
The Program configuration facility provides various program parts with configura
tion capabilities in a uniform way.
 Program configuration consists of 
\emph on
configuration entries
\emph default
 that are grouped in 
\emph on
configuration classes
\emph default
.
 Program parts use API to retrieve contents of configuration entries, user
 is provided with 
\emph on
Preferences dialog
\emph default
 which he can use to modify configuration.
 To provide persistence, configuration is stored in a properties file.
\end_layout

\begin_layout Standard
Some configuration entries are used by the core of TURGEN SYSTEM, others
 are used by the plugins.
\end_layout

\begin_layout Subsection
Modifying Configuration
\end_layout

\begin_layout Standard
There are two ways how the configuration can be modified:
\end_layout

\begin_layout Enumerate
Usage of the 
\emph on
Preferences
\emph default
 dialog.
 To make a modification permanent, it is necessary to save the configuration
 by selecting the 
\emph on
Save preferences
\emph default
 menu item from the 
\emph on
Tools
\emph default
 menu.
 This is the preferred way how to modify the configuration.
\end_layout

\begin_layout Enumerate
Manual adjustment of the 
\family typewriter
turgen.properties
\family default
 file that can be found in the configuration directory.
 This is deprecated way and it is not described in this documentation.
\end_layout

\begin_layout Subsection
General Configuration Entries
\end_layout

\begin_layout Standard
TURGEN SYSTEM/GUI Look and feel
\begin_inset Newline newline
\end_inset

Look and feel of the user interface, fully qualified class name.
 If the entry is empty, default look and feel is used.
\end_layout

\begin_layout Standard
Standard looks and feels:
\family typewriter

\begin_inset Newline newline
\end_inset

javax.swing.plaf.metal.MetalLookAndFeel
\family default
 (all platforms, default)
\family typewriter

\begin_inset Newline newline
\end_inset

com.sun.java.swing.plaf.motif.MotifLookAndFeel
\family default
 (all platforms)
\family typewriter

\begin_inset Newline newline
\end_inset

com.sun.java.swing.plaf.windows.WindowsLookAndFeel
\family default
 (Microsoft Windows only)
\family typewriter

\begin_inset Newline newline
\end_inset

com.sun.java.swing.plaf.gtk.GTKLookAndFeel 
\family default
(only when GTK+ 2.2 or newer is installed)
\family typewriter

\begin_inset Newline newline
\end_inset

com.sun.java.swing.plaf.mac.MacLookAndFeel
\family default
 (only Mac, untested)
\family typewriter

\begin_inset Newline newline
\end_inset

com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel 
\family default
(new since JDK 1.6 update 10)
\end_layout

\begin_layout Standard
TURGEN SYSTEM/favorite output directory
\family typewriter

\begin_inset Newline newline
\end_inset


\family default
Favorite directory for output files.
\end_layout

\begin_layout Subsection
Output of Electric Signal to Computer's Audio System
\end_layout

\begin_layout Standard
Audio output/Silence between files
\begin_inset Newline newline
\end_inset

Length of silence in milliseconds generated between playlist items.
 
\end_layout

\begin_layout Standard
Audio generator/Amplitude
\begin_inset Newline newline
\end_inset

Amplitude of the signal.
 0-100%.
 It is not recommended to set the value too low.
\end_layout

\begin_layout Standard
Audio generator/Channels
\begin_inset Newline newline
\end_inset

Number of channels.
\end_layout

\begin_layout Standard
Audio generator/Bits per sample
\begin_inset Newline newline
\end_inset

Number of bits per one sample.
\end_layout

\begin_layout Standard
Audio generator/Signed samples
\begin_inset Newline newline
\end_inset

Indicates whether to use signed samples.
\end_layout

\begin_layout Standard
Audio generator/Initial silence
\begin_inset Newline newline
\end_inset

Length of silence generated after audio system initialization, unit is 0.1
 of second.
 This may be needed, because the very first data sent to the audio system
 can result in unwanted signal.
\end_layout

\begin_layout Standard
Audio generator/Terminal silence
\begin_inset Newline newline
\end_inset

Length of silence generated before audio system termination.
 This may be needed, because the very last data sent to the audio system
 can be truncated.
\end_layout

\begin_layout Standard
Audio generator/Buffer size
\begin_inset Newline newline
\end_inset

Size of the buffer for data being sent to the audio system.
 Increasing this value can help when there are under runs and output from
 the audio system is repeatedly interrupted.
\end_layout

\begin_layout Standard
Audio generator/Signal in right channel only
\begin_inset Newline newline
\end_inset

If the number of channel is set to two, signal will be generated to the
 right channel only.
\end_layout

\begin_layout Standard
Audio generator/Do not modulate standard records
\begin_inset Newline newline
\end_inset

If set to true, standard tape records will be generated without modulation.
\end_layout

\begin_layout Standard
Audio generator/Use double buffering
\begin_inset Newline newline
\end_inset

If set to true, an internal buffer is used to store the electric signal
 before it is sent to the computer's audio system.
 This reduces number of round-trips between TS and operating system's native
 sound facilities.
\end_layout

\begin_layout Standard
Audio generator/Use harmonic pulses
\begin_inset Newline newline
\end_inset

If set to true, harmonic pulses are generated instead of rectangular pulses.
 This can be useful when the electric signal is passed through a device
 that distorts signal with steep edges.
\end_layout

\begin_layout Subsection
Output of Electric Signal into WAVE File
\end_layout

\begin_layout Standard
WAVE generator/Amplitude
\begin_inset Newline newline
\end_inset

Amplitude of the signal.
 0-100%.
 It is not recommended to set the value too low.
\end_layout

\begin_layout Standard
WAVE generator/Channels
\begin_inset Newline newline
\end_inset

Number of channels.
\end_layout

\begin_layout Standard
WAVE generator/Bits per sample
\begin_inset Newline newline
\end_inset

Number of bits per one sample.
\end_layout

\begin_layout Standard
WAVE generator/Postprocessing command
\family typewriter

\begin_inset Newline newline
\end_inset


\family default
Command line for postprocessing.
 For more information refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Postprocessing-of-WAVE"

\end_inset

.
\end_layout

\begin_layout Standard
WAVE generator/Change extension to .wav
\begin_inset Newline newline
\end_inset

Extension of output files will be changed to .wav in intelligent way if set
 to true.
\end_layout

\begin_layout Standard
WAVE generator/Signal in right channel only
\begin_inset Newline newline
\end_inset

If the number of channel is set to two, signal will be generated to the
 right channel only.
\end_layout

\begin_layout Standard
WAVE generator/Do not modulate standard records
\begin_inset Newline newline
\end_inset

If set to true, standard tape records will be generated without modulation
\end_layout

\begin_layout Standard
WAVE generator/Use harmonic pulses
\begin_inset Newline newline
\end_inset

If set to true, harmonic pulses are generated instead of rectangular pulses.
 This can be useful when the electric signal is passed through a device
 that distorts signal with steep edges.
\end_layout

\begin_layout Subsection
Output of Tape Images
\end_layout

\begin_layout Standard
Tape image output/Change extension to .cas
\begin_inset Newline newline
\end_inset

Extension of output files will be changed to .cas in intelligent way if set
 to true.
\end_layout

\begin_layout Standard
Tape image generator/Postprocessing command
\begin_inset Newline newline
\end_inset

Command line for postprocessing.
 For more information refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Postprocessing-of-Tape"

\end_inset

.
\end_layout

\begin_layout Standard
Tape image generator/Auto create temporary files
\begin_inset Newline newline
\end_inset

If the output file is not specified and this entry is set to true, temporary
 file is created automatically.
 This is useful for postprocessing.
\end_layout

\begin_layout Standard
Tape image generator/Tape image chunks
\begin_inset Newline newline
\end_inset

This entry is used to specify, what type of chunks will be placed into generated
 tape images.
 trXX style chunks or pwmX can be specified.
 trXX style chunks are used by CASCOM , pwmX style chunks are used by A8CAS.
\end_layout

\begin_layout Section
Advanced Settings
\end_layout

\begin_layout Subsection
Active Plugins
\end_layout

\begin_layout Standard
The list of plugins that will be loaded is stored in the 
\family typewriter
plugins.list
\family default
 file.
 To disable a plugin, remove or comment-out (using the # character) the
 corresponding line.
 To change the order of the plugins (that is what users from Poland may
 want to do), change order of the lines.
\end_layout

\begin_layout Standard
Note: Some plugins process trXX tape image chunks.
 If a plugin is disabled, given trXX tape image chunk cannot be processed.
 
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Repository-of-Pulses"

\end_inset

Repository of Pulses
\end_layout

\begin_layout Standard
The repository of pulses is stored in 
\family typewriter
pulses/pulses.list
\family default
 file.
 Repository can be modified, directions are present in the file itself as
 comments.
 It is not recommended to modify the repository without serious reasons.
 Changes take effect after TS is restarted.
\end_layout

\begin_layout Section
Tools
\end_layout

\begin_layout Subsection
Merging Segments of Binary Files
\end_layout

\begin_layout Subsubsection
Introduction
\end_layout

\begin_layout Standard
TURGEN SYSTEM is equipped with a tool that merges segments of binary files
 into one segment and adds extra code that emulates the effect of the INIT
 segments.
 This allows to convert segmented binary files that meet certain conditions
 to monolithic binary files.
\end_layout

\begin_layout Standard
This tool was created in early times of TURGEN
\begin_inset space ~
\end_inset

SYSTEM in order to partially cope with limitations of Czechoslovak Turbo
 2000 and Super Turbo turbo systems.
\end_layout

\begin_layout Standard
Conditions that the segmented binary files must meet are the following:
 1.
\begin_inset space ~
\end_inset

Data segments must not overlap, 2.
\begin_inset space ~
\end_inset

Routines called by the jump segments must work even when all data segments
 are already loaded, 3.
\begin_inset space ~
\end_inset

There must be place for code that emulates effect of the INIT segments.
 Usually, the only way how to test this conditions is to run the resulting
 monolithic binary file in some emulator.
 It should be noted that capabilities of this tool must be considered limited.
\end_layout

\begin_layout Subsubsection
Merging Segments Step by Step
\end_layout

\begin_layout Standard
Display the dialog for merging segments of binary file by selecting item
 
\emph on
Merge segments of binary file
\emph default
 from the 
\emph on
Tools
\emph default
 menu.
\end_layout

\begin_layout Standard
Fill-in the 
\emph on
Input file
\emph default
 text field and press the 
\emph on
Analyze
\emph default
 button.
 The list of segments will be filled-in and you will be able to check whether
 the first condition is met.
 Then fill-in the 
\emph on
Output file
\emph default
 text field and specify address of the replacement code that will emulate
 the effect of jump segments.
 The replacement code is needed only when there are INIT or RUNINIT segments
 in the binary file.
\end_layout

\begin_layout Standard
Click the 
\emph on
Merge !
\emph default
 button to merge the segments and create the output binary file.
 Test the created binary file using some emulator.
\end_layout

\begin_layout Standard
\noindent
\align center
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/tgmerex.png
	rotateOrigin leftTop

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Merging segments of binary file
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Turbo Decoder
\end_layout

\begin_layout Subsubsection
Overview
\end_layout

\begin_layout Standard
Turbo decoder is a tool designed to retrieve data from compact cassettes.
 The decoding algorithm is a simple Java rewrite of turbo loaders from assembler
 6502.
\end_layout

\begin_layout Standard
The electric signal can be read from WAVE files.
 When creating WAVE files, it is recommended to set the cassette recorder
 to get maximum signal amplitude.
 The WAVE file must be in the following format: PCM, 1 or 2 channels, 44100
\begin_inset space \thinspace{}
\end_inset

-
\begin_inset space \thinspace{}
\end_inset

96000
\begin_inset space ~
\end_inset

Hz, 8
\begin_inset space ~
\end_inset

or 16
\begin_inset space ~
\end_inset

bits per sample.
\end_layout

\begin_layout Standard
Another possibility is to read the electric signal directly from the computer's
 audio system.
 This source of electric signal is supported, but not recommended as it
 requires error-prone processing of the signal in real time.
\end_layout

\begin_layout Standard
Turbo systems supported by the decoder are the following: Turbo 2000, Turbo
 2000 - kilobyte blocks, Super Turbo, Turbo Tape and B-TAPE, KSO Turbo 2000,
 Turbo Blizzard, Turbo ROM, Atari Super Turbo (AST format only), Hard Turbo,
 and Lower Silesia Turbo 2000.
\end_layout

\begin_layout Standard
The decoder can also work in so called 
\begin_inset Quotes eld
\end_inset

Monitor mode
\begin_inset Quotes erd
\end_inset

 that allows you to read raw turbo blocks.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/tgDecoder.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Turbo decoder
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection
Preparing the Decoder
\end_layout

\begin_layout Standard
Open the decoder window by selecting the 
\emph on
Turbo decoder
\emph default
 item from the 
\emph on
Tools
\emph default
 menu.
\end_layout

\begin_layout Standard
Select source of the electric signal using the 
\emph on
Signal source
\emph default
 combo box.
 
\end_layout

\begin_layout Standard
If the source of the electric signal is a WAVE file, fill-in the WAVE file
 name and select input channel using the 
\emph on
Channel
\emph default
 combo box.
\end_layout

\begin_layout Standard
If the source of the electric signal is the computer's audio system, select
 input channel using the 
\emph on
Channel
\emph default
 combo box, select the sample rate using the 
\emph on
Rate
\emph default
 combo box, and select number of bits per sample using the 
\emph on
Bits
\emph default
 combo box.
\end_layout

\begin_layout Standard
Fill-in the output directory and click the 
\emph on
Attach Decoder 
\emph default
button.
 The decoder is now ready to decode the electric signal.
\end_layout

\begin_layout Subsubsection
Decoding Files
\end_layout

\begin_layout Standard
To set various decoding parameters, use controls on the 
\emph on
Settings 
\emph default
tab.
\end_layout

\begin_layout Standard
Use the 
\emph on
Navigation
\emph default
 panel to specify current position in the WAVE file.
\end_layout

\begin_layout Standard
The controls on the 
\emph on
Decoding
\emph default
 panel are devoted to perform decoding.
 Use the combo box 
\emph on
Decoder
\emph default
 to select a turbo system.
\end_layout

\begin_layout Standard
To start decoding of one file or all files until the end of the WAVE file,
 click 
\emph on
Decode one file
\emph default
 or 
\emph on
Decode until EOF
\emph default
 buttons.
 To stop the decoding process, press the 
\emph on
Stop
\emph default
 button.
\end_layout

\begin_layout Standard
You can see the results of decoding in the 
\emph on
Log
\emph default
 tab.
 If you use a digitized sound editor, you can use the sample numbers enclosed
 in the curly braces.
\end_layout

\begin_layout Standard
If you want to work with different WAVE file, or to select another source
 of the electric signal, detach the turbo decoder using the 
\emph on
Detach decoder
\emph default
 button.
\end_layout

\begin_layout Standard
If the decoder stops responding due to a bad audio system setup, press the
 
\emph on
Stop
\emph default
 button while pressing the SHIFT key.
 This is called emergency stop.
 After an emergency stop, the decoder must be detached and attached to be
 ready again.
\end_layout

\begin_layout Subsubsection
Monitor Mode
\end_layout

\begin_layout Standard
To work in the monitor mode, select the 
\emph on
Monitor mode
\emph default
 check box.
 In the Turbo monitor mode, turbo decoder reads raw blocks of the selected
 turbo system.
 If a block is found, it is decoded until an error occurs or end of block
 is encountered.
 No checksums are verified and internal format of the block is not validated.
\end_layout

\begin_layout Standard
To decode a single block, click the 
\emph on
Decode one file
\emph default
 button.
 To decode all blocks until end of file, click the 
\emph on
Decode until EOF
\emph default
 button.
\end_layout

\begin_layout Standard
The monitor mode is available for special purposes like decoding data stored
 in non-standard formats, retrieving corrupted files etc.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Embedding-Tokenized-BASIC"

\end_inset

Embedding Tokenized BASIC Files to Binary Files
\end_layout

\begin_layout Subsubsection
Motivation
\end_layout

\begin_layout Standard
Some turbo systems define file formats than cannot accommodate tokenized
 BASIC files.
 In order to circumvent such limitation, TS has a tool that embeds tokenized
 BASIC files in monolithic binary files.
 
\series bold
The purpose of the tool is embedding, not compilation
\series default
.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/tgembedbas.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Embedding tokenized BASIC files to binary files
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection
Operations
\end_layout

\begin_layout Standard
Open the embedding tool window by selecting the 
\emph on
Embed BASIC to binary file
\emph default
 item from the 
\emph on
Tools
\emph default
 menu.
\end_layout

\begin_layout Standard
Click the 
\emph on
Add BASIC files...

\emph default
 button to display a file chooser that allows you to select BASIC files
 to be embedded to binary files.
 Chosen files are added to a list.
 You can select multiple files to be embedded.
 Click the 
\emph on
Remove selected
\emph default
 button to remove BASIC files from the list.
\end_layout

\begin_layout Standard
Use the 
\emph on
Output directory
\emph default
 text field to specify into which directory the binary files will be placed.
 Use the 
\emph on
Browse
\emph default
 button to specify the directory using a file chooser.
\end_layout

\begin_layout Standard
Use the 
\emph on
Base address
\emph default
 spinner to specify address to which the BASIC files will be loaded (tokenized
 BASIC code is relocatable).
\end_layout

\begin_layout Standard
Use the 
\emph on
Protect against listing
\emph default
 check box to protect the BASIC program against listing by disabling the
 BREAK key and setting the COLDST flag.
 Note that such protection is only rudimentary and can be broken easily.
\end_layout

\begin_layout Standard
To embed the selected BASIC files in binary files, click the 
\emph on
Embed
\emph default
 button.
 All BASIC files in the list will be embedded in binary files.
 A report is displayed after embedding processing finishes.
\end_layout

\begin_layout Subsection
Tape Image Extractor
\end_layout

\begin_layout Standard
Tape image extractor is a tool designed to extract data from tape images.
 Tape image extractor allows you to do the following:
\end_layout

\begin_layout Enumerate
Display basic information about tape image chunks
\end_layout

\begin_layout Enumerate
Select tape image chunks for data extraction
\end_layout

\begin_layout Enumerate
Determine which portions of tape image chunks will be extracted
\end_layout

\begin_layout Enumerate
Extract data from tape image chunks to plain data files
\end_layout

\begin_layout Enumerate
Extract boot files to binary files
\end_layout

\begin_layout Enumerate
Extract data from tape image chunks to binary files
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement h
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/extractor.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
Tape Image Extractor
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection
Operations
\end_layout

\begin_layout Standard
To open the Tape Image Extractor window, select the 
\emph on
Tape image extractor
\emph default
 item from the 
\emph on
Tools
\emph default
 menu.
\end_layout

\begin_layout Standard
To open a tape image, select the 
\emph on
Open tape image
\emph default
 item from the 
\emph on
File
\emph default
 menu.
\end_layout

\begin_layout Standard
To extract data from tape image chunks, select one or more tape image chunks.
 Then select the 
\emph on
Extract data
\emph default
 item from the 
\emph on
Chunks
\emph default
 menu.
 Select output file using the displayed file chooser.
 A report is displayed after the extraction.
\end_layout

\begin_layout Standard
To extract data from tape image chunks to a binary file, select one or more
 tape image chunks.
 Then select the
\emph on
 Extract data to binary file
\emph default
 item from the 
\emph on
Chunks
\emph default
 menu.
 A dialog that will allow you to select output file and parameters of the
 extraction will be displayed.
 Enter values and click the 
\emph on
Extract
\emph default
 button to perform the extraction.
\end_layout

\begin_layout Standard
To determine which portion of tape image chunk or chunks will be extracted,
 select one or more tape image chunks.
 Then select the 
\emph on
Set data extraction hint
\emph default
 from the 
\emph on
Chunk
\emph default
 menu.
 Enter values and click the 
\emph on
OK
\emph default
 button.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Section
Hardware that Can Be Used with TURGEN SYSTEM
\end_layout

\begin_layout Subsection
Data Recorders and Compact Cassettes
\end_layout

\begin_layout Standard
For best experience with TURGEN SYSTEM, use a data recorder with a turbo
 upgrade and quality compact cassettes.
\end_layout

\begin_layout Standard
You have to use standard compact cassettes with data recorders.
 Such compact cassettes have one of the following markings: 
\series bold
IEC I, TYPE I, NORMAL BIAS, or NORMAL POSITION.
\end_layout

\begin_layout Standard
Do not use compact cassettes marked as CHROME, METAL, or HIGH POSITION.
 The data recorders were not designed to be used with them.
\end_layout

\begin_layout Subsection
Cassette Adapters
\end_layout

\begin_layout Standard
If you do not wish or cannot use compact cassettes, you can try affordable
 and available cassette adapter.
 This device looks like a compact cassette, but there is no tape inside.
 Instead of using the tape, the cassette adapter is connected to an external
 source of signal using a thin cable with JACK connector.
\end_layout

\begin_layout Standard
The cassette adapter is very versatile, as it can be connected to various
 devices like CD players, MP3 players or similar devices.
 Also do not forget that the cassette adapter will work with data recorders
 that can no more spin the reels, but their electrical circuitry is still
 intact.
\end_layout

\begin_layout Standard
The Cassette adapter is most useful when connected to a computer where TURGEN
 SYSTEM is running.
\end_layout

\begin_layout Standard
To use the cassette adapter, place it into your data recorder (ensure that
 its top side is oriented correctly) and connect it to an external signal
 source.
\end_layout

\begin_layout Subsection
MEGA-CD Interface (CD-LINK)
\end_layout

\begin_layout Standard
This interface allows you to plug an external signal source as it would
 be a data recorder with Czechoslovak Super Turbo upgrade.
 In essence, it is an external version of Super Turbo circuitry with a pair
 of RCA connectors and a SIO connector.
\end_layout

\begin_layout Standard
You can use the MEGA-CD interface to transfer Turbo 2000, Super Turbo, Turbo
 2000 - kilobyte blocks, and B-TAPE records to Atari.
 Atari Super Turbo and Turbo ROM should work as well.
\end_layout

\begin_layout Standard
The MEGA-CD interface was not originally designed to transfer standard tape
 records, but with TURGEN SYSTEM, this is also possible when a high-quality
 signal source is used (computer, CD player, or MP3 player).
 To transfer standard tape records, you must set 
\emph on
Do not modulate standard records 
\emph default
configuration entries to 
\emph on
true.
\end_layout

\begin_layout Subsection
SIO2PC and ATART
\end_layout

\begin_layout Standard
With appropriate software, both devices allow transfer of standard tape
 records.
 Also Czechoslovak Turbo 2000 records can be transferred using these devices.
 Refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Data-Transfer-via"

\end_inset

.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Loading-Binary-Files-With-Replacement-Devices"

\end_inset

Loading Binary Files with Replacement Devices
\end_layout

\begin_layout Standard
The greatest common disadvantage of devices other than data recorders and
 compact cassettes (let us call them all 
\series bold
replacement devices
\series default
) is that they cannot be controlled by the Atari computer.
\end_layout

\begin_layout Standard
When a binary loader loads a binary file, it stops the data recorder after
 each block or segment loaded.
 Then the data is processed, the data recorder is activated and loading
 continues.
\end_layout

\begin_layout Standard
The replacement devices cannot be stopped by the Atari computer.
 This is usually harmless when DATA segments of binary files are loaded,
 because processing of DATA segments is fast.
 On the other hand, processing of INIT segments can take considerable amounts
 of time as virtually any code can be executed.
 Even a code that waits for a key press.
 Without appropriate countermeasures, blocks of data can be accidentally
 skipped.
\end_layout

\begin_layout Standard
To remedy the problem stated, TURGEN SYSTEM supports silence lists.
 The silence lists allow to generate silence or pause the signal generator
 after blocks that contain INIT segments.
\end_layout

\begin_layout Standard

\series bold
If you are using a replacement device, it is strongly recommended that you
 make yourself familiar with the silence lists and use them.
\end_layout

\begin_layout Standard

\series bold
For more information about the silence lists, refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Section
Postprocessing
\end_layout

\begin_layout Standard
TURGEN SYSTEM allows to process its outputs by external programs.
 This is called 
\emph on
postprocessing
\emph default
.
 After the output is created, an external program according to the given
 
\emph on
command line
\emph default
 is executed.
\end_layout

\begin_layout Standard
To reference the TURGEN SYSTEM's output in the command line, some special
 symbols are introduced.
 Meaning of the symbols is described in table 
\begin_inset CommandInset ref
LatexCommand ref
reference "tab:Special-symbols"

\end_inset

.
\end_layout

\begin_layout Standard
If the command line starts with the exclamation mark (!), output file is
 deleted after the external program terminates, if possible.
\end_layout

\begin_layout Standard
Processing of the command line is very limited.
 The command line is interpreted as a sequence of strings separated by spaces.
 The first string is name (possibly including path) of the external program,
 the remaining strings are parameters passed to it.
 Parameters containing spaces have to be enclosed in double quotes.
\end_layout

\begin_layout Standard
Command lines (after special symbol substitution) are always stored into
 the 
\family typewriter
turgen.log
\family default
 file, so the correctness of command lines can be verified.
\end_layout

\begin_layout Standard
\begin_inset Float table
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Symbol
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Meaning
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
%OD%
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Output directory
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
%ODS%
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Output directory followed by file separator
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
%OFN%
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Output file name without last extension
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
%OFNE%
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Output file name with last extension
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "tab:Special-symbols"

\end_inset

Special symbols
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset


\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Postprocessing-of-WAVE"

\end_inset

Postprocessing of WAVE Files
\end_layout

\begin_layout Standard
To switch on postprocessing of the WAVE files, select the 
\emph on
Wave postprocessing
\emph default
 check box menu item from the 
\emph on
Generator
\emph default
 menu.
 Specify the command line in the Wave
\begin_inset space ~
\end_inset

generator/Postprocessing
\begin_inset space ~
\end_inset

command configuration entry.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Postprocessing-of-Tape"

\end_inset

Postprocessing of Tape Images
\end_layout

\begin_layout Standard
To switch on postprocessing of the tape images, select the 
\emph on
Tape image postprocessing
\emph default
 check box menu item from the 
\emph on
Generator
\emph default
 menu.
 Specify the command line in the Tape image
\begin_inset space ~
\end_inset

generator/Postprocessing
\begin_inset space ~
\end_inset

command configuration entry.
\end_layout

\begin_layout Subsection
Examples
\end_layout

\begin_layout Standard
Example of special symbols for output file: 
\family typewriter
/mnt/win_d/emulator/atari/wav/river_raid.wav
\family default

\begin_inset Newline newline
\end_inset


\family typewriter
%OD% = /mnt/win_d/emulator/atari/wav
\begin_inset Newline newline
\end_inset

%ODS% = /mnt/win_d/emulator/atari/wav/
\begin_inset Newline newline
\end_inset

%OFNE% = river_raid.wav
\begin_inset Newline newline
\end_inset

%OFN% = river_raid
\end_layout

\begin_layout Standard
Example of conversion to MP3:
\begin_inset Newline newline
\end_inset


\family typewriter
lame %ODS%%OFNE% %ODS%%OFN%.mp3
\end_layout

\begin_layout Standard
Example of conversion to OGG Vorbis with deletion of the original file:
\begin_inset Newline newline
\end_inset


\family typewriter
!oggenc -o %ODS%%OFN%.ogg %ODS%%OFNE%
\end_layout

\begin_layout Standard
Conversion to MP3 using LAME in the terminal emulator and consequent playback
 by xmms media player.
 The original file is deleted:
\family typewriter
\size small

\begin_inset Newline newline
\end_inset


\size default
!konsole -e bash -c "lame %ODS%%OFNE% %ODS%%OFN%.mp3 && xmms %ODS%%OFN%.mp3"
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sub:Data-Transfer-via"

\end_inset

Data Transfer via Serial Port in Collaboration with CAS
\begin_inset space ~
\end_inset

COM Utility
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
CAS
\begin_inset space ~
\end_inset

COM is a small utility for loading tape images to Atari via serial port.
 It supports standard and Turbo
\begin_inset space ~
\end_inset

2000 cassette images (namely tr2k tape image chunks).
 CAS
\begin_inset space ~
\end_inset

COM works with SIO2PC, ATART or compatible hardware interfaces.
\end_layout

\begin_layout Standard
CAS
\begin_inset space ~
\end_inset

COM can be used as postprocessor of tape images created by TURGEN
\begin_inset space ~
\end_inset

SYSTEM.
 Since CAS
\begin_inset space ~
\end_inset

COM is currently available only for Microsoft Windows operating systems,
 the following text presumes that such operating system is used.
\end_layout

\begin_layout Standard
CAS
\begin_inset space ~
\end_inset

COM has a web page: 
\begin_inset CommandInset href
LatexCommand href
target "http://sdq.czweb.org/old_computers/atari/projects/cascom/index.html"

\end_inset

.
\end_layout

\begin_layout Standard
To use CAS COM, set the 
\emph on
Tape image generator/Tape image chunks
\emph default
 configuration entry to 
\emph on
trXX
\emph default
.
\end_layout

\begin_layout Subsection
Command Line Considerations
\end_layout

\begin_layout Standard
Let us presume that CAS
\begin_inset space ~
\end_inset

COM resides in 
\family typewriter
C:
\backslash
UTILS
\backslash
ATARI
\family default
 directory.
 The configuration entry Tape image generator/Postprocessing command should
 have the following value:
\end_layout

\begin_layout Standard

\family typewriter
cmd /x C:
\backslash
UTILS
\backslash
CASCOM
\backslash
CASCOM.EXE %ODS%%OFNE%
\end_layout

\begin_layout Standard
It is important to add command line interpreter to the command line, because
 CAS
\begin_inset space ~
\end_inset

COM uses console I/O to display important information.
 Users of Microsoft Windows 95/98/98SE/ME should use 
\family typewriter
command
\family default
 instead of 
\family typewriter
cmd
\family default
.
\end_layout

\begin_layout Standard
CAS
\begin_inset space ~
\end_inset

COM accepts other useful command line parameters.
 
\family typewriter
/S
\family default
 starts tape image loading immediately, 
\family typewriter
/e
\family default
 terminates program after data transfer.
 Moreover 
\family typewriter
/1
\family default
, 
\family typewriter
/2
\family default
, 
\family typewriter
/3
\family default
, 
\family typewriter
/4
\family default
 or 
\family typewriter
/c<num>
\family default
 parameters allow to choose serial port.
\end_layout

\begin_layout Standard
\begin_inset Newpage pagebreak
\end_inset


\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Drobné-triky"

\end_inset

Hints and Tips
\end_layout

\begin_layout Itemize
If the SHIFT key is pressed when the 
\emph on
Add item to playlist
\emph default
 main control button is pressed, the contents of the playlist item manipulation
 dialog will not be cleared.
 This can be used to duplicate playlist items.
\end_layout

\begin_layout Itemize
A good way how to reduce loading times is to reduce length of pilot tones.
\end_layout

\begin_layout Itemize
Don't forget that you can resize program windows as you want.
 Bounds of the windows are persistent, so if you exit the TS and restart
 it, you will find the windows exactly where you left them.
\end_layout

\begin_layout Itemize
If you, for some reason, store the generated electric signal on compact
 discs (CDs) and you use compact disc player, try to switch off various
 shock protections and avoid nonstandard rotational speeds.
 Such features sometimes cause sample looses.
\end_layout

\begin_layout Part
BUILT-IN PLUGINS
\end_layout

\begin_layout Section
Turbo
\begin_inset space ~
\end_inset

2000 and Super Turbo
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugins convert input files to Czechoslovak turbo systems 
\series bold
Turbo
\begin_inset space ~
\end_inset

2000
\series default
 and 
\series bold
Super
\begin_inset space ~
\end_inset

Turbo
\series default
.
 Both plugins also provide means to circumvent main limitation of both systems
 - the incapability to accommodate segmented binary files.
 User interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Turbo-2000,-Super"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/t2kst.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Turbo-2000,-Super"

\end_inset

Turbo 2000, Super Turbo
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Conversion types
\end_layout

\begin_layout Standard
Turbo 2000 and Super Turbo support up to 6
\begin_inset space ~
\end_inset

conversion types.
 Choose conversion type using the 
\emph on
Conversion type
\emph default
 combo box.
\end_layout

\begin_layout Paragraph
Monolithic binary file to Turbo 2000 or Super Turbo.
\end_layout

\begin_layout Standard
Conversion of a monolithic binary file (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "par:Monolithic-binary-file."

\end_inset

).
 The input file must be a monolithic binary file.
 This is a natural usage of Turbo
\begin_inset space ~
\end_inset

2000 or Super
\begin_inset space ~
\end_inset

Turbo systems.
\end_layout

\begin_layout Paragraph
ChainLoading.
\end_layout

\begin_layout Standard
Conversion of segmented binary file to 
\emph on
chain of Turbo 2000 or Super Turbo block pairs
\emph default
.
 A special binary loader (Chainloader) that loads the block pairs is prepended
 before the chain.
 Use the 
\emph on
Check loader
\emph default
 button to determine whether the special binary loader will be destroyed
 by the binary file.
\end_layout

\begin_layout Paragraph
BlockLoading.
\end_layout

\begin_layout Standard
Conversion of segmented binary file to 
\emph on
chain of Turbo 2000 or Super Turbo blocks
\emph default
.
 A special binary loader (Blockloader) that loads the blocks (and accommodates
 information where to place the blocks in the memory) is prepended before
 the chain.
 The binary file can have up to 62 segments.
 Use the 
\emph on
Check loader
\emph default
 button to determine whether the special binary loader will be destroyed
 by the binary file.
\end_layout

\begin_layout Paragraph
Tokenized BASIC to Turbo 2000 or Super Turbo.
\end_layout

\begin_layout Standard
Conversion of tokenized BASIC program.
 Note that many loaders cannot load such program directly.
 To circumvent such limitation, you can embed tokenized BASIC to binary
 file.
 See section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Embedding-Tokenized-BASIC"

\end_inset

.
\end_layout

\begin_layout Paragraph
Plain DATA to Turbo 2000 or Super Turbo.
\end_layout

\begin_layout Standard
Conversion of plain data.
\end_layout

\begin_layout Paragraph
Binary file to binary turbo.
\end_layout

\begin_layout Standard
Conversion of binary file to Binary turbo (file type 4) format.
 This conversion type is available only for the Turbo
\begin_inset space ~
\end_inset

2000 plugin.
 VisiCopy III loader is able to load and execute such file, but it must
 not contain any INIT segments.
\end_layout

\begin_layout Subsection
Header Block
\end_layout

\begin_layout Standard
Use the text fields 
\emph on
File name, Type, Load, Length
\emph default
 and 
\emph on
Run
\emph default
 to specify entries of the Turbo 2000 or Super Turbo header block.
 
\end_layout

\begin_layout Standard
Click the 
\emph on
Auto set header
\emph default
 button to automatically enter values in the text fields mentioned above.
 The information is obtained by analysis of the input file and the selected
 conversion type.
 Furthermore, if the input file is not a monolithic binary file and according
 to the selected conversion type it should be, a warning dialog with recommendat
ions is displayed.
\end_layout

\begin_layout Standard
Click the 
\emph on
Load header
\emph default
 to load the turbo header from an external file.
 The header is loaded automatically if it is stored in a file that is named
 same as the input file followed by a 
\family typewriter
.theader
\family default
 suffix.
 In other cases, a file chooser is displayed.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Inserting-silence-after"

\end_inset

Inserting Silence After INIT Segments
\end_layout

\begin_layout Standard
The text field 
\emph on
Silence list
\emph default
 contains a silence list (refer to section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

).
 This is applicable only for ChainLoading and BlockLoading conversion types.
\end_layout

\begin_layout Subsection
Prepending Universal Turbo Loader
\end_layout

\begin_layout Standard
If you do not have a cartridge with Turbo 2000 or Universal Turbo loader,
 you can prepend a cassette version of such loader.
 Set the 
\emph on
Prepend Universal Turbo loader
\emph default
 configuration entry to 
\emph on
true
\emph default
.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Turbo 2000/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-8192)
\end_layout

\begin_layout Standard
Turbo 2000/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data block (256-8192)
\end_layout

\begin_layout Standard
Turbo 2000/Silence after header
\begin_inset Newline newline
\end_inset

Duration of silence that is generated after the header block (0-30).
 Note that many Universal Turbo loaders do not tolerate silence after header.
\end_layout

\begin_layout Standard
Turbo 2000/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block.
 This can be useful for Turbo 2000 only loaders that wait for a key press.
 Note that many Universal Turbo loaders do not tolerate any interruptions
 after the header block.
\end_layout

\begin_layout Standard
Turbo 2000/Pilot tone length for BlockLoading
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of data blocks for BlockLoading conversion type
 (256-8192)
\end_layout

\begin_layout Standard
Turbo 2000/Prepend Universal Turbo loader
\begin_inset Newline newline
\end_inset

Prepend Universal Turbo loader as a standard cassette boot file
\end_layout

\begin_layout Standard
Super Turbo/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-8192)
\end_layout

\begin_layout Standard
Super Turbo/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data block (256-8192)
\end_layout

\begin_layout Standard
Super Turbo/Pilot tone length for BlockLoading
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of data blocks for BlockLoading conversion type
 (256-8192)
\end_layout

\begin_layout Standard
Super Turbo/Prolongate pilot tone
\begin_inset Newline newline
\end_inset

Increase number of pilot tone pulses with increasing approximate baud rate
\end_layout

\begin_layout Standard
Super Turbo/Silence after header
\begin_inset Newline newline
\end_inset

Duration of silence that is generated after the header block (0-30).
 Note that many Universal Turbo loaders do not tolerate silence after header.
\end_layout

\begin_layout Standard
Super Turbo/Prolongate pilot tone for BlockLoading
\begin_inset Newline newline
\end_inset

Increase number of pilot tone pulses with increasing approximate baud rate
 for BlockLoading conversion type
\end_layout

\begin_layout Standard
Super Turbo/Convert binary loaders to Turbo 2000
\begin_inset Newline newline
\end_inset

If set to true, the Chainloader and Blockloader binary loaders are converted
 to Turbo 2000 instead of Super Turbo.
\end_layout

\begin_layout Standard
Super Turbo/Prepend Universal Turbo loader
\begin_inset Newline newline
\end_inset

Prepend Universal Turbo loader as a standard cassette boot file
\end_layout

\begin_layout Section
Turbo 2000 - Kilobyte Blocks
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
Turbo 2000 - kilobyte blocks
\series default
 Czechoslovak turbo system.
 There are no special restrictions on input files.
\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Turbo-2000--KBLOCK"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the Turbo 2000 - kilobyte blocks header
 block.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/t2kblock.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Turbo-2000--KBLOCK"

\end_inset

Turbo 2000 - kilobyte blocks
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Binary Loaders
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks turbo system can accommodate binary files.
 You can prepend one of the special miniature built-in binary loaders.
 For this turbo system, you can choose MINITBL, NANOTBL, NANOTBL[UR] or
 NANOTBL[U2] loader by using the 
\emph on
Binary loader
\emph default
 combo box.
 The loader is converted to the Turbo 2000 system.
\end_layout

\begin_layout Standard
MINITBL loader is a combination of stripped
\begin_inset Quotes eld
\end_inset

T:
\begin_inset Quotes erd
\end_inset

 device handler that allows only READ operation and code for binary load
 using CIO.
 NANOTBL loaders are single-purpose binary loaders reading data blocks,
 not using CIO at all.
 NANOTBL stores data blocks to the freely available RAM.
 NANOTBL[UR] stores the data blocks to the beginning of the 
\begin_inset Quotes eld
\end_inset

RAM under ROM
\begin_inset Quotes erd
\end_inset

, NANOTBL[U2] to the end of 
\begin_inset Quotes eld
\end_inset

RAM under ROM
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy the selected binary
 loader.
\end_layout

\begin_layout Subsection
Prepending Universal Turbo Loader
\end_layout

\begin_layout Standard
If you don't have a cartridge with Turbo 2000 or Universal Turbo loader,
 you can prepend a cassette version of such loader.
 Set the 
\emph on
Prepend Universal Turbo loader
\emph default
 configuration entry to 
\emph on
true
\emph default
.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-8192)
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data blocks (256-8192)
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks/Silence after header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks/Silence after loader
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the binary loader (0-30)
\end_layout

\begin_layout Standard
Turbo 2000 - kilobyte blocks/Name loader same as file
\begin_inset Newline newline
\end_inset

The binary loader will have name same as the converted file
\end_layout

\begin_layout Standard
Turbo - kilobyte blocks/Prepend Universal Turbo loader
\begin_inset Newline newline
\end_inset

Prepend Universal Turbo loader as a standard cassette boot file
\end_layout

\begin_layout Section
B-TAPE
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
B-TAPE
\series default
 Czechoslovak turbo system.
 There are no special restrictions on input files.
 B-TAPE system is backward compatible with Turbo Tape system used by TT-DOS
 operating system.
\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:B-TAPE"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the B-TAPE data block.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
 Use the 
\emph on
Tape mode
\emph default
 combo box to select tape mode.
\end_layout

\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/btape.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:B-TAPE"

\end_inset

B-TAPE
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Binary Loaders
\end_layout

\begin_layout Standard
B-TAPE turbo system can accommodate binary files.
 You can prepend one of the special miniature built-in binary loaders.
 For this turbo system, you can choose NANOBTAPE, NANOBTAPE[UR] or NANOBTAPE[U2]
 loader using the 
\emph on
Binary loader
\emph default
 combo box.
 The loader is converted to the Turbo 2000 system.
\end_layout

\begin_layout Standard
NANOBTAPE loaders are single-purpose binary loaders reading blocks, not
 using CIO at all.
 NANOBTAPE stores the blocks to freely available RAM.
 NANOBTAPE[UR] stores the blocks to the beginning of the 
\begin_inset Quotes eld
\end_inset

RAM under ROM
\begin_inset Quotes erd
\end_inset

, NANOBTAPE[U2] to the end of 
\begin_inset Quotes eld
\end_inset

RAM under ROM
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy the selected binary
 loader.
\end_layout

\begin_layout Subsection
Prepending Universal Turbo Loader
\end_layout

\begin_layout Standard
If you don't have a cartridge with Turbo 2000 or Universal Turbo loader,
 you can prepend a cassette version of such loader.
 Set the 
\emph on
Prepend Universal Turbo loader
\emph default
 configuration entry to 
\emph on
true
\emph default
.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
B-TAPE/Pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the blocks (256-8192)
\end_layout

\begin_layout Standard
B-TAPE/Prolongate pilot tone
\begin_inset Newline newline
\end_inset

Increase number of pilot tone pulses with increasing approximate baud rate
\end_layout

\begin_layout Standard
B-TAPE/Silence after first block
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the first B-TAPE block (0-30)
\end_layout

\begin_layout Standard
B-TAPE/Silence after loader
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the binary loader (0-30)
\end_layout

\begin_layout Standard
B-TAPE/Name loader same as file
\begin_inset Newline newline
\end_inset

The binary loader will have name same as the converted file
\end_layout

\begin_layout Standard
B-TAPE/Force tr2k tape image chunks
\begin_inset Newline newline
\end_inset

The generated trXX type tape image chunks will be 
\family typewriter
tr2k
\family default
 instead of 
\family typewriter
trbt
\family default
.
 This allows the CAS COM utility to transfer files in the B-TAPE format.
\end_layout

\begin_layout Standard
B-TAPE/Prepend Universal Turbo loader
\begin_inset Newline newline
\end_inset

Prepend Universal Turbo loader as a standard cassette boot file
\end_layout

\begin_layout Section
KSO Turbo 2000
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
KSO Turbo 2000
\series default
 Polish turbo system.
 There are no special restrictions on input files.
 KSO Turbo 2000 system is compatible with various similar turbo systems
 (e.g.
 Turbo 2000F).
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/ksoturbo.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:KSO-Turbo-2000"

\end_inset

KSO Turbo 2000
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:KSO-Turbo-2000"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the header block.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
KSO Turbo 2000/Invert polarity of pulses
\begin_inset Newline newline
\end_inset

Invert polarity of pulses
\end_layout

\begin_layout Standard
KSO Turbo 2000/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-8192)
\end_layout

\begin_layout Standard
KSO Turbo 2000/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data blocks (256-8192)
\end_layout

\begin_layout Standard
KSO Turbo 2000/Silence after header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
KSO Turbo 2000/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
KSO Turbo 2000/Pulse Corrections
\begin_inset Newline newline
\end_inset

Corrections of pulses
\end_layout

\begin_layout Section
Turbo Blizzard
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
Turbo Blizzard
\series default
 Polish turbo system.
 There are no special restrictions on input files.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/blizzard.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Turbo-Blizzard"

\end_inset

Turbo Blizzard
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Turbo-Blizzard"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the header block.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
 
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Turbo Blizzard/Invert polarity of pulses
\begin_inset Newline newline
\end_inset

Invert polarity of pulses
\end_layout

\begin_layout Standard
Turbo Blizzard/Long gaps between blocks
\begin_inset Newline newline
\end_inset

Make long gaps between blocks
\end_layout

\begin_layout Standard
Turbo Blizzard/Silence after header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
Turbo Blizzard/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
Turbo Blizzard/Pulse Corrections
\begin_inset Newline newline
\end_inset

Corrections of pulses
\end_layout

\begin_layout Section
Turbo ROM
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
Turbo ROM
\series default
 Polish turbo system.
 The following input files are supported:
\end_layout

\begin_layout Itemize
Turbo ROM compatible binary files
\end_layout

\begin_layout Itemize
Binary files
\end_layout

\begin_layout Itemize
Tokenized BASIC files
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/turborom.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Turbo-ROM"

\end_inset

Turbo ROM
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Turbo-ROM"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the header block.
 Use the 
\emph on
Auto set header
\emph default
 button to automatically set file name and also to verify whether the input
 file is Turbo ROM compatible binary file.
\end_layout

\begin_layout Standard
Use the 
\emph on
Input file type
\emph default
 combo box to select input file type.
 
\end_layout

\begin_layout Subsection
Conversion of Turbo ROM Compatible Binary Files
\end_layout

\begin_layout Standard
These binary files consist of exactly one DATA segment and at most one RUN
 segment and at most one INIT segment.
 Files are converted to the Turbo ROM natural format.
\end_layout

\begin_layout Subsection
Conversion of Binary Files
\end_layout

\begin_layout Subsubsection
Processing
\end_layout

\begin_layout Standard
Binary Files are converted to a special format.
 A special binary loader in Turbo ROM natural format is prepended.
 Binary files are normalized before conversion (RUNINIT segments are split,
 RUN segment is moved to the end of the file).
\end_layout

\begin_layout Subsubsection
User Interface
\end_layout

\begin_layout Standard
Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy the binary loader.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Subsection
Conversion of Tokenized BASIC Files
\end_layout

\begin_layout Standard
Files are converted to Turbo ROM natural format for tokenized BASIC files.
\end_layout

\begin_layout Subsection
Prepending Loaders
\end_layout

\begin_layout Standard
If you do not have a cartridge with Turbo ROM loader, you can prepend a
 cassette version of such loader.
 Set the 
\emph on
Prepend Turbo ROM loader
\emph default
, and
\emph on
 Convert binary loader to a standard cassette boot file
\emph default
 configuration entries to 
\emph on
true
\emph default
.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Turbo ROM/Invert polarity of pulses
\begin_inset Newline newline
\end_inset

Invert polarity of pulses
\end_layout

\begin_layout Standard
Turbo ROM/Header pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (1024-8192)
\end_layout

\begin_layout Standard
Turbo ROM/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data block (128-2048)
\end_layout

\begin_layout Standard
Turbo ROM/Binary load pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of blocks when binary files are converted
\end_layout

\begin_layout Standard
Turbo ROM/Silence after header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block
\end_layout

\begin_layout Standard
Turbo ROM/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
Turbo ROM/Silence after binary loader
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after binary loader
\end_layout

\begin_layout Standard
Turbo ROM/Convert binary loader to a standard cassette boot file
\begin_inset Newline newline
\end_inset

If set to true, the binary loader is converted to a standard cassette boot
 file instead of a Tubo ROM compatible binary file.
\end_layout

\begin_layout Standard
Turbo ROM/Prepend Turbo ROM loader
\begin_inset Newline newline
\end_inset

Determines if a Turbo ROM natural format loader will be prepended as a standard
 cassette boot file.
 The values are tho following: 
\begin_inset Quotes eld
\end_inset

None
\begin_inset Quotes erd
\end_inset

 - no loader will be prepended, 
\begin_inset Quotes eld
\end_inset

Standard
\begin_inset Quotes erd
\end_inset

 - a plain loader will be prepended, 
\begin_inset Quotes eld
\end_inset

Diagnostic
\begin_inset Quotes erd
\end_inset

 - a verbose loader that displays hexadecimal dump of the header block will
 be prepended.
\end_layout

\begin_layout Standard
Turbo ROM/LOAD address of a BASIC program
\begin_inset Newline newline
\end_inset

Base address to which BASIC programs will be loaded 
\end_layout

\begin_layout Standard
Turbo ROM/RUN address of a BASIC program
\begin_inset Newline newline
\end_inset

Address of a routine that executes BASIC programs (default is 41086)
\end_layout

\begin_layout Standard
Turbo ROM/Generate loader only
\end_layout

\begin_layout Standard
When set to true, only a loader is converted by the plugin.
\end_layout

\begin_layout Standard
Turbo ROM/Pulse Corrections
\begin_inset Newline newline
\end_inset

Corrections of pulses
\end_layout

\begin_layout Section
Atari Super Turbo
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to 
\series bold
Atari Super Turbo
\series default
 Polish turbo system.
 Conversion of binary files to the following formats is supported: 
\end_layout

\begin_layout Itemize
AST format that can accommodate binary files that have up to 44 segments
 and no INIT segments.
\end_layout

\begin_layout Itemize
BUT format that can accommodate binary files that have up to 254 segments
 of any type.
 A generic BUT loader is used to load such files.
 The loader occupies addresses 1926 - 2185.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/ast.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:AST"

\end_inset

Atari Super Turbo
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:AST"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the header block.
 The 
\emph on
Auto set header
\emph default
 button can be used to automatically set file name and also to verify whether
 the input file is compatible with the selected format (AST or BUT).
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Atari Super Turbo/Invert polarity of pulses
\begin_inset Newline newline
\end_inset

Invert polarity of pulses
\end_layout

\begin_layout Standard
Atari Super Turbo/AST header pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the AST header block (256-16384)
\end_layout

\begin_layout Standard
Atari Super Turbo/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of data blocks (256-16384)
\end_layout

\begin_layout Standard
Atari Super Turbo/Silence after AST header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
Atari Super Turbo/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
Atari Super Turbo/BUT loader will wait for any key
\begin_inset Newline newline
\end_inset

Determines whether the BUT loader will require a key press to proceed
\end_layout

\begin_layout Standard
Atari Super Turbo/Silence after BUT loader
\begin_inset Newline newline
\end_inset

Duration of silence generated after BUT loader
\end_layout

\begin_layout Standard
Atari Super Turbo/Pulse Corrections
\begin_inset Newline newline
\end_inset

Corrections of pulses
\end_layout

\begin_layout Section
Hard Turbo
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts files to the 
\series bold
Hard Turbo
\series default
 Polish turbo system.
 According to the nature of this turbo system, input files must be binary
 files.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/hardturbo.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:HT"

\end_inset

Hard Turbo
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:HT"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the main header block.
 Use the 
\emph on
Auto set header
\emph default
 to automatically set file name.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
\end_layout

\begin_layout Subsection
HTBL+ Loader
\end_layout

\begin_layout Standard
You can add HTBL+ loader before the binary file converted.
\end_layout

\begin_layout Standard
HTBL+ is an extended binary loader that has the following enhancements
\end_layout

\begin_layout Itemize

\size small
Data recorder motor is switched off after segment data is loaded.
 This enables loading of binary files that execute lot of code from INIT
 segments
\end_layout

\begin_layout Itemize

\size small
RUNAD is set in a way that allows RUN segment to be the first segment of
 the binary file
\end_layout

\begin_layout Itemize

\size small
The loader never waits for any key under normal circumstances.
 This makes the loader easier to use with devices that do not support MOTOR
 CTRL signal
\end_layout

\begin_layout Itemize

\size small
The loader forces warm start during its initialization.
 This allows to load and run programs that rely on the display configuration
 set up by the warm start routines 
\end_layout

\begin_layout Itemize

\size small
BASIC is automatically disabled
\end_layout

\begin_layout Standard
To add the HTBL+ loader, select HTBL+ from the 
\emph on
Binary loader
\emph default
 check box.
 Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy the HTBL+ loader.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Hard Turbo/Invert polarity of pulses
\begin_inset Newline newline
\end_inset

Invert polarity of pulses
\end_layout

\begin_layout Standard
Hard Turbo/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-16384)
\end_layout

\begin_layout Standard
Hard Turbo/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of data blocks (256-16384)
\end_layout

\begin_layout Standard
Hard Turbo/Silence after AST header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
Hard Turbo/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
Hard Turbo/Name loader same as file
\begin_inset Newline newline
\end_inset

The binary loader will have name same as the converted file
\end_layout

\begin_layout Section
Lower Silesia Turbo 2000
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts binary files to the 
\series bold
Lower Silesia Turbo 2000
\series default
 turbo system from Poland.
 
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/lowersilesia.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Lower-Silesia-Turbo"

\end_inset

Lower Silesia Turbo 2000
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Conversion Types
\end_layout

\begin_layout Standard
Two conversion types are supported.
\end_layout

\begin_layout Paragraph*
Auto Turbo.
\end_layout

\begin_layout Standard
Conversion of input binary file to the Auto Turbo format (see section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Auto-Turbo-Format"

\end_inset

).
 The Auto Turbo format can accommodate any binary file, but only binary
 files that have no INIT segments can be loaded and executed.
\end_layout

\begin_layout Paragraph*
UE Protected Binary.
\end_layout

\begin_layout Standard
Conversion of input binary file to the Protected Binary Format (see section
 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Unprotected-Binary-Format"

\end_inset

) use by the 
\begin_inset Quotes eld
\end_inset

Unknown Exterminator
\begin_inset Quotes erd
\end_inset

 copier.
 A binary loader is converted to the Auto Turbo format.
 Then the input binary file is converted to the Protected Binary Format.
 
\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
The user interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Lower-Silesia-Turbo"

\end_inset

.
\end_layout

\begin_layout Standard
The text field 
\emph on
File name
\emph default
 corresponds to the same field of the header block.
 Click the 
\emph on
Auto set header
\emph default
 button to automatically set the file name.
 Select conversion type using the 
\emph on
Conversion type
\emph default
 box.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
 
\end_layout

\begin_layout Standard
Click the 
\emph on
Check loader
\emph default
 button to check whether the selected input file is compatible with Auto
 Turbo or binary loader.
\end_layout

\begin_layout Subsection
Configuration Entries
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Header block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the header block (256-8192)
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Data block pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the data block (256-8192)
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Silence after AST header
\begin_inset Newline newline
\end_inset

Number of seconds of the silence inserted after the header block (0-30)
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Pause after header
\begin_inset Newline newline
\end_inset

If set to true, output of electric signal to computer's audio system will
 be paused after the header block
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Segment header pilot tone length
\begin_inset Newline newline
\end_inset

Number of pilot tone pulses of the segment header block (128-768)
\end_layout

\begin_layout Standard
Lower Silesia Turbo 2000/Silence after loader
\begin_inset Newline newline
\end_inset

Duration of silence generated after binary loader
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Standard"

\end_inset

Standard
\end_layout

\begin_layout Subsection
Characteristics
\end_layout

\begin_layout Standard
Plugin converts input files to standard tape records.
 Transfer speed is always 600 bd.
 The following input files are supported:
\end_layout

\begin_layout Itemize
Monolithic binary files
\end_layout

\begin_layout Itemize
Segmented binary files
\end_layout

\begin_layout Itemize
Tokenized BASIC files and BASIC source code files
\end_layout

\begin_layout Itemize
Plain data files
\end_layout

\begin_layout Subsection
User Interface
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/standard.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Standard"

\end_inset

Standard
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
User interface is depicted on figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Standard"

\end_inset

.
\end_layout

\begin_layout Standard
Use the 
\emph on
Input file type
\emph default
 combo box to select input file type.
 Use the 
\emph on
Gaps between records
\emph default
 box to set duration of gaps between records.
 Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy a binary loader.
\end_layout

\begin_layout Subsection
Conversion of Monolithic Binary Files
\end_layout

\begin_layout Standard
Monolithic binary files are converted to boot files.
 The following limitations apply for monolithic binary files:
\end_layout

\begin_layout Itemize
The DATA segment cannot occupy memory below address 1536
\end_layout

\begin_layout Itemize
Length of the DATA segment must not exceed 32649 bytes
\end_layout

\begin_layout Subsection
Conversion of Segmented Binary Files
\end_layout

\begin_layout Subsubsection
Processing
\end_layout

\begin_layout Standard
Segmented binary files are converted as follows:
\end_layout

\begin_layout Itemize
A binary loader skeleton is customized and converted to a boot file.
 Binary loader switches motor off after every INIT segment.
\end_layout

\begin_layout Itemize
The binary file is normalized (RUNINIT segments are split, RUN segment is
 moved to the end of the file)
\end_layout

\begin_layout Itemize
Segments of the binary file are converted to a sequence of files.
 A new file with long IRG is created after every INIT segment.
 This allows proper execution of the INIT segments.
\end_layout

\begin_layout Itemize
Duration of inter-record gaps is 375 ms by default.
 This gives the loader time to process the data loaded.
\end_layout

\begin_layout Standard
The following limitations apply for segmented binary files:
\end_layout

\begin_layout Itemize
Maximum number of segments is 254
\end_layout

\begin_layout Itemize
Binary files must not destroy the binary loader
\end_layout

\begin_layout Subsubsection
User Interface
\end_layout

\begin_layout Standard
Use the 
\emph on
File name 
\emph default
text field to set name that will be displayed by the binary loader.
 The purpose of the text field 
\emph on
Silence list
\emph default
 is described in section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:Silence-Lists"

\end_inset

.
 Use the 
\emph on
Check loader
\emph default
 button to verify whether the binary file will destroy the binary loader.
\end_layout

\begin_layout Subsection
Configuration entries
\end_layout

\begin_layout Standard
Standard/Leader duration
\begin_inset Newline newline
\end_inset

Duration of the leader signal in seconds (10-30).
\end_layout

\begin_layout Standard
Standard/Binary loader IRG duration
\begin_inset Newline newline
\end_inset

Duration of the inter-record gaps in milliseconds for standard tape records
 generated when a segmented binary file is converted.
 Default value is 375.
\end_layout

\begin_layout Standard
Standard/IRG after INIT segment duration
\begin_inset Newline newline
\end_inset

Duration of the inter-record gaps after INIT segments in seconds when a
 a segmented binary file is converted.
 Default value is 12.
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Tape-Image"

\end_inset

Tape Image
\end_layout

\begin_layout Standard
Plugin interprets tape images.
\end_layout

\begin_layout Subsection
Turbo Records
\end_layout

\begin_layout Standard
TURGEN SYSTEM supports 
\series bold
trXX
\series default
 chunks and 
\series bold
pwmX
\series default
 chunks.
\end_layout

\begin_layout Subsection
Standard Tape Records
\end_layout

\begin_layout Standard
Since version 8.3.7, 
\series bold
baud
\series default
 and dependent 
\series bold
data
\series default
 chunks are supported.
 Since version 8.3.8, 
\series bold
fsk
\series default
 chunks are supported.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Part
TURBO SYSTEMS
\end_layout

\begin_layout Section
Introduction
\end_layout

\begin_layout Standard
This part contains information about various turbo systems that have been
 created in Czechoslovakia and Poland.
 Descriptions of the systems are sufficient to provide ability to write
 turbo generators, loaders, copiers and turbo decoders.
\end_layout

\begin_layout Section
Information encoding
\end_layout

\begin_layout Standard
Information is encoded using pulse width modulation (PWM).
 In this document, width of pulse is defined as a distance between two transitio
ns from logical zero to logical one.
 See figure 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Pulse"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float figure
placement H
wide false
sideways false
status open

\begin_layout Plain Layout
\noindent
\align center
\begin_inset Graphics
	filename images/pulse.png

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Pulse"

\end_inset

Pulse and its width
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Section
Turbo Systems from Former Czechoslovakia
\end_layout

\begin_layout Subsection
Common Information
\end_layout

\begin_layout Standard
This common information is related only to turbo systems described in this
 document.
 These turbo systems are or were widespread in former Czechoslovakia, but
 of course, there are or were also others.
\end_layout

\begin_layout Subsubsection
Switching Data Recorder to Turbo Mode
\end_layout

\begin_layout Standard
Switching data recorder to turbo mode is done using electronic switch, that
 switches to turbo mode if signals COMMAND and MOTOR
\begin_inset space ~
\end_inset

CTRL are active.
 Reading of data is done by monitoring signal at pin DATA-IN of the SIO
 connector.
 Writing of data is performed by direct change of logical value at DATA-OUT
 pin of the SIO connector.
\end_layout

\begin_layout Subsubsection
Single Purpose or CIO
\end_layout

\begin_layout Standard
Two main kinds of Czechoslovak turbo systems can be distinguished:
\end_layout

\begin_layout Enumerate
Systems that use single purpose loaders and simple file format that can
 accommodate only one contiguous block of data (Turbo 2000, Super Turbo).
 These systems are unable to support binary load operation, although capable
 to accommodate binary load files themselves.
\end_layout

\begin_layout Enumerate
Systems that were created together with tape operating systems: Turbo 2000
 - kilobyte blocks, Turbo Tape, B-TAPE.
 Aim of these systems is to partially or fully replace the disk drive.
\end_layout

\begin_layout Subsubsection
Pilot Tone and Data Separation
\end_layout

\begin_layout Standard
All Czechoslovak turbo systems use same way how to separate pilot tone and
 data.
 One sync pulse (which is very narrow pulse) or narrow pulse.
\end_layout

\begin_layout Subsection
Turbo 2000
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo 2000 was the first turbo system available in former Czechoslovakia.
 It was developed in 1987 by Jiří Richter, student of Czech Technical University
 in Prague and member of Prague Atari user club.
\end_layout

\begin_layout Standard
Four types of pulses are distinguished: Narrow pulse, wide pulse, pilot
 tone pulse and sync pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using Turbo 2000 system consists of two blocks - header block
 (HEADER) and data block (DATA).
\end_layout

\begin_layout Standard
Both blocks are preceded by pilot tone (series of at least 256 pilot tone
 pulses) which is followed by sync pulse (which is very narrow pulse).
 Recommended number of pilot tone pulses is at least 2000 in order to provide
 compatibility with 
\begin_inset Quotes eld
\end_inset

Universal turbo
\begin_inset Quotes erd
\end_inset

 loaders.
\end_layout

\begin_layout Subsubsection
Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="8" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="12cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File type (1 - plain data, 3 - program, 4 - binary file,
\end_layout

\begin_layout Plain Layout
255, 254 - tokenized BASIC)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-11
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12-13
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Load address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
14-15
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Length of file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
16-17
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Start address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
18
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0]) xor ...
 xor (HEADER[17])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset

 
\end_layout

\begin_layout Subsubsection
Data block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 255
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data itself
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (DATA[0]) xor ...
 xor (DATA[?])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Standard transfer speed is approximately 2270 bauds.
 There is a big tolerance for width of all pulses.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="3">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Center width
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Tolerated range
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot tone
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
32/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(25-47)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
26/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(20-40)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
13/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(6-19)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Sync
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
10/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(4-17)/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Loaders
\end_layout

\begin_layout Standard
In early times, Turbo 2000 loaders were distributed on tapes, stored using
 standard 600 baud system.
 Then loaders on cartridges became widespread.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Subsection
Super Turbo
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Super turbo system is an enhancement of Turbo 2000 system, developed by
 Jiří Richter.
 Supported transfer speeds are approximately from 2725 to 6411 bauds.
\end_layout

\begin_layout Standard
Two types of pulses are distinguished: Narrow pulse and wide pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using Super Turbo consists of two blocks - header block (HEADER)
 and data block (DATA).
 Both blocks are preceded with pilot tone (series of at least 1200 wide
 pulses) which is followed by narrow pulse.
 Recommended number of pilot tone pulses is at least 2000 in order to provide
 compatibility with available loaders.
\end_layout

\begin_layout Subsubsection
Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="8" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="12cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 183
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File type (1 - plain data, 3 - program, 4 - binary file,
\end_layout

\begin_layout Plain Layout
255 - tokenized basic)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-21
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
22-23
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Load address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
24-25
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Length of file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
26-27
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Start address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
28
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0]) xor ...
 xor (HEADER[27])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset

 
\end_layout

\begin_layout Subsubsection
Data block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 237
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data itself
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (DATA[0]) xor ...
 xor (DATA[?])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Various transfer speeds are supported.
 For given speed, width of wide pulse is width of narrow pulse simply doubled.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(6/44100 - 22/44100) s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(3/44100 - 11/44100) s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Loaders
\end_layout

\begin_layout Standard
Special loaders for Super Turbo only are very rare.
 So called 
\begin_inset Quotes eld
\end_inset

Universal turbo
\begin_inset Quotes erd
\end_inset

 loaders capable to load both Turbo
\begin_inset space ~
\end_inset

2000 and Super Turbo are widespread, mostly on cartridges.
 Universal turbo loaders measure speed using examination of three consequent
 pilot tone pulses.
 Measured speed is also used to distinguish between Turbo 2000 and Super
 Turbo.
\end_layout

\begin_layout Standard
During the time, so called 
\begin_inset Quotes eld
\end_inset

Visiloader
\begin_inset Quotes erd
\end_inset

 has been invented.
 This loader is able to display progress of loading using PMG.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Subsection
Turbo 2000 - kilobyte blocks
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo system designed together with various versions of 
\begin_inset Quotes eld
\end_inset

Turbo operating system
\begin_inset Quotes erd
\end_inset

 (TOS).
\end_layout

\begin_layout Standard
Four types of pulses are distinguished: Narrow pulse, wide pulse, pilot
 tone pulse and sync pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using this turbo system consists of many blocks.
 First block is a header block (HEADER), remaining blocks (BLOCK) are data
 blocks that have 1026 bytes.
 Every block is preceded by pilot tone (series of at least 256 pilot tone
 pulses) which is followed by one sync pulse.
 Recommended number of pilot tone pulses is at least 2000 in order to provide
 compatibility with available loaders.
\end_layout

\begin_layout Subsubsection
Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-17
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
18
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = HEADER[0] xor HEADER[1] xor ...
 xor HEADER[17]
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Data blocks
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="12cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
255=Full block, 250=EOF block.
\begin_inset Newline newline
\end_inset

Numbers 251-254 indicate partially filled block.
 If we subtract 251 from this number, we obtain a difference that will be
 denoted as 
\begin_inset Formula $Z$
\end_inset

.
 This difference can be 0,1,2 or 3 and represents higher byte of number
 of valid data bytes in the block.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-1024
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data itself.
 If the block is a full block, there is 1024 bytes of data.
\end_layout

\begin_layout Plain Layout
If the block is EOF block, there are all zeros.
\end_layout

\begin_layout Plain Layout
If the block is a partially filled block, there is data padded with zeros
 up to the length of 1023 bytes.
 Last byte is lower byte of number of valid data bytes in the block.
 If we denote this lower byte as 
\begin_inset Formula $X$
\end_inset

, the number of valid bytes in the block is 
\begin_inset Formula $Z*256+X$
\end_inset


\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1025
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = BLOCK[0] xor BLOCK[1] xor ...
 xor BLOCK[1024]
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Standard transfer speed is approximately 2270 bauds.
 There is a big tolerance for width of pulses.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="3">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Center width
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Tolerated range
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot tone
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
32/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(25-47)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
26/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(20-40)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
13/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(6-19)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Sync
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
10/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(4-17)/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Loaders
\end_layout

\begin_layout Standard
This turbo system is integrated into to various version of 
\begin_inset Quotes eld
\end_inset

Turbo operating system
\begin_inset Quotes erd
\end_inset

 (TOS) and also to one special version of TURBO BASIC XL widely used in
 former Czechoslovakia.
 Usual CIO device installed is T: or D:.
 CIO functions supported are OPEN, READ, WRITE and CLOSE.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Subsection
Turbo Tape
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Advanced turbo system introduced with TT-DOS operating system sold by JRC
 company.
 Aim of this turbo system is to fully replace disk drive.
 Usual CIO device installed is B: or D:.
 
\end_layout

\begin_layout Standard
Four types of pulses are distinguished: Narrow pulse, wide pulse, pilot
 tone pulse and sync pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using Turbo Tape consists of blocks (BLOCK) that are 1026 bytes
 long.
 Every block is preceded by pilot tone (series of at least 256 pilot tone
 or wide pulses) which is followed by one sync or narrow pulse.
 Recommended number of pilot tone or wide pulses is at least 2000 in order
 to provide compatibility with available loaders.
\end_layout

\begin_layout Subsubsection
Tape modes
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Mode
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
SS
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Short gaps between blocks.
 First block is written twice, others once.
 
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
SD
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Short gaps between blocks.
 All blocks are written twice.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
LS
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Long gaps between blocks.
 First block is written twice, others once.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
LD
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Long gaps between blocks.
 All blocks are written twice.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Standard
D modes provide data redundancy for safe data storage.
 First block is always written twice in order to provide convenient support
 for READ DIRECTORY CIO function.
\end_layout

\begin_layout Subsubsection
Structure of the blocks
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="11cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Sequential number of the block.
 Numbering starts from
\begin_inset space ~
\end_inset

1.
 In case of D modes, pairs of blocks have same sequential number.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Tape mode: SS=128, LS=0, SD=192, LD=64
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2,3
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Bits 0-11: Offset of last valid byte in the block (16-1024), this offset
 will be denoted as 
\begin_inset Formula $B$
\end_inset

.
\end_layout

\begin_layout Plain Layout
Bit 15: Last block flag.
\end_layout

\begin_layout Plain Layout
Byte at offset 2: 
\begin_inset Formula $B\%256$
\end_inset


\begin_inset Newline newline
\end_inset

Byte at offset 3: 
\begin_inset Formula $[B/256]+[128*(EOF\, is\, true)]$
\end_inset


\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
4
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Undefined number.
 All blocks of one file should have same number here.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
5
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Undefined.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6-16
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name and extension padded with spaces.
 First 8 bytes are devoted to file name, last 3 bytes are devoted to extension.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
17-1024
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data itself (1008 bytes).
 Data must be padded with any bytes.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1025
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = BLOCK[0] xor BLOCK[1] xor ...
 xor BLOCK[1025]
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Timing is compatible with Turbo 2000 and Super Turbo.
\end_layout

\begin_layout Subsection
B-TAPE
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Advanced turbo system introduced with B-TAPE extension for operating system
 BW-DOS.
 Aim of this extension is to fully replace disk drive.
 B-TAPE allows to use both CIO and SIO to exploit data recorder turbo modificati
on.
 The disadvantage is a big size of the device handler.
 B-TAPE was designed as improvement of Turbo Tape system.
\end_layout

\begin_layout Standard
Four types of pulses are distinguished: Narrow pulse, wide pulse, pilot
 tone pulse and sync pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using B-TAPE consists of blocks (BLOCK) that are 1026 bytes
 long.
 Every block is preceded by pilot tone (series of at least 256 pilot tone
 or wide pulses) which is followed by one sync or narrow pulse.
 Recommended number of pilot tone or wide pulses is at least 2000 in order
 to provide compatibility with available loaders.
\end_layout

\begin_layout Subsubsection
Tape modes
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Mode
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
SS
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Short gaps between blocks.
 First block is written twice, others once.
 
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
SD
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Short gaps between blocks.
 All blocks are written twice.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
LS
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Long gaps between blocks.
 First block is written twice, others once.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
LD
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Long gaps between blocks.
 All blocks are written twice.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Standard
D modes provide data redundancy for safe data storage.
 First block is always written twice in order to provide convenient support
 for READ DIRECTORY CIO function.
\end_layout

\begin_layout Subsubsection
Structure of the blocks
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="11cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Sequential number of the block.
 Numbering starts from
\begin_inset space ~
\end_inset

1.
 In case of D modes, pairs of blocks have same sequential number.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Tape mode: SS=128, LS=0, SD=192, LD=64
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2,3
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Bits 0-11: Offset of last valid byte in the block (16-1024), this offset
 will be denoted as 
\begin_inset Formula $B$
\end_inset

.
\end_layout

\begin_layout Plain Layout
Bit 15: Last block flag.
\end_layout

\begin_layout Plain Layout
Byte at offset 2: 
\begin_inset Formula $B\%256$
\end_inset


\begin_inset Newline newline
\end_inset

Byte at offset 3: 
\begin_inset Formula $[B/256]+[128*(EOF\, is\, true)]$
\end_inset


\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
4
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Undefined number.
 All blocks of one file should have same number here.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
5
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Random number.
 All blocks of one file must have same number here.
 This random number allows to distinguish files with same file name.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6-16
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name and extension padded with spaces.
 First 8 bytes are devoted to file name, last 3 bytes are devoted for extension.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
17-1024
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data itself (1008 bytes).
 Data must be padded with zeros if needed.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1025
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = BLOCK[0] xor BLOCK[1] xor ...
 xor BLOCK[1025]
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Timing is compatible with Turbo 2000 and Super Turbo.
\end_layout

\begin_layout Subsubsection
Notes
\end_layout

\begin_layout Standard
B-TAPE device handler is able to read files stored using Turbo Tape system.
 In order to circumvent problems with big size of the device handler, special
 minimalistic binary loader called MICROB was shipped with B-TAPE.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Section
Turbo systems from Poland
\end_layout

\begin_layout Subsection
KSO Turbo 2000 and Turbo 2000F
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo systems used in Poland, originally designed together with KSO Turbo
 2000 (Tape operating system) and then adopted for other tape operating
 systems.
\end_layout

\begin_layout Standard
Three types of pulses are distinguished: Pilot tone pulse, wide pulse and
 narrow pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using KSO Turbo 2000 system consists of blocks.
 First block is a header block (HEADER), other blocks are data blocks (DATA).
\end_layout

\begin_layout Standard
Every block is preceded by pilot tone (series of pilot tone pulses).
\end_layout

\begin_layout Standard
Signal is expected on some pin of joystick port (KSO Turbo 2000) or on DATA-IN
 pin of the SIO connector (Turbo 2000F).
\end_layout

\begin_layout Subsubsection
Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 255
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-11
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name (10 characters)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0] + HEADER[1] + ...
 HEADER[11]) mod 256
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Data block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Number of valid bytes in the block, 0-3072.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-3073
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Up to 3072 bytes of data padded with zeros if needed.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3074
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (BLOCK[0] + ...
 + BLOCK[3073]) mod 256
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Standard
File ends with data block that has less than 3072 valid bytes.
 If the total file size can be divided by 3072 without a remainder, file
 must end with block that has 0 valid bytes.
\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot tone
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
44/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
22/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
11/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Atari Super Turbo (AST)
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo system used in Poland suitable for accommodation of binary files.
 Please note that the following information is incomplete.
\end_layout

\begin_layout Standard
Three types of pulses are distinguished: Wide pulse, narrow pulse and STOP
 pulse.
 Bits are stored in LSB to MSB order.
\end_layout

\begin_layout Standard
There are three main file formats: AST, BUT, and BOT.
 All three formats use blocks that have the following structure:
\end_layout

\begin_layout Enumerate
Pilot tone (narrow pulses)
\end_layout

\begin_layout Enumerate
Narrow pulse
\end_layout

\begin_layout Enumerate
Data (wide and narrow pulses)
\end_layout

\begin_layout Enumerate
Terminator 1(4 narrow pulses)
\end_layout

\begin_layout Enumerate
Terminator 2 (128 STOP pulses)
\end_layout

\begin_layout Subsubsection
AST File Format
\end_layout

\begin_layout Standard
This file format can be used to store binary files that have up to 44 segments
 and no INIT segments.
 File consists of several blocks.
\end_layout

\begin_layout Enumerate
Header block, 256 bytes of data
\end_layout

\begin_layout Enumerate
Data blocks.
 For each segment of the binary file, there is one data block.
\end_layout

\begin_layout Subsubsection
BUT File Format
\end_layout

\begin_layout Standard
This file format can be used to store binary files.
 File consists of several blocks.
\end_layout

\begin_layout Enumerate
BUT loader header block.
 6 bytes of data.
 It appears to be a boot header.
\end_layout

\begin_layout Enumerate
BUT loader data block.
 576 bytes of data.
\end_layout

\begin_layout Enumerate
Pairs of data blocks for each segment.
 First block in a pair is a segment header, second block in a pair holds
 segment data.
\end_layout

\begin_layout Enumerate
Termination segment header
\begin_inset Foot
status open

\begin_layout Plain Layout
TS is using slightly different format.
 There is no termination segment header, but the loader knows the number
 of segments.
\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection
AST Header Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="10" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Number of segments (1-44)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header check sum
\begin_inset Newline newline
\end_inset

Check sum = (HEADER[2] xor HEADER[3] +xor...
 HEADER[255])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-177
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
44 segment headers (start and end addresses)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
178
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 102
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
179
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 85
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
180-199
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name.
 Internal code is used.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
200
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
201-244
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sums for each segment block
\begin_inset Newline newline
\end_inset

Check sum = (DATA[1] xor DATA[2] +xor...
 DATA[?])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
245-255
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Unknown.
 $70, $4b, $00, $d6, $47, $b4, $cf, $4b, $00, $d6, $41.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
BUT Loader Header Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Length of the BUT loader data block in 128 bytes blocks.
 Always 5.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2,3
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Loader load address.
 1920.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
4,5
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Unknown.
 182, 9.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
BUT Loader Data Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-575
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
BUT loader code
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
AST and BUT Data Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-?
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
BUT Termination Segment Header
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-3
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
255, 255, 255, 255
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
22/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Stop
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
72/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Turbo Blizzard
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo system used in Poland, suitable for accommodation of binary files
 (small blocks, high transfer speed).
\end_layout

\begin_layout Standard
Three types of pulses are distinguished: Pilot tone pulse, wide pulse and
 narrow pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using Turbo Blizzard system consists of the following blocks.
\end_layout

\begin_layout Enumerate
Synchronization block.
 This block is preceded with pilot tone (3072 pilot tone pulses) and two
 narrow pulses.
 Block does not accommodate any data.
 Block is followed with silence lasting for 0.1 second.
\end_layout

\begin_layout Enumerate
Header block (HEADER).
 This block is preceded with pilot tone (302 pilot tone pulses) and two
 narrow pulses.
 Then 78 bytes of data follow.
 Block is followed with silence lasting for at least 3 seconds.
\end_layout

\begin_layout Enumerate
One or more data blocks.
 These blocks are preceded with pilot tone (302 pilot tone pulses) and two
 narrow pulses.
 Then 1029 bytes of data follow.
 Data blocks are separated by short gaps.
\end_layout

\begin_layout Subsubsection
Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-75
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
76
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0] + HEADER[1] + ...
 HEADER[75]) mod 256
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
77
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Spare byte, always 0.
 This byte is never read by the loaders.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Data block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="6" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Number of valid bytes in the block, 0-1024.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-1025
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Up to 1024 bytes of data padded with zeros if needed.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1026
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1027
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0] + HEADER[1] + ...
 HEADER[1026]) mod 256
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1028
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Spare byte, always 0.
 This byte is never read by the loaders.
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot tone
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
24/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
8/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Turbo ROM
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo system used in Poland, with limitations similar to Czechoslovak Turbo
 2000 and Super Turbo Systems.
 This turbo system can accommodate Turbo ROM compatible binary files (these
 binary files consist of exactly one DATA segment at most one RUN segment
 and at most one INIT segment) or tokenized BASIC programs.
\end_layout

\begin_layout Standard
Three types of pulses are distinguished: Wide pulse, narrow pulse and stop
 pulse.
 Bits are stored in LSB to MSB order.
\end_layout

\begin_layout Standard
File stored using Turbo ROM system consists of two blocks.
\end_layout

\begin_layout Enumerate
Header block (HEADER).
 This block is preceded with pilot tone (4884 wide pulses) and one narrow
 pulse.
 Then 41 bytes of data follow.
 After header block, there are four wide pulses and one stop pulse.
\end_layout

\begin_layout Enumerate
Data block.
 This block is preceded with pilot tone (516 wide pulses) and one narrow
 pulse.
 Then data follow.
 Data blocks are separated by short gaps.
 After data block, there are four wide pulses and one stop pulse.
\end_layout

\begin_layout Subsubsection
Header Block for Binary Files
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="15" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="15cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header block check sum = (HEADER[1] ...
 xor ...
 HEADER[40])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-2
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header load address (1537)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3-4
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header length excluding first byte (40)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
5
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data block check sum = (DATA[0] xor DATA[1] xor ...
 DATA[?])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6-7
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
RUN address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
8-9
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
INIT address 
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
10-11
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Load address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12-13
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data block length
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
14
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Padding 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
15-34
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name.
 Internal code is used.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
35
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Program type flag.
 For binary files there is 1.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
36
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0 - JSR to the INIT address, 1 - No JSR to the INIT address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
37-39
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Padding zeros
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
40
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
RTS opcode (96)
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Data Block for Binary Files
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data bytes
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Header block for BASIC files
\end_layout

\begin_layout Standard
A BASIC file consist of two parts.
 A header part (14 bytes long) and a main part.
 Data from the header part is stored in the header block and data from the
 main part is stored in the data block.
 The tokenized form of the BASIC file is relocatable and can be loaded to
 any address.
 Such address is denoted as base address.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="18" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="15cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header block check sum = (HEADER[1] ...
 xor ...
 HEADER[77])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-2
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header load address (1537)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3-4
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header length excluding first byte (77)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
5
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data block check sum = (DATA[0] xor DATA[1] xor ...
 DATA[?])
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6-7
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
RUN address (41086).
 Points to a routine in the BASIC ROM.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
8-9
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
INIT address.
 Always 0 for a BASIC program.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
10-11
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
LOAD address.
 Calculated as base address + VNT.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12-13
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data block length.
 Length of the main part of the BASIC file.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
14
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Padding 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
15-34
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name.
 Internal code is used.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
35
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Program type flag.
 Always 0 for a BASIC program.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
36
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1 - No JSR to the INIT address
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
37-39
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Padding zeros
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
40-59
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Routine that copies the header part to the zero page
\begin_inset Newline newline
\end_inset


\family typewriter
0xA2, 0x11, 0xBD, 0x3C, 0x06, 0x95,0x80, 0xCA, 0x10,0xF8,0x60
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
60
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Header part of the BASIC file (LOMEM, VNT, VNTE, VVT, STMTAB, STMCUR, STARP)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
74-75
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Address right past the loaded BASIC file (LOAD address + length of the main
 part)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
76-77
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Address right past the loaded BASIC file (LOAD address + length of the main
 part)
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Data Block for BASIC Files
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Main part of the BASIC file
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
16/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Stop
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
48/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Hard Turbo
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
Turbo system used in Poland that can accommodate only binary files.
\end_layout

\begin_layout Standard
Three types of pulses are distinguished: Pilot tone pulse, wide pulse, and
 narrow pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
File stored using Hard Turbo system consists of many blocks.
 There are three types of blocks.
\end_layout

\begin_layout Enumerate
Main header block (HEADER).
 This block is preceded with pilot tone (at least 512 pilot tone pulses)
 and one narrow pulse.
 Then 41 bytes of data follow.
 
\end_layout

\begin_layout Enumerate
Segment header block (SEGHEAD).
 This block is preceded with pilot tone (at least 512 pilot tone pulses)
 and one narrow pulse.
 Then 6 bytes of data follow.
\end_layout

\begin_layout Enumerate
Segment data block (DATA).
 This block is preceded with pilot tone (at least 512 pilot tone pulses)
 and one narrow pulse.
 Then data bytes follow.
\end_layout

\begin_layout Standard
A Hard Turbo file starts with the main header block.
 Then pairs of segment header and segment data blocks follow.
 The file ends with one special segment header block.
\end_layout

\begin_layout Subsubsection
Main Header Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="15cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Identification byte, always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-39
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name.
 ATASCII string terminated with EOL (155)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
40
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0] xor HEADER[1] xor ...
 HEADER[39])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Segment Header Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Identification byte, always 255
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1,2
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
First address of the following segment.
 Value of 65535 (255 255) indicates end of file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3,4
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last address of the following segment (increased by one)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
5
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (SEGHEAD[0] xor SEGHEAD[1] xor ...
 SEGHEAD[4])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Segment Data Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Identification byte, always 255
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Segment data
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (DATA[0] xor DATA[1] xor ...
 DATA[?])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Width
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
34/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
22/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsection
Lower Silesia Turbo 2000
\end_layout

\begin_layout Subsubsection
Description
\end_layout

\begin_layout Standard
This turbo system appears to be very similar to Turbo 2000 from former Czechoslo
vakia.
\end_layout

\begin_layout Standard
Four types of pulses are distinguished: Narrow pulse, wide pulse, pilot
 tone pulse and sync pulse.
 Bits are stored in MSB to LSB order.
\end_layout

\begin_layout Standard
There are several file formats used.
\end_layout

\begin_layout Subsubsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Auto-Turbo-Format"

\end_inset

Auto Turbo Format
\end_layout

\begin_layout Standard
This format is used to store binary files with limitations.
 Binary files without INIT segments can be stored and executed.
 Binary files with INIT segments can be stored, but not executed.
\end_layout

\begin_layout Standard
File stored using Auto Turbo format consists of two blocks - header block
 (HEADER) and data block (DATA).
\end_layout

\begin_layout Standard
Both blocks are preceded by pilot tone (series of at least 256 pilot tone
 pulses) which is followed by a sync pulse (which is very narrow pulse).
 Recommended number of pilot tone pulses is at least 2000.
\end_layout

\begin_layout Subsubsection
\begin_inset CommandInset label
LatexCommand label
name "sub:Unprotected-Binary-Format"

\end_inset

Unknown Exterminator Unprotected Binary Format and Protected Binary Format
 (UE UBF and UE PBF)
\end_layout

\begin_layout Standard
These file formats can be used to store binary files.
 A binary loader is prepended before the file.
 File consists of several blocks.
 
\end_layout

\begin_layout Enumerate
Dummy RUN block.
 2 bytes of data (UE PBF only).
\end_layout

\begin_layout Enumerate
Pairs of data blocks for each segment.
 First block in a pair is a segment header (SEGHEAD), second block in a
 pair holds segment data (SEGDATA).
\end_layout

\begin_layout Enumerate
Termination segment header
\end_layout

\begin_layout Subsubsection
Auto Turbo Header block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="8" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="12cm">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File type.
 Always 4.
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2-11
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
File name
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
12-13
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
14-15
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Length of file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
16-17
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
18
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (HEADER[0]) xor ...
 xor (HEADER[17])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset

 
\end_layout

\begin_layout Subsubsection
Auto Turbo Data block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Always 255
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1-?
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data of the binary file (includes segment headers)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (DATA[0] xor ...
 xor DATA[?])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
UE PBF Dummy RUN block 
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0,1
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0x02 0xE0
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = 0xE2
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
UE UBF and UE PBF Segment Header Block 
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0,1
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
First address of the following segment
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
2,3
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last address of the following segment
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
4
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (SEGHEAD[0] xor ...
 xor SEGHEAD[3])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
UE UBF and UE PBF Segment Data Block
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-?
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Data
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Last
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = (SEGDATA[0] xor ...
 xor SEGDATA[?])
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
UE UBF and UE PBF Termination Segment Header
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="2cm">
<column alignment="left" valignment="top" width="14cm">
<row>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Offset
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Description
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0-3
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
0x00,0x00,0x00,0x00
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
4
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Check sum = 0x00
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Subsubsection
Timing
\end_layout

\begin_layout Standard
Standard transfer speed is approximately 2270 bauds.
 There is a big tolerance for width of all pulses.
\end_layout

\begin_layout Standard
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="3">
<features tabularvalignment="middle">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pulse
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Center width
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Tolerated range
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Pilot tone
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
32/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(25-47)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Wide
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
26/44100 s 
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(20-40)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Narrow
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
13/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(6-19)/44100 s
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Sync
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
10/44100 s
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
(4-17)/44100 s
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\end_body
\end_document
