C xc8

Miroslav Draxal evik na volny.cz
Středa Prosinec 6 16:46:42 CET 2017


Takhle nějak to složí.


00000000: 1111----1111------------1111111111111111111111111111111111111111
00000040: 1111111111111111111111111111111111111111111111111111111111111111
00000080: 1111111111111111111111111111111111111111111111111111111111111111
000000C0: 1111111111111111111111111111111111111111111111111111111111111111
00000100: 1111111111111111111111111111111111111111111111111111111111111111
00000140: 1111111111111111111111111111111111111111111111111111111111111111
00000180: 1111111111111111111111111111111111111111111111111111111111111111
000001C0: 1111111111111111111111111111111111111111111111111111111111111111
00000200: 1111111111111111111111111111111111111111111111111111111111111111
00000240: 1111111111111111111111111111111111111111111111111111111111111111
00000280: 1111111111111111111111111111111111111111111111111111111111111111
000002C0: 1111111111111111111111111111111111111111111111111111111111111111
00000300: 1111111111111111111111111111111111111111111111111111111111111111
00000340: 1111111111111111111111111111111111111111111111111111111111111111
00000380: 1111111111111111111111111111111111111111111111111111111111111111
000003C0: 1111111111111111111111111111111111111111111111111111111111111111
00000400: 1111111111111111111111111111111111111111111111111111111111111111
00000440: 1111111111111111111111111111111111111111111111111111111111111111
00000480: 1111111111111111111111111111111111111111111111111111111111111111
000004C0: 1111111111111111111111111111111111111111------------------------
//________BootLoader_další podprogramy			
00000F00: 1111111111111111111111111111111111111111111111111111111111111111
00000F40: 1111111111111111111111111111111111111111111111111111111111111111
00000F80: 1111111111111111111111111111111111111111111111111111111111111111
00000FC0: 1111111111111111111111111111111111111111111111111111111111111111
00200000: 1111111111111111------------------------------------------------
00300000: 111111111111----------------------------------------------------
00310000: 11111111--------------------------------------------------------

-----Original Message-----
From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jan Waclawek
Sent: Wednesday, December 06, 2017 3:54 PM
To: HW-news; HW-news
Subject: RE: C xc8

Toto znie velmi XC8-specificky; k tomu sa neviem vyjadrit. Ale v pripade pochybnosti o umiestneni jednotlivych elementov v pamati by som zacal skumanim mapfile.

wek



----- Original Message ---------------

>Dobrý den,
>Proto se ptám zdejších odborníků. 
>Chci pro jeden projekt modifikovat bootloader. Mám nastavený rozsah 
>paměti ROM pro daný pojekt bootloaderu 0x000~0x400.Jsem ve fázi hledání 
>toho co se děje. Překlad skončí úspěšně s tím, že mi zbývá 0x60byte 
>volného místa. A teď
>
>Vložím do zdrojáku
>1/ Volatile const char ootLoader [] @0x30 = {"BootLoader"}; Překlad 
>skončí chybou, o nedostatku místa pro pro překlad.
>Pokud odstraním rozsah ROM (celá paměť) přeloží se vše v pořádku s tím, že konstanta ootLoader je umístěna od adresy  0x30, ale část kódu se uloží od adresy 0xf00 výše.
>
>2/ Volatile const char ootLoader  @0x30 = {"BootLoader"}; Překlad 
>skončí chybou, o nedostatku místa pro pro překlad.
>Pokud odstraním rozsah ROM (celá paměť) přeloží se vše v pořádku s tím, 
>že ootLoader je umístěna od adresy  0xf00, a část kódu se uloží za 
>konstantu ootLoader
>
>Volatile const char ootLoader [] @0x30 = {"BootLoader"}; Volatile const 
>char ootLoader  @0x30 = {"BootLoader"}; Oba dva řádky vygenerují stejný 
>sled byte v ROM.
>Neřešme zde následný přístup k němu, pouze umístění v paměti.
>
>Prostě mám volných 0x60 bytů a po přidání 11 bytů (11 byt uloží 0) mi to hlásí, že mám nedostatek místa.
>Míra
>
>
>
>-----Original Message-----
>From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of 
>konfera na efton.sk
>Sent: Tuesday, December 05, 2017 10:28 PM
>To: HW-news
>Subject: Re: C xc8
>
>To prve definuje pole charov dlzky danej inicializatorom, a nainicializuju ju tym retazcom.
>
>Tie druhe dva definuju na adrese 0x30 premennu typu char (t.j. jedeb jediny byte), do ktorej sa snazia narvat (nainicializovat ju na) pointer na retazcovu konstantu (string literal). Ta pochopitelne moze byt potom umiestnena kdekolvek.
>
>wek
>
>
>
>-----Original Message-----
>
>From:  "Miroslav Draxal" <evik na volny.cz>
>Subj:  C xc8
>Date:  Tue 5. Dec 2017 17:24
>Size:  2K
>To:  "'HW-news'" <hw-list na list.hw.cz>
>
>     Dobrý den,
>Ne3 to ode1lu jako bug vxc8, optám se zdej1ích odborníku.
>
>const char ootLoader [] @0x30 = {"BootLoader"};  ulo3í do ROM od adresy 
>0x30
>
>const char ootLoader  @0x30 = {"BootLoader"};
>
>ulo3í do ROM od adresy 0x100 pro procesory do 8kW, 0xf00 pro procesory do 64kW bez upozorniní.
>Myslíte, 3e je ktomu nijaký duvod?
>Díky za reakce, Míra
>
>Ps. Navazuje na vlákno PIC XC8 Bootloader
>
> 

_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz Hw-list na list.hw.cz http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list