Listing in BASIC mit eingerücktem linken Rand
Moderator: Rockford
-
Manfredini66
- Beiträge: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Listing in BASIC mit eingerücktem linken Rand
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:
Was mache ich falsch? Gibt es Tricks oder Umgehungslösungen. Oder geht das gar nicht?
Vielen Dank für Eure Hilfe.
Gruß
Manfred
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:
Was mache ich falsch? Gibt es Tricks oder Umgehungslösungen. Oder geht das gar nicht?
Vielen Dank für Eure Hilfe.
Gruß
Manfred
- 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
Eine Umgehung wäre tatsächlich, das Listing mit LIST "D:program.TXT" abzuspeichern und als Text mit einer Textverarbeitung auszudrucken.
- 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
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: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
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:
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:
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
Das Papier weiter links einzuspannen habe ich ausprobiert, ist aber bei meinem Drucker begrenzt und reicht nicht für den gewünschten Zweck:
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:
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 (78.12 KiB) 640 mal betrachtet
- 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
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.
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: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
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
Gruß
Manfred
- 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
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: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
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 (121.82 KiB) 438 mal betrachtet
-
- IMG_2554.jpeg (110.82 KiB) 438 mal betrachtet
-
FlorianD
- Beiträge: 422
- Registriert: 19.08.2021 00:18
- Has thanked: 74 times
- Been thanked: 169 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
probier mal folgendes
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.
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)
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:"
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.
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: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
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.
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....
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: 422
- Registriert: 19.08.2021 00:18
- Has thanked: 74 times
- Been thanked: 169 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
mach mal hinter die schließende Klammer am Ende der Zeile 20 und 40 noch ein ; (Semikolon)
und guck was dann passiert
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: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
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 (1.16 MiB) 147 mal betrachtet
-
Erhard
- Beiträge: 1188
- Registriert: 04.11.2021 15:52
- Has thanked: 141 times
- Been thanked: 373 times
- Kontaktdaten:
Listing in BASIC mit eingerücktem linken Rand
Ich habe einen Drucker, den man im Hex-Dump-Modus starten kann.
Dann kann man im Ausdruck sehen, was der Rechner nun wirklich geschickt hat.
Damit konnte ich früher einen Fehler des Wiesemann-Centronics Interface aufdecken:
Im Grafikmodus übersetzt das Interface das Atari EOL in CR LF.
Im Grafikmodus darf aber keine Übersetzung der Daten erfolgen.
Darüber hinaus bekam der Drucker dann pro in den Bilddaten enthaltenem 155 eben 2 Zeichen.
Da man aber beim Grafikdruck im Befehl angeben muß, wieviele Bytes als Grafikdruck kommen werden ...
PS: bei emulierten Druckern habe ich schon festgestellt, daß unter Umständen nicht alle Fähigkeiten deren Original implementiert wurden.
Dann kann man im Ausdruck sehen, was der Rechner nun wirklich geschickt hat.
Damit konnte ich früher einen Fehler des Wiesemann-Centronics Interface aufdecken:
Im Grafikmodus übersetzt das Interface das Atari EOL in CR LF.
Im Grafikmodus darf aber keine Übersetzung der Daten erfolgen.
Darüber hinaus bekam der Drucker dann pro in den Bilddaten enthaltenem 155 eben 2 Zeichen.
Da man aber beim Grafikdruck im Befehl angeben muß, wieviele Bytes als Grafikdruck kommen werden ...
PS: bei emulierten Druckern habe ich schon festgestellt, daß unter Umständen nicht alle Fähigkeiten deren Original implementiert wurden.
Jede Info, die zu Hause auf meinem Rechner liegt habe ich unterwegs nicht verfügbar.
Jede Info, die im Netz liegt finde ich nicht wieder, wenn ich sie benötige.
Jede Info, die im Netz liegt finde ich nicht wieder, wenn ich sie benötige.
-
Manfredini66
- Beiträge: 93
- Registriert: 22.08.2021 14:05
- Has thanked: 33 times
- Been thanked: 34 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
Das ist ein guter Ansatz 
Der Drucker kann HEX DUMP und ich habe mal probiert:
Ich habe das Listing erst ausgedruckt und den Drucker dann noch mal im HEX DUMP Modus gestartet. Dann habe ich das kleine Programm gestartet. Der Drucker hat dann erstmal die erste Zeile gedruckt. Dann habe ich auf offline umgeschaltet und dann wurde auch noch der Rest ausgedruckt. Bloß wie interpretiere ich das jetzt? Ist "1B" die 27 und "6C" das kleine l?? Und was bedeuten die Zeichen an Position 11 und 21?
Der Drucker kann HEX DUMP und ich habe mal probiert:
Ich habe das Listing erst ausgedruckt und den Drucker dann noch mal im HEX DUMP Modus gestartet. Dann habe ich das kleine Programm gestartet. Der Drucker hat dann erstmal die erste Zeile gedruckt. Dann habe ich auf offline umgeschaltet und dann wurde auch noch der Rest ausgedruckt. Bloß wie interpretiere ich das jetzt? Ist "1B" die 27 und "6C" das kleine l?? Und was bedeuten die Zeichen an Position 11 und 21?
- DjayBee
- Beiträge: 1136
- Registriert: 17.08.2021 04:02
- Has thanked: 858 times
- Been thanked: 438 times
- Kontaktdaten:
Re: Listing in BASIC mit eingerücktem linken Rand
Der Hexdump sieht korrekt aus, nur dass du versehentlich Kommata statt Strichpunkten verwendet hast.
Wiederhol es nochmal mit
20 PRINT #2;CHR$(27);"l";CHR$(10);"TEST"
Dann müsste es 1B 6C 0A 54 45 53 54 ergeben.
Wiederhol es nochmal mit
20 PRINT #2;CHR$(27);"l";CHR$(10);"TEST"
Dann müsste es 1B 6C 0A 54 45 53 54 ergeben.
Re: Listing in BASIC mit eingerücktem linken Rand
Es muss gehen,
ich hatte früher auch nen Präsident 6320 und konnte Listings wie Du es Dir vorstellst, ausdrucken.
Leider habe ich den Drucker seit ca. 1995 nicht mehr.
Dafür kam ein HP-Lasejet 4L der am Paralellport des 16K Bibomons hing.
Auch bei dem ging es per ESC- Steuerbefehlen.
ich hatte früher auch nen Präsident 6320 und konnte Listings wie Du es Dir vorstellst, ausdrucken.
Leider habe ich den Drucker seit ca. 1995 nicht mehr.
Dafür kam ein HP-Lasejet 4L der am Paralellport des 16K Bibomons hing.
Auch bei dem ging es per ESC- Steuerbefehlen.
keine PN's mehr! Bitte per email kontaktieren! atari1450xld©mega-hz.de
-
Erhard
- Beiträge: 1188
- Registriert: 04.11.2021 15:52
- Has thanked: 141 times
- Been thanked: 373 times
- Kontaktdaten:
Listing in BASIC mit eingerücktem linken Rand
.
Das $0A ist Dein CHR$(10)
Das $9B ist das EOL
Und dann noch nachfolgender Schrott aus dem nicht "geflushtem" Puffer.
Insgesamt sind es 40 Bytes und das ist glaube ich genau die Puffergröße für den Drucker auf dem Atari.
Die $20 sind die durch das Komma verursachten Leerzeichen.Manfredini66 hat geschrieben: ↑Heute 14:36Bloß wie interpretiere ich das jetzt? Ist "1B" die 27 und "6C" das kleine l?? Und was bedeuten die Zeichen an Position 11 und 21?
Das $0A ist Dein CHR$(10)
Das $9B ist das EOL
Und dann noch nachfolgender Schrott aus dem nicht "geflushtem" Puffer.
Insgesamt sind es 40 Bytes und das ist glaube ich genau die Puffergröße für den Drucker auf dem Atari.
Jede Info, die zu Hause auf meinem Rechner liegt habe ich unterwegs nicht verfügbar.
Jede Info, die im Netz liegt finde ich nicht wieder, wenn ich sie benötige.
Jede Info, die im Netz liegt finde ich nicht wieder, wenn ich sie benötige.
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast