GEOS Druckseiten in Bildschirm-Pixeln

Es gibt 31 Antworten in diesem Thema, welches 2.878 mal aufgerufen wurde. Der letzte Beitrag (28. April 2023 um 19:51) ist von Retrofan.

  • GeoWrite, geoPaint und geoPublish dienen ja zum Erstellen und Ausdrucken von Dokumenten. Daher muss GEOS irgendwie festlegen, wie viele Pixel (in Höhe und Breite) auf eine Seite passen. Sind das einfach 2 x 4 C64-Bildschirme, also 640 x 800 Pixel (wie bei Printfox/Pagefox) oder sind das irgendwelche krummen oder nicht über alle Programme hinweg einheitlichen Werte?

    Und gehe ich recht in der Annahme, dass GEOS beim Ausdruck immer von US-Letter (8,5 x 11") ausgeht und in Kauf nimmt, dass das bei DIN A4 (210 x 297 mm) nicht ganz passt?

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Eine GEOS- (bzw. Geowrite/Geopaint-) Druckseite hat immer 640x720 Pixel - das dürfte vermutlich dem Seitenverhältnis von US-Letter entsprechen, keine Ahnung.

    GeoPublish arbeitet aber halbwegs vektorbasiert - eine feste Auflösung dürfte ein GeoPublish-Dokument also erst mit dem Ausdruck auf einem entsprechenden, nicht-Postscript-fähigen Drucker erhalten. Wie das im Detail funktioniert,weiß ich nicht.

  • Eine GEOS- (bzw. Geowrite/Geopaint-) Druckseite hat immer 640x720 Pixel

    Danke.

    Ich habe so eine ganz schwache Erinnerung an eine Behauptung, die Werte seien bei Paint und Write nicht identisch. Das kannst du also nicht bestätigen, oder?

    Kannst du vielleicht noch was zu den Rändern sagen? Ich nehme nicht an, dass diese Auflösung randlos auf Papier gedruckt wird. Hast du vielleicht einen Ausdruck, auf dem du messen/abschätzen könntest, wieviel Rand an den 4 Seiten (weiß) bleibt, also nicht bedruckt wird?

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Eine GEOS- (bzw. Geowrite/Geopaint-) Druckseite hat immer 640x720 Pixel

    Das gilt nur für GeoPaint (und vielleicht GeoPubish; weiß ich nicht so genau). Bei Geowrite ist die Seitenlänge variabel. Da gibt es einen Wert im Druckertreiber, der die Seitenlänge bestimmt. Ist kein Druckertreiber vorhanden, wird irgendein Standard-Wert benutzt. Deshalb sollte man bei Geowrite eigentlich immer den passenden Duckertreiber aktiviert haben, da sonst die Seitenlänge unter Umständen auf einem anderen Computer (anderer Druckertreiber) ändert ....

    Wie geoCalc bzw. geoFile das handhaben, kann ich nicht sagen.

    Gruß

    Werner

  • Bei Geowrite ist die Seitenlänge variabel. Da gibt es einen Wert im Druckertreiber, der die Seitenlänge bestimmt.

    OK, das bestätigt im Grunde das, was ich irgendwann mal gehört hatte. 640 px Breite stimmt aber? Und wird die Höhe im Treiber in Pixeln angegeben oder in Zeilen oder wie?

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • 640 px Breite stimmt aber?

    Ja.

    Und wird die Höhe im Treiber in Pixeln angegeben oder in Zeilen oder wie?

    Wie das genau war, kann ich so ohne weiteres garnicht sagen. Müßte ich mich erst wieder schlau machen :wink: . Mit Drucken am C64/128 habe ich schon Jahrzehnte nichts mehr am Hut. Meine aber das waren Druck-Zeilen. Wenn ich was finde, melde ich mich ...

    Diese Werte sind aber für den "Normalo" nicht änderbar. Da muß man schon mit einem Disk-Monitor ran und das in den Treiber eintragen.

    Gruß

    Werner

  • Wenn ich was finde, melde ich mich ...

    Danke. Die Höhe ist für mich aber nicht ganz so zentral wie die Breite.

    Diese Werte sind aber für den "Normalo" nicht änderbar. Da muß man schon mit einem Disk-Monitor ran und das in den Treiber eintragen.

    Aber damit wäre es theoretisch möglich, eine DIN A4-Seite in der Höhe auszunutzen, oder? US Letter hat ja in der Höhe ca. 279 mm, A4 hingegen 297, also 1,8 cm (und damit geschätzt 3 Textzeilen) mehr.

    ---

    Aber was mich noch interessiert: Nutzen die 640 px Breite die volle Breite aus, die ein damaliger Matrix-Drucker (z.B. beim normalen 80-Zeichen-Textdruck) bedruckt hat? Kann jemand (vielleicht auf einem alten Ausdruck) mal messen, wie breit die Fläche/Zeile ist, die von GEOS (speziell geoWrite) bedruckt wird?

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Aber damit wäre es theoretisch möglich, eine DIN A4-Seite in der Höhe auszunutzen,

    Nicht nur theoretisch. Es gibt etliche Druckertreiber, die unterschiedliche Seitenlängen enthalten. Deshalb kommt es immer wieder vor, daß ein GeoWrite-Dkument beim Starten umformatiert werden muß, bevor es gestartet wird.... Kann auch sein, daß die beim originalen deutsche Geos mitgelieferten Treiber eine andere Seitenlänge haben als die US-Treiber.

    Ich hatte vor vielen Jahren mal eine Treiber von W. Grimm (HP DeskJet) zum Testen, der war auf seine Quelltext-Ausdrucke mit kleinem Font eingestellt....

    Gruß

    Werner

  • Kann auch sein, daß die beim originalen deutsche Geos mitgelieferten Treiber eine andere Seitenlänge haben als die US-Treiber.

    Das wäre natürlich sinnvoll gewesen.

    ---

    Nochmal zur Druckbreite: kann ich davon ausgehen, dass links und rechts (wie später bei Laserdruckern) rund 5 mm unbedruckbarer Rand (bei Papier mit Traktor-Rand natürlich nach Abtrennen desselben) frei blieb, also bei 210 mm Breite rund 200 mm bedruckt wurden (640 Pixel auf 200 mm Breite)? Oder war der Rand damals breiter? Ich weiß es nicht mehr und finde auch keine alten Ausdrucke.

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • ass links und rechts (wie später bei Laserdruckern) rund 5 mm unbedruckbarer Rand

    Soweit ich mich erinnere, hatten unterschiedliche Drucker auch unterschiedliche "nicht bedruckbare" Bereiche ....

    Und wer konnte sich 1989 und später einen Laserdrucker leisten :wink: ....

  • Und wer konnte sich 1989 und später einen Laserdrucker leisten

    Privat wohl nur die wenigsten. Aber mir ging es auch eher um die damals üblichen Drucker für Zuhause, also Dot-Matrix-Drucker. Man bewarb damals ja die Eigenschaft, 80 Zeichen pro Zeile drucken zu können – aber auf welche Breite? 200 mm, 190 mm, 180 mm? Und musste GEOS für die 640 px einen glatten Teiler der Druckerauflösung verwenden?

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Es ist mE gar nicht so einfach, herauszufinden, was für Eigenschaften frühe Matrix-Drucker hatten. Ich habe eben das Epson FX-80 Manual überflogen und bei dem war es so, dass er horizontal entweder 80 Zeichen x 6 Dots oder 80 Zeichen x 11 (überlappende) Dots drucken konnte. Das wären entweder 480 (zu wenig für GEOS) oder 880 Dots (zu viel) gewesen.

    Ging GEOS beim Drucker von einer 8x8 Dot-Matrix aus? Waren die Commodore-Drucker so aufgebaut? Dann wären ja 8 Dots x 80 Zeichen genau die 640 Pixel/Dots gewesen, von denen GEOS ausging.

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • Man kann probieren die mit Geos 64/128 original gelieferten Treiber mit PrinterCreator oder PrinterEdit (auch auf den Treiber-Disketten zu finden) zu öffnen und so nach Werten für Seitenbreite/Seitenlänge zu schauen (die Werte sind jeweils in Cards (8 Pixel)).

    Bei moderneren Treibern (z.B. R. & R. Bachmann, die Geos-LQ-Treiber, W. Grimm und hat nicht sogar darkvision früher mal Druckertreiber erstellt?) wird man wohl direkt im Druckertreiber schauen müssen. Dazu sind aber Programmierkentnisse erforderlich.

    Druckertreiber (beginnen ab Adresse $7900) enthalten bei $790c einen Sprung auf die Routine GetDimensions, die die Breite und Länge im x- bzw. y-Register zurück gibt. Durch Analyse dieser Routine sollte man die Stelle finden, wo die Werte gespeichert sind (und somit die Werte :wink: ). Wie gesagt, GeoWrite holt sich bei jedem Start von GeoWrite diese Werte aus dem aktuell eingestellten Druckertreiber.

    Ich bin da jetzt erstmal raus, Drucker ist nicht wirklich mein Gebiet :wink: .

    Gruß

    Werner

  • 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 ...

  • Ah, sorry - das mit der variablen Geowrite-Seitenlänge hatte ich längst verdrängt - aber meine C64-Druckzeiten sind ja auch schon ein paar Jahrzehnte her.

    9-Nadel-Drucker - also das Ausgabegerät, für das C64-Druckprogramme i.d.R. gedacht waren - hatten horizontal diverse Auflösungen, u.a. 60, 120 oder 240 dpi, gab glaube ich auch noch höher. Als ich mich mit Drucken beschäftigt habe, galt 240 dpi als Standard, den man voraussetzen konnte - ich glaube auf einer A4-Seite waren das 1920 Pixel pro Zeile.

    Die Drucker hatten 9 Nadeln, von denen beim Grafikdruck - den GEOS im Regelfall nutzt - aber nur 8 benutzt wurden. Die Nadeln waren untereinander angeordnet, mit 1/72 Zoll Abstand. Die vertikale Auflösung war dann immer ein Vielfaches von 1/72 Zoll, meine ich - also 1/144 Zoll, bzw. 1/216 Zoll. Vertikal waren das auf einer A4-Seite so um die 2400 Pixel, WIMRE.

    Die (rund) 640x800 Bildpunkte Auflösung für eine Druckseite bei vielen C64 Programmen sind ziemlich genau ein Drittel der maximalen (9-Nadel-) Druckerauflösung - das vereinfacht das Skalieren bzw. Kantenglätten des Ausdrucks natürlich.

    Treiber mit immer besserer Kantenglättung zu schreiben war eine Zeitlang ein Volkssport. Trotzdem sieht man Druckseiten aus dem C64 ihre Herkunft in der Regel an - es wird ja nur ein Drittel der maximalen Auflösung des Druckers genutzt. Ein Workaround war, Zeichensätze in verschiedenen Auflösungen zu benutzen - GeosLQ macht das beispielsweise: Geos-typische Version des Fonts für die Bildschirm-Anzeige, eine erheblich höher aufgelöste Version für den Ausdruck.

  • Boah, drucken am/mit dem C64/128 ist schon lange her.

    Ich weiss noch das Endlospapier pro Seite länger war als A4 Seiten, somit konnte es bei längeren Ausdrucken passieren, das Textzeilen genau auf der Abrisslinie landeten.

    Gab es nicht auch Drucksystem wo man das Papier wählen konnte (TextPrint, GeosLQ)?

    Ach ich werd auch nicht mehr jünger :alt:

    Bei GW habe ich eigentlich immer einen Rand gelassen.

    Mit GeoPaint habe ich nicht wirklich viel gedruckt, sah immer irgendwie :poop:aus, egal mit welchem Treiber.

    Trotzdem sieht man Druckseiten aus dem C64 ihre Herkunft in der Regel an

    Mit einem Epson LQ550 (24-Nadler) und GeosLQ (in max. Auflösung) sahen die Texte professionell aus.

    Gruss C=Mac.

  • Danke euch für die Infos.

    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.                                                                                                  
    ;-----------------------------------------------------------------

    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.

    Bitte melde dich an, um diesen Anhang zu sehen.

    (ich fand früher diese amerikanischen Produkt-Fotos immer etwas seltsam, weil mir die Bildschirmdarstellung zu "quadratisch" vorkam – aber das war halt NTSC)

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.

  • 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.

  • Hallo,

    so, ich habe jetzt doch mal nachgeschaut :wink: .

    Auf meinen Geos- (MP3-) Disketten befindet sich der Druckertreiber "HP DeskJet HQ" von W. Grimm. Der tat damals gute Dienste, auch in Farbe :wink: . Hatte einen HP DeskJet 670C. Später hatte ich dann nochmal einen neueren HP-Drucker, weiß nicht mehr welcher. Da funktionierte der Treiber immer noch, aber der Ausdruck war immer horizontal verschoben. Seither wird hier mit Geos/MP3 nicht mehr gedruckt.

    Der genannte Treiber hat die gleichen Werte für Breite und Höhe, wie von darkvision hier beschrieben: 80 Cards Breite und 94 Cards Höhe.

    Gruß

    Werner

  • Der genannte Treiber hat die gleichen Werte für Breite und Höhe, wie von darkvision hier beschrieben: 80 Cards Breite und 94 Cards Höhe.

    Also 640 x 752 Dots – ohne weitere Auflösungs-Tricks und Verbesserungen. Was bei unverzerrten Dots zu einer vertikalen Stauchung gegenüber der Bildschirmdarstellung führt. Das schien damals™ aber niemanden (nicht mal Nordamerikaner) großartig gestört zu haben – war eben einfach so. Vielleicht hatte man auch eher die Einstellung, dass es im Druck endlich unverzerrt dargestellt wird.

    Seither wird hier mit Geos/MP3 nicht mehr gedruckt.

    Im Prinzip dürfte es ja auch global so gewesen sein, dass Drucken mit dem C64 deutlich weniger wurde, als die Geräte aus dem SOHO-Bereich verschwanden und durch 16-Bit-Maschinen ersetzt wurden. Für’s am C64 so beliebte Zocken brauchte man ja keinen Drucker. Und auch heutzutage dominiert ja das Spielen am C64, was ich persönlich ja ein wenig schade finde (trotz Beteiligung an diversen Spiele-Projekten) – aber natürlich nachvollziehen kann.

    Bitte melde dich an, um diesen Link zu sehen. | Meine Lieblings-Themen im Forum64:

    Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen. | Bitte melde dich an, um diesen Link zu sehen.