LF = $0D und $0A

Du hast ein Betriebssystem für den Hive geschrieben oder beschäftigst dich mit den grundlegenden Systemfunktionen, dann bist du hier richtig!
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: LF = $0D und $0A

Beitrag von PIC18F2550 »

Hallo drohne235,

ich denke mann sollte nur bestimte Editoren offiziell als referenzeditoren für den HIVE angeben.
Das währen als mein Vorschlag:
- Das Propelelrtool von Paralax für Windows
- BST für die Linux Welt
- ? für Mac weis ich leider keins.

Ich denke damit könnte mann die vielen Codierungen der Texte auf ein minimum beschränken.

Die Codierung der Schriftzeichen ist schon ein großes Problem(Ich weis davon ein Lied zu singen, denn in unserer Firma muss ich mich damit rumschlagen) :cry:

Zum problem Textausgabe auf dem Bildschirm und Tastatur:

Der im Propeller hinterlegte Zeichensatz ist in bezug auf das Internationale zeichensatz-caos nicht zu gebrauchen.
Er ist mit fast allen Sprachen inkompartiebel.
Daher sollte für den HIVE grundsätzlich ein eigener verwendet werden der den User auch die möglichkeit bietet andere Sprachen als englisch zu gebrauchen.

Im WIKI habe ich schon eine möglichkeit hinterlegt die dem deutschen Zeichensatz und der Tastatur-codierung gerecht wird.

Zur realisierung einer Sprachumschaltung solten die Code Tabellen für
Monitor

Code: Alles auswählen

' 8 x 12 font - characters 0..255
'
' Each long holds four scan lines of a single character. The longs are arranged into
' groups of 256 which represent all characters (0..255). There are three groups which
' each contain a vertical third of all characters. They are ordered top, middle, and
' bottom.
'       Bit 8 7 6 5 4 3 2 1 0 in der Pixelfolge von links nach rechts
font  long
'       0           1           2           3           4           5           6           7
long    $0C080000,  $30100000,  $7E3C1800,  $18181800,  $81423C00,  $99423C00,  $8181FF00,  $E7C3FF00   '0x00 Zeile 4, 3, 2, 1
long    $1E0E0602,  $1C000000,  $00000000,  $00000000,  $18181818,  $18181818,  $00000000,  $18181818   '0x08
und Tastatur

Code: Alles auswählen

'*******************************************************************************
'
'
' Lookup table
'                               ascii   scan    extkey  regkey  ()=keypad
'

{{keyboard-de start}}

table
                        '
                        '$00  ---   F9    ---   F5    F3    F1    F2    F12
                        '    ===== ===== ===== ===== ===== ===== ===== =====
                        word $0000,$00D8,$0000,$00D4,$00D2,$00D0,$00D1,$00DB
"table" und "font" als Text-file oder als Variable umstellt werden.
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
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: LF = $0D und $0A

Beitrag von yeti »

PIC18F2550 hat geschrieben:Die Ursache ist das der HIVE $0D als Zeilenumbruch verwendet.
Aber BST, MC-Editor, und gEdit aber das Zeichen $0A.
Wer hindert Dich daran den Editor auf das gewünschte (ich schreibe absichtlich nicht "das richtige") Zeilenedekennzeichen umzustellen?
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: LF = $0D und $0A

Beitrag von PIC18F2550 »

yeti hat geschrieben:
PIC18F2550 hat geschrieben:Die Ursache ist das der HIVE $0D als Zeilenumbruch verwendet.
Aber BST, MC-Editor, und gEdit aber das Zeichen $0A.
Wer hindert Dich daran den Editor auf das gewünschte (ich schreibe absichtlich nicht "das richtige") Zeilenedekennzeichen umzustellen?
Warum soll ich Linux, Windows und die Mac Betriebssysteme im quellcode Ändern?

Ich glaub die Lachen uns da nur aus.

Und wenn ich den Quellcod eines Editors ändern würde, was ausgesprochen däm.. wär, da nach einem Update oder einer neuen version, jedesmal ich (alle HIVE nutzer) die gleiche Arbeit hätte.

Die eigendliche bedeutung aus der Fernschreibtechnik, verwendet leider sogut wie kein Betriebssystem "Seitenvorschub und Wagenrücklauf".(Speichersparmaßname)

Daher auch die unterschiedliche Interpretierung der Steuerzeichen.

