ICC Support

Hinweise und technische Unterstützung

Zurück zur ICC Produktseite

Erfahrungsaustausch über die ICC Mailing Lists

Die ICC Mailing Lists sind ein Forum zum Erfahrungsaustausch zwischen Anwendern der ImageCraft Compilerprodukte. Die Sprache in diesem Forum ist Englisch.

Um an einer der ImageCraft Mailing Lists teilzunehmen, muß man sie zunächst abonnieren. Zu diesem Zweck - und zu allen anderen Zwecken, wie z.B. spätere Abbestellung - gibt es ein Webinterface. Die Benutzung ist dort im einzelnen beschrieben:

Programmiertip: Konstanten in separaten Speicherbereichen

Manchmal sollen Konstanten an einer speziellen Speicheradresse im EEPROM/Flash/ROM abgelegt werden. Um diese Konstanten vom restlichen Programmcode zu trennen, kann man ein zusätzliches Textsegment wie folgt definieren:

#pragma text:myflash
const int i = 5;
#pragma text:text

In den Compiler Options bestimmt man nun unter "Other Areas" den gewünschten Adreßbereich dieses Segments: -bmyflash:start.end

Programmiertip: Assemblerprogramme mit ICC

Natürlich kann man mit ICC auch reine Assemblerprogramme schreiben und lauffähig übersetzen. Sinnvoll wäre das z.B. bei Singlechip Anwendungen (Bootstrap Mode) im internen EEPROM des HC11E1 (max. 512 Byte!). Hier ein Beispielprogramm als Mustervorlage (ICC11):

; Blinken auf PORTA[6]
; --------------------
; Assembler Beispiel fuer ICC11 - Programm im EEPROM des HC11
; (Bootstrap Mode, RxD und TxD fuer Programmstart verbinden!)
; Achtung:
; Bei Options/Compiler/Linker "No Startup File" ankreuzen!
; (sonst sucht der Compiler nach dem Label _main)
;
PORTA = $1000

        .area memory(abs)
        .org $b600

loop:   ldaa PORTA
        oraa #$40
        staa PORTA
        bsr  delay
        ldaa PORTA
        anda #$bf
        staa PORTA
        bsr  delay
        bra  loop

delay:  ldx  #$C000
_dly1:  dex
        bne  _dly1
        rts

Letzte Änderung: 2020-05-06