Erfahrung mit simpleIDE

Allgemeine Themen rund um den Propeller Mikrocontroller und Elektronik
Benutzeravatar
digger
Administrator
Beiträge: 677
Registriert: Sa 23. Mai 2009, 22:44
Wohnort: Schorfheide
Kontaktdaten:

Re: Erfahrung mit simpleIDE

Beitrag von digger »

Genau so einen Treiber hab ich gesucht. Ist irgendwie an mir vorbeigegangen dass du sowas released hast. Thx.

Gleich wirst du meine Wissensdefizite bemerken, aber mir geistert da so eine Frage im Kopf rum. Der Font im RAM klaut ja doch ein bisschen etwas von dieser wertvollen und immer etwas knappen Ressource beim Propeller. Wäre es nicht denkbar den ROM Font zu verwenden und durch Masken Zeilen und Spalten der Zeichen "rauszuschneiden" um so auf das 16x8 Zeichenformat zu kommen? (Mal abgesehen davon ob die Zeichen dann schön sind oder nicht)
Benutzeravatar
Micha
Beiträge: 813
Registriert: Sa 24. Mär 2012, 21:45
Wohnort: Merseburg
Kontaktdaten:

Re: Erfahrung mit simpleIDE

Beitrag von Micha »

kuroneko hat geschrieben: Hab' letztlich gerade einen 80x25 Treiber gefertigt. War urspruenglich fuer eine C-Portierung auf den P1 gedacht. Derzeit ist nur eine SPIN-Demo vorhanden aber alle meine Treiber sind ueber jede verfuegbare Hochsprache ansprechbar.
Sieht gut aus - hab die Demo gerade mal geladen - das entspricht bzgl. Auflösung und Attributen ideal meiner Vorstellung.

Leider steh ich derzeit noch aufm Schlauch, wie so ein Treiber in C zu integriern ist. Hab mich mit diesem Aspekt bisher noch nicht beschäftigt. Die Font-Definition in ein C Array einbetten krieg ich noch gerade so hin ;-) Aber wie ich den Maschinencode so umfriemeln kann dass das C Projekt ihn verdaut ist mir derzeit unklar. Hast du eventuell einen rudimentären Beispiel-Code, zum lernen und verstehen?
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Erfahrung mit simpleIDE

Beitrag von kuroneko »

Micha hat geschrieben:Aber wie ich den Maschinencode so umfriemeln kann dass das C Projekt ihn verdaut ist mir derzeit unklar. Hast du eventuell einen rudimentären Beispiel-Code, zum lernen und verstehen?
Versuchs mal hiermit (ist geschummelt aber zumindest hast Du erstmal 'nen Treiber).

Code ist jetzt auch auf github, musste gerade noch einen Fehler mit cursor alignment korrigieren (faellt nur auf wenn mehr als einer benutzt wird).
Dateianhänge
waitvid.80x25.side.zip
(4.23 KiB) 632-mal heruntergeladen
Zuletzt geändert von kuroneko am Di 14. Okt 2014, 15:49, insgesamt 1-mal geändert.
Benutzeravatar
TuxFan
Beiträge: 1022
Registriert: So 6. Sep 2009, 11:18

Re: Erfahrung mit simpleIDE

Beitrag von TuxFan »

Moin moin!
Erlaube mir einen kleinen Testbericht zum VGA-Treiber zwischen zu schieben :
Mein Mimosenmonitor Sumsum ;) SyncMaster710n zeigt bei dem Spin Testprogramm keinerlei Mucken. Ein alter Video7 LCD-Monitor auch nicht. Ebenso das 5,6" Pollin-TFT-Modul zeigt bei physikalischen 640x480 Pixeln (max 1280x1024 Pixel am VGA-Eingang) alles an. :DAUMENHOCH
Nur das 7" Pollin-Display zeigt bei physikalischen 1024x600 Pixeln die ersten 2 oder 3 Pixelzeilen nicht an, muß ich nochmal testen.
Zur Erinnerung : Die beiden Pollin Displays hatten wir mal under Rubrik "Hardware" angesprochen.
Testgerät : Elderberry µC mit zusätzlichen 3x120 Ohm Widerständen an R,G,B gegen Masse.
Kompiliert : openspin mit SimpleIDE.
Resumee : Der Treiber könnte mir als VGA-Standard-Treiber sehr gut gefallen und nein, nicht unter Chaos, ich bleib bei Spin.
Dank an Kuroneko.:DAUMENHOCH
Gruß
TuxFan
Wunder gibt es immer wieder.......
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Erfahrung mit simpleIDE

Beitrag von kuroneko »

TuxFan hat geschrieben:Nur das 7" Pollin-Display zeigt bei physikalischen 1024x600 Pixeln die ersten 2 oder 3 Pixelzeilen nicht an, muß ich nochmal testen.
Ist 720x400@70Hz in der Liste der akzeptierten Aufloesungen (Monitor-Handbuch)? Manche LCD controller akzeptieren nur 720x480 oder 720x400@85Hz.
Benutzeravatar
TuxFan
Beiträge: 1022
Registriert: So 6. Sep 2009, 11:18

Re: Erfahrung mit simpleIDE

Beitrag von TuxFan »

