Listing in BASIC mit eingerücktem linken Rand

Moderator: Rockford

Antworten
Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Hallo Programmierprofis,

ich möchte ein BASIC Listing mit eingerücktem linken Rand, also z.B. erst ab dem 10.Zeichen ausdrucken. Das ist nötig, um Listings auch mal abheften zu können. Mein Drucker (Präsident 6325) kann das grundsätzlich auch. Allerdings funktioniert diese Formatierung bei dem Befehl LIST"P:" nicht. Normale Texte werden eingerückt, aber eben das Listing nicht. Hier mal ein kleines Beispiel:
IMG_2548.jpeg
IMG_2548.jpeg (83.63 KiB) 614 mal betrachtet
Was mache ich falsch? Gibt es Tricks oder Umgehungslösungen. Oder geht das gar nicht?

Vielen Dank für Eure Hilfe.

Gruß
Manfred

Benutzeravatar
atarixle
Beiträge: 427
Registriert: 18.06.2021 21:19
Has thanked: 45 times
Been thanked: 88 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von atarixle »

Eine Umgehung wäre tatsächlich, das Listing mit LIST "D:program.TXT" abzuspeichern und als Text mit einer Textverarbeitung auszudrucken.

Benutzeravatar
Tigerduck
Beiträge: 391
Registriert: 17.08.2021 16:07
Has thanked: 201 times
Been thanked: 81 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Tigerduck »

Ich kenne jetzt deinen Drucker nicht so genau, aber ist es nicht möglich das Papier weiter links einzuspannen, dann sollte der Druck doch weiter rechts starten...

Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Vielen Dank für die Antworten.

Das Papier weiter links einzuspannen habe ich ausprobiert, ist aber bei meinem Drucker begrenzt und reicht nicht für den gewünschten Zweck:
IMG_2550.jpeg
IMG_2550.jpeg (93.91 KiB) 511 mal betrachtet
Der Tip mit List"D:Listing.TXT" hat aber geklappt. Mit dem Atariwriter braucht man nur die Datei zu laden und gleich wieder asdrucken. Als Drucker habe ich den 1025 ausgewählt. Das klappt prima:
IMG_2550.jpeg
IMG_2550.jpeg (93.91 KiB) 511 mal betrachtet
Mit den Startexter hat es nicht auf Anhieb funktioniert. Wenn man dort den Text lädt und so wie er ist wieder ausdruckt, wird nur die erste Zeile eingerückt. Das kann man sicher alles einstellen, aber das Programm ist ja ziemlich komplex ....

Mir reicht aber die Variante mit dem Atariwriter.

Vielen Dank und einen schönen Sonntag :-)
Dateianhänge
IMG_2552.jpeg
IMG_2552.jpeg (78.12 KiB) 511 mal betrachtet

Benutzeravatar
mp-one
Beiträge: 41
Registriert: 17.08.2021 16:52
Has thanked: 1 time
Been thanked: 68 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von mp-one »

Hallo,

bei EPSON und kompatiblen Druckern konnte man per ESC Code (u..a.) den linken Rand einstellen. Allerdings weiß ich nicht, ob das beim Präsidenten auch geht. ESC l (kleines L) war es beim Epson glaube ich. Danach sollten Listings mit dem gesetzten Rand ausgedruckt werden.

Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Du hast Recht, es ist das "kleine l", ich habe die "1" genommen. Im Handbuch des Druckers sehen sich die beiden Zeichen zum Verwechseln ähnlich. Natürlich habe ich das Programm aus dem Beitrag 1 mal mit dem kleinen l ausprobiert. Leider das gleiche Ergebnis. Da bin ich jetzt doch etwas verwundert. Mit der 1 hätte eigentlich nichts eingerückt werden dürfen (mit der 1 kann man den Zeilenabstand verändern). Leider gibt es nirgend vernünftige Literatur wie man mit den ESC-Codes in Atari Basic arbeitet. Einiges steht im Buch "Mein Atari-Computer", aber das hat mir in Bezug auf List "P:" auch nicht weitergeholfen.

Gruß
Manfred

Benutzeravatar
mp-one
Beiträge: 41
Registriert: 17.08.2021 16:52
Has thanked: 1 time
Been thanked: 68 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von mp-one »

