PASM Bootloader

Du hast ein Betriebssystem für den Hive geschrieben oder beschäftigst dich mit den grundlegenden Systemfunktionen, dann bist du hier richtig!

Braucht der HIVE einen PASM Bootloader?

Umfrage endete am Fr 20. Sep 2013, 21:02

nein der SPINN-Loader reicht vollkommen aus
1
33%
Ja es wird Zeit
2
67%
Ist mir Wurscht.
0
Keine Stimmen
 
Insgesamt abgegebene Stimmen: 3

Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: PASM Bootloader

Beitrag von kuroneko »

PIC18F2550 hat geschrieben:Was meinst Du mit "Marker setzen und VAR loeschen"? :oops:
EEPROM Files haben den Stackmarker ($FFF9FFFF) schon drin und alle VARiablen sind auf 0 gesetzt. BINARY Files beinhalten "nur" den Code. So in der Regel werden fuer EEPROM 32K uebertragen was den Speicher komplett initialisiert. By (den kuerzeren) BINARY Files fehlen Stackmarker und VARiableninitialisierung (SPIN programme gehen gewoehnlich davon aus, dass VAR alles 0 ist).
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

Aha da kann ich mir die arbeit und longs sparen wenn ich gleich eeprom-files nehme.

Danke.

jeztz muß ich erstmal den Code in stücken Testen.

hätte ich doch glatt vergessen anzuhängen. Nur für den Fall das das jemand interessiert.

datei gelöscht
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

Im Loder-COG ist erstmal alles drinn ob das auch alles so funktioniert wie ich mir das vorgestellt habe werde ich noch sehen.

datei gelöscht

Genug von der PASM-Theorie jetzt geht es ans Praktische testen. :SCHRAUBEN
47 longs habe ich noch zur korrektur frei :twisted:

Für das Boot-loader-menü muß ich noch ein bisschen was machen hatt aber mit dem PASM-Test nichts gemeinsam.
Zuletzt geändert von PIC18F2550 am Do 19. Sep 2013, 23:18, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
zille9
Beiträge: 399
Registriert: Do 4. Okt 2012, 21:56
Wohnort: Berlin

Re: PASM Bootloader

Beitrag von zille9 »

Coole Idee mit dem Bootloader-Menü. Bin mal auf das Ergebnis gespannt. :DAUMENHOCH
Computer lösen die Probleme, die man ohne sie gar nicht hätte!
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

@zille9
Grundmaske vom Menü.
Es sind z.Z. 16 Einträge möglich.
meine Kamera mag kein grün :(
meine Kamera mag kein grün :(
Über die Graphigsymbole muß ich noch mal drüber Nachdenken ob das noch etwas besser geht.
Er währen Masken mit bis zu 60 Einträgen möglich.
datei gelöscht
Zuletzt geändert von PIC18F2550 am Fr 20. Sep 2013, 11:11, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: PASM Bootloader

Beitrag von kuroneko »

Fuer die Fehler Liste am Anfang, warum traegst Du nicht einfach die Adressen ein?

Code: Alles auswählen

LIST        long  MEL__00, ERRT_01, ERRT_02, ERRT_03
            long  ERRT_04, ERRT_05, ERRT_06, ERRT_07
            long  ERRT_08, ERRT_09, ERRT_10, ERRT_11
            long  ERRT_12, ERRT_13, ERRT_14, ERRT_15
            long  ERRT_16, ERRT_17, ERRT_18, ERRT_19
            long  ERRT_20, ERRT_21, ERRT_22, ERRT_23
            long  ERRT_24, ERRT_25
Und HOME__ & Co kannst Du auch direkt adressieren:

Code: Alles auswählen

        mov     reg, #PATH_1    ' cog register index of PATH_1
        mov     reg, PATH_1     ' the data at PATH_1 (first 4 characters)
Über die Graphigsymbole muß ich noch mal drüber Nachdenken ob das noch etwas besser geht.
Da Du anscheinend den ROM Font nutzt nimm doch einfach die Ecken/Kannten die da sind.
Dateianhänge
characters.png
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

Hi kuroneko,

zu 1
Du hast recht Betriebsblindheit --> das Blinden Smilie fehlt immernoch. :)

zu 2
Hab ich schon gemacht

zu 3
Eigendlich soll mein Graphigtreiber in ASCII sein das ist im aktuellen Bellatrixcode noch nicht vorhanden
Mein Graphigtreiber hatt 128*64 Zeichen die Menüauswahl würde damit auf 58 steigen was ich als durchaus wichtig erachte.
Leider sind einige Funktionen noch nicht realisiert so das ich noch keine sinnvollen Tests damit machen kann.


Für die 2. Ausbaustufe suche ich noch einen VGA-Treiber der alles in seinem COG hatt.
Es reicht eine einzige Zeile mit ca 16 Zeichen.(statusmeldungen)
Zuletzt geändert von PIC18F2550 am Sa 21. Sep 2013, 22:15, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

So kuroneko dein Wunsch wurde entsprochen. :D
2013-09-21_00-39-49_81.jpg
Die Unterverzeichnisse werden geöffnet und geschlossen.
Als nächstes kommt das einlesen der jeweiligen boot.inf datei drann.
Zuletzt geändert von PIC18F2550 am Sa 21. Sep 2013, 23:05, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: PASM Bootloader

Beitrag von kuroneko »

Nur mal zum Aufwaermen ...

Code: Alles auswählen

'#####################################################################################
'# * Copy Dateinahmen
'#####################################################################################
            mov     reg_b,  #$18              ' Datenblock long werte copieren
            mov     reg_c,  PATH_1Z           ' Zeiger auf internen Datenblock
nexta
            rdlong  reg_c,  reg_a
            add     reg_c,  #$1
            add     reg_a,  #$1
            djnz    reg_b,  #nexta    wz
Die Absicht ist zu erkennen (24 long from hub to cog) aber so wird das nichts ... und ich dachte wir haetten uns geeinigt dass die ******Z labels ueberfluessig sind?

Code: Alles auswählen

loadera
            rdlong  reg_a,  STATUSADR
            mov     reg_b,  reg_a
            sub     reg_b,  #$F       wc
      if_c  jmp     #loadera
Du benutzt cmp anderswo, warum nicht auch hier?
Benutzeravatar
PIC18F2550
Beiträge: 2851
Registriert: Fr 30. Sep 2011, 13:08

Re: PASM Bootloader

Beitrag von PIC18F2550 »

Hi kuroneko,

1. ist noch offen muß ich nochmal drüber schlafen :(

2. Ist durchgerutscht war mit dem # oder ohne am werkeln.

3.

Code: Alles auswählen

'#####################################################################################
'# * Warten auf Startfreigabe
'#####################################################################################
' ist in STATUSADR nur die COGID gespeichert so gibt es beim sub einen überlauf
loadera
            rdword  reg_a,  STATUSADR
            mov     reg_b,  reg_a
            sub     reg_b,  #$F       wc
      if_c  jmp     #loadera

Alle Werte die kleiner als $F sind sind keine Marken wo sich die Pfade und Dateien für den loader befinden.
Werte von 1-7 sind GOGID's vom loader zum schutz gegen versehendlichen löschen des loaders.
Der wert 0 wird nicht verwendet er dient nur zur initalisierung der Speicherzelle.
Zuletzt geändert von PIC18F2550 am So 22. Sep 2013, 10:36, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten