Seite 6 von 7

Re: KC85/4 dual VGA

Verfasst: Do 6. Jun 2019, 19:22
von PIC18F2550
:( misst mein Treiber ist anders aufgebaut :(

Code: Alles auswählen

CON
  vgrp     = 2                                          ' video pin group
  vpin     = %%333_0                                    ' video pin mask
  video    = (vgrp << 9 | vpin) << 21

...

PUB main : n | x
      link{0} := video | @scrn{0}
      link[1] := @attr{0}
      driver.start(-1, @link{0})

Code: Alles auswählen

                movi    ctrb, #%0_11111_000     ' LOGIC always (loader support)
                movi    ctra, #%0_00001_111     ' PLL, VCO/1
                movi    frqa, #%0001_00000      ' 5MHz * 16/1 = 80MHz
                movs    frqa, #res_x*3/4        ' |
                movs    frqa, #0                ' insert res_x*3 into phsa
                
                mov     vscl, #1                ' reload as fast as possible
                mov     zwei, scrn              ' vgrp:[!Z]:vpin:[!Z]:scrn = 2:1:8:5:16 (%%)
                shr     zwei, #5+16             ' |
                andn    zwei, #%%000_3          ' |
                or      vcfg_norm, zwei         ' | group + %%RGB_0
                shr     zwei, #9                ' |
                movd    vcfg_sync, zwei         ' | group + %%000_3
                mov     vcfg, vcfg_sync         ' VGA, 2 colour mode

                waitcnt temp, #0                ' PLL settled, frame counter flushed
                                                  
                ror     vcfg, #1                ' freeze video h/w
                mov     vscl, phsa              ' transfer user value
                rol     vcfg, #1                ' unfreeze
                waitpne $, #0                   ' get some distance
                waitvid zero, #0                ' latch user value

                mov     temp, vcfg_norm         ' |
                or      temp, vcfg_sync         ' |
                and     mask, temp              ' transfer vpin
                
                mov     temp, vcfg              ' |
                shr     temp, #9                ' extract vgrp
                shl     temp, #3                ' 0..3 >> 0..24
                shl     mask, temp              ' finalise mask

                max     dira, mask              ' drive outputs
                mov     $000, pal0              ' restore colour entry 0

...

vcfg_norm       long    %0_01_0_00_000 << 23
vcfg_sync       long    %0_01_0_00_000 << 23 | %00000011
Das ist mir zu hoch :(

Re: KC85/4 dual VGA

Verfasst: Fr 7. Jun 2019, 09:37
von PIC18F2550
Wenn ich die anderen Beispiele betrachte wird hier die vcfg immer umgeschalten.
Es gibt eine für die Pixelausgabe und eine für die Synchronisation.

Das müsste hier noch eingebaut werden.
Ob das noch mit dem Timing passt kann ich nicht erkennen.
Ein etwas einfacher Treiberaufbau währe mir lieber.

Als Option währe noch das ich den Hintern hoch kriege und endlich die Software zum XC9536 zum laufen bekomme.
Dann würde ich einen als DAC verwursten und das Thema wäre gegessen.

Re: KC85/4 dual VGA

Verfasst: So 9. Jun 2019, 14:30
von kuroneko
PIC18F2550 hat geschrieben:Ein etwas einfacher Treiberaufbau währe mir lieber.
... oder frag' mich doch einfach. Wir müssten uns nur einigen ob Du das setup über Konstanten haben willst oder zur Laufzeit.

Re: KC85/4 dual VGA

Verfasst: So 9. Jun 2019, 16:02
von PIC18F2550
kuroneko,

ich kann doch nicht dauernd an deiner Tür kratzen, :?

Ach wass solls...

Am liebsten hätte ich Konstanten wo nichts mehr berechnet wird also so wie die Beschreibung der Register (32 bit).
Es ist zwar nicht mehr so schön komfortabel aber dafür kompakter.

Danke.

Re: KC85/4 dual VGA

Verfasst: Do 13. Jun 2019, 11:57
von PIC18F2550
PIC18F2550 hat geschrieben:So ich hab nach langer Sucherei das Konzept geändert.

Eingebaut ist jetzt ein Modulsteuerword wie es bei den anderen Modulen auch ist.

Nach Power ON oder Reset wird auf dem Monitoren die beiden Bilder des KCs angezeigt.
Macht sonnst keinen sinn ein VGA-Modul zu verbauen wenn man erst ein mal nichts sieht.

Der Hochauflösende Farbmodus musste wegen seltsamer Effekte bei der Tonausgabe entfallen.

Die Bits des Modulsteuerwordes sind wie folgt belegt:

DB0 : Modul Ein/Aus ( Bei Aus wird das Modul den originalen BWS darstellen.*1))
DB1 : Schreiben auf Bildschirm 0/1
DB2 : Pixel oder Farbe
DB3 : Treiber Graphig / Text
DB4 : unbenutzt
DB5 : unbenutzt
DB6 : unbenutzt
DB7 : Adressbereich 4000H/8000H

*1) der BWS des KCs muss auf das Modul Kopiert oder mit CLS neu aufgebaut werden .
Einmal zurückrudern bitte :x

Die normale Umschaltung der "Hohen Farbauflösung" macht beim Beep immer noch Probleme so das ich etwas abspecken muss.

Nach Power ON oder Reset wird auf dem Monitoren die beiden Bilder des KCs angezeigt. <Erledigt>

Ich überlege noch ob ich für beide Bildschirme eigene Modulsteuerworde verwende.

Die Bits des Modulsteuerwordes 80 werden wie folgt belegt:
DB0 : Bildschirm 0 Ein/Aus ( Bei Aus wird das Modul den originalen Bildschirm 0 darstellen.))
DB1 : Bildschirm 0 Schreibschutz
DB2 : Bildschirm 0 Pixel oder Farbe
DB3 : Bildschirm 0 Treiber Graphig / Text
DB4 : Bildschirm 0 Adressbit A14 Graphig
DB5 : Bildschirm 0 Adressbit A15 Graphig
DB6 : Bildschirm 0 Adressbit A14 Text
DB7 : Bildschirm 0 Adressbit A15 Text