Das "Zeilenedekennzeichen" gibt es nicht im Zeichensatz aller Betriebsysteme es ist nur eine Interpretierung zur formatierung von Texten.
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
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: LF = $0D und $0A

Beitrag von yeti »

PIC18F2550 hat geschrieben:
yeti hat geschrieben:
PIC18F2550 hat geschrieben:Die Ursache ist das der HIVE $0D als Zeilenumbruch verwendet.
Aber BST, MC-Editor, und gEdit aber das Zeichen $0A.
Wer hindert Dich daran den Editor auf das gewünschte (ich schreibe absichtlich nicht "das richtige") Zeilenedekennzeichen umzustellen?
Warum soll ich Linux, Windows und die Mac Betriebssysteme im quellcode Ändern?

Ich glaub die Lachen uns da nur aus.

Und wenn ich den Quellcod eines Editors ändern würde, was ausgesprochen däm.. wär, da nach einem Update oder einer neuen version, jedesmal ich (alle HIVE nutzer) die gleiche Arbeit hätte.
Ich fasse es echt nicht!
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: LF = $0D und $0A

Beitrag von PIC18F2550 »

Um das ganze mal etwas abzukürzen ein neuer "htext" mit Umlauten und $0D/$0A behandlung. Und "$" geht jetzt auch.
htextA01.bel.binary
Endung .binary vorher löschen
(8 KiB) 473-mal heruntergeladen
Und der Quellcode
htext-A.01.spin
(38.04 KiB) 459-mal heruntergeladen
bel-htext-A.01.spin
(31.81 KiB) 454-mal heruntergeladen
bel-keyb-A.01.spin
(39.84 KiB) 465-mal heruntergeladen
Offen sind nur noch die Probleme in "htext-A.01.spin" identisch mit "htext.spin" aber die sind drohne235 schon bekannt.

"htext.spin" sollte in "htext1252.spin" umbenannt werden um so einen hinweis auf die jeweilige Landessprache (deutsch) zu erhalten :idea:
Damit würden wir einen großen schritt in die Internationalen Gewässer wagen :mrgreen:
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
alter_sack
Beiträge: 2
Registriert: Mi 16. Mär 2011, 09:20
Wohnort: Vor dem Display
Kontaktdaten:

Re: LF = $0D und $0A

Beitrag von alter_sack »

PIC18F2550 hat geschrieben:
yeti hat geschrieben:
PIC18F2550 hat geschrieben:Die Ursache ist das der HIVE $0D als Zeilenumbruch verwendet.
Aber BST, MC-Editor, und gEdit aber das Zeichen $0A.
Wer hindert Dich daran den Editor auf das gewünschte (ich schreibe absichtlich nicht "das richtige") Zeilenedekennzeichen umzustellen?
Warum soll ich Linux, Windows und die Mac Betriebssysteme im quellcode Ändern?

Ich glaub die Lachen uns da nur aus.

Und wenn ich den Quellcod eines Editors ändern würde, was ausgesprochen däm.. wär, da nach einem Update oder einer neuen version, jedesmal ich (alle HIVE nutzer) die gleiche Arbeit hätte.
In einem "ordentlichen" Editor zum Programmieren oder einer IDE kann man, ohne gleich den ganzen Editor oder gar das Betriebssystem umprogrammieren zu müssen, einfach auswählen, welche Zeilenenden man denn gerne hätte. Noch fortschrittlichere Entwicklungsumgebungen machen das sogar halbautomatisch: Sourcen, die geladen werden, werden auch automagisch auf das gewählte Format umgewandelt. Bei BST habe ich allerdings leider keine Option für die Einstellung der Zeilenenden gefunden.

Wir entwickeln Software auf Mac, Windows und Linux, und verwenden als IDEs Eclipse und Netbeans. Das wäre eine schöne Schweinerei, wenn man da jedesmal händisch die Zeilenendungen der Kollegen umbauen müsste, bevor man an den eigentlichen Sourcen arbeitet!
Soldier: Oh, God is testing us.
Boris: If He's gonna test us, why doesn't He give us a written?
(Woody Allen, "Love And Death")
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: LF = $0D und $0A

Beitrag von PIC18F2550 »

Hallo yeti,
yeti hat geschrieben:Ich fasse es echt nicht!
Willkommen in meiner Welt. :twisted:
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: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: LF = $0D und $0A