Hab nochmal in den Unterlagen der beiden Pollin-Displays geschaut. Beim 5,6" ist garnichts über die akzeptierten Auflösungen/Freq. zu sehen und beim 7" ist nur 800x600 bis 1280x768 Pixel bei 60Hz angegeben, keine detaillierte Liste. Bei meinem Sumsum Monitor wunderte es mich ja auch, daß er die 70Hz akzeptierte weil er sonst nur 60Hz oder 75Hz mag.
Wobei es mich interessieren täte, wie es zu dieser ungewöhnlichen Auflösung von 720 x 400 bei 70Hz kommt.
Gruß
TuxFan

PS.: Hab mal im Internet das Handbuch für meinen Sumsum gefunden und tatsächlich, 720 x 400 (IBM) bei 70Hz steht auf dem Speiseplan. Komisch von der Auflösung hab ich noch nichts gehört. Und ich beschäftige mich eigentlich schon seeeeeeeeeeeeeeeeehr lange mit diesen Büchsen.
Zuletzt geändert von TuxFan am Di 14. Okt 2014, 16:35, insgesamt 1-mal geändert.
Wunder gibt es immer wieder.......
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Erfahrung mit simpleIDE

Beitrag von kuroneko »

TuxFan hat geschrieben:Wobei es mich interessieren täte, wie es zu dieser ungewöhnlichen Auflösung von 720 x 400 bei 70Hz kommt.
Ist die einzige 720x400 die mein Monitor (RDT176LM, Mitsubishi) laut Datenblatt akzeptiert (85Hz sind zuviel, out of range).
Benutzeravatar
TuxFan
Beiträge: 1022
Registriert: So 6. Sep 2009, 11:18

Re: Erfahrung mit simpleIDE

Beitrag von TuxFan »

kuroneko hat geschrieben:..Ist die einzige 720x400 die mein Monitor (RDT176LM, Mitsubishi) laut Datenblatt akzeptiert (85Hz sind zuviel, out of range).
Ah so, meiner macht nur 75Hz maximal. Die meisten Standard-Auflösungen (640x400, 640x480, 800x600, 1024x768) gehen bei 60Hz. Kann man an deinem Treiber ein wenig schrauben, daß er auf eine andere Auflösung/Frequenz kommt, wie bei einigen alten Spin-Treibern. Nach erster in Augenscheinnahme scheint die Einstellmöglichkeit nicht ganz einfach für den Uneingeweihten zu sein.
Gruß
TuxFan
Wunder gibt es immer wieder.......
Benutzeravatar
Micha
Beiträge: 813
Registriert: Sa 24. Mär 2012, 21:45
Wohnort: Merseburg
Kontaktdaten:

Re: Erfahrung mit simpleIDE

Beitrag von Micha »

Möchte mich erst mal ganz herzlich bei kuroneko bedanken!
Standard C kenne ich zwar inzwischen fast in-und auswendig, aber wie man bestimmte maschinennahe Sachen speziell auf dem Propeller anpasst, da fehlen mir bisher doch noch einige Teile des Puzzles. Ohne die Vorgabe dieses Beispiels hätte ich da ganz schön in der Luft gehangen, um zu ner funktionierenden VGA-Ausgabe zu kommen. Das wär ein langer, steiniger Weg gewesen.
Wie gesagt, den Font hätte ich auch noch in ein Array gepackt bekommen. Aber bei dem in Inline-Assembler geschriebenen Treiber hätte es erst mal gehakt. Im Nachhinein ist es natürlich naheliegend, als pragmatische Zwischenlösung den übersetzten Maschinencode auch in ein Zahlenarray zu packen. Wär bei mir erst mal an der Unklarheit gescheitert, ob der Maschinencode relokierbar ist. Ist er offenbar, aber das wusste ich nicht...

Nun ist wohl als nächstes ein Tastaturtreiber dran. Mal schauen ob ich da was passendes finde...

Das Format 80x25 Zeichen ist übrigens ideal für CP/M Zeugs! Viele CP/M Sachen sind standardmäßig auf einen 80x24 Bildschirm vorgepatcht, da bleibt eine Zeile am unteren Bildschirmrand als Terminal-Status. Passt perfekt :DAUMENHOCH
Also vonder Sache här tätch jetz ma behaupten "Mischn ägomplischd" un so...
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Erfahrung mit simpleIDE

Beitrag von kuroneko »

TuxFan hat geschrieben:Kann man an deinem Treiber ein wenig schrauben, daß er auf eine andere Auflösung/Frequenz kommt, wie bei einigen alten Spin-Treibern.
Soweit ich weiss ist nur VGA.spin in der Art konfigurierbar. Und den kannst Du bezueglich nutzbarer Aufloesungen vergessen. Aber das nur am Rande.

Mit anderen Worten, meine Treiber sind alle auf eine bestimmte Aufloesung/Timing getrimmt. Bin mir nicht ganz sicher wie weit ich die Pixelfrequenz fuer diesen noch erhoehen kann (ist 'ne Menge zu tun in der wenigen Zeit die einem verbleibt). Zeilenanzahl (vertical sync chain) sollte das kleinere Problem sein. Suchst Du nach 'ner bestimmten Aufloesung? Kann ich mal spaeter reinschauen ob das machbar ist.
Antworten