Beiträge von darkvision im Thema „GEOS Druckseiten in Bildschirm-Pixeln“

    Dann taugt das nicht als Erklärung dafür, dass die geoPaint-Seite kleiner als die geoWrite-Seite ist. War auch nur eine Vermutung.

    Wenn man mal ganz wild spekulieren will:

    In GeoPaint64/128 wird eine Seite in der Höhe in 5 Bildausschnitte unterteilt...

    * Ein Bildausschnitt hat in der Höhe 9 Datensätze (das ist das was in GeoPaint angezeigt wird).

    * 5 Bildausschnitte übereinander * 9 Datensätze = 45 Datensätze.

    * 45 Datensätze * 16 Pixel = 720 Pixel

    Zufall?

    ;) (Alles nur Spekulation...)


    Die Erklärung zu GeoWrite taugt aber nicht für GeoPaint (keine Kopf-/Fußzeilen, Keine "Scraps"...)

    Gab's nicht mal eine deutsche Seite wo das zumindest für GeoWrite erklärt wurde (da liegt u.a. auch der Sourcecode des alten Topdesk V1)? Fällt mir gerade nicht ein ....

    MegaAssembler-Handbuch Anhang F S. 403. Hier die korrigierte Fassung:

    Das ist evtl. auch des Pudels Kern, warum eine GeoPaint-Seite kleiner ist – die muss, wenn auch nur in der VLIR-Datei, komplett als Bitmap vorhanden sein.

    Ein GeoPaint-Bild liegt nirgendwo komplett als Bitmap vor. In einer GeoPaint-Datei ist es in Datensätze zu je zwei Card-Zeilen a 80 Cards inkl. Farbinfo aufgeteilt, und zudem noch gepackt. Das entspricht 45 Datensätze a 16 Pixel = 720 Pixel... VLIR kann bis zu 127 Datensätze verwalten.

    Ohne SourceCode zu geoPaint ist das aber alles nur Mutmaßen...

    Ich zitiere noch den Hitchhikers Guide to GEOS:

    Da werden die Werte im Prinzip auch bestätigt (94 Zeilen, 80 Cards, Abhängig vom Drucker).

    Heißt das, das die Originalgrafik (gegenüber quadratischen Pixeln) in die Länge gezerrt wird? Das würde ja bedeuten, dass hierdurch die Bildschirmdarstellung besser getroffen würde als wenn man die Pixel unverzerrt (also quadratisch) ausgäbe – denn PAL/NTSC verzerrt die Pixel ja auch, NTSC sogar auf das 1,5-fache in der Höhe.

    Evtl. weil sonst Grafiken in GeoPaint in der Höhe "gestaucht" werden wenn man es quadratisch ausgibt. Kann aber auch sein das ich die Seite einfach nur besser ausnutzen wollte.

    Code
    ;-----------------------------------------------------------------
    ;Max. Anzahl Zeichen / Zeile und max. Anzahl Zeilen
    ;ermitteln. (Ein Zeichen = 8 Grafikpunkte).
    ;-----------------------------------------------------------------
    :getdim     ldx    #$50            ;Max. Anzahl Zeichen (cards).
                ldy    #$5e            ;Max. Anzahl Zeilen.
                lda    #$00            ;Ohne Bedeutung ???
                rts                    ;Ende.

    Außerdem noch ein paar Kommentare:

    Code
    ;-----------------------------------------------------------------
    ;Umrechnung C64-Grafik / Druckergrafik.
    ;Da beim C64 8 benachbarte Punkte durch ein Byte dargestellt
    ;werden, der Drucker aber 8 untereinander liegende Punkte durch
    ;ein Byte darstellt, müssen die Daten umgerechnet werden.
    ;Beim LQ-Treiber werden dabei 8x8 Grafikpunkte auf 16x24
    ;Druckerpunkte umgerechnet.
    ;-----------------------------------------------------------------
    Code
    ;-----------------------------------------------------------------
    ;Umrechnung der Daten von 16x24 auf 16x20 Punkte.
    ;Beim Format 16x24 wird eine Seite länger als DIN A4 und bei
    ;16x16 Punkten wird die Seite nur zu 4/5 ausgenutzt. Deshalb
    ;werden von den 16 eingefügten Zwischenpunkten jeder Druck-
    ;spalte vier wieder entfernt. Dies fällt später im Ausdruck
    ;nicht auf. Das Seitenverhältniss liegt jetzt bei 1 : 1,25.
    ;-----------------------------------------------------------------
    Code
    ;-----------------------------------------------------------------
    ;Reset, Seitenlänge, Zeilenabstand 40/360 Zoll.
    ;Linker Rand (6 Zeichen), Oberer Rand (2 Zeile).

    Das ergibt 2,54/360*40*96($5e=Zeilen+2Z.oberer Rand)=27,1cm. Dazu kommen 3+13mm oberer und unterer Rand =28,7cm... also nicht ganz A4 hoch ausgenutzt, aber fast. Unten ca. 1cm+13mm Rand.

    Gegenrechnung: 2,54/180*20*96($5e=Zeilen+2Z.oberer Rand)=27,1cm. Die Auflösung betrug nämlich 180dpi.

    In der Breite waren das 80Zeichen (bei 180dpi):

    2,54/180*16*86($50=Zeichen+6Z.linker Rand)=19,4cm. Dazu kommen links/rechts je 3mm = 20,0cm... also auch nicht die ganze Breite. Rechts ca. 1cm+3mm Rand.

    Das ist aus meinem EPSON LQ+ Druckertreiber für den Stylus800.

    Mehr kann ich aber auch nicht mehr beitragen, ist zu lange her... Keine Ahnung ob die Rechnungen 100% stimmen, aber klingt nicht unlogisch.

    Die "besseren" Treiber haben ja Daten interpoliert, damit man die Dot-Matrix nicht mehr ganz so deutlich sieht. Also wurden da in der Regel in der Breite mehr als 640Pixel gesendet, einige Drucker konnten glaub ich nur 480Pixel. Da musste man das zusammenrechnen...

    Bei meinem Treiber waren as also max. 640x752 Pixel... wobei das nur bei Write&Co eine Rolle spielt. GeoPaint kann ja nicht mehr wie 720. D.h. die GeoWrite-Seiten waren etwas länger ...