Seite 9 von 9

Re: PASM Bootloader

Verfasst: Mi 18. Nov 2015, 17:00
von PIC18F2550
Gefunden

Die Größe im EEPROM muss an Hand der binary-fiele größe ermittelt werden.

Das binary-fiele(aus EEPROM) wird ab $0 bis zur binary-fiele Größe (im Loader hinterlegt) in den HUB-RAM geladen.

Der Bereich binary-fiele Größe bis $7FFF wird mit $00 überschrieben.

Auf der Adresse $0A steht als Word das Programmende.

Ausgehend von dieser Adresse werden zwei long Werte zur Enderkennung geschrieben
long[progptr+plen-4] := $fff9ffff
long[progptr+plen-8] := $fff9ffff

Jetzt Kann ein COG mit dem Programm gestartet werden. :DAUMENHOCH

Re: PASM Bootloader

Verfasst: Do 19. Nov 2015, 10:45
von PIC18F2550
Der erste Urloader ist erst mal zusammengesetzt.

Er besteht aus 4 Treibern und ist keine 32k groß.

Code: Alles auswählen

/  Treibernummer
$00 Urlader : 
     Startet den Loader COG und übernimmt später die Verwaltung (Schreiben) des EEPROMs >32K
$01 Bellatrix-Code TV.spin   ( tv.binary <8k)
$02 Bellatrix-Code VGA.spin ( vga1.binary <8k) 60Hz Variante
$03 Bellatrix-Code VGA.spin ( vga2.binary <8k) 57Hz Variante
$04 Frei
$05 Frei
$06 Frei
$07 Frei
$08 Frei
$09 Frei
$0A Frei
$0B Frei
$0C Frei
$0D Frei
$0E Frei
$0F Frei
...
Eine Umschaltung ist über Byte[$7FFF] oder über das interne Reboot möglich.

Jetzt muss ich mich erst mal um ein Testprogramm für Regnatix kümmern.

Re: PASM Bootloader

Verfasst: Fr 20. Nov 2015, 08:58
von PIC18F2550
Gestern hab ich mich mit dem BUS befasst.
Und einige Änderungen vorgenommen.
/CS erst wenn Daten gültig auf dem Bus sind.
? Wofür wird sonnst noch das clk gebraucht?
/hs Quittung wird auch auf H Rückmeldung vom Slave geprüft.

Damit sollte das clk Signal frei sein.
Aus dem clk Signal wird Treiberload Signal.

Es wird vor dem Aussenden einen Commandos gesetzt.
Das Kommando + Treiberload Signal lösen das laden eines neuen Treibers.
Der Loader-COG horcht am BUS und Prüft das Byte[&7FFF].