========================== Frequently Asked Questions ========================== BDDE is now quite a while on the market. However, I get the same questions over and over again. So I thought it was time to produce a handy 'FAQ' sheet. Although it is not very long, all the questions people asked to me to far are covered here. Your's might be there too! J.L. Bezemer, 94-8-22 Q. I tried to use the '-C4' option to produce .TAP files. However, Gertons Emulator rejects these files. How come? A. You won't get a warning when you issue the '-C4' option to the shareware-version of BDDE. It will even produce .TAP files. However, when you attempt to read these .TAP files into Gerton Lunters Z80 emulator V2.x they will not function. IT WON'T CAUSE ANY HARM EITHER. If you want full .TAP file support you have to register. The .TAP files produced by the shareware version of BDDE won't contain any valid checksum or length information. If you want to convert BetaDisk files to Z80 V2.x you'll have to use the '-C1' option. Option '-C4' will only be supported and functional in the *REGISTE- RED* version. Q. I'm using Anadisk and it reports nothing, so I assume everything is going fine. However, when I try to convert the file all BDDE produces is a lot of sector-header errors ("Invalid sector header .."). I tried every possible interleave but nothing seems to work. Will registering get me there? A. No! If you can't produce any usable stuff with the shareware version, you can't do it with the registered version either. That's not BDDE fault. BDDE can only work if your disk-analyzer produces valid dumpfiles. Anadisk (in most cases) seems to 'miss' the first sector and only dumps sector 2 and up. If you examine your dumpfile carefully, you will see it is smaller than it should be. Contact your disk-analyzer reseller. The whole thing seems to be an unpleasant combination of hard- and software, so trying another computer or disk-analyzer might work. If you have your dumps, you won't need the services of a disk-analyzer anymore, since BDDE can now do the job. If you're really desperate I can do a full conversion for you, but it will cost you. Please contact me for details. Q. BDDE only produces a lot of files, but when I load and try to run program 'X' it won't work. Can't you produce .Z80 files? A. Not directly. I would take a lot of artificial intelligence to work out all the dependencies between the BASIC-loader and the CODE- files, and I wonder if it would ever work nicely. But it is not very difficult to get a program up and running. Most of the time it just takes a few changes in the BASIC-loader. An example: Addr Len B/D First First Last First Filename Type Len(B) Run(C) NEG Tk/Sd/Sc Abs.S Abs.S #Sc Tk/Sc ======================================================================= BLUP 1 CODE 16384 8224 0 25/0/03 802 829 28 50/02 BLUP 2 CODE 25000 8224 0 25/1/15 830 908 79 51/14 BLUP 3 CODE 45000 8224 0 28/0/14 909 989 81 56/13 BLUPPER! BASIC 270 254 242 30/1/15 990 991 2 61/14 This is an imaginary game on a BetaDisk. It consists of three CODE- blocks and a BASIC-loader. If you convert these files to .TAP files they're called "blup1.tap", "blup2".tap, "blup3.tap" and "blupper!.tap". Now we read "blupper!.tap". 1 REM ! STEP n!# STEP n STEP RESTORE a 2 CLEAR VAL "24999": BORDER NOT PI: INK NOT PI: PAPER NOT PI: CLS : LET n$="BLUP " 3 FOR i=SGN PI TO VAL "3" 4 RANDOMIZE USR VAL "15363": REM : LOAD n$+STR$ (i)CODE 5 NEXT i 6 RANDOMIZE USR (PEEK VAL "23300"+VAL "256"*PEEK VAL "23301") 12 RANDOMIZE USR a: REM : SAVE n$+"3"CODE VAL "45e3",VAL "20535" 13 RANDOMIZE USR (PEEK VAL "23635"+VAL "256"*PEEK VAL "23636"+VAL "5") 14 RANDOMIZE USR a: REM : SAVE n$ LINE SGN PI 15 GO TO VAL "6" This is the typical code of an protection-cracking interface. Packed to make it small and thus virtually unreadable. The "SAVE" code is not very interesting. The interface generated that to SAVE the game to disk (if you think about it this makes perfectly sense). That code can be eliminated since it isn't needed anymore (we want to load the game): 1 REM ! STEP n!# STEP n STEP RESTORE a 2 CLEAR VAL "24999": BORDER NOT PI: INK NOT PI: PAPER NOT PI: CLS : LET n$="BLUP " 3 FOR i=SGN PI TO VAL "3" 4 RANDOMIZE USR VAL "15363": REM : LOAD n$+STR$ (i)CODE 5 NEXT i 6 RANDOMIZE USR (PEEK VAL "23300"+VAL "256"*PEEK VAL "23301") The next thing is to eliminate the BetaDisk-code. We want to load the game from our (virtual) cassetterecorder. The call to "USR 15363" or "USR 15360" is significant. It's located in line 4 and we have to delete it up to the point where "LOAD" starts. 1 REM ! STEP n!# STEP n STEP RESTORE a 2 CLEAR VAL "24999": BORDER NOT PI: INK NOT PI: PAPER NOT PI: CLS : LET n$="BLUP " 3 FOR i=SGN PI TO VAL "3" 4 LOAD n$+STR$ (i)CODE 5 NEXT i 6 RANDOMIZE USR (PEEK VAL "23300"+VAL "256"*PEEK VAL "23301") But we're not quite ready yet! The string n$ contains "BLUP ", so when it enters the loading loop it tries to load "BLUP 1.tap", "BLUP 2.tap" and "BLUP 3.tap". However, these are *NOT* valid MS-DOS filenames! Therefore a lot of code in BDDE has gone into converting these filenames into valid MS-DOS filenames. In other words, BDDE changes these filenames. To get the loader working, we have to: 1. Convert all characters to lowercase. 2. Erase all spaces. 3. Erase all the other characters that MS-DOS doesn't allow to be part of filenames, e.g. "<", "*", "|". In this case it is very easy: remove the spaces and change "BLUP" to "blup": 1 REM ! STEP n!# STEP n STEP RESTORE a 2 CLEAR VAL "24999": BORDER NOT PI: INK NOT PI: PAPER NOT PI: CLS : LET n$="blup" 3 FOR i=SGN PI TO VAL "3" 4 LOAD n$+STR$ (i)CODE 5 NEXT i 6 RANDOMIZE USR (PEEK VAL "23300"+VAL "256"*PEEK VAL "23301") Now check whether your setting on .TAP files points to the right directory and type: RUN The game should now load itself. You can now also convert it to an .Z80 file if you wish. Check the manual on your Spectrum Emulator. Q. Can I use BDDE to convert datafiles to MS-DOS? A. Yes, you can. Choose '-C0' conversion to extract them headerless. Further conversion depends on the dataformat and may require some editing or programming. Sometimes you can use the Spectrum Emulator to convert certain files by printing them to disk, e.g. by using the Z80 Emulator. If you register BDDE you get a dedicated tool to convert Tasword II files to MS-DOS or Unix files. Q. Some programs convert just fine, but when I try to RUN them they crash. What happened? A. Check if your BASIC-loader contains embedded machinecode. Some programs are loaded with that stuff! You can either correct it manually (only recommended when the machinecode-part is not too big) or register. The registered version of BDDE contains a program that corrects this problem in most cases. Q. BDDE does not seem to work properly. What should I do? A. You can either try to find/correct the problem yourself. That is quite possible because BDDE contains a lot of diagnostic code. If you want to try this, you have to register. BDDE comes with an Administrator Guide, which shows you all the BDDE internals and how to use the built-in diagnostics. But, beware no bug has been reported (yet)! If you have registered, you can also use our support. If you run into a problem, you can send me ONE single disk for diagnostics ONCE. This support is free. You can always send me a letter if you include the fee for return mail. This support is free too.