<div dir="ltr"><div>Díky za snahu mi pomoci, ale nechám to, jak to mám, t.j. posuny o 8 bitů postupně. Výsledek není unsigned, je to například přenos do a ze sítě ve vztahu k měniči, to se liší znaménkem. </div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">Zdravi<br>Jirka Sloupenský OK1MWW</div></div><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">st 18. 12. 2024 v 12:00 odesílatel Jaroslav Buchta <<a href="mailto:jaroslav.buchta@hascomp.cz">jaroslav.buchta@hascomp.cz</a>> napsal:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>
<div>
<div>Mozna to chtelo unsigned long.</div>
<div>A misto += bych tal |= mozna by to
prekladac udelal efektivneji, mozna ne. Pri scitani musi poocitat
s prenosem.</div>
<div><br>
</div>
<div>test:</div>
<div>long adc_value;<br>
volatile unsigned char d[4];<br>
<br>
int main()<br>
{<br>
adc_value += (long)d[0] << 24;<br>
adc_value += (long)d[1] << 16;<br>
adc_value += (long)d[2] << 8;<br>
adc_value += (long)d[3];<br>
<br>
<br>
<br>
</div>
<div><br>
</div>
<div>Me to u AVR warningy nedela a s + to
dopadne strasne</div>
<div> <br>
adc_value += (long)d[0] << 24;<br>
276: e8 e0 ldi r30, 0x08 ; 8<br>
278: f1 e0 ldi r31, 0x01 ; 1<br>
27a: 00 81 ld r16, Z<br>
adc_value += (long)d[1] << 16;<br>
27c: 91 81 ldd r25, Z+1 ; 0x01<br>
adc_value += (long)d[2] << 8;<br>
27e: 42 81 ldd r20, Z+2 ; 0x02<br>
adc_value += (long)d[3];<br>
280: e3 81 ldd r30, Z+3 ; 0x03<br>
282: 10 e0 ldi r17, 0x00 ; 0<br>
284: 20 e0 ldi r18, 0x00 ; 0<br>
286: 30 e0 ldi r19, 0x00 ; 0<br>
288: 30 2f mov r19, r16<br>
28a: 22 27 eor r18, r18<br>
28c: 11 27 eor r17, r17<br>
28e: 00 27 eor r16, r16<br>
290: c0 90 01 01 lds r12, 0x0101 ; 0x800101
<adc_value><br>
294: d0 90 02 01 lds r13, 0x0102 ; 0x800102
<adc_value+0x1><br>
298: e0 90 03 01 lds r14, 0x0103 ; 0x800103
<adc_value+0x2><br>
29c: f0 90 04 01 lds r15, 0x0104 ; 0x800104
<adc_value+0x3><br>
2a0: 0c 0d add r16, r12<br>
2a2: 1d 1d adc r17, r13<br>
2a4: 2e 1d adc r18, r14<br>
2a6: 3f 1d adc r19, r15<br>
2a8: 89 2f mov r24, r25<br>
2aa: 90 e0 ldi r25, 0x00 ; 0<br>
2ac: a0 e0 ldi r26, 0x00 ; 0<br>
2ae: b0 e0 ldi r27, 0x00 ; 0<br>
2b0: dc 01 movw r26, r24<br>
2b2: 99 27 eor r25, r25<br>
2b4: 88 27 eor r24, r24<br>
2b6: 80 0f add r24, r16<br>
2b8: 91 1f adc r25, r17<br>
2ba: a2 1f adc r26, r18<br>
2bc: b3 1f adc r27, r19<br>
2be: 50 e0 ldi r21, 0x00 ; 0<br>
2c0: 60 e0 ldi r22, 0x00 ; 0<br>
2c2: 70 e0 ldi r23, 0x00 ; 0<br>
2c4: 76 2f mov r23, r22<br>
2c6: 65 2f mov r22, r21<br>
2c8: 54 2f mov r21, r20<br>
2ca: 44 27 eor r20, r20<br>
2cc: 84 0f add r24, r20<br>
2ce: 95 1f adc r25, r21<br>
2d0: a6 1f adc r26, r22<br>
2d2: b7 1f adc r27, r23<br>
2d4: 8e 0f add r24, r30<br>
2d6: 91 1d adc r25, r1<br>
2d8: a1 1d adc r26, r1<br>
2da: b1 1d adc r27, r1<br>
2dc: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
2e0: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
2e4: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
2e8: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3><br>
</div>
<div><br>
</div>
<div>s |= pak takhle, vyrazne lepsi a asi i
celkem optimalni:</div>
<div> <br>
adc_value |= (long)d[0] << 24;<br>
276: e8 e0 ldi r30, 0x08 ; 8<br>
278: f1 e0 ldi r31, 0x01 ; 1<br>
27a: 40 81 ld r20, Z<br>
adc_value |= (long)d[1] << 16;<br>
27c: 31 81 ldd r19, Z+1 ; 0x01<br>
adc_value |= (long)d[2] << 8;<br>
27e: 22 81 ldd r18, Z+2 ; 0x02<br>
adc_value |= (long)d[3];<br>
280: 53 81 ldd r21, Z+3 ; 0x03<br>
282: 80 91 01 01 lds r24, 0x0101 ; 0x800101
<adc_value><br>
286: 90 91 02 01 lds r25, 0x0102 ; 0x800102
<adc_value+0x1><br>
28a: a0 91 03 01 lds r26, 0x0103 ; 0x800103
<adc_value+0x2><br>
28e: b0 91 04 01 lds r27, 0x0104 ; 0x800104
<adc_value+0x3><br>
292: 85 2b or r24, r21<br>
294: b4 2b or r27, r20<br>
296: a3 2b or r26, r19<br>
298: 92 2b or r25, r18<br>
29a: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
29e: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
2a2: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
2a6: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3></div>
<div><br>
</div>
<div>Ale musi byt zapnuta nejaka
optimalizace, s ladici -Og to logicky rozepise po radcich</div>
<div> <br>
adc_value |= (long)d[0] << 24;<br>
24a: e8 e0 ldi r30, 0x08 ; 8<br>
24c: f1 e0 ldi r31, 0x01 ; 1<br>
24e: 80 81 ld r24, Z<br>
250: 90 e0 ldi r25, 0x00 ; 0<br>
252: a0 e0 ldi r26, 0x00 ; 0<br>
254: b0 e0 ldi r27, 0x00 ; 0<br>
256: b8 2f mov r27, r24<br>
258: aa 27 eor r26, r26<br>
25a: 99 27 eor r25, r25<br>
25c: 88 27 eor r24, r24<br>
25e: 40 91 01 01 lds r20, 0x0101 ; 0x800101
<adc_value><br>
262: 50 91 02 01 lds r21, 0x0102 ; 0x800102
<adc_value+0x1><br>
266: 60 91 03 01 lds r22, 0x0103 ; 0x800103
<adc_value+0x2><br>
26a: 70 91 04 01 lds r23, 0x0104 ; 0x800104
<adc_value+0x3><br>
26e: 48 2b or r20, r24<br>
270: 59 2b or r21, r25<br>
272: 6a 2b or r22, r26<br>
274: 7b 2b or r23, r27<br>
276: 40 93 01 01 sts 0x0101, r20 ; 0x800101
<adc_value><br>
27a: 50 93 02 01 sts 0x0102, r21 ; 0x800102
<adc_value+0x1><br>
27e: 60 93 03 01 sts 0x0103, r22 ; 0x800103
<adc_value+0x2><br>
282: 70 93 04 01 sts 0x0104, r23 ; 0x800104
<adc_value+0x3><br>
adc_value |= (long)d[1] << 16;<br>
286: 81 81 ldd r24, Z+1 ; 0x01<br>
288: 90 e0 ldi r25, 0x00 ; 0<br>
28a: a0 e0 ldi r26, 0x00 ; 0<br>
28c: b0 e0 ldi r27, 0x00 ; 0<br>
28e: dc 01 movw r26, r24<br>
290: 99 27 eor r25, r25<br>
292: 88 27 eor r24, r24<br>
294: 48 2b or r20, r24<br>
296: 59 2b or r21, r25<br>
298: 6a 2b or r22, r26<br>
29a: 7b 2b or r23, r27<br>
29c: 40 93 01 01 sts 0x0101, r20 ; 0x800101
<adc_value><br>
2a0: 50 93 02 01 sts 0x0102, r21 ; 0x800102
<adc_value+0x1><br>
2a4: 60 93 03 01 sts 0x0103, r22 ; 0x800103
<adc_value+0x2><br>
2a8: 70 93 04 01 sts 0x0104, r23 ; 0x800104
<adc_value+0x3><br>
adc_value |= (long)d[2] << 8;<br>
2ac: 82 81 ldd r24, Z+2 ; 0x02<br>
2ae: 90 e0 ldi r25, 0x00 ; 0<br>
2b0: a0 e0 ldi r26, 0x00 ; 0<br>
2b2: b0 e0 ldi r27, 0x00 ; 0<br>
2b4: ba 2f mov r27, r26<br>
2b6: a9 2f mov r26, r25<br>
2b8: 98 2f mov r25, r24<br>
2ba: 88 27 eor r24, r24<br>
2bc: 84 2b or r24, r20<br>
2be: 95 2b or r25, r21<br>
2c0: a6 2b or r26, r22<br>
2c2: b7 2b or r27, r23<br>
2c4: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
2c8: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
2cc: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
2d0: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3><br>
adc_value |= (long)d[3];<br>
2d4: 23 81 ldd r18, Z+3 ; 0x03<br>
2d6: 82 2b or r24, r18<br>
2d8: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
2dc: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
2e0: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
2e4: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3><br>
</div>
<div><br>
</div>
<div>Zapis na jeden radek s -Og</div>
<div> adc_value = ((long)d[0] <<
24) | ((long)d[1] << 16) | ((long)d[2] << 8) |
((long)d[3] << 0);<br>
2e8: 80 81 ld r24, Z<br>
2ea: 90 e0 ldi r25, 0x00 ; 0<br>
2ec: a0 e0 ldi r26, 0x00 ; 0<br>
2ee: b0 e0 ldi r27, 0x00 ; 0<br>
2f0: 78 2f mov r23, r24<br>
2f2: 66 27 eor r22, r22<br>
2f4: 55 27 eor r21, r21<br>
2f6: 44 27 eor r20, r20<br>
2f8: 81 81 ldd r24, Z+1 ; 0x01<br>
2fa: 90 e0 ldi r25, 0x00 ; 0<br>
2fc: a0 e0 ldi r26, 0x00 ; 0<br>
2fe: b0 e0 ldi r27, 0x00 ; 0<br>
300: dc 01 movw r26, r24<br>
302: 99 27 eor r25, r25<br>
304: 88 27 eor r24, r24<br>
306: 84 2b or r24, r20<br>
308: 95 2b or r25, r21<br>
30a: a6 2b or r26, r22<br>
30c: b7 2b or r27, r23<br>
30e: 42 81 ldd r20, Z+2 ; 0x02<br>
310: 50 e0 ldi r21, 0x00 ; 0<br>
312: 60 e0 ldi r22, 0x00 ; 0<br>
314: 70 e0 ldi r23, 0x00 ; 0<br>
316: 76 2f mov r23, r22<br>
318: 65 2f mov r22, r21<br>
31a: 54 2f mov r21, r20<br>
31c: 44 27 eor r20, r20<br>
31e: 84 2b or r24, r20<br>
320: 95 2b or r25, r21<br>
322: a6 2b or r26, r22<br>
324: b7 2b or r27, r23<br>
326: 23 81 ldd r18, Z+3 ; 0x03<br>
328: 82 2b or r24, r18<br>
32a: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
32e: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
332: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
336: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3><br>
</div>
<div><br>
</div>
<div>A totez s -O1</div>
<div> adc_value = ((long)d[0] <<
24) | ((long)d[1] << 16) | ((long)d[2] << 8) |
((long)d[3] << 0);<br>
282: 40 81 ld r20, Z<br>
284: 81 81 ldd r24, Z+1 ; 0x01<br>
286: 22 81 ldd r18, Z+2 ; 0x02<br>
288: 33 81 ldd r19, Z+3 ; 0x03<br>
28a: 90 e0 ldi r25, 0x00 ; 0<br>
28c: a0 e0 ldi r26, 0x00 ; 0<br>
28e: b0 e0 ldi r27, 0x00 ; 0<br>
290: dc 01 movw r26, r24<br>
292: 99 27 eor r25, r25<br>
294: 88 27 eor r24, r24<br>
296: b4 2b or r27, r20<br>
298: 83 2b or r24, r19<br>
29a: 92 2b or r25, r18<br>
29c: 80 93 01 01 sts 0x0101, r24 ; 0x800101
<adc_value><br>
2a0: 90 93 02 01 sts 0x0102, r25 ; 0x800102
<adc_value+0x1><br>
2a4: a0 93 03 01 sts 0x0103, r26 ; 0x800103
<adc_value+0x2><br>
2a8: b0 93 04 01 sts 0x0104, r27 ; 0x800104
<adc_value+0x3><br>
</div>
<div><br>
</div>
<div>Asi nejlepsi ale rezervy tam furt jsou
proti tomu jak by se to napsalo v ASM...<br>
</div>
<div><br>
</div>
<div>Dne 18.12.2024 v 9:56 Jirka Mww
napsal(a):<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>Cílová proměnná byla typu long int . </div>
<div>Na pravou stranu výrazu jsem zkoušel psát (long) i (long
int) , ale nepomohlo to . Fungovalo to, ale ty warningy mě
štvaly. </div>
<div>Inspiroval jsem se tady : </div>
<div><br>
</div>
<div><a href="https://forum.arduino.cc/t/how-to-convert-4-bytes-into-a-long/70425/9" target="_blank">https://forum.arduino.cc/t/how-to-convert-4-bytes-into-a-long/70425/9</a></div>
<div><br>
</div>
<div>z tohoto příkladu : </div>
<div><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)"> adc_value += (</span><span style="font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">long</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">)d[</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">0</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">] << </span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">24</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">;</span></div>
<span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)"> adc_value += (</span><span style="font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">long</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">)d[</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">1</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">] << </span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">16</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">;
adc_value += (</span><span style="font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">long</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">)d[</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">2</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">] << </span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">8</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">; </span>
<div><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)"> adc_value += (</span><span style="font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">long</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">)d[</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap">3</span><span style="color:rgb(67,67,67);font-family:ui-monospace,"Cascadia Mono","Segoe UI Mono","Liberation Mono",Menlo,Monaco,Consolas,monospace;font-size:14px;white-space:pre-wrap;background-color:rgb(248,248,248)">];</span> </div>
<div><br>
</div>
<div>ale warningy tam byly pořád. </div>
<div><br>
</div>
<div><br>
</div>
<div>
<div dir="ltr" class="gmail_signature">Zdravi<br>
Jirka Sloupenský OK1MWW</div>
</div>
<br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">st 18. 12. 2024 v 9:34
odesílatel Jindrich Fucik <<a href="mailto:FULDA@seznam.cz" target="_blank">FULDA@seznam.cz</a>>
napsal:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">...
a vědělo to, že má vzniknout něco většího než bajt?<br>
<br>
---------- Původní e-mail ----------<br>
Od: Jirka Mww <<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>><br>
Komu: HW-news <<a href="mailto:hw-list@list.hw.cz" target="_blank">hw-list@list.hw.cz</a>><br>
Datum: 18. 12. 2024 9:04:13<br>
Předmět: Re: Arduino - 32 bitu promenna ze 4 byte<br>
<br>
Uloženo to nemám, ale psalo to něco jako že posouvat 8 bitové
hodnoty o 24 nebo 16 bitů se nemá . <br>
<br>
Zdravi<br>
Jirka Sloupenský OK1MWW<br>
_______________________________________________<br>
HW-list mailing list - sponsored by <a href="http://www.HW.cz" rel="noreferrer" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" rel="noreferrer" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
</blockquote>
</div>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
HW-list mailing list - sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<p><br>
</p>
</div>
_______________________________________________<br>
HW-list mailing list - sponsored by <a href="http://www.HW.cz" rel="noreferrer" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" rel="noreferrer" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
</blockquote></div>