Die Bits des Modulsteuerwordes 81 werden wie folgt belegt:
DB0 : Bildschirm 1 Ein/Aus ( Bei Aus wird das Modul den originalen Bildschirm 1 darstellen.))
DB1 : Bildschirm 1 Schreibschutz
DB2 : Bildschirm 1 Pixel oder Farbe
DB3 : Bildschirm 1 Treiber Graphig / Text
DB4 : Bildschirm 1 Adressbit A14 Graphig
DB5 : Bildschirm 1 Adressbit A15 Graphig
DB6 : Bildschirm 1 Adressbit A14 Text
DB7 : Bildschirm 1 Adressbit A15 Text

Die Bits des Modulsteuerwordes 82 werden wie folgt belegt:
DB0 : Bildschirm 0 Lesefreigabe
DB1 : Bildschirm 1 Lesefreigabe
DB2 : reserve
DB3 : reserve
DB4 : reserve
DB5 : reserve
DB6 : reserve
DB7 : reserve


Das dürfte sogar noch flexibler sein.

Mal sehen ob das in den Mach rein Passt :mrgreen:

Re: KC85/4 dual VGA

Verfasst: Mo 17. Jun 2019, 19:52
von kuroneko
Sollte jetzt gehen, entweder man konfiguriert über Konstanten oder zur Laufzeit.

Hab derzeit keine 8+2 h/w verfügbar so ich bräuchte dann mal ein paar Meerschweinchen :)

Re: KC85/4 dual VGA

Verfasst: Mi 19. Jun 2019, 19:48
von kuroneko
Wo ein Wille ist ... hab's jetzt verifiziert. Code ist (nur) in der src.yx demo zu finden.

Re: KC85/4 dual VGA

Verfasst: Mi 19. Jun 2019, 22:24
von PIC18F2550
Du bist viel zu Schnell.

Mich hat die Hitzewelle erst ein mal platt gemacht jetzt geht es wieder etwas.

Erst ein mal die Alte Karte auf einen vernünftigen Stand gebracht so das ich auch die anderen Module testen Kann.
Version 2
Version 2
Die Neue Graphigkarte wird erst nächste Woche (Habe aber schon angefangen).

Re: KC85/4 dual VGA

Verfasst: Mo 23. Mär 2020, 12:04
von PIC18F2550
So endlich die neue Platiene.
Diesmal in blau. :LACHEN

Jetzt kann ich endlich mit kuronekos Treiber experimentieren.
Wenn die Platten endlich ankommen.

Re: KC85/4 dual VGA

Verfasst: Do 16. Apr 2020, 14:03
von PIC18F2550
Auf die Kleckse vertsch und los. :SCHRAUBEN