----------------------------------------------------------------------------- *** Jolly Box v4.00 final Construction Plans *** *** Latest revision: 1993-06-01 *** ----------------------------------------------------------------------------- THE CREATION OF THE ___ _ _ _ | | | | | \_/ __ |_| | | \/ \_| |_| |__ |__ | |_| |_| /\ Created By: ___ _ /_ // /_)_ _ _ _ (_/(_)//(_/ / \(_)(_)(_'/ / (_/ Additional Programming and Hardware Improvements by: Zaphod Beeblebrox of Control Team/I.C.S. Version 4.0 final ----------------------------------------------------------------- For Ideas Bugreports additional developements and changes we can be contacted on the following BBS's: Eagles Nest: +46-18-262804 Nightbox: +49-5861-8795 Jolly Roger understands both German and English, and I, Zaphod Beeblebrox understands Swedish and English, and also a very little bit German. Just feel free to contact any of us if you need help or just want to chat a bit!! For ideas and Bugreports you can also contact [>SmEGmA<] at all well known Amiga Elite-Boards ----------------------------------------------------------------- General Info The Jolly-Box is a hardware project realized by Jolly Roger. The first version in release was v3.1, which I downloaded from a BBS. I started thinking about making a more advanced version, and contacted Jolly Roger about it, and here we are again, now with the German-Swedish Co product- -ion of The Jolly-Box v4.0!!! All original hardware design was made by Jolly Roger, as well as the main structures of the software for the 80C39 Intel CPU. The improvements to the hardware, and the programming for adding all the new features to the v4.0 software was made by Zaphod Beeblebrox of ICS/Control Team. The Jolly-Box is now the most advanced hardware box of any kind, which plans are released to the public. We have included the sourcecode for the CPU software, together with sources in GFA basic for an assembler/dissassembler for 80C39, and software for calculating the sine-wawe samples for the different tones. All of these GFA basic programs were written by Jolly Roger on the Amiga, I only added some features for compatibility with the Atari ST/STE series of computers. You'll find all these sources in ASCII format also in this archive so that you can convert them if you wanna use a Pc for example instead of an Atari or Amiga.... However, I must notify you of the fact that you'll have to find out what trunk-frequencies you should use yourself, since we will only include the standard CCITT #5 ones, so if you need anything special you'll have to code them yourself!!!! The hardware will cosists out of two single-sided boards, a keypad and a phone speaker. Or, you might put a 3.5 mm phono jack on the box and use a pair of freestyle headfones. I use that myself, with excellent results.... Also, this looks more unsuspicious if you use it in a payfone... Now, the rest is up to you. There is still some room left in the eprom for additional routines, so you might add wahtever you want to the box.... ----------------------------------------------------------------- *** WARNING *** The use of a bluebox is a crimminal offence, and it's *YOUR* problem if you get caught using one. We will accept no responsibility for your actions, we just show you the theory behind the construction of a CPU controlled bluebox and the use of this device on any phoneline without permission is strictly forbidden!!!!!!! Now it's all up to you........... Building this box is not a simple task. If you do not have good experience of soldering together complicated circuit, do not attempt the constyruction of this device. Ask somebody who does have experience to do it for you!!!! ----------------------------------------------------------------- Parts List for Jollybox v4.00: ============================== No: Description: Elfa Order #: === ============ ============= 01 80C39 CPU 73-802-49 01 27C64 EPROM 73-729-31 01 27C010 EPROM 73-736-32 01 74LS373 73-726-00 02 74LS393 73-729-15 01 741 OP. 73-010-21 01 8-PIN SOCKET, 7.62MM 48-135-49 02 13-PIN SOCKET, 7.62MM 48-135-64 01 20-PIN SOCKET, 7.62MM 48-136-22 01 28 PIN SOCKET, 15.24MM 48-137-54 01 32 PIN SOCKET, 15.24MM 48-137-62 01 40 PIN SOCKET, 15.24MM 48-138-12 01 12-KEY TELEPHONE KEYPAD 35-678-07 01 1 POLE SPST SWITCH 35-355-31 01 3.5MM PHONO JACK 42-700-88 01 146*90*37MM PROJECT BOX 50-381-04 01 7805 5V POS.V. REGULATOR 73-090-08 01 10 MHZ CPU CRYSTAL 74-505-05 01 RED LED, 3MM 75-037-09 02 10 UF, ELECTROLYTIC 67-008-19 02 15 PF, CERAMIC 65-691-23 01 0.1 UF, CERAMIC 67-776-43 01 0.33 UF, CERAMIC 67-777-18 01 100 KOHM POT, LOG. 64-064-09 01 270 OHM, 5% 60-104-25 03 10 KOHM, 5% 60-106-15 03 100 KOHM, 5% 60-107-30 01 10 KOHM, 1% 60-734-23 01 20 KOHM, 1% 60-737-46 01 40.2 KOHM, 1% 60-741-08 01 80.6 KOHM, 1% 60-744-54 01 160 KOHM, 1% 60-747-77 01 324 KOHM, 1% 60-751-21 01 634 KOHM, 1% 60-754-85 01 1.3 MOHM, 1% 60-757-33 02 PCB'S /W PHOTORESIST 49-576-19 01 16 LEAD RIBBON CABLE,1M 55-660-54 ----------------------------------------------------------------- Building the Main-Board This will be the hardest part! If you make one mistake, you will not get any result, so if it doesn't work, check the Layout! '8049BB1P.PCX' is the picture showing where on the PCB the components should be placed. '8049BB1.PCX' and '8049BB1M.PCX' is the circuitboard as seen from the back in normal and mirrored format. The same pictures exist for the sample board too, but the they're called #2 instead of #1.... To get films for photo etching, either make your own layout from these pics, or if you have a standard epson 9 or 24 pin printer, or a HP Laserjet compatible laser, you can just print the files in the PCB_PRNT.ZIP archive. *.P9 Epson 9-Pin printer image files. *.P24 Epson 24-Pin printer image files. *.HPL HP-Laserjet printer image files. *.HPD HP-Deskjet printer image files. *.PCB PCB Layout files for PCB Layout v1.x on Atari ST. Power up the main circuit board and test it with a power supply of 9V, 500mA. A normal 9V battery will do fine, but we do recommend a real 9V DC power supply when the box is to be used indoors, since normal batteries tend to run out quite fast, all these chips consume quite a lot of current when the box is being used a lot. Check the "power in" pins at the main board and check if there are 5V comming out on the power out pins. Check if the clock jumper shows a 666666 Hz signal on a meter or a scope based to ground. If this is ok the power, processor, quarz is working. Now check if one of the keyboard pins (p2-p7) based to ground shows a frequenz (far under 666666 Hz). Congratulation: You did the hardest part if it works. Now connect the keyboard with p2-p7 for lines and t0-t1 for the rows with the ribbon cable. See KEYBOARD.IFF how the keys are connected to the boards. You can check it, when the sample-board is done. ----------------------------------------------------------------- Building the Sample Board '8049BB2P.PCX' shows where the components should be put, and '8049BB2.PCX', and '8049BB2M.PCX' shows the back of the PCB in normal and inverted mode. Put on all jumpers and sockets first. Then put on all bigger parts and at least the ICs! Take the '27010SPL.ROM' file and program it into an 27010 eprom. Press the eprom into it's socket too. Use a ribbon cable and connet both boards with s0-s4, +5v, +7-9V, gnd. Connect the poty and speaker also. Turn the poty to 1/4 of its resistance or less! Listen to the telephone speaker, when you turn on the power. Now you can hear 3 short beeps, this is the normal mode. If you press keys 1-4 while turning on, you can hear all samples in the selected sample-bank. This is the self test option. Now you have to adjust the poti so that the sound of the speaker is loud enough but not in a bad quality. Find out the right volume by testing it! ----------------------------------------------------------------- Operating the BB Manual for the ROM 4.0 If you turn on the power, you must here 3 short beeps. Now you have a variety of options for different calls: Whitebox: Press the number (#) symbol to switch to whitebox. Now press any key and the DTMF tone for that key will be hold until you release it again. To exit the whitebox, press # again. The keys 0-9 will generate the normal DTMF tones like a touch tone dialer. *1=DTMF "*" *2=DTMF "#" *3=DTMF "A" *4=DTMF "B" *5=DTMF "C" *6=DTMF "D" Bluebox dial: Press 0 to dial ram number #1, 1 to dial ram number #2. Press 20-27 to dial numbers stored in phonebook #1. 30-37 is for dialing from fonebook #2... Trunk and Seize: To trunk locally in countries that use inband signalling use key 7 to send an 1.5 second 2600 Hz tone. Key(s) 8 and 9 will generate international trunk tones for boxing off other countries. 8 will send universal trunk #1, 9 will send universal trunk #2. If you should call by sattelite, press 4 to send a DHLS clipping disable signal. This will give you better line quality.... Keys 5 and 6 generate Redbox tones for Dime and Quarter, works in US and most likely in some other countries too. Press **0 to enter a new dialing prefix, the default prefix is 2460 (KP2+460), end input with # key. The first digit should be 1 or 2, standing for KP1 or KP2!! If you use 3 as the first digit, the number will be outpulsed i DTMF instead of Mf or any other kind of bluebox tones. Universal trunk #1 is 2400/2600 Hz for 130 ms, pause 1.75 sec, 2400 Hz for 300 ms. Universal trunk #2 is 2400/2600 Hz for 130 ms, pause 2.00 sec, 2400 Hz for 130 ms. The trunk tones may be reprogrammed at your convenience by alterin the labels named TRUNK1N, TRUNK2N and LTRUNKN in the 8049 assembler source code. Test-Mode for testing sample rom and volume: If you press 1-4 while turning on, you get all the tones of the sample bank you choosed... Enter number: Press **0 to enter a new dialling prefix. Press **1 to enter ram resident number #1. Press **2 to enter ram resident number #2. While entering a number, use * to enter special tones like the DTMF *, # and ABCD tones. For DTMF, *1=*, *2=#, *3-*6=ABCD. The same goes for bluebox mode. The first digit entered is very important. A 0 means dial prefix, then outpulse the rest of the number. A 1 means outpulse KP1 tone and then dial in the bluebox tone mode currently in use. A 2 means the same as above, but oupulse KP2 instead of KP1. To finish entering the number/prefix, press #. In bluebox mode, the * key together with keys 1-6 also have important uses. In mode 0: In mode 1 & 2: ========== ============== *1 = DTMF "*" *1 = Code 11 *2 = DTMF "#" *2 = Code 12 *3 = DTMF "A" *3 = KP1 *4 = DTMF "B" *4 = KP2 *5 = DTMF "C" *5 = ST *6 = DTMF "D" *6 = 1850 Hz DHLS Of course these keys also have special uses in CCITT #4, but as we do not know very much about CCITT #4 you'll have to figure them out by yourself. Anyway, according to the CCITT #4 documentation that I got the keys should be defined as: *1 = Code 11 *2 = Code 12 *3 = Space Code I *4 = Incoming Half Echo Supressor *5 = Space Code II *6 = End of Pulsing (ST). The KP1 and KP2 signals are not part of the binary coded digit signals in CCITT #4, and can only be sent at the start of dialing. Prefix: Press **0 to enter a prefix. Press 1 for KP1 and 2 for KP2, 3 for DTMF mode. Enter the full prefix and stop with #. If you have a phonebook with numbers of austria, you have to dial b430....So just enter 0-XXXXXX-ST in your phonebook. When you dial a number with 0 at the begining, the prefix will be added. This is an additional function, which is not necessary for normal calls. The prefix default is B460. The entered numbers including prefix will be erased and set to default when turn off and on the BB. Special Functions: *0 - Select Sample Bank 0. (DTMF, All 16 Tones). *1 - Select Sample Bank 1. (CCITT #5-R1). *2 - Select Sample Bank 2. (CCITT #5-R2). *3 - Select Sample Bank 3. (Break/Simulation Tones). *4 - Select CCITT #4 Mode. *# - Enter Special Tone Simulation Mode In CCITT #4 mode, you can only dial the numbers stored in RAM position(s) one and two, and the trunk keys 8 and 9 will send CCITT #4 clear forward and xfer forward signals. These signals are coded according to the CCITT's own specifications, buit has not yet been tested as of todays date. Hopefully they'll work fine, but we haven't had any possibility of testing them yet. ------------------------------------------------------------------------- Special Tone Simulation Mode: 1 - Swedish Dialtone 2 - Swedish Busy Tone 3 - Swedish Ring-Tone 4 - US Dialtone 5 - US Busy Tone 6 - US Ring-Tone 7 - Swedish Reorder Tone 8 - US Reorder Tone 9 - Greenbox Ringback Tone, 1000 ms 0 - Greenbox Coin Return Tone, 1000 ms * - 2600 Hz Wink, 90 ms # - Return to Main-Menu ----------------------------------------------------------------- How to create a phonebook Take the "8049vXX.rom". this will be the file, which you have to program into the eprom for the CPU. Insert Phonebook 1 and 2 at $300-$3ff in the binary rom file for the 8049 program eprom, and after that, burn the program onto the 2764 eprom. Also, if you want to have CCITT #4 capabilities in your box, do not forget to program the 64 byte file "CCITT4.BIN" at $5C0 on the program rom. This file contains the 16 binary coded CCITT #4 signals...... If you like modified this plan, I will give you an idea, how you can create a phonebook by your own. The Rom for the CPU goes from $0000-$07ff. The Phonebook goes from $0300-$03ff for 10-17, 20-27. An example is shown here: $0300: 02 04 09 00 01 02 03 04 05 06 07 08 20 00 00 00 : b49012345678c... 10 $0310: 01 00 09 00 03 01 04 01 20 00 00 00 00 00 00 00 : a0903141c....... 11 $0320: 00 04 00 01 02 03 04 05 06 20 20 20 20 20 20 20 : 040123456c...... 12 $0330: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 13 $0340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 14 $0350: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 15 $0360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 16 $0370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 17 $0380: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 20 $0390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 21 $03a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 22 $03b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 23 $03c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 24 $03d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 25 $03e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 26 $03f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 : ................ 27 Each of the 16 Bytes are one phonenumber. On the Right are the Digits to press, when you want to dial them. For the number at $0300 press 1 folowed by 0! Enter the number like you would do, when you enter it directly. Use $01 for 'kp1' or $02 for 'kp2', $00 for prefix and $03 for DTMF dialing. Then enter the digits: $00 for '0'...$09 for '9'. The last digit has to be a $20. The bluebox will add the 'st'-code. In this example the first number is 'B49012345678C'. It will call Germany: 0123/45678. The second will call rout operator. The third will call (prefix40123456). Use as prefix b490 for this example if this is a german number. The maximum is 15 Digits and $20 for st. If you like numbers with more than 16 digits, just go on and use the next line of the next number. The compuer will dial until it gets a $20 code. If this isn't still enough, use more and more. ----------------------------------------------------------------- ASS80XX Written by Jolly Roger for the Jolly-Box There is a short descripion of the 8049 assembler for the Jolly-Box. It is necessary because you need to modify the source to your own developing. It includes all opcodes. The format must be as followed: -No case sensity -Only one opcode in one line and one label label: clr a label2: jmp label -You can use Decimal, Hex or Binary for values mov a,=128 mov a,=$80 mov a,=%10000000 -Characters after a semikolon will be ignored until the next line clr a ;set accu to zero -Use space as well as tab to seperate. Seperations between label and opcode, opcode and semikolon are not necessary. -Jumps must always jump to a label, numeric is not allowed If you like to skip to a memory page: page 2 will skip to byte 512 of memory. If it is already passed an error will occure. Remember that only JMP and CALL can jump to an adress within a page of 256! How the opcodes work refer to the 8049 manual. ------------------------------------------------------------------------------ published by a member of ___ ____ _ /_ _/_ _ _ ___/._ _ __ / /_ //_/_ _ _ (_// )/(_'/ / )(_///(_)/ )(_// /(_)// // (_'(_' ___ /_ /_ _ _ _ _ / /(_ (_ (_'_) _) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Downloaded from NIGHT-BOX ---------------------------- __ __ ___ _______ ___ __ ________ / /\/ /\ / //\ / ___ /\ / //\/ /\/__ __/\ / \/ / // // // //_/_/ // //_/ / /\_/ //\_\/ The ACF-BBS / / // // // //__\_\// __ / / / // / ------------- / /\ / // // // //_\ /\ / // / / / / // / SysOps /_/ /_/ //__/ //______/ //__/ /_/ / /__/ / Pooky & Jacky \_\/\_\/ \__\/ \______\/ \__\/\_\/ \__\/ 05861 8795 (new number!) _______ _______ __ ___ -- 8N1 -- / __ /\ / ___ /\ / \_/ /\ 17-9h online Sa,So 24h / /_/ _/ // // / / / \ __/ / 14.4K/12K/9600/7200/4800/2400/1200 / ___ \_\// // / / /__/ // _\/ -=====================================- / //_/ /\ / //_/ / // _ \ \ V.32/V.32bis HST V.42/V.42bis MNP 1-5 /______/ //______/ //__/ \__/ / \______\/ \______\/ \__\/ \_\/ ATARI/ AMIGA/ IBM comptbl./ SNES/ M.Drive .---. .---. / \ __ / \ Coming soon.... / / \( )/ \ \ ////// ' \/ ` \\\\\\ JACKTRO //// / // : : \\ \ \\\\ // / / /` '\ \ \ \\ by the ACF Design Team! // //..\\ \\ ====UU====UU==== '//||\\` ''`` __ __ ________ ______/ /_______/ /_________ _________ __ __ ________ / ______// ____/ /_ ____/ /_ ____ // ____ // /\ / // ______/\ __/_/_____ / /\__/ / / /\__/ / / /\__/ / / /___/_// /_// // /\_____\/ /_______ // / / / / / / / / / / / / / / / //________ __// //__/\ \/ /___/ // /_/_/ / / /_/_/ /_/ /_/_/ /_/ /___/ /\__/ /\_/ /_\__\/ /_______//_______/ /_______//________//________/ / /_/ //_______/\ \_______\\_______\_\_______\\________\\________\/ \_\/ \_______\/ Thanx for calling this fine ACF BBS Click... ----------------------------------------------------------------------------- . + . _______ ____ ________ ___ _______ _____/| + / __ // \ / ______\ / / / __ // ____! / /_ \// /\ \\ \ ___ / / / /_ \// /___ / __/ / / \ \\ \ \ \/ / / __/ \____ \ \ \__/\\ \ / / \ \/ /\__\___\ \__/\.____/ / ' * \_____/ \__\/ / \____/ \__/ \_____/| _____/ | /__/ . / _ / |/ - --+- - USR HST Dual Standard 14400 / / \/ 285 Megs : | _____________________ / \ ______________________ . . \__ __ _ _ \_/ \_/ _ _ __ __/ : \___ __ _ _ Sysop: Zaphod Beeblebrox _ _ __ ___/ | \___ __ _ _ Control Team EHQ _ _ __ ___/ ---+--- - \___________ ICS SHQ ___________/ | \___ : ___/ : +46-18-262804 \ | / 24 Hours/Day. ' . * \ | / . .______ _____/ | \___/|___________ | _ \ / _/ __|__ \__! ______ / ' | | \ \/ /_\| / /|/_ \/ | | \/ | | \ \ _/ ' \___' \ | | + | | / / \__/\____/ / | | !__! /__/\______| _____/ !__! |/ : -----------------------------------------------------------------------------