Moin, nach ESC l kam noch die Anzahl der einzurückenden Zeichen. Die Syntax müsste auch in alten Handbüchern zu den Epson FX Druckern stehen. Ich schaue heute Abend noch mal nach.

Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Ich lade mal zwei Seiten aus dem Handbuch des Druckers hoch. Eine Seite beschreibt das setzen des linken Randes. Diese Seite ist aus dem Kapitel EPSON (Standard ESC/P-80/P-81). Die andere Seite ist aus dem Kapitel speziel für Atari 8 Bit. Dort ist zu sehen, dass im Programm offensichtlich der Dezimalwert des Steuercodes in des Programm eingetragen werden muss (Also z.B. aus ESC 0F wird CHR$ (15) ??? Der ATASCCI Code für das kleine l ist 108. Das funktioniert aber auch nicht. Irgendwas muss bei der Syntax des BASIC-Befehls nicht stimmen....
Dateianhänge
IMG_2553.jpeg
IMG_2553.jpeg (121.82 KiB) 309 mal betrachtet
IMG_2554.jpeg
IMG_2554.jpeg (110.82 KiB) 309 mal betrachtet

FlorianD
Beiträge: 421
Registriert: 19.08.2021 00:18
Has thanked: 74 times
Been thanked: 168 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von FlorianD »

probier mal folgendes

Code: Alles auswählen

10 LIST "P:"
20 LPRINT CHR$(27);"l";CHR$(10)
30 LIST "P:"
40 LPRINT CHR$(27);"l";CHR$(5)
50 LIST "P:"
dann müßte das Listing einmal linksbündig,
einmal mit 10 Zeichen Leerraum vor jeder Zeile
und einmal mit 5 Zeichen Leerraum vor jeder Zeile
gedruckt werden.

Funktioniert auf ATARI800MacX mit EPSON FX80 einwandfrei.
Bildschirmfoto 2025-11-24 um 18.44.16.png
Bildschirmfoto 2025-11-24 um 18.44.16.png (307.54 KiB) 247 mal betrachtet

Bei der von Dir gezeigten 2. Seite sind die Codes Hexadezimal angegeben, z.B. "ESC 0E", das muss dann erst in dezimal umgerechnet werden hex.0E=dez.14
Die CHR$ Befehle im ATARI Basic können nur Dezimalzahlen: CHR$(14)
In TURBO-Basic kannst Du auch Hexadezimalzahlen nehmen, dann aber mit "$" vornedran: CHR$($0E)

Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Danke für die Bestätigung, dass es eigentlich gehen muss. So in der Art habe ich schon einiges probiert. Ich habe eben auch noch mal dein Programm ausprobiert. Leider wieder ein Misserfolg.
IMG_2555.jpeg
IMG_2555.jpeg (974.88 KiB) 210 mal betrachtet
Ich benutze AltirraBasic 8K 1.58. Vielleicht sollte ich mal ein normales BASIC testen. Oder TurboBasic. Das ist auch eine gute Idee. An den Druckereinstellungen kann es eigentlich nicht liegen. Sperrschrift konnte ich ohne Probleme ausdrucken....

FlorianD
Beiträge: 421
Registriert: 19.08.2021 00:18
Has thanked: 74 times
Been thanked: 168 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von FlorianD »

mach mal hinter die schließende Klammer am Ende der Zeile 20 und 40 noch ein ; (Semikolon)
und guck was dann passiert

Code: Alles auswählen

10 LIST "P:"
20 LPRINT CHR$(27);"l";CHR$(10);
30 LIST "P:"
40 LPRINT CHR$(27);"l";CHR$(5);
50 LIST "P:"

Manfredini66
Beiträge: 91
Registriert: 22.08.2021 14:05
Has thanked: 33 times
Been thanked: 34 times
Kontaktdaten:

Re: Listing in BASIC mit eingerücktem linken Rand

Beitrag von Manfredini66 »

Ich habe das ausprobiert. Und auch noch andere Varianten mit Komma und Semikolon. Immer das gleich Ergebnis, der linke Rand bewegt sich nicht. Ich habe daher mal versucht, im Ausschlussverfahren den Fehler einzugrenzen. Dazu habe ich ein Beispiel (Sperrschrift Ein- und Ausschalten) aus dem Druckerhandbuch abgetippt. Ergebnis: Es funktioniert. Daraus schlussfolgere ich, dass die elektrische Kommunikation zwische Atari und Drucker funktioniert. Dann habe ich den Drucker mal mit einer anderen Interfacekassette an einen KC85/4 angeschlossen. Bei dieser Kombination funktioniert das Einrücken! Meine Schlussfolgerung: Der Drucker funktioniert auch. Die einzige Idde die ich dazu habe ist, dass das Atari Basic die ESC Sequenzen nicht richtig an den Drucker übermittelt, sobald Argumente (hier die Anzahl der einzurückenden Zeiche) enthalten sind. Diese Theorie wird auch dadurch gestützt, dass im Atari-Teil des Handbuchs keine entsprechenden Beispiele abgedruckt sind. Evtl. könnte mal jemand das Beispiel von Florian auf einem anderen Drucker, z.B. einem 1029 ausprobieren? Ich habe leider keinen Atari Drucker.
Dateianhänge
IMG_2558.jpeg
IMG_2558.jpeg (1.16 MiB) 18 mal betrachtet

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast