Newsletter of the
Long Island &nclair Timex Users Group Ele LIS E © a) d i r Incorporating MYTSE
January,
"SPÉCIAL TECHIE ISSUE"
IN t is iss UG, hardware projects, and MC programming...why?
Find out by reading ‘Newsletter Newsnotes’,
NEXT MEETINGS: IMPORTANT! The GUY FRON TIMEX! OFFICER ELECTIONS! DUES DUES All at Harvey's
ie Feb, 2, Call 316-791-6247 for more info, SH L ymi x NYTSE meets Mon. Feb, 2270 Mss Kin M Park i5 Fo E
d = Eicipt- nee gee zz == =s ZEI ASE
Lia T. Pri Lane Valley Stream, [V iod
TÜ: Don Jal TT A,
3310 Clover Dr. B Cedar Mab ida, IR Bë 404
ARST CLASS MAL DATE MEETING NOTICE Please DONT delay!
' LISTing Listing ' |: Please send submissions to: i ' Joe Newman, 325 W. Jersey St., ' ' #2D, Elizabeth, NJ 07202 ' ' Or send items for the LIST group ' ' to: LIST, Harvey Rait ' ' 5 Peri Lane ' i Valley Stream, NY 11581 i | PLEASE NOTE THE NEW LIST ADDRESS ' D yearly LIST dues- $15 '
URGENT BUSINESS!!! ONE- it's time to elect new officers of LIST. Show up at the February meeting if you wish to participate in the election process- hopefully to become an officer!
TWO- most important- DUES ARE DUE! Send in your yearly dues NOW! Keep the TS spirit alive! Support your systems- support LIST. Make $15 checks or money orders payable to LIST.
NEWSLETTER HEYSEOTES
Why a ‘technical issue’? Well the main reason is that I'm stuck with the
Editor's Dilemma agaib- yep, no more articles. Oh I have a few, but they're more hardware projects. So bust out the Tasword, fire up the
Quill, or if you must- ink up the pen and SEND IN SOME MORE ARTICLES! I truly thank all of you who have submitted and continue to submit articles. On the most part the articles have been of top quality- keep up the good work!
As for the meetings- as the front page says "The man from TIMEX will be at the Feb. meeting"!!! Actually he is Mr. Skyrme, President of the American office of Psion, Inc. His purpose is to show off the Psion Organizer devices, but we know better. Ve'11 let him show us his gadget, then we'll zap him with those TS questions! Mr. Skyrme was the Product Development Director for the 2068 at Timex.
Mr. Skyrme is also scheduled to speak at the upcoming Trenton Computer Fair. He will be speaking at our T/S
representation, scheduled for April 23
in the afternoon. As in previous years, our groups will be present at the fair to show Sinclair is still
going good. This fair draws T/S people from up & down the east coast, so make plans to attend...April 23 & 24.
Myles is doing well, and may make it to the March meeting. If any of you tried to contact him at the address printed in the last issue, my apologies if you had any trouble reaching him. Myles is no longer at that particular spot. Last I know he was in the V.A. Hospital, ist Ave. and 24th Street, ward 8 North, Bed 24. If anyone is interested in using a bar code reader with the QL, please contact me. I have a working point- of-sale database system for the QL, which is used with a bar code wand. I also have completed a program which can print bar code labels on an Epson compatible printer (Ci.e., the QL Printer, which uses double density bit graphics). The Program can print bar codes of all upper case alpha Characters and the numbers. By the way, the p-o-s program is a full featured program comparable with those on ‘other’ machines. Also, I have a cash register inventory program for the 2068, and plan to release one for the QL which does not require the bar code wand, and also a generic bar code database which can be customized by the end user for a variety of applications. Again, contact me if you’re interested.
Bill Jones of the TS-2068 Update says he needs a Telecomputing writer and
someone to keep going with extra memory programming for the 2068. Contact him if you'ld like to get
involved at:
TS-2068 Update
1317 Stratford Avenue Panama City, FL 32404
Page 1
gun AN LED FOR YOUR 2040
A common complaint of many TIMEX equipment ouners is the lack of a power on LED Clight emitting diode) on the equipment. The following paragraphs describe hou to add a LED to a TIMEX 2040 or ALPHACON 32 thermal printer. It is a simple project but be advised that the author and the LIST GROUP ars not responsible for anu damage you may do to your equipment.
The parts required for this project are a LED of your choice Calmost any color or size will do as long as it will fit into the printer's case), one 470 ohm 1/8 to 1/2 watt resistor, a short length of "telephone" or wire urap wire and a bit of rosin core solder. The tools required are a Phillips head screwdriver, wire cutters or knife, a small soldering iron and drill for the LED mounting hole.
The first step is to open the printer’s case. To do this remove the paper from the printer, turn the case over and remove the four screws holding the two halves together. Turn the printer ‘upright and lift the top off. The PC board and printer mechanism should remain attached to the bottom of the case. Next drill a hole to mount the LED. The front right hand corner of the case seems appropriate but it can be mounted anywhere there is room inside for the the LED’s leads. Be sure the case will close BEFORE you drill, as the saying goes "Measure twice, cut once.”.
Once the case is prepared, the LED and resistor can be connected. Refer to FIGURE ONE for the connection locations. Solder one end of the 470 ohm resistor to the Jumper wire marked "We", then a length of wire long enough to reach the mounted LED should be soldered to the other end of the resistor. Solder the end of this wire to the anode of the LED. The anode lead on round LED's has a small Flat spot next to it on the "mounting rim". IF you are unsure of the proper connection, solder it to either lead. Now solder a length of wire from the remaining lead to the right
side of diode 5 on the PC board (marked DS). Connect the power to _ b
the printer with the cover off to test the LED. IF the diode Fails to light with the connections complete, unsolder the two wires to the diode's leads, switch them around and solder again. Test the LED again by connecting the power. IF it still fails to light, check the solder joints for a proper connection or replace the diode in case it is defective.
Ihe last step is to reassemble the case. Close the cover making sure none of the wires will interfere with the printer mechanism, the switches or mounting screws. Reinstall the four screws taking care not to strip the plastic threads in the case. Insert the paper and the printer is ready for use.
J.M. Bell
3NO 3431113
P»Uzpo hoosbo 46 g4 omazrcm ru ony mo« U D Od Q OM m m" ar Ur&zo EE zUm7AX
VWO< Mae o vo 0O70 p O 4 UZ K A
MAKING CODE RELOCATABLE
Most machine code programs for T/S computers will Only run from a single location in RAM. This is because programs usually have absolute addresses imbedded in them, and is a source of frustration. If 2 Peograms overlap, for example, they can't both reside in memory, and so can't both be used.
Here is one way of dealing with the problem.
The program MRIBT (Make Relative-1 Byte) will modify another machine code program so that it will run at any location in RAM. It is only 60 bytes long but requires you to construct a data table.
The approach is that in a program with many jumps, calls and loads to/from absolute addresses, most such locations will be less than 256 bytes apart. A table of i-byte offsets can be used to store these separations.
Because offsets are at least 2 bytes apart, OO and O1 are free to be used as flags: OO signals end of table and Oi marks a 2-byte offset. (see next Paragraph)
There is a penalty to be Paid if successive locations are more than 255 bytes apart. The table must then contain 3 bytes for this next location:
O1 to warn 2-byte offset coming 2-byte offset (LO-byte first).
Your program must be entered by a USR call from Basic, so that the address called is in the BC register. I believe all Timex/Sinclair computers are alike in this respect.
Proceed as follows: 1. Prefix your program with the table constructed as follows:
ist 2 bytes-starting address of your program including my MRIET.
next bytes-offsets as described above; 1 byte for locations < 256 bytes apart; Z bytes for locations more than 256 bytes apart.
last byte-OO to mark end of table.
0.5
2. Prefix the table with the MR1BT program below. If your pro- gram does not run from its first byte, insert a jump to the
running address at the end of MRIBT. This will become the first Offset in your table.
3. To relocate the program, load to any address a; then just RANDOMIZE USF a. (or PRINT USR a, whichever your program uses).
All absolute addresses marked by the table are now to the new location. Also the address a has been bytes).
table (ist
4. If you call various parts of the program
calls will need adjusting. (with the value of a above),
adjustment.
5. It is not easy to get all the offsets right.
adjusted put into the And your program is up and running. from Basic, the If you use a variable for the calls
then you need make only one
One error or
omision and everything comes out wrong for the rest of your
program.
So MRiBT has no commercial prospects, and I offer it
for free to the T/S Community.
cooo CS
C022 23 C023 SE
213D00
MRIBT
OP CODE Mnemonics
FUSH BC LD HL,OO3D ADD HL,BC LD C,(HL) INC HL
LD B,(HL) DEC HL
EX (SP),HL FUSH HL XOR A
SBC HL,BC POF BC
EX (SP),HL LD (HL),C INC HL
LD (HL),D INC HL
LD AHL) LD E.A
CF OO
JR Z,COS9 CP O1
JR Z,CO22 LD D,00 JR CO26 INC HL LD E,OL)
PY
Commentary SAVE USR CALL ADD OFFSET TO USR CALL
1ST 2 BYTES OF TABLE INTO BC; THIS IS THE OLD USR CALL
CARRY FLAG-O x-DIFF. OF 2 USR CALLS;AaLL ABS. ADDRESSES MUST BE ADJ. BY X
FUT NEW USR CALL IN 1ST 2 BYTES OF TABLE;THIS FEATURE MAKES PROPER RELOCATION AUTOMATIC
LOOF STARTS HERE
A=NEXT TABLE ENTRY
IF O, END OF TABLE;JUMP TO YOUR PROGRAM
1 BYTE PENALTY APPLIES DOED NOT APPLY
FUT OFFSET INTO DE
C024 23 Co25
Co26 co27 co28 Co29 Co2A CO2B CO2C CO2D E3 CO2E 19 CO2F Co3o0 CO31 cos2 coss 73 Cos4 ES Coss C1 Cose ES Cos? CO39 Di COSA COSE COSC
Here
INC HL LD D,(HL)
EX (SP),HL EX DE,HL ADD HL,BC LD CHL) INC HL LD B,(HL) PUSH BC EX (SP),HL ADD HL,DE EX DE,HL EX (SF),HL LD (HL),D DEC HL LD (HL),E EX (SF),HL FOF BC ! EX (SF).HL JR CO13 POP DE JP (HL) NOF
NOF
MAIN ADJUSTING ROUTINE FUT X IN HL & TABLE FLACE ON STACK X IN DE;TABLE OFFSET IN HL PROGRAM LOCATION (PL) IN HL CONTENTS OF FL, NEXT ADDRESS YO BE ADJUSTED (NA) IN BC I.E. NA-(FL) X ON STACK NA IN HL;PL*1 ON STACK ADJUST NA
X ON STACK;PL-*1 IN HL
FUT ADJUSTED ADDRESS INTO PROGRAM X IN HL;FL ON STACK PL IN BC X ON STACKSTABLE PLACE IN HL LOOF EXIT TO KELOCATED PROGRAM; (IF NEEDED ENTER AN ABSOLUTE JUMP IN THESE LAST 3 BYTES)
is an example of how it works. Consider this little program which prints a text (not shown).
FOOO F100 F101
F104 F10S Fio? F109 F1Oñ F1OB F10D
FF 2100FO
(256 BYTES OF TEXT) END OF TEXT
LD HL,FOOO
LD A,(HL)
CF FF
JR Z,Fi0D
RST 10h
INC HL
JR F104
RET.
To make this program relocatable, note there is only one absolute address, and the text must be jumped over. The table
will be 7 bytes long, 2
for the new start, 1 byte offset to the
jump, 3 byte offset to the address at F102, and OO to end the
table.
Add the 7 byte table to the. 60 byte MRIBT program and you get 43h. So MRIBRT is located at FOOO-OO4S-EFBD. At EFF6, a jump to F101 must be inserted (else JF (HL) puts you in a
crash at FOOO, the text).
The first
offset is EFF?—-EFBD-OOS3A,
and the next is F1O02-EFF?-0O1OB.
Here is how your relocatable program looks:
0c
ADDE OF CODE MNEMONICS COMMENTARY
EFBD CS FUSH RC START OF HF1BT EFF& C3OIF1 JF F101 JUMF OVER TEXT START OF TABLE EFF3 BDEF start address.lo byte first EFFB 3A ist offset I EFFC O10BO1 2-byte offset,lo byte first,with O1 flag EFFF OO end of table
FOOO-F10D FROGRAM AS ABOVE
XX XX OK OK * X * OC OC X X K< * K K KX K K K K X K K X X K K K X XK oc oc oc oc KOK OK o o KOK OK X
*
USER DEFINED GRAPHICS, REVISITED!
x
kKkkkkKkKkkkkKKKKKKKkKKKKKKKKKKKKKKKKKKKKKKKKKKKXK
BY CEDRIC R. BASTIAANS
My article "USER DEFINED GRAPHICS MADE EASY" (LISTing of September '87 and HATS of October '87) requires a few further observations...
(1) When the program has been loaded and it runs, one of the first messages on screen is that the UDG's cannot get lost by such commands as NEW, CLEAR, SAVE or LOAD. Even though this is true, it might suggest that the UDG's can be SAVEd!
The only way to SAVE UDG's is by the method shown in the second page of my article, by DATA, READ and RESTORE commands.
(2) Then, Basil Wentworth brought to my attention that it is possible for the program to run into a snag. That happens
when the BLACK SQUARES occuring in program lines 120, 210 and 230 are constructed by:
INVERSE or INVERSE VIDEO "space"
Should you have done this, you will have noticed that you can't progress beyond line 120, since you will get the error message:
K Invalid color, 120:3 I would never have thought of using any of the above commands to make a black square, so I never ran into this problem. Two correct ways of making a black square are:
(a) GRAPHICS shifted 8 (then undo the graphics mode) (b) CHR$143
or
Method (a) is by far the easiest.
I hope that you have not been discouraged by any such problem; try the program and you will find that it is the easiest way yet to make UDG's! p C
* * x
ZX81/TSXXXX OUT-BOARD REAL-TIME CLOCK by Tim Stoddard
The following is a description of the Real-Time clock section of the D.A.M. board article which appeared in Time Designs Magazine ( March/April '87 page 23 >). The board features a full-function real-time clock with battery back-up and is mappable into eight I/O port blocks. See attached schematic diagran.
8255 PPI
The 8255 PPI is used to interface the MSM5832 clock to the Z80 buss. This is needed because the MSM5832 is too slow of a device to attach directly to the Z80 buss.
The 8255 has three ports called "A", "B", and "C". The module uses port "A" to xfer data to the MSM5832, port "B" to Select the proper register in the MSM5832, and port "C" to toggle the control signals to the MSM5832. These three ports are accessed by writing or reading one of four registers in the 8255. Port "C" is also bit-addressable by writing a Special code via the CONTROL register. This allows us to toggle a single control signal to the MSM5832 without having to "remember" what state the other three MSM5832 control Signals were. The following is the table Showing which registers control what in the 8255;
REGISTER PORT (0) A 1 B 2 C 3 CONTROL
The first action that should occure in your BASIC or machine language routine is to initialize the 8255 by Clearing port "C" and then setting up the 8255 to write, or read the MSM5832 clock chip. This is done via register 3; the CONTROL register. To write to the MSM5832 you need to initialize the 8255 so that ports A,B, and C are all "output" ports. This is done by writing the control register in the 8255 with an 80,&x ( 128586 ). To read the MSM5832 we'll need to initialize the 8255 so that port A is an input port and ports B, and C are output ports. This is done by writing the CONTROL register in the 8255 with a 90.4.4: x ( 144 pee J; A one-time action after powering up the computer is to initialize the 8255 ( to read or write the MSM5832) then "clear" port "C" by writing a ZERO to register 2. This resets the active-high control signals HOLD, RD, and WR to the MSM5832, and causes the MSM5832's CS to go active via the inverter.
The 74HC138 is used to select a "block" of I/O ports to be used with the clock module. The HEX address of the ports always end in 3, 7, B, or F, So if the 74HC138 is strapped
page 7
for "block five", the I/O ports would be 53, 57, 5B, and 5F for 8255 registers O, 1, 2, and 3, respectively. The following table summerizes the relationships:
8255 8255 reg TIMEX MSM5832 FUNCTION PORT ADDRESS HEX DEC
A 0 53 83 DATA port
B 1 57 87 REGISTER ADDRESS port C 22 5B 91 CONTROL port
CNT 3 5F 95 ----------------------
The above table assumed a "block" of 5. You can re-strap to any of the eight blocks to avoid conflict with other devices attached to your computer.
Ve use a special function in the 8255 that allows us to change single bits in port "C" rather than "remembering" what all the bits should be in port "C". This is done by writting a special code via the 8255's CONTROL port SF,.. The syntax Of this code is as follows:
D7 D6 D5 D4 D3 D2 D1 DO 0 0 (0) (0) X X X SR N 7 1 = SET N SELECTED / O = RESET ` BIT 7 000 = 0 001 = 1 etc
MSM5832 CLOCK CHIP
The following table describes the various registers in the MSM5832 and their limits:
REGISTER COUNTER DATA I/O LIMITS NOTES ADDRESS D3 D2 D1 DO 0 S1 X X X X 0-9 1 1 S10 X X X 0-5 1 2 MI1 X X X X 0-9 3 MI10 X X x 0-5 4 H1 X X X x 0-9 5 H10 + + X X 0. --2 2 6 w X X X 0-6 3 7 D1 X x X X 0-9 8 D10 * X X 0-3 4 9 MO1 X X X X 0-9 A MO10 X Q c B YR1 X X X X 0 — 9 C YR10 X X X X 0-9
NOTES (1) Register set to zero when written to.
(2) D3=1 for 24hr or D3=0 for 12hr clock D2=1 for PM or D2=0 for AM
(3) Days from Sunday. Sunday = 0, Monday -1, etc.
(4) D2=1 for leap year.
AN EXAMPLE
The following is an example showing how to read the day of the week from the clock module. Assume the module is mapped in block #5 < ports 53, 57, 5B, 5F ).
(1) After powering up the computer write a 90,. to the 8255 CONTROL port, 5F,«. This sets up the module to read the MSM5832 clock chip.
(2) As a one-time operation clear port "C" in the 8255 by writing a O to port 5B,«. This need only be done one time after powering up.
(3) Write the desired MSM5832 register address to port "B" of the 8255 by writting a 6 < 6 = day of the week)to port 57 ie.
(4) Strobe the MSM5832 RD signal active by writting a OB,< to the 8255's CONTROL port 5F,..
(5) Read the day of the week by executing an input instruction on port 53,..
(60 Return the MSM5832 RD signal inactive by writting a OA... to port 5Fi;..
(7) You can now read any other MSM5832 register by following steps 3, 45. 55 and 6 using the desired MSM5832 register address in step 3.
To change the day of the week to Saturday (6):
(1) Initialize the 8255 to write the MSM5832 by writting an 80,4 to the 8255's CONTROL port 5F,..
(2) Select the day of the week register in the MSM5832 by writting a 6 to port 57,...
(3) Latch the new day of the week in the 8255's port A by writting a 6 ( Saturday) to port 53,;..
(4) Store this new data in the MSM5832 by toggeling the WR signal. This is done by writting a OD,« to port SF,4. Then imediately follow by writting a OC,» to port 5F,;..
(5) You can now change any other MSM5832 register by writting the new register address to port 57:4, latching the
new data via port 53,4, and toggling the MSM5832's WR signal as in step 4. f. q
Zygl/ TSXXYX OUT-BARD) crock Moovle
TS T W400] ) — 3 A I p» yee L wr (3) Resisroas TO eat 4 VELA 9 _ 5 Ø RD RÒ = | Ë 10 UR 3h wR PA 5:13 D7 27 | CA MEM AN PEEL DL z |f a Ve DS 27 19 D3 3! 2 >x E 21 š ^34 S?» 2 dl 33 $255 x a 4 [13 1? s aes Reser UL € 3S PE / RESET b H 2 A3 Eda "E 23 n 3 A > Ag i 4 | 2 74HC0O 7 ° M Al ! = j > ] > |a 1583 H m Ao E A. " 4 T/o Blocks 32748 MEN ° 7]O o © "2 TRA s cb ; en 20 5-35 87 +. 5p? p Pe c 1p ft 3 3p? š P :
2 20 O —— ns I Em Cero, PORT — SeT-vP aa ob JN
74uci3*
Nevco!a
Doo hin
agao eJ x C CO
` of Post: ç Sof rua re
[APES
—
STEP SCHANS
OL
e0600000080000000006 NSNSISRISPISRRRRISRSISPISNISNI
Aq v x ^» owe J a rü ve"J.zOWw G 20090 SOQ Jun. VLOVOONQOJ «w4J0 Q OTHE cJ Ja xg
š"
wre. 0«00rOOG02z
xcon2UuUCOOCH JeanaaacrnH €-4-4-00-O0-1ZO.OOIJZWQ0 O*--2-^n0eq0220onnoOO0TIV
e-0960«nor-oo6
2 £rcoo 1422 u
n
"060410000 4-4 dedede AO
ODHOQOHHACOAODOOOOHHOH 00000000000000000000
G. uq *«-eücoo M Ouue.v Dog au-!'1QOL >> Ok uw HoL-OOZ20»-00--1I4-0 aagccZcHHwze JFUAEH aNOOHOT VY ava or
vva outor
e400«0or-o08
004100060
euaqaacacaccaceracaaac YPOOOYHNYONYYYNNNNNON
o . .
u x as O
c o ew I
o I Us” 0QO
£ aO Fe" u* woa v- Ie«- IL. ZZe cOvILIcevwwuwd 242-2He-orxz
MH-OTHvOOOOZ-20)»HH OJJ2-m&noes»coodat on
exaanwworoos
eeennnonon *Yv4449944444
Pucoo
ren PRINT m
Pn OF 00 Hee
ono ++.
“a -- ow 27 wa k' coo vuo £=
LEP. OG
eon 4DO 4-0 deett nO
auc avvi sE- €-^-ovcEOODOC < | Guy0o49-a-200 cott MG €eeuo-ceea-ooocstos Hp —- PUN C088. 648 ~~ VOL Goad} -VEQODE EGO NA
o € tuac & vou ° *
ET ING
&e«wx0400t- 006 ANNSDOL OO ddd
$9 ,g4 a2 i! PRODOPORERSAPAROD qgGaaeqagecegcacagccc gacqaacac: Dd S 2s Z BRRRSRRRRSRSSSNI o66000D0DOODCDDODDO €00000000 goo N <*> ¢ + x >—2 ` IA T AE TETE: A ss E Im eius a 00 O n» o OU eoru Sorog š JION oc 9» 0 V kuo O Qu LLA 9 3 4 C^ & =. ç > > So d OI rmo TINILLULLOAJOOJOTOQ > Jav OÔ ri *9 3 o di <| QTI-ZÓv ^00 JI-O -OrquoG ewuo- J4 OY > x 9coreoousJE"r2n — QiL'iLL-G-EOHOOROUOUZZ Gaz , bi S 9 HM F"ORoMIMEEUMAROAU — yon kaockeroero pares Sorüsec- QX = >r rin x >: S zantont rosok VAAATTITTONJONVJIATUXX wOn0Joechnao I y < — A > arron DOSS) ë CHHHwWWkuwrrorTroTowoO Sedaonsas O € y Worm Ww FE 0J00042 &LL.LTICII22O»200IOUO Fü00-23ut 1 oye < was wu € A ` Ó Ç ur .. N o MA ^ Ço 79 Y ` — AUN wer ELETT Gund awak ue » a. > ^ £ x ANNARRA DO uunenoroo tito eens ARE O SSS S> 2 v Š H x Frvtac Osta 2 eacecacecacecaaaeeca cacaaccecee RAT 3 RRIRISRIRRHRNIRIRIRISISRRSN RRRRRRRRRRRRRE FRERRE RR y - 0000600606 ase u —) 2 00000000000000000006 s cz a Oo x wv 33 K “⁄ Ó Onan cz JJ 4 ^ Sos 9 < | v S5 wl NOSS Sos a NIB — f Sh LO 6; š O «23 mO > £ 94!!! M — ves 0n ° Sarzano - » PRI ZacGE aque g82.9972222 E | BEgBOO Orkisedó0c0GQu — fU e Cw]; & aco NNO eee Jo-€9 @2204~000 «40.1.1 -0000000.€3J0 vari £ : w= orrn 220 ss ETTEREN £99000 5333360100 stooo PTE on ç b - - eut vu ^ LESE cx LL ME e sf a vuvau - o 6«0040or-000 ANON4WOR 009«004&00*050 aa ) M(04 DO 00 iid cci rdi riri (o9 s dirai edd eov nooooreooone *e — K, 2 Ran aa qa nno nen 2 š S \s A . = y. — M a i qaceaccacuaqau aaccacce ao aaqaaat H aaaaaqaaaraa DODDPPDDDPPD- DDPPDDEOD OV 6000000. T 00000000000 6000000000000 0000 O06 Soe a ft eeu u n ` `. o 222 x . N weak X v JL 9 wr O OHW v - 00004 O a « ac} * WV 2 MMI4D2e*e ~ O Qu - - EEEo a O vo aN N 24. € va OF © “OCvlIec vU N K ge v LLLAJIIS u a as vH HO 949 nN mst 9n eqrcuue ex OREN wx . avnase A k" nov ND DZ wanat <—- Aa N ££ en #Z2XC9-2€ w IVU Oru c GT(ç£ueh Ww QI O»2eee970 W-GO QM uv-.:—5an-oevr-el vad o$Qe.Oa-—-e& x xv9& GcO o '!'!ee@quq O TOFCAG«b«c20- a- HE ".OaxeeuvvoOvx `. UETOLorg O OOMWAIOI £ OOO0rrece-- O ÓHñnkOoo<aseso H D02855 VIXWOL AOM 3 rüon0a02s0c0 €6000200b & — --«ve-9 O QuUIQUuu--- 4 LoIuI-st-therceóouD230 888 M. | c H(ie-e00r-000 «TO 40-000 e € GCG-«9nepber.ooo HNO4DOt-009004:0r-009 aan
AANAAAAKNNAMHOMONMMMNNMe
oeononotor OONVAVUACON 444-44444q4U 4444444444 z
M a ue
° ow 20 O of Oe aad CQ» O vv uw A cceer an Q «a a “q < 09 IW v? VIA a Mtt va Irxcccarz VUN owe “2007 #eatad Anno AAdLL &F-IOF600200€0 QECEF |munvy
e«un4Dor-0009-00400r-000 (Nola vow 94 6606600nonn«
«aqca«qaaqeaaqaaaactt $4655 $$$ 444444444444 - AAA >.
“° v "pc
v 5 a cc ° naau v aac ` 249469 s Lago 944058058 £ “eso
"eun eoe«o«4por.eoc quaa n nga NNNMNNN t
+ ANON 4000-0: 010 eee edd ehh
t QOQOOONDOODOOQOONDO 000 SISA SAIN SINISE dtv k € a o c L] ox € ve 9 Za 5 ÀJ a uz o ao O V3auna- M rt rae
Cum -— own ae Hl ee ann eee cu zoel Ca-goooovcevyy anz COO ke94c25252004(HI- - LH awn ONVO-«9LLLVUZOONNeroae HCO
ANN IDO 0094004000000 4444444445
4n 4a 4n 4n 4A 4A 4n 4n 4n 4n 4n 4n
b t A P P M N N N N OLD L L s n s M e
SeuaeeHH TH ffere-crr ruomonoootrouo-
e«tn4nor.dq0050cu0400r-008 44444442400 0p DDono
Qooamwaoaoamwmwoonoononenos
nooosossassasnonssse' (7 | *444444444444444444 <
r Y Site aoococnueaesacocooossse cooo
o coocooooeonoooo o
ur ME
.
(oy ob ro LI
tr
06008 006005n000085000! 9000000009600! $t «à orders
Ç a M .. e Trace Bf vt} HH ta 8 vee c + -ù an 2 end ae IIs4»- * € -£fCM € g VWOVOKadse > — "RUM ` 9 > 2-0Gocccvum. CL Sake o V.S. 00HH-u449909€20482.*1j5 Md < he SHOOVAD>IIDVIO- OVAL — 3 41 \ a A I ANN epor-sne<xunepeor nə: ç be ey 000000000 rS IN NSISINI ,€ * co! M > JJ .- qacqacecqcggegagqaaeeazaqaqa eeecccecece: d4444444444444444444 41444444444. IS ` oan b v @ 3599 v a Vv Van ue k^ e ~” 0» t C-400 ee Iig v ~C € 8 ~800+4 - Ac ca. at 2
vu -a -—eu.vuvewo cov wwyavtOO-cacees-ce« e CExXLIITLO@O~~Aarian a> ‘AU nHOO-«0~ 09 RO ACV PTN TELT TILLIT CIL EL]
HAUNAVOnNDOSAANANVONDOG DOUVIDOOOODF I-II I PO
Lv@sMector © LAQULOUY 2C.44 19-04 090^8Uv-Jcc vb£alcedqde-
“(an or 009 cooo
—
On
LA
=
—
=
<= ` Ne «wy €
- AS < ç 6 5 '
Yai r
sA > c > > wv wii
vq =
+ 3
cow > sareo 70d $1U9uAvO» 23483 Q332I143NIH SS 3 18043 Ui8Q0-1N0d oHgunes SINNaL ONUId 23984 HliU lS3. HH2 HyH2 dou advo x3H 3902 HaHddun udUd HdUH5 Auld AISNH uyla 321 »MWOnL3N S90 109 nOGNIUH tdAL HONOL SSIs 20M SdHBls Sa IH aooo 2890H S91H2AS4 EETA ayon 520252?
ii spo. se4*102*9 NYNGI YOYI NIdOWu2 30d 390244 1 ugouH agus 002^ AUM *W3123uwM2 naptyyys $) 3903 DI ta tun Md DICAS ruya 25933 agudo OSOI^ unes OHYGI ywaHosa 120191) 2S W30 duS Sanyo OL SL JIL 1NDH &uaHl 4109- 2ad$ 390237 YUH vH312388H2 i BPpos seq*»05h»9
—
$055) mde wth “Muir, æ”
**44904«4«D0BDDUDUD! f,
Top ES A Pejam 16.
. '
L
*
"100400900 009709049090:
S n»!
v«o«00r-099-«a0«00r-. 009 aqaoacaoaocoagwoóonnonnonnne
k 2: ver 7 aad s cde
G^o0*v0400^ 009
"(40-4000 OU c ehe eh niri rint tet