DAMTAPE ( light info)
------------------------


Having a ZX SPECTRUM real tape (normal speed tape loader) damaged at same points
with TAPE LOADING ERROR, "damtape" allows you to get back AUTOMATICALLY the part of
program (basic) standing on the tape over the break (and make a file .tap. of it),
and give to the user also the program list, m\c , variables area, screen$ and chr/num array for
manual take from.

################################################################################


DAMTAPE F.A.Q.
--------------------



Q. WHAT 'S 'damtape' JOB ?
A. It can read also completely no-header data block (any fragment of code).

Q. WHAT IS IT GOOD FOR ?
A. To get back binary code from DAMaged zx spectrum physical TAPE
(ONLY NORMAL SPEED TAPE LOADER).

Q. WHAT 'damtape' IS NOT !!!
A. 'damtape'IS NOT a wav2tap converter!!! If your physical tape is perfectly
working and you just want to convert it in a virtual tape file,I suggest to use
a specific tool converter.

Q. WHAT KIND OF FILE DOES IT WORKS ?
A. It works file .WAV (44.1 Mhz,8 bit mono).

Q. WHAT HAPPENS TO YOUR FILE .WAV ?
A. step 1:extraction of the every single 'bit'.
step 2:shifting...
step 3:searching for HEADERS ,BASIC PROGRAMS
automatically creating a file .tap for
each fragment of BASIC program founded.


Then you can manually recover machine code,screens,char/num array,variables area,udg ...

##################################################################################





DAMTAPE MAIN FUNCTIONS (guida utente completa)
------------------------------------------------------------

*************************************************************************************
* UTILITY TO GET BACK THE BINARY CODE FROM DAMAGED ZX SPECTRUM'S REAL TAPES *
*   2002 DamTape                                                                                                                                           *
* Versione windows beta 5 - .09.2004                                                                                                             *
*************************************************************************************


Having a ZX SPECTRUM real tape (normal speed tape loader) damaged at same points
with TAPE LOADING ERROR, "UTILITY TO GET THE BINARY CODE FROM DAMAGEDZX SPECTRUM'S
REAL TAPES" allows you to get back AUTOMATICALLY the part of program (basic)
standing on the tape over the break (and make a file .tap. of it), and give to the
user also the program list, m\c , variables area, screen$ and chr/num array for manual take from.


BEFORE:


0- Having a real tape, make of it a sample (a file .WAV, 44.1Mhz, mono, 8 bit)
and call him "master.WAV". Put "master .wav" in the same directory
with "DAMTAPE_b5win.EXE" and execute it.


Click"STEP1" to start (from DamTape main men?)

..................................................................................................

STEP 1 (DECODING OF A FILE.WAV )

1- Input the name+extension of the WAV file to be
decoded (ex: master.wav).

