021
Heute, 19:27 Uhr
HeikoS
|
| Zitat: | Dresdenboy schrieb
| Zitat: | HeikoS schrieb Habe nochmal genau in die Initialisierung des GDC geschaut, die ich aus GDCCUBE von Cornelius übernommen habe. Es wird in der Mischbetriebsart gearbeitet. Könnte es evtl. sein, dass das "Geister-Pixel" ein Textcursor in Grafikdarstellung ist, der mit CURS nachgeführt wird? |
Hmm, es wird aber für jede Zeile das Image-Bit geschickt. Schau da mal auf das Signalspiel auf A16 und A17. Evtl. schließt dich der Cursor aus.
Ich kam gestern doch nochmal an den BIC und habe bisscgen getestet (ohne Double Buffering). Da konnte ich nichts erkennen. Ich habe auch Pausen beim Linienzeichnen eingebaut u.a. Tests gemacht. Aber jede Linie startet da brav mit CURS usw.
Kannst du bitte mal ein Video von dem Seiteneffekt machen?
VG, Matthias |
Hier hatte ich das mal gefilmt: <679>
https://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=22549&pagenum=2#272339
Dann kann es evtl. auch an der GDC-Initialisierung liegen, wenn das bei dir nicht auftritt. Die habe ich ja, wie gesagt, von Cornelius (GDCCUBE) übernommen. Ansonsten wird mit Assembler nur der Vektorbefehl benutzt:
| Quellcode: | ... LD hl,hfigs ;FIGS Parameter CALL DFIFO ;AUSGEBEN LD HL,FIGD CALL DSTART ... STOP -> Linie ist gezeichnet, Geister-Pixel ist zu sehen ;------------------------------------------------------------------------------ ; aus VIS3, AdW der DDR, leicht modifiziert für BIC / Port INC/DEC ; https://hc-ddr.hucki.net/wiki/doku.php/z1013/module/vis3 -> vis3amz1013.zip ;------------------------------------------------------------------------------ ;DFIFO - Kommando, Parameter in FIFO-Speicher ; Eingabe: HL - Adresse des Kommandofeldes ; (Kommando,Parameterzahl,Parameter,..) ;------------------------------------------------------------------------------ DFIFO: push bc push hl ld a,FLAGR ld c,a dfifo3: in a,(c) bit 1,a ;CMD ready ? jr nz,dfifo3 inc c ;CMD ld a,(hl) out (c),a ;Kommando in FIFO inc hl ld b,(hl) ;Anzahl Parameter ld a,b and a jr z,dfifo1 ;keine Parameter inc hl dec c ;PARA, Param.in FIFO dfifo2: in a,(c) bit 2,a ;FIFO leer? jr z,dfifo2 ;nein otir ;Param. in FIFO dfifo1: pop hl pop bc ret ;------------------------------------------------------------------------------ ; aus VIS3, AdW der DDR, leicht modifiziert für BIC / Port INC/DEC ; https://hc-ddr.hucki.net/wiki/doku.php/z1013/module/vis3 -> vis3amz1013.zip ;------------------------------------------------------------------------------ ;dstart - Startkommando an FIFO ; Eingabe: hl - Startkommando ;------------------------------------------------------------------------------ DSTART: push bc ld a,FLAGR ld c,a dstar1: in a,(c) bit 1,a ;CMD ready ? jr nz,dstar1 inc c ;CMD out (c),l pop bc ret
|
EDIT:
Könntest Du mir Deine VIS/GDC-Initialisierung senden? Hier der Code aus GDCCUBE, ein wenig kommentiert. Gestartet wird aus SCPX, also die Initialisierung aus diesem MODE übernommen und dann mit dem folgenden Code überschrieben:
| Quellcode: | ;------------------------------------------------------------------------------ ; Die folgenden Routinen zur Initialisierung/Bedienung von VIS/GDC wurden aus ; dem GDCCUBE-Bsp. von Cornelius Krejcik übernommen. ; https://www.youtube.com/watch?v=eHB70pNTopk ;------------------------------------------------------------------------------ VI0: xor a ; X000 X000 out (VISMOD),a ; Mode 0-7 ld a,020h ; Farbregister 0: Rand schwarz out (VISMOD),a ld a,031h ; Farbregister 1: Hintergrund dunkelblau out (VISMOD),a ld a,04Fh ; Farbregister 2: Vordergrund weiss out (VISMOD),a
; PRAM3 (der Code wird nicht benötigt, da in GINI erledigt s.u.) ;ld a,PRAM3 ; 73 ;out (COMNP),a ;ld a,04Ch ; 01 001100 ;out (PARAP),a ret
;------------------------------------------------------------------------------
GINI: call WE ld a,PRAM ; 70 call OC xor a ; 0 Startadresse L (SAD1L) call OP xor a ; 0 Startadresse H (SAD1M) call OP ld a,10100000b;0A0h ; 1010 0000 (LEN1L, 0,0, SAD1H) call OP ld a,01001111b;04Fh ; 01 001111 (WD=0, IM=1, LEN1H) call OP ; -> 001111 1010 = FA = 250 Zeilen ld a,STARTC call OC ret
OC = Ausgabe COMMAND mit FIFO-Prüfung OP = Ausgabe PARAMETER mit FIFO-Prüfung WE = Prüfung, ob fertig gezeichnet + FIFO-Prüfung
|
Dieser Beitrag wurde am 02.08.2026 um 20:38 Uhr von HeikoS editiert. |