Oder der Citizen iDP 560
So einen kleinen Racker hab ich aktiv an meinem C64. Zwar langsam und laut, aber ein idealer Kassen/Etikettendrucker. Druckbreite 40 Zeichen.
There are 782 replies in this Thread which has previously been viewed 66,954 times. The latest Post (
Oder der Citizen iDP 560
So einen kleinen Racker hab ich aktiv an meinem C64. Zwar langsam und laut, aber ein idealer Kassen/Etikettendrucker. Druckbreite 40 Zeichen.
Kassen/Etikettendrucker
Gabs dafür auch Klebeetiketten?
Kassen/Etikettendrucker
Gabs dafür auch Klebeetiketten?
Da kann man ganz herkömmliche Etiketten dafür benutzen, is nix spezifisches
Ich fände es schon super, wenn man mit Claus' Treiber auf gängigen Nadeldruckern drucken könnte. Epson, Star...
Falls man das igrendwie auf seriell IEC ausgeben könnte (?), kämen die Commodore Drucker, oder eben Star Drucker mit IEC Modulen mit in die Auswahl.
Derzeit ist es eher ein Parallel-Port Treiber als ein Druckertreiber so wie ich ClausS verstehe, werden weiterhin die Facit Routinen benutzt, sobald zusätzliche Routinen für EPSON geschrieben wurden die auf dem selben Weg mit eingebunden werden sollte man mit einem gängigen User-Port-Druckerkabel auf allen EPSON kompatiblen Centronics-Druckern drucken können.
Es ist also nicht mehr der Plan die ROMs zu patchen sondern den von TESA angedachten Weg über Sonderprogramme zu nutzen.
Der würde es auch theoretisch möglich machen weitere Arten von Ports und Befehlssätzen zu unterstützen:
Sinnvoll erscheint mir:
folgende Porttypen:
- User-Port mit Standardbelegung für EPSON kompatible Drucker
- IEC-Bus für Drucker mit internem oder externem Commodore Interface
- User-Port seriell (RS232) für EPSON kompatible Drucker oder Bondrucker ohne Parallel Port
an Drucker Treibern:
- EPSON wohl mit Abstand der wichtigste Standard
- IBM Proprinter die allermeisten Drucker die diesen Standard unterstützten, unterstützen ebenfalls den EPSON Standard
- Commodore (erfodert IEC Support) Der MPS-801 und MPS-803 werden definitiv fummelig da sie nur 7 Reihen statt 8 im Grafikmodus unterstützt
der MPS-802 bzw. VC-1526 sollte da besser geeignet sein.
- HP PCL (nicht HP GL), Please login to see this link. für DeskJet und Laserjet kompatible Drucker.
Da HP mit 150, 300 und später 600 DPI arbeitet müsste man hier wohl die Ausgabe etwas verkleinern. Also 75DPI statt 72DPI also eine Verkleinerung auf 96% der original Größe,
zuätzlich müßte man die Pixel verdoppeln um auf 150DPI zu kommen.
Um Missverständnissen vorzubeugen, dies ist keine Aufforderung alles aufgelistete umzusetzen!
Es soll lediglich eine Übersicht bieten.
Display MoreIch fände es schon super, wenn man mit Claus' Treiber auf gängigen Nadeldruckern drucken könnte. Epson, Star...
Falls man das igrendwie auf seriell IEC ausgeben könnte (?), kämen die Commodore Drucker, oder eben Star Drucker mit IEC Modulen mit in die Auswahl.Derzeit ist es eher ein Parallel-Port Treiber als ein Druckertreiber so wie ich ClausS verstehe, werden weiterhin die Facit Routinen benutzt, sobald zusätzliche Routinen für EPSON geschrieben wurden die auf dem selben Weg mit eingebunden werden sollte man mit einem gängigen User-Port-Druckerkabel auf allen EPSON kompatiblen Centronics-Druckern drucken können.
Es ist also nicht mehr der Plan die ROMs zu patchen sondern den von TESA angedachten Weg über Sonderprogramme zu nutzen.
Der würde es auch theoretisch möglich machen weitere Arten von Ports und Befehlssätzen zu unterstützen:
Sinnvoll erscheint mir:
folgende Porttypen:
- User-Port mit Standardbelegung für EPSON kompatible Drucker- IEC-Bus für Drucker mit internem oder externem Commodore Interface
- User-Port seriell (RS232) für EPSON kompatible Drucker oder Bondrucker ohne Parallel Port
an Drucker Treibern:
- EPSON wohl mit Abstand der wichtigste Standard
- IBM Proprinter die allermeisten Drucker die diesen Standard unterstützten, unterstützen ebenfalls den EPSON Standard
- Commodore (erfodert IEC Support) Der MPS-801 und MPS-803 werden definitiv fummelig da sie nur 7 Reihen statt 8 im Grafikmodus unterstützt
der MPS-802 bzw. VC-1526 sollte da besser geeignet sein.
- HP PCL (nicht HP GL), Please login to see this link. für DeskJet und Laserjet kompatible Drucker.
Da HP mit 150, 300 und später 600 DPI arbeitet müsste man hier wohl die Ausgabe etwas verkleinern. Also 75DPI statt 72DPI also eine Verkleinerung auf 96% der original Größe,
zuätzlich müßte man die Pixel verdoppeln um auf 150DPI zu kommen.
Um Missverständnissen vorzubeugen, dies ist keine Aufforderung alles aufgelistete umzusetzen!
Es soll lediglich eine Übersicht bieten.
mach mal 😌
Display MoreDisplay MoreIch fände es schon super, wenn man mit Claus' Treiber auf gängigen Nadeldruckern drucken könnte. Epson, Star...
Falls man das igrendwie auf seriell IEC ausgeben könnte (?), kämen die Commodore Drucker, oder eben Star Drucker mit IEC Modulen mit in die Auswahl.Derzeit ist es eher ein Parallel-Port Treiber als ein Druckertreiber so wie ich ClausS verstehe, werden weiterhin die Facit Routinen benutzt, sobald zusätzliche Routinen für EPSON geschrieben wurden die auf dem selben Weg mit eingebunden werden sollte man mit einem gängigen User-Port-Druckerkabel auf allen EPSON kompatiblen Centronics-Druckern drucken können.
Es ist also nicht mehr der Plan die ROMs zu patchen sondern den von TESA angedachten Weg über Sonderprogramme zu nutzen.
Der würde es auch theoretisch möglich machen weitere Arten von Ports und Befehlssätzen zu unterstützen:
Sinnvoll erscheint mir:
folgende Porttypen:
- User-Port mit Standardbelegung für EPSON kompatible Drucker- IEC-Bus für Drucker mit internem oder externem Commodore Interface
- User-Port seriell (RS232) für EPSON kompatible Drucker oder Bondrucker ohne Parallel Port
an Drucker Treibern:
- EPSON wohl mit Abstand der wichtigste Standard
- IBM Proprinter die allermeisten Drucker die diesen Standard unterstützten, unterstützen ebenfalls den EPSON Standard
- Commodore (erfodert IEC Support) Der MPS-801 und MPS-803 werden definitiv fummelig da sie nur 7 Reihen statt 8 im Grafikmodus unterstützt
der MPS-802 bzw. VC-1526 sollte da besser geeignet sein.
- HP PCL (nicht HP GL), Please login to see this link. für DeskJet und Laserjet kompatible Drucker.
Da HP mit 150, 300 und später 600 DPI arbeitet müsste man hier wohl die Ausgabe etwas verkleinern. Also 75DPI statt 72DPI also eine Verkleinerung auf 96% der original Größe,
zuätzlich müßte man die Pixel verdoppeln um auf 150DPI zu kommen.
Um Missverständnissen vorzubeugen, dies ist keine Aufforderung alles aufgelistete umzusetzen!
Es soll lediglich eine Übersicht bieten.
mach mal 😌
Eine Auflistung habe ich erstellt.
Da ich kein 6502 Programmierer bin, kann ich bei Bedarf nur die Steuersequenzen zusammen suchen, was ich für EPSON getan habe.
Ich könnte dabei helfen eine Hardwarebastelei zu erstellen wenn das gewünscht ist, ich habe ja bereits einige Vorschläge geäußert was machbar ist.
Sinn macht das aber nur wenn jemand mit einem entsprechenden Gerät daran interessiert ist und seinen TESA 6240.
Selbst mit dem aktuellen Stand sollte eine kleine externe Hardware möglich sein, die Daten am UserPort abgreift und dann anzeigt oder ausdruckt.
Display MoreDerzeit ist es eher ein Parallel-Port Treiber als ein Druckertreiber so wie ich ClausS verstehe, werden weiterhin die Facit Routinen benutzt, sobald zusätzliche Routinen für EPSON geschrieben wurden die auf dem selben Weg mit eingebunden werden sollte man mit einem gängigen User-Port-Druckerkabel auf allen EPSON kompatiblen Centronics-Druckern drucken können.
Es ist also nicht mehr der Plan die ROMs zu patchen sondern den von TESA angedachten Weg über Sonderprogramme zu nutzen.
Der würde es auch theoretisch möglich machen weitere Arten von Ports und Befehlssätzen zu unterstützen:
Sinnvoll erscheint mir:
folgende Porttypen:
- User-Port mit Standardbelegung für EPSON kompatible Drucker- IEC-Bus für Drucker mit internem oder externem Commodore Interface
- User-Port seriell (RS232) für EPSON kompatible Drucker oder Bondrucker ohne Parallel Port
an Drucker Treibern:
- EPSON wohl mit Abstand der wichtigste Standard
- IBM Proprinter die allermeisten Drucker die diesen Standard unterstützten, unterstützen ebenfalls den EPSON Standard
- Commodore (erfodert IEC Support) Der MPS-801 und MPS-803 werden definitiv fummelig da sie nur 7 Reihen statt 8 im Grafikmodus unterstützt
der MPS-802 bzw. VC-1526 sollte da besser geeignet sein.
- HP PCL (nicht HP GL), Please login to see this link. für DeskJet und Laserjet kompatible Drucker.
Da HP mit 150, 300 und später 600 DPI arbeitet müsste man hier wohl die Ausgabe etwas verkleinern. Also 75DPI statt 72DPI also eine Verkleinerung auf 96% der original Größe,
zuätzlich müßte man die Pixel verdoppeln um auf 150DPI zu kommen.
Um Missverständnissen vorzubeugen, dies ist keine Aufforderung alles aufgelistete umzusetzen!
Es soll lediglich eine Übersicht bieten.
Um das Ganze zum funktionieren zu bringen, werden 2 Vectoren im TESA-Arbeitsbereich auf eigene Routinen umgelenkt.
Bisher ist das die Druckerportinitialisierung, und die Ausgaberoutine fuer ein Byte auf den Drucker.
Moechte man die ESC-Sequenzen anpassen, muessen weitere Vectoren auf eigene Routinen umgelenkt werden. Das ist meiner Einschaetzung nach nicht sehr viel Aufwand. Es muessen lediglich die ESC-Sequenzen vorhanden sein. Da muesste jemand die richtigen ESC-Sequenzen bereit stellen. Ich kann diese dann gerne in mein Programm mit einbinden.
Testen kann ich allerdings nur unter VICE.
Und btw. Es war nie mein Plan, das TESA ROMS zu patchen.
Wer meine Beitraege aufmerksam gelesenhat, wird feststellen, das ich von Anfang an geschrieben habe, dass ich das ueber eine Erweiterung installieren moechte. (P.S. das ist nicht gegen dich gerichtet Natas)
Und ja, ueber diesen Weg ist es moeglich, fast alles im TESA ROM anzupassen, vorausgesetzt man weiss wie ![]()
Eine Serielle Schnittstelle ist aber dann doch noch eine etwas andere Herausforderung.
Wenn sich da jemand bereit erklaert, eine fertige in Assembler geschriebene Routine, welch nicht die 'normalen' C64 Kernal-Einsprungadressen nutzt, zur Verfuegung zu stellen, dann kann ich auch dieses eventuell auch einbauen.
Aber das dauert meiner Einschaetzung nach etwas laenger.
Ich habe ja versprochen, das ich den Quellcode zur Verfuegung stelle. Ich habe wie schon geschrieben ca. 60% des Quellcodes analysiert, und auch dokumentiert. Eventuell werde ich den Quellcode auch schon oeffentlich machen, wenn er nicht 100%tig fertig ist.
Mal sehen, wie weit ich die naechsten 3 Wochen komme.
Edit:
Eine Auflistung habe ich erstellt.
Da ich kein 6502 Programmierer bin, kann ich bei Bedarf nur die Steuersequenzen zusammen suchen, was ich für EPSON getan habe.
Ich könnte dabei helfen eine Hardwarebastelei zu erstellen wenn das gewünscht ist, ich habe ja bereits einige Vorschläge geäußert was machbar ist.
Sinn macht das aber nur wenn jemand mit einem entsprechenden Gerät daran interessiert ist und seinen TESA 6240.
Selbst mit dem aktuellen Stand sollte eine kleine externe Hardware möglich sein, die Daten am UserPort abgreift und dann anzeigt oder ausdruckt.
so habe ich das auch aufgefasst.
Bis dahin
Viele Liebe Gruesse aus dem fernen China
Claus
Display MoreDisplay MoreDerzeit ist es eher ein Parallel-Port Treiber als ein Druckertreiber so wie ich ClausS verstehe, werden weiterhin die Facit Routinen benutzt, sobald zusätzliche Routinen für EPSON geschrieben wurden die auf dem selben Weg mit eingebunden werden sollte man mit einem gängigen User-Port-Druckerkabel auf allen EPSON kompatiblen Centronics-Druckern drucken können.
Es ist also nicht mehr der Plan die ROMs zu patchen sondern den von TESA angedachten Weg über Sonderprogramme zu nutzen.
Der würde es auch theoretisch möglich machen weitere Arten von Ports und Befehlssätzen zu unterstützen:
Sinnvoll erscheint mir:
folgende Porttypen:
- User-Port mit Standardbelegung für EPSON kompatible Drucker- IEC-Bus für Drucker mit internem oder externem Commodore Interface
- User-Port seriell (RS232) für EPSON kompatible Drucker oder Bondrucker ohne Parallel Port
an Drucker Treibern:
- EPSON wohl mit Abstand der wichtigste Standard
- IBM Proprinter die allermeisten Drucker die diesen Standard unterstützten, unterstützen ebenfalls den EPSON Standard
- Commodore (erfodert IEC Support) Der MPS-801 und MPS-803 werden definitiv fummelig da sie nur 7 Reihen statt 8 im Grafikmodus unterstützt
der MPS-802 bzw. VC-1526 sollte da besser geeignet sein.
- HP PCL (nicht HP GL), Please login to see this link. für DeskJet und Laserjet kompatible Drucker.
Da HP mit 150, 300 und später 600 DPI arbeitet müsste man hier wohl die Ausgabe etwas verkleinern. Also 75DPI statt 72DPI also eine Verkleinerung auf 96% der original Größe,
zuätzlich müßte man die Pixel verdoppeln um auf 150DPI zu kommen.
Um Missverständnissen vorzubeugen, dies ist keine Aufforderung alles aufgelistete umzusetzen!
Es soll lediglich eine Übersicht bieten.
Um das Ganze zum funktionieren zu bringen, werden 2 Vectoren im TESA-Arbeitsbereich auf eigene Routinen umgelenkt.
Bisher ist das die Druckerportinitialisierung, und die Ausgaberoutine fuer ein Byte auf den Drucker.
Moechte man die ESC-Sequenzen anpassen, muessen weitere Vectoren auf eigene Routinen umgelenkt werden. Das ist meiner Einschaetzung nach nicht sehr viel Aufwand. Es muessen lediglich die ESC-Sequenzen vorhanden sein. Da muesste jemand die richtigen ESC-Sequenzen bereit stellen. Ich kann diese dann gerne in mein Programm mit einbinden.
Testen kann ich allerdings nur unter VICE.
Und btw. Es war nie mein Plan, das TESA ROMS zu patchen.
Wer meine Beitraege aufmerksam gelesenhat, wird feststellen, das ich von Anfang an geschrieben habe, dass ich das ueber eine Erweiterung installieren moechte. (P.S. das ist nicht gegen dich gerichtet Natas)
Und ja, ueber diesen Weg ist es moeglich, fast alles im RESA ROM anzupassen, vorausgesetzt man weiss wie
Eine Serielle Schnittstelle ist aber dann doch noch eine etwas andere Herausforderung.
Wenn sich da jemand bereit erklaert, eine fertige in Assembler geschriebene Routine, welch nicht die 'normalen' C64 Kernal-Einsprungadressen nutzt, zur Verfuegung zu stellen, dann kann ich auch dieses eventuell auch einbauen.
Aber das dauert meiner Einschaetzung nach etwas laenger.
Ich habe ja versprochen, das ich den Quellcode zur Verfuegung stelle. Ich habe wie schon geschrieben ca. 60% des Quellcodes analysiert, und auch dokumentiert. Eventuell werde ich den Quellcode auch schon oeffentlich machen, wenn er nicht 100%tig fertig ist.
Mal sehen, wie weit ich die naechsten 3 Wochen komme.
Edit:
Eine Auflistung habe ich erstellt.
Da ich kein 6502 Programmierer bin, kann ich bei Bedarf nur die Steuersequenzen zusammen suchen, was ich für EPSON getan habe.
Ich könnte dabei helfen eine Hardwarebastelei zu erstellen wenn das gewünscht ist, ich habe ja bereits einige Vorschläge geäußert was machbar ist.
Sinn macht das aber nur wenn jemand mit einem entsprechenden Gerät daran interessiert ist und seinen TESA 6240.
Selbst mit dem aktuellen Stand sollte eine kleine externe Hardware möglich sein, die Daten am UserPort abgreift und dann anzeigt oder ausdruckt.
so habe ich das auch aufgefasst.
Bis dahin
Viele Liebe Gruesse aus dem fernen China
Claus
Danke für die Erklärung bezüglich der Vektoren, wenn es solche gibt ist ja ein patchen nur sehr bedingt sinnvoll.
ClausS ich habe dich so verstanden das es dein Ziel ist die Software möglichst einfach möglichst breit nutzbar zu machen, am besten von Datenträger ladbar und parallel mit installiertem Commodore ROMs nutzbar.
Die EPSON Sequenzen habe ich weiter oben schonmal zusammen gesucht.
Was eine serielle Unterstützung (sowohl RS232 als auch IEC) angeht würde ich da gar nichts machen solange es keine entsprechende Nachfrage gibt.
Bezüglich RS232 habe ich es so verstanden, das diese Routinen: Please login to see this link. die seriellen Routinen
im Kernal ersetzen da müsste jemand mal drauf schauen der mehr davon versteht. Hier sind die Routinen noch als Bibliothek Please login to see this link..
Wie die Lage bezüglich IEC aussieht kann ich so gar nicht einschätzen, es sind ja diverse Routinen zum Betrieb der internen 1541 IEC Floppy notwendig, die den Kernal Routinen zumindest ähnlich sein werden was dann noch fehlt um auch Drucker zu unterstützen weiß ich nicht.
Auch sind einige Commodore Drucker deutlich aufwendiger, als andere, da sie keine 8-Bit Grafik unterstützen.
Das gleiche gilt auch für HP da die Punkte verdoppelt werden müssen um die Mindestauflösung von 150 DPI zu erreichen.
Danke für die Erklärung bezüglich der Vektoren, wenn es solche gibt ist ja ein patchen nur sehr bedingt sinnvoll.
ClausS ich habe dich so verstanden das es dein Ziel ist die Software möglichst einfach möglichst breit nutzbar zu machen, am besten von Datenträger ladbar und parallel mit installiertem Commodore ROMs nutzbar.
...
An die Commodore ROMs habe ich dabei eigentlich nicht gedacht.
...
Die EPSON Sequenzen habe ich weiter oben schonmal zusammen gesucht.
...
Da muss ich noch mal schauen.
...
Was eine serielle Unterstützung (sowohl RS232 als auch IEC) angeht würde ich da gar nichts machen solange es keine entsprechende Nachfrage gibt.
...
Dieser TESA-Thread ist ja nun schon ein paar Jahre alt, und trotzdem gibt es immer wieder Interesse daran.
So kann ich mir gut vorstellen, das ein IEC Treiber existieren wuerde.
...
Wie die Lage bezüglich IEC aussieht kann ich so gar nicht einschätzen, es sind ja diverse Routinen zum Betrieb der internen 1541 IEC Floppy notwendig, die den Kernal Routinen zumindest ähnlich sein werden was dann noch fehlt um auch Drucker zu unterstützen weiß ich nicht.
...
Leider gibt es hier einen kleinen Nachteil, alle Routinen, welche die serielle Komunikation benutzen, werden mit der Adresse 8 aufgerufen.
Anders als beim Commodore ROM, wo sich die Adresse der Laufwerksnummer in der Zeropage befindet, wird die Adresse hier immer als Zahl direkt eingegeben.
Das macht es schwerer, die vorhandenen Routinen zu nutzen.
Hattest Du nicht erwähnt das du versuchen willst eine Version zu schaffen die man auf einem normalen C64 laden kann? Das meine ich mit Commodore ROMs.
Sicherlich bist Du Derjenige, der am besten einschätzen kann was geht und nicht.
Ich finde das Projekt interessant und werde versuchen zu unterstützen wo ich kann.
Wenn ich also irgendwas an Information zusammen tragen kann lass es mich wissen.
Ich wollte damit nur eine lauffaehige Version, welche man unabhaengig vom TESA-Kernal testen kann, und um diese dann anschliessend in das TESA-ROM ueber eine Sonderprogrammdiskette reinladen zu koennen.
Wenn es am normalen C64 funktioniert, dann ist das ok, aber nicht mein Ziel.![]()
Oder der Citizen iDP 560
den hatte ich auch mal, aber meiner hatte eine CBM Schnittstelle und konnte direkt am C64 angeschlossen werden.
Hab den vor 2 Jahren verkauft (wenn ich das gewusst hätte) ....
Wenn das hier alles klappt, würde ich mir einen C64 auf Tesa ROMs umrüsten (ggfs. mit 3-fach Umschalter, wenn ich da was bekomme), einen Nadeldrucker (Star?) besorgen, und dann Diskettenklebeetiketten erstellen.
Bisher muss der Drucker vrstl. einen Parallelanschluss haben, richtig? Ist Parallel = Centronics?
Dazu habe ich einen Treiber auf einer Sonderprogrammdiskette erstellt.
Dieser Treiber wird ueber die Funktion 'Sonderprogramme (5)' im Hauptprogramm nachgeladen, und ersetzt die originale Ausgaberoutine.
Die Steuersequenzen sind hier noch nicht angepasst, d.h. es wird immer noch ein Drucker vorausgesetzt, welcher die Steuersequenzen des FACIT 4511 versteht.
Bitte probiert mit dem Treiber den Hexdump an einem Drucker, mit einem 'normalem' Kabel, und gebt mir Rueckmeldung, ob es bei euch klappt.
Hallo Claus..
wenn ich deine "Arbeitsanweisung" richtig verstehe, ist da die "Art" des Etikettes erst einmal egal..
PS. Natas hat ja angedeutet, dass meine HEX-Modus Zahlen eh nicht stimmen,.. daher diese bitte nicht weiter "auswerten"..
Ich habe deine "Sonderprogramm" Diskette aber nachgeladen.
Ich habe als Kabale ein M=1 und B=10 Kabel genutzt (weil du extra gesagt hattest , ein "normales Kabel").
Ich kann dir bestätigen, dass VOR der Sonderprogramm-Diskette.. nichts aus dem Drucker kam.
Dann habe ich die Sonderprogramm Diskette "nachgeladen" und dann kam auch etwas mit dem "Normalem-Kabel".
(beim Nachladen von der Sonderprogramm Diskette, das ging auch sehr schnell,.. kam keine extra Rückmeldung für irgendwas)
Meine Ausdruck kann aber nicht stimmen (!!!) ich habe dreimal das gleiche ausgedruckt.. und es kam dreimal was anderes raus...
=> ich hoffe ronduc hat mehr erfolg , und auch "wiederholt" gleiche Ausdrücke.
(Und komischerweise viel weniger "HEX-Inhalt" nur zwei Zeilen anstatt vorher >5)
Please login to see this attachment.
(PS: oder hattest du ein "Wunsch-Etikett".. vielleicht sollte du eine Diskette mit Etikett zum "Nachladen" auch hier bereit stellen..
dann drucke wir alles das "Gleiche"
) derzeit nehme ich immer meine "TESA-NEW-DATEN".d64 mit Etikett "Star-Etikett"
VG Micha
PPS: ich habe als Gegentest auch mal das "andere Kabel mit 8=1 , B=10" angeschlossen, das kann aber auch mit deiner Sonderprogramm Diskette "drucken" (bei mir aber auch weiterhin falscher Inhalt)..
Wenn das hier alles klappt, würde ich mir einen C64 auf Tesa ROMs umrüsten (ggfs. mit 3-fach Umschalter, wenn ich da was bekomme), einen Nadeldrucker (Star?) besorgen, und dann Diskettenklebeetiketten erstellen.
Bisher muss der Drucker vrstl. einen Parallelanschluss haben, richtig? Ist Parallel = Centronics?
dir fehlt dazu noch nen Monochrommonitor 😌
dir fehlt dazu noch nen Monochrommonitor
Im Gegensatz zu dem Rest hätte ich den sogar schon. ![]()
ich war noch damit beschäftigt das Druckerkabel wieder auf normal Zustand zu bringen. Das Prgramm von Dir geht gut und ich konnte über den Userport drucken.
Das mit den Drucker Treiber habe ich nicht hin bekommen, muss ich nochmal probieren. Ich dachte das ist nur für VICE.
Aber mein Etikett, da war der Ausdruck immer gleich, vielleicht ein/zwei Zeichen waren anders wenn ich mit den DIP Schaltern gespielt habe.
Aber mein Etikett, da war der Ausdruck immer gleich, vielleicht ein/zwei Zeichen waren anders wenn ich mit den DIP Schaltern gespielt habe.
bei meinem Ausdruck, ohne die Sonderdiskette.. kommt bei mir auch immer das gleiche raus..
nur jetzt.. mit dem geändertem "Druck-Ausgang" von Claus passiert das bei mir...
So, hat mir keine Ruhe gelassen. Drucker läßt sich mit den anderen Druckertreiber ansprechen, druckt aber auch immer etwas anderes.
Wir sollten das Tesakabel so lassen, ist bestimmt der richtige Weg.
Bitte probiert mit dem Treiber den Hexdump an einem Drucker, mit einem 'normalem' Kabel, und gebt mir Rueckmeldung, ob es bei euch klappt.
Ich habe es mangels geeigneter Hardware nicht auf solcher getestet, aber es kann m.E. nicht funktionieren (und deaktiviert nebenbei auch noch den IEC-Bus). Ich habe meine Kommentare direkt in den Code geschrieben:
; ----------------------------------------------------------------------------
pha ; 9032 48
lda $45 ; 9033 A5 45
bne L9042 ; 9035 D0 0B
jsr LA11D ; 9037 20 1D A1
bcs L904A ; 903A B0 0E
cmp #$0D ; 903C C9 0D
bne L904A ; 903E D0 0A
dec $45 ; 9040 C6 45
L9042: pla ; 9042 68
sec ; 9043 38
rts ; 9044 60
; ----------------------------------------------------------------------------
; - Ich denke nicht, dass die nächsten beiden Befehle überhaupt jemals
; ausgeführt werden, weil die beiden Branches oben beide nach $904a
; gehen?
; - Darüber hinaus sollte bei der Initialisierung auch der Wert von
; PA2 auf 1 gesetzt werden, sonst wird später evtl. das erste
; Zeichen verschluckt.
: - Zu guter Letzt ist es ziemlich schädlich die anderen Bits von
; Port A einfach überzubügeln, weil die haben andere wichtige
; Funktionen (zB den IEC-Bus), die du damit störst.
;
; Also statt den beiden Befehlen unten:
; lda $dd00
; ora #$04
; sta $dd00
; lda $dd02
; ora #$04
; sta $dd02
; und das ganze am Besten in die Initialisierung bei $902c, weil es
; vermutlich reicht, das einmal zu machen und nicht bei jedem Byte
; nötig ist.
lda #$04 ; 9045 A9 04
sta $DD02 ; 9047 8D 02 DD
L904A: pla ; 904A 68
sta $DD01 ; 904B 8D 01 DD
; wozu ist das pha gut? Ist es wichtig, dass die Druckroutine das
; auszugebende Byte im Akku nicht ändert? Kann ich mir nicht so recht
; vorstellen.
pha ; 904E 48
; hier sollte das Interruptflag, das eine negative Flanke von FLAG2
; anzeigt (das Signal, dass der Drucker das Byte verarbeitet hat),
; durch Lesen gelöscht werden, sonst können wir es unten nicht
; zuverlässig abfragen.
; lda $dd0d
lda $DD00 ; 904F AD 00 DD
and #$FB ; 9052 29 FB
sta $DD00 ; 9054 8D 00 DD
; Schönheitsfehler, aber dieses LDA kann raus, weil in A
; ja schon der richtige Wert steht.
lda $DD00 ; 9057 AD 00 DD
ora #$04 ; 905A 09 04
sta $DD00 ; 905C 8D 00 DD
; nicht wichtig, aber das clc würde ich direkt vor das rts stellen,
; hier mittendrin wirkt es etwas fehl am Platz.
clc ; 905F 18
; die nächsten beiden Befehle müssen und können raus, weil erstens
; meintest du vermutlich lda $dd02 / and #$fb / sta $dd02 (?) und
; zweitens kannst du PA2 ruhig auf Ausgang lassen.
lda #$3F ; 9060 A9 3F
sta $DD02 ; 9062 8D 02 DD
; hier muss jetzt unbedingt auf die Bestätigung des Druckers gewartet
; werden, dass er das Byte verarbeitet hat!
; lda #$10
; : bit $dd0d
; beq -
; falls das pha oben unnötig ist, dann könnte das pla hier auch raus.
pla ; 9065 68
rts ; 9066 60
Display More