Hi there! This series of files will enable anyone to receive weather pictures and press pictures over the radio and display them on your AMIGA. What you will need is :- 1) An Amiga - I developed it on an A500 v1.2 - any problems with others then see me. 2) A short wave radio with SSB capability to receive the transmissions. 3) The hardware to convert the sound from the radio into an eight bit number suitable for connecting to the computers parallel port. 4) A cable to connect it. 5) The program to display it. The circuit diagram for the hardware is in the file "circuit.pic". This is an IFF file from Dpaint. The parts list is in "partslist.doc" - the cost of building it will be about twenty pounds sterling. (Damn cheap when commercial units are 200 pounds upward !). The program is the file named "fax". READ THE DISCLAIMER AT THE END OF THIS FILE!!! If you use this material, or even if you just read through it, and have any ideas for improvements on the hardware side, software side, or on any other matter, then please contact me (Martyn Bannister) on:- Reading UK (0734) 422604 (home) Reading UK (0734) 506071 (work) or write to me at 5, Eldart Close, Reading, Berks, United Kingdom. RG3 4DA ALL this material is COPYRIGHT (c) Martyn Bannister 1992. *********** HOW IT WORKS ************** FAX pictures are transmitted freely over the radio from weather centres and press centres around the world. They are produced by dedicated machines and received on a machine which prints them onto paper. This method can be adapted by us to make them appear on a computer screen. They are sent as a carrier frequency which is shifted up or down to indicate what colour a particular point on the paper (or screen) should be. A picture is sent as a series of scan lines, starting at the top left, going to the top right, then starting at the left of the next line. The normal rate is 120 lines/minute (one line every 0.5 seconds). Other rates are 90, 60 and even 240 lines/minute. This hardware and software is suitable for 120 and 60 lpm rates. From this you can work out that at 120 lines/minute and with a horizontal screen resolution of 640 pixels, the frequency has a maximum variation of 1280 times per second. To receive the pictures, the radio must be tuned, in SSB mode, to the carrier frequency (3289.5kHz is a good example - this is Bracknell weather centre UK). The radio is then tuned slightly off, so that when no picture is being transmitted, a constant tone is produced at around 1900 Hz. When a picture starts to be transmitted the tone produced by the radio will then vary between 2300 Hz for black and 1500Hz for white. This variation can then be sampled 1280 times per second to give us values that we can plot on the screen. *********** THE SOFTWARE ************** The program to display the pictures on the screen is called "fax". To run it, just go to the directory containing it and type "fax". You will then be presented with a black screen with a title at the top showing the keys you can use. From this screen you use the "ESC" key to exit the program. To start the program you press the "W" key. This sets the program going in wait mode and the title WAITING............ appears. It is now continually monitoring the parallel port for the synchronising signal sent before all fax pictures. Thus, if you don't have the fax hardware plugged in, it is impossible to get out of this without plugging the hardware in or rebooting! If the hardware is plugged in then as soon as the program recognises the synchronising signal the title will change to SYNCHRONISING......... This signal is in the form of a white bar down the left hand edge of the picture and can be heard on the radio as a tic ... tic ... tic ... noise. The white bar will not appear on the screen, because the computer is using it to find out where the left hand edge of the picture is. Once the synchronising signal finishes the picture will start to appear, line by line on the screen. It will overwrite the title. Once the picture finishes (THIS TAKES AT LEAST 8.5 MINUTES!!!!!!) then the program returns you to the main screen, but leaves the picture up so that you can see it. At this stage you can also save it by pressing the "S" key. It produces a file called RAM:FAX.PIC which can be copied to your own disks. <<<<<<<<<<<<<<<<<<<<<<<<<<<<< OTHER KEYS >>>>>>>>>>>>>>>>>>>>>>>>>>> In addition to the "W", "S" and "ESC" keys there are a couple of others. They can only be used while the main screen is up. The number keys. ---------------- Initially, the program produce one line on the screen for every two lines transmitted. This is the normal picture density for most transmissions. Some, however, are sent as double density so by pressing the "4" key, the program displays one line for every 4 transmitted. This mode also enables normal density pictures which are being transmitted at 60 lines per minute to be received. The "1" key can also be used for rare pictues which appear to be transmitted as half density. To get back to the normal '2 for 1' mode you can press the "2" key. The mouse button. ----------------- If you happen to tune onto a fax station half way through a picture being transmitted then pressing the "W" key will put the program in waiting mode. Since you have missed the start of the picture however, the program will sit there doing nothing!!. By pressing the left mouse button you can force it to start displaying the picture, although you will have to be very lucky not to get the edge of the picture in the middle of the screen. The left mouse button can also to used to abort from receiving the picture at any time that you can see it being built on the screen. The mouse button CANNOT be used to interrupt the program when it is synchronising. Amiga keys. ----------- While the picture is being received, there are two methods of altering the picture contrast. 1) Retune the radio so that the optimum contrast is achieved. 2) Shift the centre value that the program uses to select black or white. This can be done by pressing the left hand AMIGA key to reduce it and the right hand AMIGA key to increase it. It is initially set at 128. *********** THE HARDWARE ************** REFERRING TO THE CIRCUIT DIAGRAM. 1) Conversion of the tone from the radio to a TTL signal. --------------------------------------------------------- The signal is taken from the tape recorder output of the radio and fed via C1 into a voltage stabilised amplifier consisting of T1, R2, R3, R4, R5 and C2. This amplifies it from about 50mV to 1v peak to peak. It is then fed to a two stage op amp (with no feed back) in the form of IC1, R6, R7, R8, R9, R10 and R11. This amplifies it thousands of times to produce a square wave between about 1.4 and 5 volts. This then goes to a NAND gate in IC2 via a pull down resistor (R12) and a decoupling capacitor (C4). This converts it to a normal TTL signal between 0 volts and 5 volts at pin 11 of IC2. 2) Sampling to produce parallel data values. -------------------------------------------- Because the frequency is changing very fast, the best way to instantaneously sample it is to count the time taken for each cycle. We can arrange this by having a counter which will count clock pulses up to the full 8 bits (255) at some input frequency slightly lower than the lowest expected. The lowest expected is 1500Hz, or one cycle every 0.66mS. So if we arrange for the clock pulses to arrive every 2.588 microseconds, the counter will count to 255 every cycle of the input frequency. The clock frequency should therefore be about 400kHz. For a higher input frequency the counter will not count as high. So at 2300Hz the counter will only get as far as 169. This gives a range of 86, but it is not centred around the mid point (128). If the clock frequency is lower, then the lower input frequency will not let the counter get as far as 255. The range will reduce however. A good compromise is 230kHz. This will give a count of 153 at 1500Hz and 101 at 2300Hz which gives a resolution of 52 shades between black and white. 3) Counting the input cycles. ----------------------------- To achieve the above, we produce a pulse from the input square wave for every cycle and reset the counter (IC5) with this pulse. Thus, at a constant input frequency the counter will count up to a constant number and then get reset. The same pulse can be used to transfer the count that has been reached by the counter to an 8 bit latch (IC6 & IC7) just before resetting the counter. In this way a constant 8 bit value will be found on the latch output pins for a constant input frequency. Varying the input frequency will vary the 8 bit value on the latch output pins. The task is therefore to produce one pulse every cycle of the input frequency to activate the latch, and another pulse, very slightly delayed, to reset the counter. This task is performed by IC4, which is a dual retriggerable monostable that is activated by a positive going edge. The TTL signal from IC2 is fed to one of the monstables (pin 9) and this produces a very short pulse at pin 12, the duration of which is set by R16 and C10. This pulse is taken to the latch enable pins (pin 8 of IC6 and IC7). The reverse of this pulse also appears on pin 5 of IC4 and the trailing edge of this is used to trigger the second monostable to produce a second pulse, delayed by the width of the first. The duration of this second pulse is set by R17 and C11. This is taken to pin 2 of the counter (IC5) to reset it. 4) Producing the clock pulses. ------------------------------ We need two clock pulses. One to drive the counter (about 230kHz) and one to tell the computer to sample the input data at 1280Hz. To produce a steady picture it is vital to use a crystal oscillator for the 1280Hz clock. The clock for the counter does not have to be as accurate. A suitable value for the crystal is 3.2768MHz. By dividing this value by 2560 we get 1280Hz for the computer and dividing it by 16 we get 204.8kHz to drive the counter. This is the function of X1 (the crystal) R15 and IC9 and IC10. IC10 is a 14 stage binary counter with built in oscillator. This is driven by the crystal at 3.2768Mhz. The divide by 16 output (pin 7) is taken the counter clock input. The divide by 512 output (pin 13) is taken to IC9 which divides it by a further 5 to produce a division of 2560. This signal is then buffered by one of the NAND gates in IC2 and fed to the computer via the ACKnowledge pin. *********** MISCELLANEOUS ************** Some frequencies to try : 2618.0kHz } 3289.5kHz }------Bracknell Met UK 4782.0kHz } 7880.0kHz ------Hamburg Met You will soon learn to recognise a fax tranmission. It sounds a bit like a a push bike being ridden with something stuck between the wheel and the mudguard! All pictures take a long time to receive - be patient. All pictures are the property of the tranmitting establishment. By law you should write to them for permission to receive them. You can use the same hardware to receive FSK data tranmissions. This doesn't apply to the software! This software and hardware is experimental, so doesn't save the pictures in IFF format. It simply reads them out of bitplane 0 as a block of memory. If enough people are interested I will extend the software to have pretty title screens, menus, gadgets, full IFF and printing support etc. Because of the exact timing required to receive pictures T H I S P R O G R A M W I L L N O T M U L T I T A S K don't even think about it!!! It kills the whole system !!! I have not included constructional details, since you will know what to do if you are attempting to build the beast! I have included a program called "peep" to monitor the values appearing on the parallel port. This will assist in the testing. PLEASE - I am NOT an expert on programming or electronics hardware. If you have ANY suggestions for improvements to either then get in contact. I won't bite!!! ********************************************** *********** DISCLAIMER / RIGHTS ************** ********************************************** The material you have purchased/downloaded is PUBLIC DOMAIN. It consists of:- this document (faxread.me); the parts list for the hardware (partslist.doc); the circuit diagram for the hardware (circuit.pic); the source for the fax program (fax.source); the fax program executable (fax) the program to show the parallel port values (peep). ALL this material is COPYRIGHT (c) Martyn Bannister 1992. It is freely distributable, costs nothing and (because of the price!) I cannot and will not be held responsible for any damage or effect any of this material has on hardware, software, people, animals or anything else. Anything that happens from the use or possession of this material is SOLELY the responsibility of the user. If you distribute it then KEEP IT TOGETHER!! You have no right to use any of the material for any commercial venture without my written permission (i.e. I want a cut!). ENJOY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!