<div dir="ltr"><div><div><div>Mate samozrejme pravdu v obojim. Je jenom hloupe, ze prekladac u naked funkce akceptuje direktivu<br></div>using pro registrovou banku ale nic neudela ani nezahlasi ani warning.  Jinak je to opravdu zajimave<br>
</div>studovat, jak si prekladac s mymi zacatecnickymi konstrukce v C podari pri prekladu do assembleru.<br></div>Musim pred autory SDDC smeknout.<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 22. ledna 2014 5:39 Jaroslav Buchta <span dir="ltr"><<a href="mailto:jaroslav.buchta@hascomp.cz" target="_blank">jaroslav.buchta@hascomp.cz</a>></span> napsal(a):<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>naked funkce by proste mela byt hola
      funkce, prekladac by nemel pridat do funkce nic, zadna
      inicializace a uhovani registru.... to musi zajistit programator
      sam.<br>
      Je velmi dobre a casto to delam, podivat se, jaky ASM z prekladace
      vypadne, treba v debuggeru pri ladeni kodu.<br>
      <br>
      <br>
      Dne 21.1.2014 21:49, Andrej Jancura napsal(a):<br>
    </div><div><div class="h5">
    <blockquote type="cite">
      <div dir="ltr">
        <div>
          <div>Dobry vecer,<br>
            <br>
          </div>
          nie je nahodou direktiva __naked na to, aby kompilator
          nepredaval parametre v pracovnych registroch pri call-return z
          funkcii? Nieco take sa mi zda, ze bolo aj v keili, ale je to
          uz velmi davno co som s tym robil, takze sa mozem aj mylit.<br>
          <br>
        </div>
        A. <br>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">2014/1/21 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div dir="ltr">
              <div>
                <div>
                  <div>
                    <div>
                      <div>
                        <div>Tak jsem zrusil oznaceni __naked u
                          prerusovaci procedury a SDCC korektne<br>
                        </div>
                        priradi urcenou registrovou banku podle
                        parametru __using.  Je to pomerne intelignetni,<br>
                      </div>
                      neuklada to na stack registry, ktere nejsou
                      potreba, takze celkovy kod neni<br>
                    </div>
                    delsi nez muj puvodni s __naked.   Byla to pro mne
                    zajimava zkusenost, hrabat se <br>
                  </div>
                  v ASM kodu, vytvorenem prekladacem.  Nikdy driv jsem
                  to nepotreboval. <br>
                </div>
                Budto jsem psal primo v assembleru a nebo jsem veril
                tomu, co prekladac udela. <br>
                <br>
              </div>
              Diky za konzultace, povazoval bych to zatim za vyresene. <br>
              <br>
            </div>
            <div class="gmail_extra"><br>
              <br>
              <div class="gmail_quote">
                Dne 21. ledna 2014 17:55 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span>
                napsal(a):
                <div>
                  <div><br>
                    <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                      <div dir="ltr">
                        <div>
                          <div>
                            <div>
                              <div>
                                <div>
                                  <div>Dobrý den,<br>
                                    <br>
                                    tak po tom zákazu přerušení během
                                    čtení EEPROM to přežilo celý den,<br>
                                  </div>
                                  což se před tím nikdy nestalo.  Chyba
                                  je evidentně někde tady.  Večer se na
                                  to podívám, teď jsem přišel z práce.<br>
                                </div>
                                <br>
                              </div>
                              Překladači je úplně jedno, jestli tam ty
                              závorky za __interrupt a __using jsou nebo
                              ne, přeloží to úplně stejně.<br>
                            </div>
                            Jakmile tam je __naked, tak to informaci o
                            registrové bance ignoruje, prostě tam dá jen
                            to, co je <br>
                          </div>
                          v kódu, v mém případě je celý kód přerušení v
                          assembleru a zkopíruje to tam 1:1.  Co bych
                          taky čekal, že ?.<br>
                        </div>
                        Někde by mělo být ale napsané ,že pokud použiji
                        __naked, tak nemůžu nic čekat. Je to logické,
                        ale není to <br>
                        úplně zřejmé.  <br>
                        <br>
                      </div>
                      <div class="gmail_extra">
                        <div>
                          <div><br>
                            <br>
                            <div class="gmail_quote">2014/1/21 Jan
                              Waclawek <span dir="ltr"><<a href="mailto:konfera@efton.sk" target="_blank">konfera@efton.sk</a>></span><br>
                              <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                                <div>>Zajimave je, ze v navodu se
                                  pise, ze to ma byt takto :<br>
                                  >void timer_isr (void) __interrupt
                                  (1) __using (1)<br>
                                  >a ja tam ty zavorky za interrupt a
                                  using nemam - bylo to takto ve stare<br>
                                  >verzi,<br>
                                  >ale prekladac zadnou chybu
                                  nehlasi.<br>
                                  <br>
                                </div>
                                A prelozi dobre?<br>
                                <div><br>
                                  >Divam se do kodu v assembleru a
                                  zacinam tomu zase rozumet.<br>
                                </div>
                                >To pøerušení od SW UARTu mám napsané
                                v assembleru a oznacene jako<br>
                                <div>>__naked . Prestoze tam mam i
                                  using 1 , tak to prepnuti registrove
                                  banky<br>
                                  >ignoruje,<br>
                                  >V assembleru tam nic neni, na
                                  rozdil od ostatnich preruseni.<br>
                                  >Je to hloupe, ze prekladac
                                  akceptuje to using 1 a zaroven to
                                  naked.<br>
                                  <br>
                                  <br>
                                </div>
                                Tak to je fakt hlupe. Chcelo by to asi
                                reportnut. Pozriem sa na to, ak bude<br>
                                cas.<br>
                                <br>
                                wek<br>
                                <div>
                                  <div><br>
_______________________________________________<br>
                                    HW-list mailing list  -  sponsored
                                    by <a href="http://www.HW.cz" 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" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
                                  </div>
                                </div>
                              </blockquote>
                            </div>
                            <br>
                            <br clear="all">
                            <br>
                          </div>
                        </div>
                        <span><font color="#888888">-- <br>
                            Zdravi<br>
                            Jirka OK1MWW
                          </font></span></div>
                    </blockquote>
                  </div>
                </div>
              </div>
              <span><font color="#888888"><br>
                  <br clear="all">
                  <br>
                  -- <br>
                  Zdravi<br>
                  Jirka OK1MWW
                </font></span></div>
            <br>
            _______________________________________________<br>
            HW-list mailing list  -  sponsored by <a href="http://www.HW.cz" 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" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      <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>
    <br>
  
<br><br>
</div></div><hr style="border:none;color:#909090;background-color:#b0b0b0;min-height:1px;width:99%">
<table style="border-collapse:collapse;border:none">
        <tbody><tr>
                <td style="border:none;padding:0px 15px 0px 8px">
                        <a href="http://www.avast.com/" target="_blank">
                                <img src="http://static.avast.com/emails/avast-mail-stamp.png" border="0">
                        </a>
                </td>
                <td>
                        <p style="color:#3d4d5a;font-family:"Calibri","Verdana","Arial","Helvetica";font-size:12pt">
                                Tato zpráva neobsahuje viry ani jiný škodlivý kód -<a href="http://www.avast.com/" target="_blank">avast! Antivirus</a> je aktivní.
                        </p>
                </td>
        </tr>
</tbody></table>
<br>
</div>

<br>_______________________________________________<br>
HW-list mailing list  -  sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</div>