Beitrag von PIC18F2550 »

Hallo,

So Startet Bellatrix den neuen htext Treiber im Modus 2 (128x64)
DSCI0009.JPG
Belatrix Textzeilen wurde im Quelltext geändert jetzt erschein dort auch die 64.

drohne235: ich benötige 2 Steuercodes

- 1. Umschaltung der Treiberauflösung (1 byte)
0 [640 x 480 @ 69Hz settings: 80 x 40 characters]
1 [800 x 600 @ 75Hz settings: 100 x 50 characters]
2 [1024 x 768 @ 57Hz settings: 128 x 64 characters]
- 2. Übergabe Name von der Datei mit Zeichensatz und Keybordtabelle (1 String[8 Zeichen]) ohne Dateiendung.
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
yeti
Beiträge: 2300
Registriert: Fr 27. Aug 2010, 14:48
Wohnort: Wrong Planet
Kontaktdaten:

Re: LF = $0D und $0A

Beitrag von yeti »

PIC18F2550 hat geschrieben:drohne235: ich benötige 2 Steuercodes

- 1. Umschaltung der Treiberauflösung (1 byte)
0 [640 x 480 @ 69Hz settings: 80 x 40 characters]
1 [800 x 600 @ 75Hz settings: 100 x 50 characters]
2 [1024 x 768 @ 57Hz settings: 128 x 64 characters]
- 2. Übergabe Name von der Datei mit Zeichensatz und Keybordtabelle (1 String[8 Zeichen]) ohne Dateiendung.
Vielleicht noch zusätzlich zu oder anstatt (2):

3. Umdefinieren eines einzelnen Zeichens oder andersartiger Zugriff auf die Zeichentabelle (Tastaturtabelle analog...)

Auch ein externes Programm das Zeichensatz/Tastaturtabelle läd könnte sich darauf stützen und so müsste der Code dafür nicht immer im EEPROM stecken...

...

Schubst Du die Änderungen in die Versionsverwaltung?
Bzw generell: Wie aktuell ist der Stand bei Googlecode?
𝖂𝖎𝖗 𝖐𝖔̈𝖓𝖓𝖊𝖓 𝖆𝖑𝖑𝖊𝖘 𝖆𝖚𝖘𝖘𝖊𝖗 𝖎𝖓 𝕱𝖗𝖚̈𝖍𝖑𝖎𝖓𝖌, 𝕾𝖔𝖒𝖒𝖊𝖗, 𝕳𝖊𝖗𝖇𝖘𝖙 𝖚𝖓𝖉 𝖂𝖎𝖓𝖙𝖊𝖗! – 𝕯𝖊𝖚𝖙𝖘𝖈𝖍𝖑𝖆𝖓𝖉.
"Du willst hier nicht klicken. Dies interessiert Dich nicht." — Yeti.
"DNA is a four letter word!" — Yeti.
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: LF = $0D und $0A

Beitrag von drohne235 »

Sinnvoll erscheintr mir die Einordnung der Routinen unter Chipmanagment. Im normalen Bellacode (flash/bellatrix/belflash.spin) sind die Codes aktuell von 99..88 absteigend belegt:

Code: Alles auswählen

'       ----------------------------------------------  CHIP-MANAGMENT
        88: mgr_wscr                                    'setzt screen, in welchen geschrieben wird
        89: mgr_dscr                                    'setzt screen, welcher angezeigt wird
        90: mgr_getcolor                                'farbregister auslesen
        91: mgr_setcolor                                'farbregister setzen
        92: mgr_getresx                                 'x-auflösung abfragen   
        93: mgr_getresy                                 'y-auflösung abfragen
        94: mgr_getcols                                 'spaltenanzahl abfragen
        95: mgr_getrows                                 'zeilenanzahl abfragen
        96: mgr_getcogs                                 'freie cogs abfragen
        97: mgr_getspec                                 'spezifikation abfragen
        98: mgr_getver                                  'codeversion abfragen
        99: mgr_load                                    'bellatrix neu starten
Die nächsten freien Codes wären also 87 und 86. Namen kannst du selbst wählen, wäre aber schon wenn der Prefix mgr_* verwendet wird. Wie funktioniert die zweite Funktion? Sind das vordefinierte Tabellen, die sich schon im Code befinden? Ist das immer ein zusammengehöriges Paar von Tastatur- und Zeichensatz?
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
Antworten