SOFTWARE : Commodore CBM 610 / 620 / 710 / 720 / 730

  • Software Vorstellung :


    Textverarbeitung : MINITEXT, Projekt Name. Nicht endgueltig.


    Für : CBM II ( 6xx/7xx )

    ......Sprache : BASIC 4.0

    ......Mit leichten Aenderungen auch nutzbar fuer 8032/8296

    ......und vielleicht auch andere BASIC Systeme.

    ......Wer Interesse hat das auf seinem System zu migireren, einfach mal melden.


    IST Stand : Entwicklung, Voll funktionsfaehig. Ich arbeite schon damit.


    Hardware : CBM 610, englisches Layout

    .........: CBM 720 DEUTSCH inkl. deutschem Keyboard

    .........: CBM 8050 / 8250

    .........: Drucker Schnittstelle von Nils for(;;) ( Immer noch Supi und lieben Dank.)

    Nachteil : Wenn der Drucker an ist aber offline weil kein Papier drin ist,

    ...........werden nachfolgende Geraete nicht angesprochen. ( Floppy ).

    ...........Gibt es es da die Moeglichkeit einer Nachbesserung ???

    .........: OKI 3320 , Centronics


    Hintergrund : Ich liebe diese Form dieser Computer. Nach 40 Jahren eigentlich immer noch zeitlos.


    Motivation : Das alte von damals in das heutige IST transportieren.

    .............Nicht nur anmachen und sich freuen und wieder wegstellen.

    .............Den Alltag mit diesen Schaetzchen zu bestreiten und in den

    .............taeglichen Arbeitsprozess einzubinden.

    .............Eine "Effektive" Nutzung ist dabei Vorraussetzung.

    .............Man beachte die Gaensefuesschen !


    .............Ein Computer ist immer nur so gut wie die Software.

    .............Das ist das Hauptproblem bei diesen "KIsten"; eigentlich ja bei allen Kisten.


    Beschreibung und IST : Texte erstellen, speichern, laden und ausdrucken auf modernen nicht CBM Druckern

    .......................mit Centronics Schnittstelle.

    .....................: Eine Mapping Tabelle ist hinterlegt um die Gross- und Kleinbuchstaben von

    ..................... CBM auf Epson+ASCII umzudingseln.

    .....................: Zeichen einfuegen.

    .....................: Zeilen loeschen und einfuegen.

    .....................: Text kann hoch und runter gescrollt werden.

    .....................: Funktionstasten werden unterstuetzt.

    .....................: Texte laden und speichern.

    .....................: Text drucken aus dem Editor auch ohne speichern moeglich.

    .....................: Im Code auf 450 Zeilen begrenzt. Kann beliebig eingestellt werden.

    .....................: Code dokumentiert und strukturiert.


    Bilder : Bilder sagen mehr als 1000 Worte. Meistens. Einfach mal schauen.


    Sachliche Kritik und Vorschlaege sind erlaubt :). Wer sich Programmiertechnisch mit einbringen moechte

    ist selbstverstaendlich auch Willkommen.


    ::matrix::





            

    Alles geht - Nichts muß

  • .........: Drucker Schnittstelle von Nils for(;;) ( Immer noch Supi und lieben Dank.)

    Nachteil : Wenn der Drucker an ist aber offline weil kein Papier drin ist,

    ...........werden nachfolgende Geraete nicht angesprochen. ( Floppy ).

    ...........Gibt es es da die Moeglichkeit einer Nachbesserung ???


    Leider nein. Ich bezweifele, dass das technisch im Rahmen dieses Drucker-Interfaces ohne weiteres möglich ist. Das BUSY-Signal der Centronics-Drucker-Schnittstelle geht über einen Inverter auf das NDAC-Signal des IEEE-488-Bus. Wenn der Drucker offline ist, ist er automatisch auch busy, also nicht bereit zur Annahme von Daten. Das BUSY-Signal wird aber benötigt, um den Handshake des IEEE-488-Bus zu erzeugen.


    Mein Drucker-interface ist aber im Grunde nur eine Nachfertigung nach der Idee des Drucker-Interfaces von Helmut Proxa. Vielleicht hat axorp noch eine Idee dazu. Die Projekt-Dateien liegen jedenfalls unter https://github.com/nils-eilers/PROXA-Printer-Interface falls das jemand studieren möchte.

  • Nachteil : Wenn der Drucker an ist aber offline weil kein Papier drin ist,

    ...........werden nachfolgende Geraete nicht angesprochen. ( Floppy ).

    ...........Gibt es es da die Moeglichkeit einer Nachbesserung ???


    ich hatte damals sehr viele interface versionen.

    siehe hier ein bild, von den damaligen prototypen und den mustern usw.
    bild ist nicht von mir, da hat einer vor ca. 10 jahren, meine vielen platinen, dem christian angeboten.
    was wohl aus diesen sachen inzwischen geworden ist und wer die nun hat?
    der anbieter ist damals abgetaucht.



    die ersten iec / ieee488 interface versionen, blokierten den bus erst,

    wenn das entsprechende device angesprochen wurde. z.b. ein drucker.

    da gab es aber immer wieder große probleme mit manchen kunden.

    sie meldeten uns, das sie probleme haben mit ihrem rechner,
    das sich der rechner, mitten im betrieb, sehr selten, mal aufhängt.

    und man musste dann alles neu laden und starten.

    irgendwann stellte ich fest, nach vielen telefonaten, mit kunden und softwarehäusern,
    die vergeblich fehler in ihrer software gesucht haben. das es immer nur an den kunden selbst lag.


    die haben entweder ihren drucker / plotter usw. offline gestellt, der hatte einen error
    oder ganz einfach kein papier mehr und es nicht gemerkt und überprüft.
    und die dachten es würde an der software oder am rechner liegen, so haben die alles neu gestartet.

    so haben z.b. viele programme irgend etwas stundenlang erstmal berechnet und dann sollten

    die ergebnisse ausgedruckt werden. da aber der drucker nicht bereit war, z.b. weil kein papier vorhanden,
    so blokierte der drucker dann erst den bus, als er angesprochen wurde.
    die kunden merkten es aber nicht. sie dachten der rechner oder die software hat sich aufgehangen.

    damit kamen aber viele kunden nicht klar. oft war auch der drucker in einer schallschluckhaube
    oder über ein langes kabel in einem nebenraum.
    so haben manche den rechner noch mal gestartet und erst später gemerkt das der drucker kein papier hat.

    ich änderte mein interface dann so, das der bus sofort blokiert wird, wenn der drucker aus
    irgendeinem grund nicht bereit ist.

    so konnten die benutzer dann auch nicht mehr laden oder andere sachen machen.
    und dann schauten die nach ob es am drucker liegen könnte.


    die softwareersteller fragten dann auch die nrfd leitung vor dem benutzen des buses per peek einfach ab
    und so konnten die eine info für die kunden einblenden, das der bus nicht bereit ist.
    und man solle doch z.b. mal den drucker überprüfen.

    die kunden und händler konnten damals beide versionen bestellen.
    aber die version, die den bus sofort blokiert hat, hat sich durchgesetzt.

    so empfahlen viele softwarehäuser auch extra mein interface.


    gruß
    helmut

  • Hintergrund : Ich liebe diese Form dieser Computer. Nach 40 Jahren eigentlich immer noch zeitlos.

    ich liebe diese (sk) form auch noch immer ;)
    und hatte ein großes 8032sk logo auf meinem geschäftshaus in köln.

  • Vielleicht hat axorp noch eine Idee dazu.

    z.b. busy auftrennen und an eine freie adressleitung am eprom legen.

    dann einen freien ausgang, am latch (74273), mit dem eingang vom nrfd treiber verbinden.

    nun kann man im eprom das entsprechende bit (latch) erst setzen, wenn der drucker angesprochen wurde.

    einfacher geht es aber mit zwei dioden und einem widerstand.
    oder einem und gatter.

    ich habe nur einen schaltplan der späteren version gefunden.

    ich glaube, einen von den beiden, hat der nils auch benutzt.

    bei der anderen version wurde das und gatter für reset / ifc für busy benutzt.
    es gab aber auch versionen mit einem extra ic dafür.


    mit den beiden dioden und dem widerstand geht es am einfachsten und auch gut.
    es kann sogar sein, das der nils die damals auch vorgesehen hat.

    gruß
    helmut


  • Drucker Schnittstelle von Nils for(;;) ( Immer noch Supi und lieben Dank.)

    welchen modus benutzt du?
    den 1:1 ascii zeichensatz und den befehlsmodus des druckers
    oder den commodore modus, mit der umwandlung der groß klein schreibung und den umlauten?

    gruß
    helmut

  • Drucker Schnittstelle von Nils for(;;) ( Immer noch Supi und lieben Dank.)

    welchen modus benutzt du?
    den 1:1 ascii zeichensatz und den befehlsmodus des druckers
    oder den commodore modus, mit der umwandlung der groß klein schreibung und den umlauten?

    gruß
    helmut

    Moin und Guten Morgen Helmut,


    ich hab in der Software eine Mapping Tabelle was die Zeichen umsetzt. So kann ziemlich jdeds Geraet angesprochen werden welches auch nicht CBM oder ASCII konform ist.


    Beste Gruesse, Falco

    Alles geht - Nichts muß

  • Ok, das macht dann auch Sinn, dass alles blockiert wird.

    Die Adresse um mit peek(x= abzufragen wuerde mich interessieren. Weisst du die Adresse noch ?

    Alles geht - Nichts muß

  • Die Adresse um mit peek(x= abzufragen wuerde mich interessieren. Weisst du die Adresse noch ?


    hallo falco,


    probiere bitte mal 59456.
    bit 6 müsste es sein. am besten mal in einer schleife anzeigen lassen
    und dann den drucker offline schalten oder papierende kontakt auslösen.

    gruß
    helmut

  • Moin Helmut,

    leider in jedem Zustand der Rueckgabe Wert = 3

    Oder was meinst du mit Bit 6 ?

    Vielleicht anders abfragen als mit Peek ?

    Beste Gruesse, Falco

    Alles geht - Nichts muß

  • hallo nils,

    Das BUSY-Signal der Centronics-Drucker-Schnittstelle geht über einen Inverter auf das NDAC-Signal des IEEE-488-Bus.

    NRFD ist es.

    DAV geht über einen inverter an NDAC.

    Das BUSY-Signal wird aber benötigt, um den Handshake des IEEE-488-Bus zu erzeugen.

    eigentlich nicht.


    die ack leitung habe ich ursprünglich für den handshake des ieee488 buses benutzt.


    ich hatte aber bei langen kabeln und leitungsstörungen (lichtschalter / netzstörungen)

    manchmal probleme mit dem ack-signal gehabt. so kam das handshake aus dem rhythmus.

    an schnellen ieee488 geräten hatte ich probleme, wenn z.b. ein drucker das ack signal manchmal
    zuspät gesendet hatte.

    so änderte ich meine schaltung komplett und machte das handshake nun ohne die peripherie geräte selbst
    und über den inverter auch ganz schnell. mit dem trick über invertiertes dav an ndac.
    so blokiere ich auch keine schnellen geräte am bus.

    die busy leitung blokiert nur den bus, wenn gerät nicht bereit ist.
    wird für das handshake bei der übertragung der einzelnen bytes nicht mehr benötigt.
    so kann mein interface auch mit der maximalen bus geschwindigkeit nun daten ausgeben.

    so hatte ich nun keine probleme mehr gehabt mit leitungsstörungen und es funktioniert
    an einem ganz langsammen und behindert oder verzögert auch nicht einen schnellen ieee488 bus.


    viele interfaces, besonders die mit einem mikrocontroller, haben da den kompletten bus oft ausgebremst.


    lg
    helmut

  • hallo falco,


    bit 6 hat den wert 64. dann müsste sich der wert um den wert 64 ändern.
    wenn du am drucker die offline taste betätigst.

    es kann aber sein, das dein drucker es nur macht wenn er angesprochen wird.

    die oki drucker habe ich nicht im programm gehabt.


    probiere bitte mal 59457. spontan dachte ich aber 59456.
    ist schon lange her.

    gruß
    helmut

  • Ah ja. Jetzt hab ichs kapiert mit dem Bit. :fp:

    Manchmal hab ich echt eine lange Leitung.........

    So, ich probiers dann gleich mal aus.

    Ich hatte gestern Abend die Adressen von 59457 bis 59460 ausprobiert.

    Alles geht - Nichts muß


  • so konnten die benutzer dann auch nicht mehr laden oder andere sachen machen.
    und dann schauten die nach ob es am drucker liegen könnte.

    Das ist ja eine interessante Logik. Weil einige Kunden doof sind, darf man keine Texte laden und bearbeiten, wenn der Drucker nicht bereit ist, auch wenn man gar nicht drucken will? Ich glaube ich wäre ausgeflippt. :huh:

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Ich glaube ich wäre ausgeflippt. :huh:

    es gab doch ganz viele verschiedene programme, von verschiedenen softwarehäusern.

    die haben oft gar nicht vorab einem mitgeteilt, das sie nun die ergebnisse ausdrucken.


    so kamen viele benutzer gar nicht erstmal auf die idee, wenn nun system blokiert, das es an ihrem drucker lag,
    weil sie ihn oder ein anderer, stunden vorher, offline geschaltet haben.

    so dachten manche damals zuerst an einen programm fehler und haben alles neu gestartet.

    und sind ausgeflippt, weil die ganzen eingaben und die stundenlangen berechnungen nun umsonst waren.

    sie hätten aber nur den drucker überprüfen müssen, so ist dann der chef ausgeflippt,
    weil sie an den drucker nicht gedacht haben.

    wie bereits geschrieben, oft waren die drucker in einer schallschluckhaube verbaut oder in einem nebenraum.

    der letzte benutzer hat kein neues papier eingespannt und der neue benutzer hat später nicht daran gedacht.

    man konnte mein interface in beiden versionen bestellen.

    die ursprüngliche version, der bus wird erst blokiert, wenn der drucker angesprochen wird,
    so wie es alle anderen auch gemacht haben.

    oder

    die version, die sich durchgesetzt hatte, der bus wird sofort blokiert. wenn drucker nicht bereit
    oder man schaltet den drucker einfach aus.

    es gab leute die wohl nicht daran dachten, das endlospapier nicht endlos ist und auch irgendwann ein ende hat.
    spätestens nach 2000 seiten.

    du kannst auch den drucker ausschalten, wenn du nicht druckst, das machten manche leute auch so.
    so blokiert da nichts wenn ohne strom.

    aber viele programme teilten doch dann noch nicht mal einem mit, das sie nun auf den drucker
    etwas ausgeben möchten. gute programme blendeten, vor dem drucken, die mitteilung ein,
    man solle nun den drucker und das papier überprüfen und bestätigen, bevor sie etwas ausgegeben haben.

    andere programme quitierten es doch mit einer fehler meldung und einem programm abbruch.
    wenn dann der drucker nicht eingeschaltet und vorhanden war.

    dann war doch erstrecht die ganze eingabe und die ganzen berechnungen umsonst gewesen.
    da ist doch ein blokieren, bis zur überprüfung eines druckers, wohl ein kleines problem.

    und nichts geht verloren. der rechner wartet doch dann solange, bis der drucker wieder bereit ist.


    Das ist ja eine interessante Logik. Weil einige Kunden doof sind, darf man keine Texte laden und bearbeiten, wenn der Drucker nicht bereit ist,

    wie würdest du es den besser lösen?

    du kannst doch alles machen, wenn du doch den nicht bereiten drucker ausschaltest.

    gruß
    helmut

  • es gab doch ganz viele verschiedene programme, von verschiedenen softwarehäusern.

    die haben oft gar nicht vorab einem mitgeteilt, das sie nun die ergebnisse ausdrucken.

    Das ist dann natürlich der Murks dieser Programme.

    Also meine Programme haben vor dem Drucker immer "Drucker bereit?" abgefragt. ;)

    Und viele kommerzielle Programme wie z. B. Wordpro oder Visical haben das auch ordentlich gehandhabt.



    wie würdest du es den besser lösen?

    du kannst doch alles machen, wenn du doch den nicht bereiten drucker ausschaltest.

    Ok, dann hab es ja zumindest einen Work-around. ;)

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • es gab doch ganz viele verschiedene programme, von verschiedenen softwarehäusern.

    die haben oft gar nicht vorab einem mitgeteilt, das sie nun die ergebnisse ausdrucken.

    Das ist dann natürlich der Murks dieser Programme.

    Also meine Programme haben vor dem Drucker immer "Drucker bereit?" abgefragt. ;)

    Und viele kommerzielle Programme wie z. B. Wordpro oder Visical haben das auch ordentlich gehandhabt.

    Hi detlef ,

    fuer PC oder den CBM 6xx/7xx ?

    Es ging ja auch darum, dass die Laufwerke zum Beispiel

    nicht funktionieren wenn der Drucker offline ist.

    Wenn der Drucker nciht geht und ncihts ausgedruckt wird

    ist der Fehler ja leichter festzustellen als wenn das Laufwerk

    nicht geht weil der doofe Drucker nicht online ist. ;)

    Alles geht - Nichts muß

  • fuer PC oder den CBM 6xx/7xx ?

    Für den CBM 3032. ;)

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Und viele kommerzielle Programme wie z. B. Wordpro oder Visical haben das auch ordentlich gehandhabt.

    ich war der erte mit einem interface der die commodore groß- und kleinschreibung angepasst hat.
    dann war ich der erste bei den umlauten für pet und die cbm geräte.

    dann erweiterte ich mein interface auf zwei device adressen.
    für die commodore umwandlung und den 1:1 modus für die steuerbefehle und die einzelnadelansteuerung.

    oder für die plotter befehle für watanabe plotter.


    vero / vobis hatte die wordpro 3 und 4 lizenz für deutschland.

    die benutzten noch ein rom im rechner. so patchte ich das wordpro programm für vobis,

    damit es ohne dem rom funktioniert.

    dann wollten die wordpro 3 und 4 auch mit umlauten vertreiben.

    so patchte ich für vobis es auch auf umlaute und bekam dann eine lizenz für meine kunden.

    sie bekamen dann die entsprechenden zeichensätze und die editorroms von mir zum kopieren.


    calcresult patchte ich für commodore auch auf umlaute.

    als commodore, nach jahren, dann auch endlich beschlossen hatte, eine din tastatur version anzubieten.

    da sie es bis zu der hannover messe nicht mehr hinbekommen haben, habe ich es dann, in den letzten 14 tagen,
    vor der messe, für die gelöst. da habe ich den 8032 und ein paar drucker und programme angepasst.


    meine damalige din tastatur version, für commodore, für die hannover messe,
    war zu dem normalen original editorrom sehr kompatibel.
    damit auch die meisten, schon vorhandenen, programme funktionierten.


    nach der hannover messe, wollte aber commodore die din tastatur nicht abwärtskompatibel

    zu den alten rechnern haben.


    besonders sollten dann auch ihre drucker nicht zu der deutschen ascii din norm kompatibel sein.
    sie dachten das die leute dann neue geräte und software kaufen.


    ich habe dann, monate nach der hannover messe, ihre din version bekommen.
    mit dem cbm8027 drucker, der dann auch den neuen commodore zeichensatz bekommen hatte.


    wordcraft und calcresult haben sie nicht auf ihre neue din editor rom version hinbekommen
    und es gab ja kein listing. so bekam ich dann nochmal wordcraft und calcresult um es dann auch zu patchen.

    den damaligen lieferschein, mit der ersten commodore din tastatur version habe ich noch gefunden.
    zum anpassen vom wordcraft.

    dann habe ich gleich auch noch die commodore din editor version untersucht und
    andere programme an die commodore din version angepasst. für viele meine software kunden.

    so habe ich dann auch wordpro 4 gleich für meine kunden mit angepasst und es vobis kostenlos gegeben.

    ich bekam dann immer ihre wordpro handbücher für meine kunden.

    gruß
    helmut

  • Moin,


    das oben vorgestellt Projekt habe ich eingestampft.

    Der Style der Programmierung hat mir einfach nicht

    gefallen.


    Konzeptionell habe ich nun alles umgeschmissen und

    habe kpl. von vorne angefangen und nun einen Faden

    gefunden den ich vernuenftig weiter ausbauen kann.

    Vor allem wegen der Ausfuehrungsgeschwindigkeit

    und der ladezeiten der einzelnen Module.


    Mein Fazit :

    Lieber viele kleine einzene Module als einige grosse.


    Nachfolgend ein paar Bilder um sich mal ein Bild davon

    zu machen. Fragen und Anregungen sind Willkommen.


    Aber nur nette Sachen :neinnein: ( Scherz )

    Wer das Prograemmchen nutzen moechte kanns ich gerne melden.

    Es ist schon voll funktionsfaehig.


    Achso, es ist mit dem Befehlssatz vom 6xx/7xx programmiert.

    Daher nur lauffaehig ohne Modifikationen auf den 6xx/7xx.


    Beste Gruesse, Falco







    Alles geht - Nichts muß

  • Wenn es eine 8032-Version gäbe, hätte ich das gerne mal ausprobiert.

    Einen 6xx/7xx habe ich leider (noch) nicht.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."