(the result file will be named"DT-RAW.TXT )


2-Select tape speed (1-17).Even if DAMTAPE IS STRICTLY INDICATED FOR NORMAL SPEED TAPE
LOADER ("1") YOU CAN TRY TO DECODE ALSO A HI SPEED TAPE SELECTING AN 2 to 17 value.
(hier speed means hier risk of error).
Automatic data recover(step 3)is not guaranteed for not standard data of some custom loaders.



For default is preselected ( but you can unselect it ) the creations of file "DTrawbits.htm"
that can contain:or only all bit (1/0) founded or all bit (1/0) and also (marked "x") the pauses/errors
to be examined by the user.

3- Click "decode file .wav" and wait...

NOTE (In decoding phase):every data stream interruction is logged in file "report.txt".
This phase can last a lot of minutes.
Then click "next"

.......................................................................................................

STEP 2

4- If you came from step1 click "create service files" .(Filename is preset):else type your filename
then click "create service files".
Will be createdi 8 DamTape service files (DTservice #.txt).

Then click "next"

.........................................................................................................

STEP3 (AUTOMATIC DATA RECOVER)

5-Type common part of the name (without number and extention) of service files created at STEP2 (es:DTservice)
to be worked'.

Select the tasks to do: 1-create LIST files
2-search for tape headers
3-search for BASIC (and tap creation)



On "TASK 1"are createdi 8 LIST# .TXT files cntaining the convertion of service files to set spectrum characters
with token ,line format and so on to be examined by the user.
They're very important becose they contain also the parts of code that will not be included in tap file
if uncomplete or uncorrect.

On "TASK 2" are searched for "tape headers",if founds are visualized od display and logged in report.txt.

On "TASK 3" is searched for BASIC,and can happen that are created file .tap "empty" or "incorrect".

To avoid this you can use a FILTER. (max lenght for the first program line).
For default the filter is disabled but can be enabled by clicking its checkbox.
(USE THE FILTER CAREFULLY-if enabled good basic program may be unrecognized BUT OTHERWIZE
if enabled, bad basic may be included in tap file (corrupting it).
TIP:first try disabled then try enabled (set various values).
Filter range alloweed: 0-65536,(suggested 2000).

Now are going to be created some "out#.tap" (if DamTape has intercepted some BASIC lines completed.
The contents of the BASIC lines NOT COMPLETE ("CUTTINGS"), and obviously not included in the file tap
(before the start and over the end), they 'll be manually searched in the corresponding file "list"
(ex: the "CUTTINGS" of "tap 3 .TAP" will be in "LIST 3.TXT") and 'd be restructured manually and retyped.
In fact, in the files "list#.txt" with number corrisponding to "tap#.tap" files "created correctly",
there're the complete listings (also the parts eventually not included in the files "tap #.tap").

SOME "tap#.TAP" CAN BE EMPTY OR NOT COMPRENSIBLE: IGNORE THEM.
Then merge the right tap on the emulator.
In the "DTservice#.txt" files with number corrisponding to "tap #.tap" files created correctly,
there're variables area, screen$, m\c, character and number array, at the user's disposition.


Every information about the "tap#.tap"created files is logged in file"report.txt"

VERY IMPORTANT: DON'T FORGET TO SEARCH IN THE "LIST#.TXT" FILES THE FIRST AND THE LAST PROGRAM LINES AND
"CUTTINGS" NOT INCLUDED IN "TAP#.TAP" FILES.

Don't forget to check the "report.txt" file.

P.S.: If the decoding is extremely difficult is good to make a new sample of the
real tape (point 0) with a lower or hier volume.


click "end" to main men?.


######################################################################################

DAMTAPE EXTRA FUNCTIONS
-------------------------------------



FROM MAIN MENU'

FUNCIONS EXTRA:
----------------------

1-Click "ASSEMBLY" to view a single file or the 8 "DT service"[default] as assembly mnemonic code.

...................................................................................................


2-Click "SCREEN SEARCH" to convert a file to a lot of spectrum graphic files (.scr,6912 bytes).
select the kind of file (one single file or 8 "DT service"(default)),and the name.
select the part of file from where to extract the .scr files (START , END , SF(screen frequency-default=1000)

Will be extracted one file .scr starting by "start" to bytes"end",every "SF" bytes of the file selected
and Will be created a folder "FILESCR TIME" containing all files ".scr" created.

Now use a .scr viewer to check if there's some screen and where.
(I suggest the very fast "ZX RAINBOW"(www.worldofspectrum.org).
View your files .scr , search for the best one and erase the other.



TIP(for not to waste to much time):
for example you've eight files created by "step2"of "DAMTAPE"
(DTservice 1.txt;DTservice 2.txt;....DTservice 8.txt)

point a:YOu work only one single file[option2] (for example insert "DTservice 1.txt")
select SF (screen frequency)=1000 (one screen every 1000 bytes) from "0" to
"end of files"(all default option) and view them with attributes disabled
with "ZX RAINBOW".

point b:If you see some screen image (probably a lot shifted),choose the best
centred on display, then see the name of that"file.scr".
It will be named for example"1 15.scr".
So (0[start]+(15[scr name]*1000[SF]))=15000 is the position
of the "1 15.scr" in "DTservice 1.txt".

point c:Now erase ALL"FILESCR" folder then restart and now you work the eight files[option1],
insert name"DTservice",
select screen frequency= 1 from (15000-X) to (15000+X)
[you choose "X" parameter(try "X"=SF selected at point a)] .
You will have a lot of files, view them (with attributes enabled) with "ZX RAINBOW".
If you found the right one copy it in the same directory as DamTape and erase "FILESCR" folder
else go to point "b" selecting different parameters.



..............................................................................................

3-Click "BIN2TAP" to convert one binary file to a spectrum .tap file ( bytes )

Type the filename and click "SET
Select the part of file to be put in file .tap (START and END)
Select the start address in tape header(default=16384)
Will be created "bytes.tap"

............................................................................................

4-click "SCR2TAP/BMP" to view a .scr file and convert it to file.tap and/or bmp (24 bit)

click "open file :SCR" and select your file
click SCR2TAP convert it to file.tap
click "save as BMP" to (guess to do what?)





BACK