CH662435A5 - Steuereinheit fuer eine frankiermaschine. - Google Patents

Steuereinheit fuer eine frankiermaschine. Download PDF

Info

Publication number
CH662435A5
CH662435A5 CH5043/84A CH504384A CH662435A5 CH 662435 A5 CH662435 A5 CH 662435A5 CH 5043/84 A CH5043/84 A CH 5043/84A CH 504384 A CH504384 A CH 504384A CH 662435 A5 CH662435 A5 CH 662435A5
Authority
CH
Switzerland
Prior art keywords
mov
call
postage
unit
data
Prior art date
Application number
CH5043/84A
Other languages
English (en)
Inventor
Alton Brooks Eckert
John Henry Soderberg
Original Assignee
Pitney Bowes Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pitney Bowes Inc filed Critical Pitney Bowes Inc
Publication of CH662435A5 publication Critical patent/CH662435A5/de

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00314Communication within apparatus, personal computer [PC] system, or server, e.g. between printhead and central unit in a franking machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4269Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a handshaking protocol, e.g. Centronics connection
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00314Communication within apparatus, personal computer [PC] system, or server, e.g. between printhead and central unit in a franking machine
    • G07B2017/00322Communication between components/modules/parts, e.g. printer, printhead, keyboard, conveyor or central unit
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00314Communication within apparatus, personal computer [PC] system, or server, e.g. between printhead and central unit in a franking machine
    • G07B2017/00338Error detection or handling
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00185Details internally of apparatus in a franking system, e.g. franking machine at customer or apparatus at post office
    • G07B17/00314Communication within apparatus, personal computer [PC] system, or server, e.g. between printhead and central unit in a franking machine
    • G07B2017/00346Power handling, e.g. power-down routine

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Devices For Checking Fares Or Tickets At Control Points (AREA)
  • Communication Control (AREA)

Description

Die vorliegende Erfindung betrifft eine Steuereinheit für eine Frankiermaschine, die eine Buchungseinheit zur Steuerung der Buchungsvorgänge und eine Druckereinheit zum Ausdruk-ken der Portogebühren aufweist.
Bei den bekannten elektronischen Frankiermaschinen, wie sie beispielsweise in der US-PS 3 978 457 beschrieben ist, hat es sich als wünschenswert herausgestellt, eine oder mehrere Mikroprozessoren anzuwenden, um verschiedene Funktionen und Betriebsabläufe der Frankiermaschine zusteuern. Aus Sicherheitsgründen können alle auf Buchungen bezogene Daten von anderen auf ungeschützte Informationen bezogene Daten getrennt gehalten werden.
Ziel der Erfindung ist es eine Steuereinheit zu schaffen, mit der in einfacher Weise die Steuerung der Frankiermaschine von aussen erfolgen kann, ohne dass irgendwelche Änderungen in der Buchungseinheit oder der Druckereinheit, weder im Hinblick auf die Hardware oder die Software erforderlich sind.
Dieses Ziel wird erfindungsgemäss mit den kennzeichnenden Merkmalen des Patentanspruches 1 erreicht.
Die Vorteile der Erfindung sind darin zu sehen, dass die gesamte Steuerung der Frankiermaschine und die gesamte, innerhalb der Frankiermaschine vorhandene Information durch eine Verbindung über einen Schnittstellenanschluss gesteuert werden kann und sämtliche von der Frankiermaschine ausführbaren Funktionen sind von einer externen Steuereinheit aus elektrisch steuerbar mit Ausnahme von rein lokalen manuellen Funktionen, wie Stromeinschaltung und Datumsänderung. Dies ergibt sich aus der Kommunikationsfähigkeit der Dateneinheiten. Die Organisation der drei Einheiten ergibt sich aus einem Fluss von Befehlen oder einer Steuerung von Daten von der Steuereinheit zur Buchungseinheit und sodann zur Druckereinheit. Ein Beispiel hierfür ist ein neuer Portogebührenwert sowie die Stelle, an der er zu setzen ist. Der Informationsfluss läuft in der entgegengesetzten Richtung. Ein Beispiel hierfür besteht in einem laufenden Registerwert oder dergleichen.
Auf der Grundlage dieses Konzepts kann durch die Einschaltung eines externen Geräts, wie einer elektronischen Waage, in die Steuereinheit eine Eingabe von Befehlen oder Datensteuerungsanweisungen betreffende Information in die Frankiermaschine betriebsmässig erfolgen.
Der Schnittstellenbetrieb erlaubt die Übernahme der Steuerung der Frankiermaschine durch eine externe Steuereinheit unter Ausserbetriebsetzung der Tastatur. Die externe Steuereinheit kann mit der Anzeigeeinheit Nachrichten austauschen, wodurch bei der externen Steuereinheit auf das Erfordernis einer Tastatur und einer Anzeigeeinheit verzichtet werden kann. Ein besonderer Vorteil der vorgenannten Anordnung besteht darin, dass die Steuereinheit der Frankiermaschine physikalisch durch die zusätzliche externe Steuereinheit ersetzt werden kann, ohne dass irgendwelche Änderungen in der Buchungseinheit oder der Druckereinheit, weder im Hinblick auf die Hardware oder die Software erforderlich sind.
Weitere Einzelheiten und Vorteile der Erfindung ergeben sich aus der Beschreibung und den beiliegenden Zeichnungen, auf die bezüglich aller in der Beschreibung nicht besonders erwähnten Einzelheiten ausdrücklich Bezug genommen wird. Hierin zeigen:
Fig. 1 eine vereinfachte perspektivische Ansicht einer Frankiermaschine,
Fig. 2 eine vergrösserte Ansicht der Frontplatte der in Fig. 1 dargestellten Frankiermaschine,
Fig. 3 ein vereinfachtes Blockschema einer Ausführungsform einer Frankiermaschine,
Fig. 4 ein Blockschema einer Steuereinheit für die Frankiermaschine,
Fig. 5 ein Blockschema einer Buchungseinheit für die Frankiermaschine,
Fig. 6 ein mehr in Einzelheiten gehendes Blockschema einer bevorzugten Ausführungsform der Steuereinheit für die Frankiermaschine,
Fig. 7 ein Schaltbild eines in der Frankiermaschine anwendbaren optoelektrischen Kopplers,
Fig. 8 ein mehr in Einzelheiten gehendes Blockschema einer bevorzugten Ausführungsform der Buchungseinheit für die Frankiermaschine,
Fig. 9 ein Blockschema einer bevorzugten Ausführungsform der Druckereinheit für die Frankiermaschine,
Fig. 10 ein den Rückmeldungsbetrieb in der Frankiermaschine darstellendes Zeitablaufdiagramm,
Fig. 11 ein die Übertragung von der Frankiermaschine darstellendes logisches Diagramm,
Fig. 12 ein die Übertragung zu der Frankiermaschine darstellendes logisches Diagramm,
Fig. 13 ein mit der Frankiermaschine im sogenannten «Dasy Chain»-Betrieb verketteter Satz verschiedener externer Geräte, Fig. 14 ein den Betriebsablauf der Steuereinheit darstellender zusammenhängender Satz von Flussdiagrammen,
Fig. 15 ein den Betriebsablauf der Druckereinheit darstellender zusammenhängender Satz von Flussdiagrammen, und
Fig. 16 ein den Betrieb der Buchungseinheit darstellender zusammenhängender Satz von Flussdiagrammen.
In der Fig. 1 ist eine auf einer Basis 21 abnehmbar befestigte Frankiermaschine 20 dargestellt. Bei dieser Anordnung ist zwischen der Frankiermaschine 20 und der Basis 21 an deren Vorderkante ein Schlitz 22 vorgesehen, um Umschläge oder dergleichen einzuschieben und eine Portogebühr darauf aufzudrucken. Die Frankiermaschine ist mit einer Anzeigeeinheit 23, die eine elektronische Anzeigevorrichtung hat, und mit einem Schaltpult 24 ausgerüstet. Das Gerät ist über ein Kabel 25 an das elektrische Netz anschliessbar.
Die Basis 21 enthält einen mechanischen Antrieb zum Antreiben des Druckermechanismus der Frankiermaschine 20. Durch die Trennbarkeit zwischen der Frankiermaschine und der
5
10
15
20
25
30
35
40
45
50
55
60
65
3
662 435
Basis wird die elektronische Frankiermaschine mit herkömmlichen Antriebseinheiten kompatibel, die Wartung der Frankiermaschine und nötigenfalls ein Transport der Frankiermaschine zum Zwecke des Nachladens vereinfacht, falls die Möglichkeit für ein fernbedientes Laden angewendet wird.
Die Frontplatte der Frankiermaschine ist in Fig. 2 dargestellt, woraus ersichtlich ist, dass die Frankiermaschine eine numerische Anzeigeeinheit 23, beispielsweise eine herkömmliche Multiplex-Sieben-Segment-Leuchtdioden- oder Flüssigkristallanzeigeeinheit aufweist. Ausserdem ist die Tastatur mit numerischen Eingabetasten 31 und einer im Zusammenhang damit arbeitenden Dezimaltaste 32 versehen, um ein Ausdrucken eines gewünschten Portogebührenbetrages einzustellen, wobei der Betrag normalerweise auf der Anzeigeeinheit 32 angezeigt wird. Es ist auch eine Löschtaste vorgesehen, um die Anzeige des Betrags beispielsweise im Falle einer irrtümlichen Eingabe zu löschen. Ist der angezeigte Betrag auf den gewünschten Wert eingestellt, wird durch Niederdrücken einer Portoeinstelltaste 34 die Inbetriebnahme des Druckräderwerks für die Ausgabe der Portogebühr bewirkt.
Auf der Frontplatte können ferner eine Reihe von Tasten vorgesehen sein, durch die selektiv die Anzeige weiterer Werte auf der Anzeigeeinheit 23 bewirkbar ist. Beispielsweise kann durch das Niederdrücken einer Taste 35 die Anzeige des Inhalts eines anwachsenden Registers, d.h. die von der Frankiermaschine verbrauchte Portogebühr, bewirkt werden und durch das Niederdrücken einer Taste 36 die Anzeige des Inhalts eines abfallenden Registers der Frankiermaschine, d.h. die in der Frankiermaschine noch vorhandene geladene Portogebühr. Durch weitere Tasten 37 bis 40 kann in herkömmlicher Weise jeweils die Anzeige weiterer, in bestimmter Weise spezialisierter Werte wie Kontroll- oder Portogebührensumme, Stückzahl, Stapelwert und Stapelzahl angezeigt werden. Das Stapelwert- und das Stapelzahlregister kann durch ein gleichzeitiges Niederdrücken von entweder der Stapelwerttaste oder der Stapelzahltaste und der Löschtaste 33 gelöscht werden. Die Frontplatte ist ausserdem vorzugsweise mit einer Leuchtdiode 41 versehen, die jeweils aufleuchtet, wenn die Frankiermaschine eingeschaltet wird, was üblicherweise zu Beginn eines Tages geschieht, um anzuzeigen, dass der Datumsgeber nicht eingestellt worden ist oder dass die Datumsgebertür geöffnet ist. Es kann eine weitere Leuchtdioden-Anzeigeeinheit 42 vorgesehen sein, die derart geschaltet ist, dass sie aufleuchtet, wenn eine Rückstellung des in der Basis vorhandenen Auslösemechanismus vor einer Fortsetzung des Betriebes erforderlich ist.
Um ein Nachladen der Frankiermaschine, beispielsweise mittels der Tastatur zu ermöglichen, kann die Frankiermaschine mit einem in Fig. 1 dargestellten Schlüsselschalter 45 versehen sein, in den der in Fig. 2 dargestellte Schlüssel 46 einsteckbar ist. Der Schlosszylinder kann durch ein Fenster 47 sichtbar sein, um die Stellung des Schlüssels anzuzeigen. Auf diese Weise kann in der Normalstellung des Schlüssels dieser Zylinder wie dargestellt, die Botschaft «Betrieb» anzeigen.
Die Frankiermaschine ist an ihrer Rückseite mit einem Wartungsschalter 50 zur Handhabung durch Wartungspersonal versehen, wodurch die Verwendung der Tasten der Frankiermaschine für unterschiedliche Funktionen ermöglicht wird. Durch eine Betätigung des Schalters 50 kann mittels der Tasten 35 bis 40 die Anzeige zusätzlicher Werte ermöglicht werden, wie den Sperrwert, die untere Postgebühren-Warngrenze, die Frankiermaschinennummer, den Diagnosestatus und den einstellbaren Höchstbetrag. Indem der Schalter in eine Stellung «Kombinationseingabe» gedreht wird, was in dem Fenster 47 angezeigt wird, und dabei eine zutreffend kodierte Kombination über die Tastatur eingegeben wird, wird der Nachlade-Betriebszustand der Frankiermaschine in Wirkung gesetzt. Im Nachlade-Betriebszustand der mittels eines durch den Schlüssel 46 gesteuerten internen Schaltschlosses hervorgerufen werden kann, gestattet eine Stellung «Betriebseingabe», welche durch diese Botschaft in dem Fenster 47 angezeigt wird, mittels der Tastatur eine Eingabe im Nachladewert-Register der Frankiermaschine. Nach dem Zurückstellen des Schlüssels in die Betriebsstellung können mit der Frankiermaschine wieder Portogebühren gedruckt werden.
Der Wartungsschalter kann sich innerhalb der Frankiermaschine in einer ungeschützten Lage befinden, weil die durch die Verwendung dieses Schalters ermöglichte Anzeige der zusätzlichen Werte die Schutzwirkung der Frankiermaschine nicht berührt und lediglich die Anzeige zusätzlicher Werte ermöglicht. Der Umstand, dass gerade derartige Werte angezeigt werden, kann, sofern dies wünschenswert ist, durch eine unterscheidende Unterstreichung der Anzeigeeinheit dargestellt werden, und der Betrieb des Wartungsschalters 50 setzt die Portoeinstelltaste 34 teilweise ausser Betrieb. Wenn sich die Frankiermaschine in ihrem «Wartungs»-Betriebszustand befindet, ist es sodann nicht möglich, einen neuen Portogebührenwert in der Frankiermaschine einzustellen, und der Betrieb der Frankiermaschine wird im Wartungs-Betriebszustand durch die Wirkung des Vermittlers blockiert. Es kann jedoch eine Einstelltaste noch dazu verwendet werden, die Anzeige des augenblicklich eingestellten Wertes zu bewirken.
Wenn sich die Frankiermaschine in ihrem Wartungs-Be-triebszustand befindet, d.h. der Schalter 50, der Schalter 45 und der Schlüssel 46 betätigt worden sind, wird durch die Eingabe eines neuen Wertes und eines die Funktion dieses Wertes anzeigenden Kodes mittels der Tastatur jeweils eine Rückset-zung des Sperrwertes, des unteren Portogebühren-Warenbetra-ges oder des einstellbaren Höchstbetrages bewirkt. Der Sperrwert stellt einen bestimmten Wert, beispielsweise von einem Franken, dar, bei dem ein Ausdrucken von den Sperrwert übersteigenden Portobeträgen vermieden wird. Zu diesem Zweck ist bei allen oberhalb des Sperrwertes gelegenen Beträgen einschliesslich desselben ein zusätzlicher Schritt durch die Bedienungsperson erforderlich, wie ein zusätzliches Niederdrücken der Portoeinstelltaste 34. Die Anzeigeeinheit kann mit einer Kennungsmarke, beispielsweise einem waagrechten Balken versehen sein, um anzuzeigen, dass das Druckräderwerk eingestellt, jedoch der Freigabeschritt, d.h. das zusätzliche Niederdrücken der Portoeinstelltaste nicht ausgeführt worden ist. Die Freigabe wird durch die Anzeigeeinheit beispielsweise mittels drei waagrechten Balken angezeigt, um die Portogebühren auszudrucken.
Wenn das abfallende Register nicht über ausreichende Mittel verfügt, den in dem Druckräderwerk eingestellten Betrag abzudecken, kann dies durch Blinken der gesamten Anzeigeeinheit angezeigt werden. Wenn andererseits der in dem abfallenden Register gespeicherte Wert niedriger als die untere Portogebühren-Warngrenze ist, kann dies durch Blinken des Dezimalpunktes angezeigt werden. Der «einstellbare Höchstbetrag» kann natürlich bei der Einstellung einer Portogebühr nie überschritten werden.
Die Frankiermaschine kann auch mit einem «Berechtigungsschalter» 51 versehen sein, der normalerweise durch ein Siegel in der Betriebsstellung festgelegt ist. Die nach einem Erbrechen des Siegels erfolgende Betätigung dieses Schalters ermöglicht das örtliche Nachladen der Frankiermaschine durch das Postpersonal.
Zusätzlich ist die Frankiermaschine mit einer oder mehreren arithmetischen Funktionstasten 52 versehen, durch die eine Änderung des Portoeinstellbetrages ermöglicht ist, wie die Addition weiterer Werte zum bereits angezeigten Einstellwert, bevor die Portoeinstelltaste 34 niedergedrückt wird. Dieses Merkmal ermöglicht die Einführung weiterer Werte, wie Versicherungsbeträge oder dergleichen, durch die Bedienungsperson, ohne dass eine Berechnung von Hand oder eine Berechnung auf einem separaten Gerät erforderlich ist.
Der innere Aufbau der Frankiermaschine ist aus Fig. 3 ersichtlich. Das Gehäuse der Frankiermaschine 20 ist in Abteile
5
10
15
20
25
30
35
40
45
50
55
60
65
662 435
4
unterteilt. In einem ersten Abteil 55 ist die Druckereinheit 56 angeordnet, die eine Druckereinrichtung (nicht dargestellt) steuert.
Innerhalb des ersten Abteils 55 ist ein zweites Abteil 57 vorgesehen, das vorzugsweise elektromagnetisch abgeschirmt ist. In diesem zweiten Abteil 57 ist eine Buchungseinheit 58 angeordnet.
Die Buchungseinheit ist mit externen, d.h. ausserhalb des Abteils 57 vorgesehenen Geräten durch optische oder ähnliche Koppler 59 verbunden, um jeglichen Schaden davon abzuhalten, sei es zufällig oder absichtlich, der durch die Einwirkung von Rauschstörungen, beispielsweise Überspannungen, an der Druckereinheit hervorgerufen werden kann. Eine derartige Kopplung ist natürlich nicht für dessen Energiequelle vorgesehen, die ebenfalls innerhalb des Abteils 55 eine in einem dritten Abteil 61 vorgesehene Stromversorgung 60 aufweist. Die Stromzufuhr zur Stromversorgung 60 erfolgt über ein innerhalb des Abteils 61 angeordnetes Filter 62, um Spannungsänderungen zu eliminieren, die die Druckereinheit nachteilig beeinflussen würden.
Das Gehäuse der Frankiermaschine 20 hat ein viertes Abteil 63. In diesem vierten Abteil 63 ist eine Sicherung 66 für die Frankiermaschine vorgesehen. Dieser Sicherung 66 ist ein Thermostat 67 und diesem ein Filter 68 nachgeschaltet. Der Thermostat verhindert beim Auftreten von Übertemperaturen die Anlegung einer Spannung an die Frankiermaschine. Zum Schutz ist ein Isolationstransformator 69 und ein Überspannungsabieiter 70 vorgesehen. Die Stromversorgung der Frankiermaschine erfolgt schliesslich über eine Energiespeichervorrichtung 71, wie einen einen grossen Wert aufweisenden Kondensator angelegt, wobei der Kondensator eine angemessene Energiespeicherung ermöglicht, so dass die Daten beim Auftreten eines Stromausfalls in einen leistungsunabhängigen Speicher übertragen werden. Der Abfall der Spannung kann durch einen in dem ersten Abteil 55 vorgesehenen Fühler 72 erfasst werden, wobei ein Ausgangssignal des Fühlers zur Signalisierung einer Änderung der Betriebsweise an die Buchungseinheit gerichtet ist und das andere Ausgangssignal (welches mechanischer Natur sein kann) einer Sperrung weiterer Funktionen des Druckmechanismus dient.
Der Isoliertransformator 69 ist ausserdem mit einer Steuereinheit 75 der Frankiermaschine verbunden. Ferner ist die Buchungseinheit 56 mit der Steuereinheit 75 verbunden. Die Steuereinheit 75 kann auch ausserhalb der Frankiermaschine vorgesehen werden. Die Steuereinheit umfasst eine Tastatur, Anzeigeeinheiten und dergleichen, die für den Betrieb der Frankiermaschine erforderlich sind.
Eine Ausführungsform der Steuereinheit 75 ist in Fig. 4 dargestellt. Aus Gründen einer konstruktiven Vielseitigkeit und Wandelbarkeit beinhaltet diese Einheit vorzugsweise einen Mikroprozessor 80, beispielsweise der Serie 6500, der über herkömmliche Datenleitungen, Steuerleitungen und Adressleitungen mit einem herkömmlichen RAM/ROM-Eingabe/Ausgabe/ Zeitgeber-Logikschaltkreis 81 verbunden ist, der Nur-Lesespei-cher, freiadressierbare Speicher, Zeitsteuerelemente und Eingabe/Ausgabe-Schnittstellen-Hardware umfasst. Durch die Verwendung geeigneter Dekoder 82 kann dabei eine Tastatur 83 in der herkömmlichen Weise abgetastet werden, und durch die Verwendung geeigneter Treiber 84 kann eine Anzeigeeinheit 85, vorzugsweise entsprechend herkömmlicher Praxis in einer Mul-tiplex-Betriebsweise gesteuert werden. Die dem Niederdrücken jeder einzelnen Taste der Tastatur entsprechenden Daten können hierdurch dem Prozessor 80 übermittelt werden, um auf den Leitungen 86 serielle Eingabe/Ausgabesignale für eine Kommunikation mit der Buchungseinheit 58 zu bilden. Falls die Steuereinheit mit weiteren Eingabe/Ausgabegeräten, wie externe Anzeige- oder Steuereinrichtungen verbunden ist, können diese über weitere Eingabe/Ausgabeleitungen 88, vorzugsweise serielle Kommunikationskanäle und über optische Koppler mit der Steuereinheit gekoppelt sein. Die Steuereinheit kann eine interne Stromversorgung und Regler 89 aufweisen, die mit der in Fig. 3 dargestellten Spannungsversorgung verbunden ist. Die vorstehend beschriebenen, durch die Steuereinheit erfolgenden Funktionen sind somit solche Funktionen, die in dem Sinne nicht kritisch sind, dass ein Verlust bei der Steuerung oder des Inhalts irgend eines darin vorhandenen Registers nicht mit einem Verlust von Gebühren für die Postverwaltung oder den Be-nützer verbunden ist. Diese Funktionen sind der Steuereinheit zugewiesen worden, damit die geschützten Bereiche der Frankiermaschine lediglich diejenige Programmierung des Systems umschliessen, die geschützt sein muss. Durch die Steuereinheit können zusätzliche Funktionen bewirkt werden, ebenso wie die Addition von nacheinander eingegebenen Beträgen ebenfalls durch das Programm der Steuereinheit gesteuert werden kann, da derartige Berechnungen für den Schutz der Frankiermaschine nicht wesentlich sind und nicht innerhalb der mechanisch oder physikalisch geschützten Bereiche der Frankiermaschine ausgeführt zu werden brauchen. In gleicher Weise können die rücksetzbaren Wartungsfunktionen durch die Programmierung der Steuereinheit bewirkt werden, da diese Funktionen bezüglich der Buchungseinheit und der Register selbst unkritisch sind. Um jedoch diese Parameter in dem leistungsunabhängigen Speicher festzuhalten, ist die Aufbewahrung in der Buchungseinheit wünschenswert.
Es ist natürlich ersichtlich, dass bei der in Fig. 4 dargestellten Steuereinheit ohne grosse Schwierigkeiten weitere arithmetische Tasten vorgesehen werden können, so dass die Frankiermaschine alternativ auch als ein Rechner verwendet werden kann.
Alternativ kann der Prozessor durch einen mit der Tastatur und der Anzeigeeinheit verbundenen Rechnerchip oder dergleichen erweitert werden, um arithmetische Funktionen auszuführen.
Während die in Fig. 4 dargestellte Steuereinheit vorzugsweise unmittelbar an der Frankiermaschine als deren Bestandteil angeordnet ist, kann diese Steuereinheit offensichtlich auch davon räumlich getrennt oder räumlich trennbar angeordnet sein.
Da bei der in der Frankiermaschine verwendeten seriellen Kommunikation Geld betreffende Informationen und Steuerungen vorherrschen, ist ein hohes Mass von Lauterkeit zwingend. Zu diesem Zweck wird bei der Frankiermaschine eine serielle Kommunikation angewendet, bei der ein übertragenes Bit für Prüfzwecke durch seinen Empfänger rückübertragen oder als «Echo» rückgesendet wird. Wenn der Sender dabei alle der als Echo zurückgesendeten Signale zufriedenstellend empfängt, kann durch ihn ein Impuls «kein Fehler» ausgegeben werden, wodurch der Empfänger der Information informiert wird, dass die empfangene Information gültig ist.
Eine Ausführungsform der Buchungseinheit ist in Fig. 5 dargestellt, die vorzugsweise von einer elektromagnetischen Abschirmung 90 umgeben ist. Die Einheit weist einen Mikrocomputer 91 mit einer damit gekoppelten leistungsunabhängigen Speichersteuerung 92 auf. Die leistungsunabhängige Speichersteuerung steuert die Übergabe gespeicherter Daten zwischen dem leistungsabhängigen Speicher, welcher Bestandteil des Mikrocomputers 91 sein kann, und einem leistungsunabhängigen Speicher 93. Die leistungsabhängigen Speicher, wie frei adressierbare Speicher, können als anwachsende Arbeitsregister, abfallende Arbeitsregister und dergleichen betrieben werden. Der Mikrocomputer weist auch eine Nurlesespeichersteuerung für die notwendigen Buchungsroutinen sowie Steuerroutinen auf. Die Buchungseinheit kann ausserdem serielle Schnittstellen aufweisen, um ihre schnittstellenmässigen Verbindungen mit der Drucker- und Steuereinheit zu ermöglichen. Der Mikrocomputer kann beispielsweise ein Mikrocomputer der Serie 8040 von Intel Corporation, Santa Clara, Californien sein und einen Steuerschaltkreis aufweisen, der seiner Art nach dem in bezug auf die Steuereinheit 75 beschriebenen gleicht. Um Störungen s
10
15
20
25
30
35
40
45
50
55
60
65
5
662 435
der Buchungseinheit durch zufällig oder absichtlich angelegte elektrische Spannungsstösse zu vermeiden, und ein durch Erdschleifen induziertes elektrisches Rauschen auszuschliessen, erfolgt die Kommunikation des Mikrocomputers mit den ausserhalb des Abteils 57 gelegenen Geräten durch geeignete Koppler, durch die keine Spannungsstösse auf den Mikrocomputer übertragen werden können. Diese Koppler können beispielsweise opto-elektronische Koppler sein und sind ebenfalls vorzugsweise derart angeordnet, dass sie vom Aussenraum der Frankiermaschine her nicht zugänglich sind. Dabei kann ein Koppler 94 für die Zweiwegkommunikation mit der Steuereinheit vorgesehen sein. Ein weiterer Koppler 95 kann für die Zweiwegkommunikation mit der Druckereinheit 56 vorgesehen sein. Ein weiterer Koppler 96 kann zur Übertragung des Stromausfallsignals an den Mikrocomputer 91 vorgesehen sein. Darüber hinaus kann ein Koppler 97 zur Steuerung eines im Drucker vorgesehenen nicht dargestellten Sperrgliedes vorgesehen sein, um beispielsweise die Funktionen des Druckers mechanisch zu sperren.
Der leistungsunabhängige Speicher 93 ist beim gegenwärtigen Stand der Technik vorzugsweise ein MNOS-Speicher, für den keine Sicherheitsstromquelle erforderlich ist. Dieser Speicher kann jedoch alternativ aus Elementen gebildet sein, die dauernd mit Strom versorgt werden müssen, wobei in diesem Fall ein Steuerungsschaltkreis verwendet werden kann. Der Zweck des Steuerungsschaltkreises 98 besteht darin, für den MNOS-Speicher Energie zur Verfügung zu stellen, um dadurch dessen Datenübertragungsoperation im wesentlichen während des Einschaltens und Ausschaltens der Energie zu bewirken. Das Programm des Mikrocomputers 91 ist derart organisiert, dass die Inhalte der Register der Computereinheiten in den leistungsunabhängigen Speicher eingegeben werden, sobald irgendein Anzeichen eines Stromausfalls auftritt und dass diese Daten nach dem Stromausfall in die Arbeitsregister zurückgespeichert werden.
Der in der Fig. 3 dargestellte Thermostat 67 unterbricht die Stromversorgung für die Frankiermaschine im Falle eines Hoch- oder Tieftemperaturbetriebs. Hierdurch wird die Frankiermaschine infolge der Stromunterbrechung automatisch in ihren Stromausfallzyklus versetzt.
Im Abteil 57 kann ausserdem ein Temperaturfühler 99 mit damit sowie an den Mikrocomputer gekoppelten, geeigneten, nicht dargestellten Schaltkreisen angeordnet sein, um beim Auftreten von Übertemperaturen Daten in den leistungsunabhängigen Speicher zu übertragen. Die Buchungseinheit kann ferner das Solenoid für das Sperrglied beim Auftreten von Übertemperaturen über den Koppler 97 abschalten. Es wird darauf hingewiesen, dass das Sperrglied durch den Mikrocomputer 91 auch derart gesteuert wird, dass der Betrieb des Druckers gesperrt wird, falls für einen Druckvorgang eine nur unzureichende Portogebühr übrig ist, oder durch andere Buchungsdaten angezeigt wird, dass die Druckereinheit nicht in Betrieb sein sollte.
Während die Koppler als getrennte Einheiten dargestellt worden sind, wird darauf hingewiesen, dass diese Einheiten natürlich auch Mehrfachanordnungen enthalten können, so dass in den betreffenden Schaltkreisen eine Zweiwegkommunikation aufgebaut ist. Ferner wird darauf hingewiesen, dass Systeme zur Übertragung von Daten zwischen leistungsabhängigen und leistungsunabhängigen Speichern wohlbekannt sind.
In Fig. 6 ist ein mehr in Einzelheiten gehendes Blockschema einer bevorzugten Ausführungsform der Steuereinheit dargestellt. In dieser Figur sind die Blöcke soweit anwendbar durch Teilenummern und Anschlüsse identifiziert. Diese Einheit weist in ihrer Darstellung einen Mikroprozessor 100 des Typs 6503 auf, deren Daten- und Adressenleitungen an einen RAM/ ROM/Eingabe/Ausgabe/Zeitgeber-Logikschaltkreis 101 des Typs 6531 sowie an einen programmierbaren Nurlesespeicher oder PROM 102 des Typs 2716 angekoppelt sind, wobei in dem PROM 102 das Programm für die Steuereinheit gespeichert ist.
Ebenso können mit dem Schaltkreis 101 Steuerleitungen wie die Unterbrechungsleitung INT und die Lese/Schreib-Leitung R/W verbunden sein. Der Schaltkreis 101 weist, wie noch beschrieben wird, eine Anzahl von Anschlussstellen auf. 5 Die Steuereinheit weist ferner eine Tastatur 103 mit den in Fig. 1 dargestellten numerischen Tasten 31, den Anzeigetasten 35 bis 40 und dem in drei Stellungen betätigbaren Schalter 45 auf. Diese Steuereinheit umfasst ausserdem die Aufadditionstaste 52 und die Portoeinstelltaste 34. Alle diese Tasten und io Schalter sind in einer Matrix in herkömmlicher Weise mit dem Schaltkreis 101 verbunden, um die Abtastung der Tasten und Schalter entsprechend dem Programm zu ermöglichen und damit das Schliessen einer Taste oder eines Schalters zu erfassen. Die acht Leitungen PAO bis PA7 sowie vier Leitungen PB0 bis i5 PB3 des Schaltkreises 101 sind auch mit dem Siebensegment-Sichtanzeigefeld 104 für eine in der herkömmlichen Weise erfolgende Multiplex-Anzeige verbunden. Der Schaltkreis 101 ist weiter an ein Paar von Anschlussstellen PC-0, PD-0 zur seriellen Kommunikation mit der Buchungseinheit 58 angeschlossen. 20 Zusätzlich ermöglicht ein weiteres Paar von Anschlussstellen PC-1, PD-1 über opto-elektrische Koppler 107 bzw. 108 eine serielle Kommunikation mit externen Geräten. Ein weiterer Ausgang ist an eine Leuchtdiode 109 angeschlossen, um auf dem Anzeigefeld eine Anzeige dafür hervorzurufen, dass die Datum-25 gebertür nicht geschlossen ist. Eine weitere Anschlussstelle PC-3 ist mit einer Leuchtdiode 110 auf dem Anzeigefeld verbunden, um anzuzeigen, dass ein Eingriff der Bedienungsperson erforderlich ist, um den in der Basis vorgesehenen Auslösemechanismus zu lösen. Schliesslich ist eine weitere Anschluss-30 stelle PB-5 mit dem Wartungsschalter 50 verbunden, um die Funktionen der Frankiermaschine in dem Wartungs-Betriebszu-stand in Betriebsbereitschaft zu versetzen.
Das Programm der Mikroprozessoren ist auf die Bedienung der Tastatur, des Anzeigefeldes und dergleichen gerichtet, so 35 dass die Speicherung von Daten vorrangig in der Buchungseinheit bewirkt werden. Das Programm beinhaltet dabei diejenigen Funktionen, die für das Abtasten der Tastatur, den Multiplexbetrieb der Anzeigeeinheit, die Formatierung von Signalen für die Kommunikation mit den anderen Einheiten und mit exter-40 nen Geräten und dergleichen erforderlich sind, so dass jede neue Information auf die Buchungseinheit übertragen werden kann.
Ein typischer opto-elektrischer Koppler ist in Fig. 7 dargestellt, der in erster Linie ein herkömmliches 6N125-Element 115 45 mit einem Festkörperemitter zur Erzeugung von optischen Signalen für den Empfang durch eine Fotodiode, wobei die Fotodiode in den Basiskreis eines Transistorverstärkers eingeschaltet ist, bildet.
Ein Blockschema einer bevorzugten Ausführungsform der so Buchungseinheit ist in der Fig. 8 dargestellt. Die Buchungseinheit enthält einen Mikrocomputer 120 des Typs 8039 von Intel Corporation, der über opto-elektrische Koppler 121 und 122 mit der Steuereinheit sowie über opto-elektrische Koppler 123 und 124 mit der Druckereinheit verbunden ist. Ausserdem kann 55 eine Anschlussstelle P12 des Mikrocomputers 120 über einen opto-elektrischen Koppler 125 zur Steuerung eines Sperrgliedes oder dergleichen mit der Druckereinheit verbunden sein. Signale, die einen Stromausfall signalisieren, werden ferner über einen opto-elektrischen Koppler 126 an eine Anschlussstelle IRG 60 des Mikrocomputers 120 angelegt. Es ist somit ersichtlich, dass alle Signale von und zu der Buchungseinheit über opto-elektrische Koppler geführt werden müssen, um die elektrische und physikalische Unbedenklichkeit oder Lauterkeit dieser Einheit sicherzustellen. Die Buchungseinheit weist ferner eine Anzahl 65 von programmierbaren Nurlesespeichern oder PROMS 127 auf, die an die Adressen- und Datenleitungen des Mikrocomputers 120 angekoppelt sind, wobei beispielsweise jeder PROM 127 ein löschbarer PROM oder E-PROM des Typs 8755 von Intel Cor
662 435
6
poration ist. Die Nurlesespeicher sind mit einem elektrisch veränderbaren Nurlesespeicher (EAROM) 128, beispielsweise des Typs ER 3400 verbunden, der bei Stromausfall als ein leistungsunabhängiger Speicher dient. Der Arbeitsspeicher für die Buchungseinheit einschliesslich der zur Speicherung aller Betriebsdaten dienenden Register ist in dem Mikrocomputer 120 vorgesehen, wobei diese Daten dem elektrisch veränderbaren ROM 128 zu einem solchen Zeitpunkt zugeleitet werden, zu dem ein Stromabfall erfasst wird. Um eine vollständige Übertragung der Daten sicherzustellen, können in herkömmlicher Weise Speicherkondensatoren eingeschaltet sein, um eine angemessene Energie zu speichern, durch die die einwandfreie Funktion des Schaltkreises sichergestellt ist, bis die Übertragung der Daten bewirkt worden ist.
Ein bevorzugtes Blockdiagramm einer bevorzugten Ausführungsform der Druckereinheit ist in Fig. 9 dargestellt. Die Druckereinheit weist einen Mikrocomputer 130, beispielsweise des Typs 8748-8 von Intel Corporation auf. Der Mikrocomputer ist über geeignete Puffer mit den in der Druckereinheit vorhandenen Eingabe-Ausgabevorrichtungen verbunden. Die mechanischen und opto-elektrischen Fühlereinrichtungen innerhalb der Druckereinheit sich von herkömmlicher Art. Auf diese Weise ist der Mikrocomputer mit einer Anzahl von nicht dargestellten opto-elektrischen Fühlern zur Erfassung der Lageeinstellung des Druckräderwerks verbunden. Ein nicht dargestellter Zugangsberechtigungsschalter ist innerhalb der Druckereinheit angeordnet und nur über eine durch das Postamt versiegelte Tür zugänglich. Diese Leitungen des Mikrocomputers sind weiter derart geschaltet, dass die Stellung einer Zeitgebertür erfasst wird, wobei der Zeitgebertürschalter und der Zugangsberechtigungsschalter durch weitere Ausgangssignale des Mikrocomputers 130 abgetastet werden. Die Leuchtdioden der optischen Fühler werden zu den geeigneten Zeiten mittels weiterer Ausgangssignale des Mikrocomputers 130 abgetastet und wieder andere Ausgangssignale des Mikrocomputers ermöglichen den Schrittbetrieb der Reihen- und Ziffernschrittmotore für das Druckräderwerk. Ferner weist der Mikrocomputer 130 Anschlussstellen zur seriellen Kommunikation mit der Buchungseinheit auf. Ferner wird durch das von der Buchungseinheit herrührende Sperrglied-Ausgangssignal und ein weiteres Ausgangssignal des Mikrocomputers 130 ein Paar von Transistoren angesteuert, um das Solenoid 153 des Sperrgliedes zu erregen, wobei das Solenoid 153 erst dann erregt wird, wenn sowohl in der Buchungseinheit als auch in der Druckereinheit alle Vorbedingungen erfüllt sind. Demzufolge kann solange kein Druckzyklus beginnen, bis die physikalischen und elektrischen Bedingungen innerhalb der Frankiermaschine für einen normalen Druckvorgang realisiert sind. In der Druckereinheit ist ersichtlich, dass das Programm innerhalb des Mikrocomputers selbst vorgesehen ist.
Frankiermaschinen der vorstehend beschriebenen Art können mit mehreren Abwandlungen versehen sein. Beispielsweise besteht bei einer Abwandlung, die abgekürzt als «RMRS» bezeichnet wird, die Möglichkeit zum fernbetätigten Laden, wobei der Schlüssel für einen Betrieb eines in drei Stellungen schaltbaren Ladeschalters auf der Tastatur vorgesehen ist. Einer Bedienungsperson der Frankiermaschine kann auf diese Weise eine in die Tastatur einzugebende geeignete Kombination angegeben werden, um ihr ein fernbedientes Laden (d.h. über eine Entfernung von dem Postamt) zu ermöglichen. Bei derartigen Frankiermaschinen ist der Zugangsberechtigungsschalter weggelassen.
In einer weiteren Abwandlung kann der in die drei Stellungen schaltbare Nachladeschalter durch einen einfachen Knopf gesteuert werden, ohne dass ein Schlüssel erforderlich ist. Bei dieser Art von System, das abekürzt als «MMRS» bezeichnet wird, kann die Frankiermaschine am Postamt von Hand nachgeladen werden, wogegen die Wartungsfunktionen ebenso wie bei den Einheiten des RMRS-Typs lokal bewirkt werden können.
Anders ausgedrückt kann das Nachladen einer Frankiermaschine der oben beschriebenen Art lokal bewirkt werden, wenn die Frankiermaschine mit einem Schlüssel für den in drei Stellungen schaltbaren Schalter versehen ist, wobei in diesem Fall weitere Schutzmassnahmen erforderlich sind, wie später noch besprochen werden wird. Andererseits ist bei den einen einfachen Knopfschalter anstelle des Schlüsselschalters aufweisenden Frankiermaschinen die durch das Postamt versiegelte «Zugangsberechtigung» für ein manuelles Nachladen vorgesehen.
Befindet sich die Frankiermaschine in ihrem normalen Betriebszustand, wird durch ein Niederdrücken der sechs Anzeigetasten die Anzeige von sechs Parameter auf dem Anzeigefeld bewirkt, d.h. die in dem anwachsenden Register vorhandene Gesamtsumme der gesamten bereits ausgedruckten Portogebühren, die in dem abfallenden Register vorhandene verbleibende Gesamtsumme der noch vorhandenen Portogebühren, die Kontrollsumme, die Gesamtzahl der von der Frankiermaschine ausgeführten Druckvorgänge, der Wert der gedruckten Portogebühren und die Anzahl der seit der letzten Stapellöschoperation der zugehörigen Register gedruckten Stücke. Durch das Niederdrücken dieser Tasten wird die betreffende Zahl nach dem Loslassen der entsprechenden Taste nur während einer bestimmten Zeitspanne angezeigt, beispielsweise für zwei Sekunden, wonach die Anzeigeeinheit in den Portogebühreinsteilbetrieb zurückkehrt.
Bei allen diesen Frankiermaschinentypen tritt eine unterschiedliche Anzeigefunktion der Anzeigetasten auf, wenn der Wartungsschalter in die Wartungsstellung gebracht wird und der in die drei Stellungen schaltbare Schalter weiterhin in der Betriebsstellung verbleibt. Auf diese Weise bewirkt sodann ein Niederdrücken der Taste «verbrauchte Portogebühr» eine Anzeige des in einem Register der Maschine gesetzten Sperrwertes, bei dem oder oberhalb dessen eine Bedienungsperson keine Portogebühr ausdrucken kann. Über diesem Wert liegende Portogebührenwerte erfordern zur Ausführung ein zusätzliches Niederdrücken der Portoeinstelltaste, um ein unbeabsichtigtes Drucken von Portogebührenwerten zu vermeiden. Durch ein Niederdrücken der Taste «unverbrauchte Portogebühr» 36 wird nun eine Anzeige des in dem Register für die untere Portoge-bühren-Warngrenze vorhandenen Wertes bewirkt, bei dem eine Warnung erfolgen sollte, dass der Inhalt des abfallenden Registers einen bestimmten Betrag unterschritten hat. Ein Niederdrücken der Kontrolltaste oder Taste «Portogebührensumme» 37 bewirkt nun die Anzeige der Seriennummer der Frankiermaschine. Das Niederdrücken der Taste «Stückzahl» 38 bewirkt nun eine Anzeige des Diagnosestatus der Frankiermaschine. Diese Anzeige liefert dem Wartungstechniker Hinweise auf mögliche Fehlfunktionen. Ein Niederdrücken der Taste «Stapelwert» 39 bewirkt nun eine Anzeige des einstellbaren Höchstbetrags, d.h. des innerhalb der Frankiermaschine eingestellten Höchstbetrags, oberhalb dessen die Druckregister der Frankiermaschine nicht eingestellt werden können. Ein Niederdrücken der Taste «Stapelzahl» 40 ist in dem Wartungs-Betriebszustand wirkungslos.
Der in die drei Stellungen schaltbare Schalter dient dazu, ein Nachladen der Frankiermaschine oder eine Änderung der in dem Register für den Sperrwert, dem Register für den unteren Portogebührenbetrag und dem Register für den einstellbaren Höchstbetrag vorhandenen Werte zu bewirken.
Bei der RMRS-Ausführungsform, d.h. dem ferngesteuerten Frankiermaschinenrückstellsystem wird durch Einstellung des die drei Schaltstellungen aufweisenden Schalters in die Stellung «Kombinationseingabe» oder die Stellung «Betragseingabe» der Benutzer in die Lage gesetzt, mittels der Tastatur bei einer Anzeige durch die Anzeigeeinheit die Kombination bzw. den Betrag in die Frankiermaschine einzugeben. Beim Verlassen dieser
5
10
15
20
25
30
35
40
45
50
55
60
65
7
662 435
Schaltstellung wird der angezeigte Wert in die Buchungseinheit eingegeben und die Anzeigeeinheit für die nächste Eingabe gelöscht. Durch die Rückkehr des die drei Schaltstellungen aufweisenden Schalters in die Betriebsstellung wird eine vollständige Durchführung der Nachladeroutine durch die Buchungseinheit bewirkt sowie eine Rückkehr der Frankiermaschine in den Normalbetrieb, wonach der Nachladebetrag zu dem Register «unverbrauchte Portogebühren» addiert wird. Die für die RMRS-Ausführungsform erforderliche Kombination wird von einem RMRS-Datenzentrum erhalten und stellt eine Zufallsoder Pseudozufallszahl dar, die sich aus Sicherheitsgründen bei jedem Nachladevorgang ändert.
Bei der MMRS-Ausführungsform der Frankiermaschine, d.h. dem handbetätigten Frankiermaschinenrückstellsystem wird der Nachladebetrieb dadurch bewirkt, dass das Siegel der Zugangsberechtigungstür erbrochen und der Zugangsberechtigungsschalter umgeschaltet wird. Zum Nachladen der Frankiermaschine wird dieselbe Folge von Betätigungen des die drei Schaltstellungen aufweisenden Schalters befolgt, die oben im Zusammenhang mit der RMRS-Ausführungsform beim fernbetätigten Nachladen beschrieben worden ist. In der MMRS-Ausführungsform ist nur Postpersonal berechtigt, die Änderung durchzuführen. Die Kombination besteht aus einer nur dem Postamt bekannten festen Zahl, die in der Frankiermaschine gespeichert ist. Der Normalbetrieb der Frankiermaschine geht weiter, sobald der Zugangsberechtigungsschalter in seine Stellung «Betrieb» zurückgeschaltet ist.
Zur Änderung der in den den Sperrwert, den unteren Porto-Gebühren-Betrag und den einstellbaren Höchstbetrag betreffenden Registern vorhandenen Werte wird die Frankiermaschine durch den Wartungstechniker in den Wartungs-Betriebszustand versetzt, indem der Wartungsschalter in die Wartungsstellung gebracht wird. Zur Eingabe der Werte für Kombination und Betrag wird der die drei Schaltstellungen aufweisende Schalter in der oben beschriebenen Weise verwendet. Der Kombinationswert wird durch die Frankiermaschine interpretiert um anzuzeigen, welches Register zu ändern ist. Wenn bei der RMRS-Aus-führungsform und der MMRS-Ausführungsform ein Fehler bei der Eingabe erfolgt ist, wird das Auftreten dieses Fehlers als ein Anzeichen für einen Fälschungsversuch der Maschine gezählt. Wenn seit der letzten Einstellung der Frankiermaschine eine bestimmte Anzahl derartiger Fehler aufgetreten ist, beispielsweise neun, wird die Funktion der Maschine für ein Nachladen von Postgebühren gesperrt. Eine Rückführung der Frankiermaschine in ihren Betriebszustand kann unter solchen Umständen beim Postamt ausgeführt werden. Eine Diskussion der Mittel für eine Rückführung der Maschine in ihren vollen Betriebszustand ist für die Erfindung nicht von Belang und bezieht sich auf den Schutz der Frankiermaschine.
Wie vorstehend beschrieben worden ist, weist jede der drei Einheiten der Frankiermaschine einen Mikroprozessor bzw. Mikrocomputer mit einem ein bestimmtes Programm festlegenden Nurlesespeicher auf, und die Kommunikation zwischen den Einheiten wird seriell und asynchron bewirkt. Dies wird in erster Linie dadurch erreicht, dass jede Einheit mit einem kristallgesteuerten Taktgeber ausgestattet ist. Ferner sind die Signale derartig festgelegt, dass ihre Übergänge genau kontrolliert werden, wodurch sichergestellt ist, dass, sofern ein Signal auftritt, dieses innerhalb einer vorgegebenen Zeitspannung auftreten muss. Als eine weitere Sicherheitsmassnahme für die Richtigkeit der Kommunikation werden zum Zwecke einer Fehlerprüfung beim Sender die Bits eines Signals zum Sender rückübertragen, sobald sie empfangen worden sind, wobei ein Bit «kein Fehler» unmittelbar im Anschluss an eine Datenmeldung übertragen werden kann, wenn die Daten in richtiger Weise erfolgt sind.
Das Programm der Steuereinheit spricht auf den Status der Frankiermaschine in bezug auf vorbestimmte Parameter an. Ein in dem Mikrocomputer der Buchungseinheit vorhandenes
Register enthält eine Statusinformation der Frankiermaschine von beispielsweise zwei Bites, durch deren Bits digital angezeigt wird, wenn der Auslösemechanismus der Frankiermaschine eine Freigabe erfordert, wenn die Zeitgebertür im Anschluss an die letzte Anlegung des Betriebsstroms nicht geöffnet worden ist oder gegenwärtig offen ist, wenn keine ausreichenden Geldmittel vorhanden sind, welche das Drucken des im Druckräderwerk eingestellten Betrags ermöglichen, wenn der untere Portogebührenwert erreicht worden ist, wenn sich die Frankiermaschine in einem Wartungszustand befindet, wenn die Frankiermaschine in Betriebsbereitschaft versetzt ist, wenn die Stapelregister gelöscht sind, wenn ein Auslösevorgang vollständig durchgeführt ist oder wenn verschiedene Arten von Fehlern aufgetreten sind. Die mit diesen Bits verbundene Statusnachricht stimmt nicht mit der oben erwähnten Diagnosenachricht überein, die im Wartungsbetrieb verwendet wird. Die Buchungseinheit hält die Steuereinheit über den gegenwärtigen Status auf dem laufenden, indem sie die Statusnachricht auf die Steuereinheit überträgt, nachdem der Strom angeschaltet worden ist und danach immer dann, wenn eine Änderung des Status auftritt, wobei die Steuereinheit auf alle derartigen Nachrichten anspricht, indem sie sicherstellt, dass die Anzeige der Frankiermaschine mit der oben besprochenen Statusnachricht konsistent ist. Diese letztgenannten Schritte können beispielsweise die Anzeige einer Zeile von Dezimalziffern beim Auftreten bestimmter Fehler beinhalten, sowie einen Blinkbetrieb des Dezimalpunktes beim Auftreten der unteren Portomittelgrenze, einen Blinkbetrieb der gesamten Anzeigeeinheit beim Auftreten einer unzureichenden Portogebühr, die Anzeige von Unterstreichungen anstelle von Leerstellen, wenn sich die Frankiermaschine im Wartungszustand befindet. Ein in der Steuereinheit vorgesehenes Unterbrechungsprogramm unterbricht das Hauptprogramm der Steuereinheit in regelmässigen Zeitabständen, um die Tastatur und den Schlüsselschalter abzutasten und die Anzeigeeinheit auszusteuern. Um zu verhindern, dass auf der Anzeigeeinheit Scheinzeichen auftreten, die durch unerwünschte Nebenschlussströme erzeugt werden können, wenn mehr als eine Taste niedergedrückt werden, bewirkt das Unterbrechungsprogramm statt dessen eine Leeranzeige der Anzeigeeinheit. Die Bestandsführung der Werte, die sich auf die Zeit, die Tastatur und den Schlüsselschalter beziehen, erfolgt durch das Unterbrechungsprogramm für eine Verwendung durch das Hauptsteuerprogramm.
Das Hauptprogramm für die Steuereinheit beinhaltet Schritte der Anfangswertsetzung, Programmschritte für die in beiden Richtungen erfolgende Übertragung von Nachrichten zwischen der Buchungseinheit und externen Geräten und für eine Steuerung der zeitgesteuerten Anzeigeeinheit, eine Prüfung der Statusnachricht, um sicherzustellen, dass die Datumgebertür und die Rückstellbasislichter entsprechend dem Status erleuchtet sind, ein Ansprechen auf die mitgeteilten Stellungen von Schaltern und des die drei Stellungen aufweisenden Schalters, um darin auftretende Zustandsänderungen sicherzustellen, so dass die Steuereinheitunterroutine, die der für einen derartigen Zustand oder Änderung eines Zustands definierten Funktion entspricht, ausgeführt wird.
Das Programm der Buchungseinheit weist Prozeduren zur Anfangswertsetzung auf, um sicherzustellen, dass die Arbeitsregister auf den neuesten Stand gebracht werden und dass keine Portogebühr gedruckt worden ist, die nicht gebucht worden ist, sowie ein Stromausfall-Verarbeitungsprogramm, um die Datenübertragung in einen leistungsunabhängigen (elektrisch veränderbaren) Speicher zu bewirken, falls der Strom zusammenbricht oder ausfällt.
Das Hauptprogramm der Buchungseinheit bewirkt die Übertragung der Statusnachricht der Frankiermaschine an die Steuereinheit auf Befehl oder auf eine Änderung des Status, er-fasst die Wirkung jedes augenblicklich eingegebenen Portoge5
10
15
20
25
30
35
40
45
50
55
60
65
662 435
8
bührenwertes auf die augenblicklich registrierten Daten über die Gebührenmittel und führt alle notwendigen Änderungen der Statusnachricht durch. Das Hauptprogramm steuert auch den Zeitablauf in der Buchungseinheit für den Empfang von Nachrichten von der Steuereinheit und dem Drucker. Das Programm der Buchungseinheit weist ferner Unterroutinen für die Verarbeitung von Signalen auf, durch die die Register auf den neuesten Stand gebracht werden können, wenn eine Portogebühr gedruckt werden soll und durch die der Betriebsablauf des Systems gesteuert wird, wenn die Frankiermaschine ausgelöst ist. Eine weitere Unterroutine dient dazu, die Statusnachricht der Frankiermaschine auf den neuesten Stand zu bringen. Ferner ist in die Software der Buchungseinheit eine Fehlerprüfroutine einprogrammiert, die eine zyklische Redundanzprüfung ausführt. Dies wird in Einzelheiten unten noch beschrieben.
Das Programm der Druckereinheit weist ein Hauptprogramm auf mit Schritten zur Anfangswertsetzung, Schritten zur Abtastung der Fühler und Steuerung der Auftastungen für die Leuchtdioden der Fühler sowie die Bearbeitung von Nachrichten für eine Kommunikation mit der Buchungseinheit. Es sind Unterroutinen vorgesehen, um das Portogebühren-Druckräder-werk einzustellen, um festzustellen, ob Fühlermesswerte richtig sind, und um festzustellen, ob irgendwelche Änderungen in den Ausgangssignalen der verschiedenen Hardwarefühler und Schalter wie des Zugangsberechtigungsschalters und des Zeitgebertürschalters aufgetreten sind.
Hinsichtlich des Programms zur Setzung des oben beschriebenen Anzeige-Entsperrungswertes, des einstellbaren Höchstbetrages und des unteren Portogebührenbetrages sind die eine derartige Setzung bewirkenden Tasten in der oben beschriebenen Art und Weise in der Tastatur als Matrix angeordnet und sie werden periodisch abgetastet, um festzustellen, ob eine Änderung des Status erfolgt ist. Die Abtastposition tritt auch gegenüber dem Wartungsschalter in der Steuereinheit auf, wodurch die Steuerung jeder Taste und jedes Schalters der Buchungseinheit mitgeteilt wird, um darin gespeichert und verarbeitet zu werden. Wenn beispielsweise der Wartungsschalter in seine Stellung «Ein» eingestellt wird, setzt die Abtastung, die auch bezüglich des die drei Schaltstellungen aufweisenden Schalters wirksam ist, in Abhängigkeit von der Stellung des die drei Schaltstellungen aufweisenden Schalters als eine Anzeigeroutine eine Kombinationseingaberoutine oder Betragseingaberoutine in Betriebsbereitschaft.
Durch die Anzeigeunterroutine werden die in einem einer gedrückten Anzeigetaste entsprechenden Register vorhandenen Daten an die Steuereinheit zur Anzeige gesendet. In der Kombi-nationseingabeunterroutine wird die nächste auf der Tastatur erfolgende Eingabe gespeichert, so dass der auf der Tastatur eingegebene Wert im Falle, dass der die drei Schaltstellungen aufweisende Schalter in eine Betragseingabestellung gedreht worden ist, in das entsprechende Register des Mikrocomputers der Buchungseinheit eingegeben wird, wodurch der auf diese Weise eingegebene Wert beim künftigen Betrieb der Maschine in den normalen Betriebsprozeduren zur Wirkung kommt. Natürlich ist klar, dass die Prüfung der eingestellten Werte im Normalbetrieb effektiv hinsichtlich eines Wertebereichs durchgeführt wird, beispielsweise einem Bereich von Portogebührenwerten, die kleiner oder grösser als der gespeicherte Betrag sind, so dass die notwendige Anzeige abgegeben werden kann. Der Ausdruck «Anzeige», wie er in diesem Sinne verwendet ist, bezieht sich auf die Anzeigeeinheit. Falls der eingegebene Portogebührenwert den einstellbaren Höchstbetrag überschreitet, wird der eingegebene Wert übergangen und die Anzeige kehrt zu ihrem ursprünglichen Portogebühren wert zurück. Die bei der Wartung einstellbaren Eigenschaften, wie sie oben offenbart worden sind, können ebenfalls als der Steuerung der Frankiermaschine in verschiedene Zustände dienend angesehen werden, wie einen unwirksamen Zustand, wenn der einstellbare
Höchstbetrag überschritten worden ist, einen Untergrenzen-Warnzustand, wenn die Untergrenzenanzeige blinkt und einen ein zusätzliches Drücken der Einstelltaste erfordernden Sperr-wertzustand, wenn der in der Anzeige eingestellte Betrag diesen gespeicherten Wert überschreitet.
In weiterer Hinsicht auf die Systemdiagnose, auf die oben kurz Bezug genommen worden ist, sind in der Software-Routi-ne der Frankiermaschine zwei grundlegende Fehlerprüfungen vorgesehen. Diese beiden Fehlerprüfungen werden als verhängnisvoll bzw. als prozedurbedingt bezeichnet. Innerhalb der Kategorie der verhängnisvollen Fehlerprüfungen sind zwei Unterkategorien definiert. Diese beiden Unterkategorien werden als hart bzw. als weich bezeichnet. Die Erfassung harter Fehler erfolgt durch Überwachung von Hardware-Fühlern, wie Grup-penwahl- und Ziffernwahlfühler, Vermittlerstellungsfühlern, Querriegelfühlern und dergleichen. Ein Ausfall von durch diese Fühler erzeugter richtiger Lesewerte wird ein verhängnisvoller harter Fehler genannt, der die Frankiermaschine sperrt und der sich nach Stromeinschaltung nicht wieder behebbar erweist. Es ist dann das Eingreifen einer zentralen Autorität erforderlich, um einen weiteren Betrieb der Frankiermaschine zu ermöglichen.
Ein weiteres Beispiel für einen verhängnisvollen harten Fehler ist ein sich ergebender NichtVergleich aus einer zyklischen Redundanzprüfung. Jedes Datenregister wird fortlaufend überwacht. Unter Verwendung standardmässiger Polynomtechniken wird ein zyklischer Redundanzrest für jeden auf den neuesten Stand gebrachten Datenregisterwert errechnet. Wenn ein Stromausfallzyklus in Gang gesetzt wird, wird der Inhalt jedes Datenregisters sowie sein zugehöriger zyklischer Redundanzrest in einen leistungsunabhängigen Speicher übertragen. Bei Stromeinschaltung wird der zyklische Redundanzrest jedes Datenregisters erneut berechnet und mit dem bei der Stromabschaltung vorher errechneten zyklischen Rest verglichen. Ein Nichtver-gleich erzeugt einen verhängnisvollen harten Fehler.
Verhängnisvolle weiche Fehler beziehen sich auf die Inter-kommunikationseigenschaften der Frankiermaschineneinheiten. Dabei werden Kommunikationsfehler zwischen internen Einheiten, wie der Buchungs-, Drucker- und Steuereinheit auf der Grundlage der früher beschriebenen Bitrückübertragung er-fasst. Zusätzlich sind Kommunikationszeitausgabefunktionen vorgesehen, so dass das Ausbleiben der Kommunikation einer Einheit innerhalb einer bestimmten Zeitdauer ebenfalls einen weichen verhängnisvollen Fehler erzeugt. Weiche verhängnisvolle Fehler sperren den Betrieb der Frankiermaschine. Eine Freigabe kann durch eine zyklische Rückführung der Frankiermaschine bewirkt werden; d.h., dass die Frankiermaschine abzuschalten und dann wieder einzuschalten ist, wodurch die zyklische Rückführung und Löschung des Fehlers herbeigeführt wird. Die zyklische Rückführung der Stromversorgung wird in einem Datenregister gezählt und kann, wenn dies gewünscht ist, bei Erreichung einer vorbestimmten Zahl eine totale Sperre hervorrufen. Mit anderen Worten gleicht somit eine vorbestimmte Anzahl von weichen verhängnisvollen Fehlern einem einzigen harten verhängnisvollen Fehler.
Prozedurbedingte Fehler, wie beispielsweise unrichtige (zu hohe) Werteingaben oder der Versuch einer unrichtigen Prozedur äussern sich als Sichtmarken auf der Anzeigeeinheit.
Weitere Diagnoseprüfungen ebenso wie Abänderungen können, wie oben ausgeführt worden ist, leicht in die hierin implementierten Software-Routinen eingepasst werden.
Indem die Kommunikation der Daten zwischen den Einheiten auf der Basis von Nachrichten seriell erfolgt und indem die vorbeschriebene «Echo»-Technik verwendet wird, kann die Implementierung der vorbeschriebenen Fehlerprüfungseigenschaften leicht erreicht werden.
Wie vorstehend erläutert, erfolgt die Kommunikation zwischen den Mikroprozessoren bzw. Mikrocomputern der Einhei5
10
15
20
25
30
35
40
45
50
55
60
65
9
662 435
ten aus einer in seriellem Kanal erfolgenden, bitsynchronen, zeichenasynchronen Start/Stopp-Kommunikation und kann beispielsweise mit 9600 baud erfolgen. Die Kommunikation beruht ausschliesslich auf der Basis von Nachrichten, d.h. dass getrennte Steuerleitungen zwischen den Mikroprozessoren bzw. Mikrocomputern der Einheiten zur Steuerung der Kommunikation nicht vorgesehen sind. Die Länge der Nachrichten beträgt 10 Bits, wobei jede ein Startbit und ein darauf folgendes Achtbitwort oder Byte aufweist und mit einem Stoppbit abgeschlossen ist. Der Bedeutungsinhalt des letzten Stoppbits einer Nachricht ist allen anderen Stoppbits der Nachricht entgegengesetzt, um hierdurch das Ende der Nachricht anzuzeigen. Eine logische Null zeigt ein Startbit, ein Nachrichtenendebit und ein Nulldatum oder einen Niedrigwert an. Eine logische Eins ist für eine Aufforderung zum Senden, eine Sendebereitschaft, ein Byteende, einen Datenpegel «1» und auch für die Anwesenheit eines Fehlerfrei-Impulses vorgesehen. Das erste Wort jeder Nachricht weist ein kodiertes Zweibitfeld auf, durch das festgelegt wird, ob die Nachricht Informationen, Daten oder Steuerfunktionen enthält. Ein weiteres Bit des ersten Wortes zeigt an, ob die Nachricht lediglichdie Anzeigeeinheit betrifft oder nicht, oder ob sie lediglich die Buchungseinheit betrifft. Der Rest der Bits des ersten Wortes bildet spezifische Nachrichtenidentifikationsbits.
Wenn die Nachrichten aus mehr als einem Wort bestehen, kann das zweite Wort der Nachricht ein Formatbyte aufweisen, das aus zwei Nibbles, d.h. Vier-Bitgruppen, besteht. Das erste Wort jeder Nachricht weist ein kodiertes Zweibitfeld auf, durch das festgelegt wird, ob die Nachricht Informationen, Daten oder Steuerfunktionen enthält. Ein weiteres Bit des ersten Wortes zeigt an, ob die Nachricht lediglich die Anzeigeeinheit betrifft oder nicht, oder ob sie lediglich die Buchungseinheit betrifft. Der Rest der Bits des ersten Wortes bildet spezifische Nachrichtenidentifikationsbits.
Falls die Nachrichten mehr als ein Wort aufweisen, kann das zweite Wort der Nachricht ein .Formatbyte enthalten, das aus zwei Nibbles, d.h. Vier-Bitgruppen, besteht. Der erste Nibble gibt die Anzahl von Datennibbles in der Nachricht an, und der zweite Nibble gibt die Anzahl der rechts des Dezimalpunktes der Daten stehenden Ziffern an oder entspricht einer hexadezimalen F, falls kein Dezimalpunkt vorhanden ist.
Falls in einem Mikroprozessor bzw. in einer Einheit eine Nachricht zum Senden bereitgestellt ist, wird zuerst die Empfangsleitung des Mikroprozessors bzw. Mikrocomputers der Einheit geprüft. Liegt sie auf niedrigem Pegel, so hebt der übertragende Mikroprozessor bzw. Mikrocomputer die Sendeleitung auf einen hohen Pegel an und prüft erneut die Empfangsleitung. Wenn diese weiterhin auf niedrigem Pegel liegt, ist der Mikroprozessor zur Übertragung freigegeben, andernfalls muss er die Rolle eines Empfängers übernehmen. Hierdurch wird eine Kontroverse zwischen zwei Einheiten vermieden. Im Hinblick auf Einheiten der Frankiermaschine selbst erteilen die Programme der verschiedenen Einheiten im Falle einer möglichen Kontroverse in absteigender Ordnung die Priorität der Druckereinheit, Buchungseinheit, Steuereinheit oder dem externen Gerät. Wenn an die Frankiermaschine, d.h. an die Steuereinheit externe Geräte angeschlossen sind, wird der Steuereinheit die Priorität erteilt.
Die Zeitablaufsteuerung der Nachrichten stellt das schwierigste Probem der Kommunikation dar, wobei die Nachrichten asynchron erfolgen können. Ein typischer Zeitablauf ist daher in Fig. 10 dargestellt, in der die relative Zeitsteuerung der Leitungen des Senders für das Senden einer gegebenen Nachricht und der Leitungen eines Empfängers für den Empfang dieser Nachricht dargestellt ist. Da die Ausgangsleitung des Senders mit der Eingangsleitung des Empfängers übereinstimmt ist klar, dass diese beiden Signalleitungen identisch sind. Dasselbe gilt natürlich hinsichtlich der Eingangsleitung des Senders und der Ausgangsleitung des Empfängers.
Bei einer erfolgreichen Übertragung in einem derartigen System prüft der Sender seine Eingangsleitung zum Zeitpunkt ti und erhöht, falls ein niedriger Pegel festgestellt wird, seine Ausgangsleitung innerhalb 50 Mikrosekunden auf einen hohen Pegel,wie es bei t2 dargestellt ist. Der Sendner prüft sodann erneut innerhalb 50 bis 100 Mikrosekunden zum Zeitpunkt tj seine Eingangsleitung. Wenn die Eingangsleitung weiterhin den niedrigen Pegel aufweist, kann der Sender nach Ablauf einer Mindestwartezeit von 120 Mikrosekunden zu einem Zeitpunkt ts mit der Sendung seiner Nachricht beginnen, indem diese Ausgangsleitung auf niedrigen Pegel abgesenkt wird, um das Anfangsbit der Nachricht zu bilden. Zwischenzeitlich hat zum Zeitpunkt U der Empfänger seine Ausgangsleitung innerhalb einer Minimalzeit von 100 Mikrosekunden auf einen hohen Pegel angehoben, wodurch angezeigt wird, dass er zum Datenempfang bereit ist. Hierdurch wird ein «Sendebereitschafts»-Zustand angezeigt. Der Zeitablauf zwischen den aufeinanderfolgenden Bytes einer Multibytenachricht, der durch das Zeitintervall zwischen t5 und t'5 angezeigt ist, beträgt mindestens 1134,375, um sicherzustellen, dass der Empfänger für die Durchführung eines richtigen Empfangs und einer richtigen Speicherung der Signale in Bereitschaft gesetzt worden ist.
Die Zeit zwischen dem Beginn t' 5 des letzten Nachrichtenbi-tes und der Übertragung eines Impulses «Fehlerfrei» zur Zeit ty ist auf 1031,25 bis 1157,291 Mikrosekunden eingestellt, und der Impuls «Fehlerfrei» weist eine Breite von 309,375 Mikrosekunden bis 368,228 Mikrosekunden auf. Der Empfänger muss das Auftreten eines Impulses «Fehlerfrei» zur Zeit tg zwischen 1187,291 bis 1340,625 Mikrosekunden nach der Einleitung des Startimpulses des letzten Bytes der Nachricht prüfen. Die Bitübergänge des Senders müssen sich in Einklang mit Tabelle I befinden und die Empfängerabtastung der Daten- und Stoppbits müssen sich im Einklang mit der in Tabelle II dargestellten Zeitgabe befinden.
TABELLE I
BIT MINIMUM MAXIMUM
1
START
0
0
2
DATEN 1
103,125
105,208
3
DATEN 2
206,250
210,417
4
DATEN 3
309,375
315,625
5
DATEN 4
412,500
420,833
6
DATEN 5
515,625
526,042
7
DATEN 6
618,750
631,250
8
DATEN 7
721,875
736,458
9
DATEN 8
825,000
841,667
10
STOP
928,125
946,875
TABELLE II
n
BIT
MINIMUM
1
START
2
DATEN 1
115,208
3
DATEN 2
220,416
4
DATEN 3
325,624
5
DATEN 4
430,832
6
DATEN 5
536,040
7
DATEN 6
641,248
8
DATEN 7
746,456
9
DATEN 8
851,664
10
STOP
956,872
5
10
15
20
25
30
35
40
45
50
55
60
65
662 435
10
Durch den obigen Zeitablauf und durch eine Kristallsteuerung der Taktgeber jeder Einheit ist dabei eine asynchrone Übertragung ausführbar, so dass Steuerleitungen für diesen Zweck zwischen den Einheiten unnötig sind.
Um sicherzustellen, dass die Information durch den Empfänger in richtiger Weise fehlerfrei empfangen wird, werden die Daten sequentiell auf der Empfängerausgangsleitung an den Sender zurückübertragen. Die Zeiten für die Rückübertragung der Daten sind ausgehend von dem Beginn der Befehlsschleife zur Erfassung der Startbits in Tabelle III angegeben, und die Zeiten zur Abtastung dieser Daten auf der Eingangsleitung für den Sender sind in Tabelle IV angegeben.
Der Impuls «Fehlerfrei» wird dann und nur dann am Ende der Nachricht übertragen, wenn die vom Sender empfangenen Daten mit den gesendeten Daten übereinstimmen.
Für eine weitere Kontrolle über die Nachrichtenkommunikation wartet der Sender nach der Ausgabe einer Sendeaufforderung für eine Übertragung 3.5 Millisekunden lang auf ein Sen-debereitschaftssignal des Empfängers und ebenso der Empfänger ungefähr maximal 3.5 Millisekunden lang auf den Beginn einer Nachricht, nachdem er die Sendebereitschaftsnachricht ausgegeben hat. Eine Konverse zwischen den Einheiten wird weiter dadurch auf ein Minimum herabgesetzt, dass bestimmte Zeitabstände festgesetzt werden können, die zwischen aneinander angrenzenden Sendeaktivitäten einer Einheit sowie auch zwischen aneinanderangrenzenden Empfängern vorhanden sein müssen.
TABELLE III
n
BIT
MINIMUM
MAXIMUM*
1
START
32,082
73,125
2
Dl
137,292
176,250
3
D2
242,500
279,375
4
D3
347,708
382,500
5
D4
452,917
485,625
6
D5
558,125
588,750
7
D6
663,333
691,875
8
D7
768,542
795,000
9
D8
873,750
898,125
10
STOP
978,958
1001,250
* Ermöglicht 10 Mikrosekundenfür Programmschleifenunsicherheit bei der Erfassung des Startimpulses. Falls die Unsicherheit grösser als 10 (isec ist, ist der Überschuss von jedem Maximalwert abzuziehen.
TABELLE IV
n
BIT
MINIMUM
MAXIMUM
1
START
103,125
135,208
2
Dl
206,250
240,416
3
D2
309,375
345,625
4
D3
412,500
450,833
5
D4
515,625
556,041
6
D5
618,750
661,250
7
D6
721,875
766,458
8
D7
825,000
871,667
9
D8
928,125
976,875
10
STOP
1031,250
1082,083
Alle Steuer- und Datensignale verwenden dasselbe Paar von Leitern in jeder Richtung mit einem genau definierten Zeitablauf zum Zwecke der Steuerung.
Um eine externe Steuerung zu schaffen, verläuft der Steuer-fluss in einer Richtung und der Informationsfluss in der anderen Richtung.
Die gesamte Steuerung der Frankiermaschine sowie die gesamte innerhalb der Frankiermaschine vorhandene Information kann durch Verbindung über eine Schnittstellen-Verbindungseinrichtung längs der Leitungen 88 von Fig. 4 gesteuert werden. Alle von der Frankiermaschine ausgeführten Funktionen sind von einer Fernstation aus elektrisch steuerbar, mit Ausnahme von rein lokalen manuellen Funktionen, wie Stromeinschaltung und Datumswechsel. Dies ergibt sich aus der Kommunikationsfähigkeit der Dateneinheiten. Durch die Softwareroutine erfolgt eine Abtastung in bezug auf die Anwesenheit einer externen Steuereinrichtung und wird die Übergabe der Steuerung auf eine derartige externe Einrichtung nach Anerkennung ihrer Gültigkeit ermöglicht. Die Organisation der drei Einheiten hat einen Fluss von Befehlen oder Steuerung von Daten von der Steuereinheit zur Buchungseinheit und dann zur Druckereinheit zur Folge. Ein Beispiel für derartige Daten und Befehle besteht in einem neuen Portogebührenwert und darin, wo er gesetzt werden muss. Der Informationsfluss erfolgt in der entgegengesetzten Richtung. Ein Beispiel hierfür ist ein augenblicklicher Register wert oder dergleichen. Bei diesem Konzept ist es durch die Einschaltung einer externen Steuereinrichtung in die Steuereinheit möglich, Befehle oder Datensteuerungsbefehlsinforma-tionen in die Frankiermaschine einzuführen. Der Schnittstellenbetrieb ermöglicht es der externen Steuereinrichtung, die Frankiermaschine zu steuern, einschliesslich der Ausserbetriebsetzung der Tastatur der Steuereinheit, falls dies erwünscht ist. Die externe Steuereinrichtung ist mit der Frankiermaschine schnittstellenmässig auf der Basis von Nachrichten verbunden. Die externe Steuereinrichtung kann Nachrichten zum Zwecke der Anzeige senden oder kann Nachrichten senden, durch die der Inhalt der Anzeigeeinheit angefordert wird. Die Programmierung der Steuereinheit ermöglicht es der externen Steuereinrichtung, eine die Tastatur ausser Betrieb setzende Nachricht zu senden, wodurch die Übergabefunktion implementiert ist. Ein spezieller Vorteil der vorstehenden Anordnung besteht darin, dass die Steuereinheit durch eine dazugefügte externe Steuereinrichtung ersetzt werden kann, ohne dass irgendwelche Änderungen in der Buchungseinheit oder der Druckereinheit, weder in der Hardware noch in der Software, erforderlich sind.
Neben der externen Steuereinrichtung können weitere externe Geräte, wie eine Waage und eine Fernanzeigeeinheit vorgesehen werden. Der Mikroprozessor der Steuereinheit kann dazu verwendet werden, als ein Nachrichtenpuffer zu wirken, um Flexibilität in der Entwicklung und Verwendung externer Geräte zu ermöglichen. Die externen Geräte können Wägevorrich-tungen, Anzeigevorrichtungen oder andere Arten von normalerweise mit Frankiermaschinen der hier offenbarten Art in Wechselwirkung stehenden Geräten aufweisen. Die in der Steuereinheit vorgesehene Software kann für diese Funktion implementiert werden. Wie in Fig. 11 dargestellt ist, kann eine externe Steuereinrichtung 150 dazu verwendet werden, die Funktion der Steuereinheit der Frankiermaschine zu ersetzen oder zu ergänzen. Die externe Steuereinrichtung 150 ist vorzugsweise durch eine Anschlussvorrichtung 152, die eine standardmässige Neunpolsteckverbindung aufweisen kann, mit der Steuereinheit 154 in der Frankiermaschine verbunden und empfängt Nachrichten aus der Frankiermaschineneinheit 156, wobei die Steuereinheit eine Steuereinheit gemäss Fig. 1 oder 3 sein kann und die Frankiermaschineneinheit 156 aus einer der vorstehend beschriebenen Buchungseinheit und Druckereinheit bestehen kann. Die Steuereinheit 154 enthält einen Schaltkreis (nicht dargestellt) und einen Kommunikationspuffer 158, der ein erstes Mittel zum Betrieb des Kommunikationskanals zur Übertragung von Nachrichten aus der Buchungseinheit der Druckereinheit zur Steuereinheit 154 und zu der externen Steuereinrichtung oder
5
10
15
20
25
30
35
40
45
50
55
60
65
11
662 435
Geräten sowie ein zweites Mittel zum Betrieb des Kommunikationskanals zur Übertragung von Nachrichten aus der externen Steuereinrichtung oder Geräten zu der Buchungs- und Druckereinheit 156 und zur Steuereinheit 154. Der Kommunikationspuffer hat ein Paar von Kommunikationskanälen in sowohl dem ersten als auch dem zweiten Mittel, wobei das Paar von Kanälen Nachrichten aus der externen Steuereinrichtung oder Gerät durch die Steuereinheit in der Frankiermaschine hindurch, sowohl in der Vorwärts- als auch in der Rückwärtsrichtung koppelt. Die Steuereinheit spricht auf die durch sie geleitete Nachricht an, um spezielle Aufforderungen auszuführen, und bringt die durchgelassene Nachricht auf den neuesten Stand, um eine erforderliche Steuereinheitsantwort anzuzeigen. Die durch die Steuereinheit geleitete Nachricht weist eine Vorsatzinformation auf, die eine eine Signalquelle oder einen Bestimmungsort der Nachricht identifizierende Bitposition hat. Der Schaltkreis der Steuereinheit enthält ein Mittel, das auf diese Bitposition anspricht, um die Nachricht in zweckmässiger Weise weiterzuleiten. Ausserdem enthält die Steuereinheit Mittel, die auf eine Nachricht aus der externen Steuereinrichtung oder Gerät ansprechen, um die Tastatur ausser Betrieb zu setzen. Mit der Steuereinheit erfolgt die Kommunikation aus der Frankiermaschineneinheit 156 zur externen Steuereinrichtung oder lokal zur Steuereinheit 154. Die umgekehrte Wirkung ist in Fig. 12 dargestellt, in der die externe Steuereinrichtung oder Geräte über die Kommunikationspuffer 158 mit der Einheit verkehren können. Der Effekt ist insoweit der gleiche, dass der Puffer Nachrichten entweder von der externen Steuereinrichtung 150 oder lokal aus der Steuereinheit 154 empfängt.
In Fig. 13 ist eine Anzahl von externen Geräten 164 dargestellt, die mittels der Steuereinheit 154 schnittstellenmässig in der Frankiermaschineneinheit 156 verbunden sind. Jedes externe Gerät kann mit ihrer eigenen Steuertaste zur Einleitung von Nachrichten versehen sein. Jedes externe Gerät könnte als Bestandteil seiner Software einen Kommunikationspuffer enthalten, um einen Betrieb der externen Geräte in Dasy-Chain-Be-triebsweise zu ermöglichen. Geeignete Nachrichten können eine vollständige Unterwerfung der Steuereinheit unter die externe Steuereinrichtung beinhalten. Die Steuereinheitprogrammierung ist derart ausgelegt, dass ein solcher Betrieb möglich ist.
Was den Betrieb der externen Steuereinrichtung oder Geräte betrifft, so fliesst die "Information in zwei Richtungen, entweder einwärts in die Frankiermaschine hinein oder auswärts zur externen Steuereinrichtung oder Gerät. Steuersignale und Aufforderungen, die allgemein als Steuerungen definiert werden, flies-sen einwärts in die Frankiermaschine hinein. Informationsdaten fliessen auswärts. Normalerweise erfolgen die Steuerungen aus der Steuereinheit der Frankiermaschine. Jedoch ist es bei der hier beschriebenen Einrichtung auch möglich, dass die externe Steuereinrichtung 150 oder ein externes Gerät Befehle unmittelbar durch die Steuereinheit in der Frankiermaschineneinheit und die Buchungs- und Druckereinheit ausgibt. Umgekehrt gelangen Informationsdaten auf der Auswärtslinie aus der Buchungseinheit an die Steuereinheit 154 und werden über die Vorrichtung 152 an die externe Steuereinrichtung 150 angelegt, sofern eine solche vorhanden ist. Die Anwesenheit einer externen Steuereinrichtung 150 wird durch eine Erfassung, ob es auf ein Sendebereitschaftssignal antwortet oder nicht, festgestellt. Wenn dies nicht der Fall ist, schaltet das Ausgangssignal aus der Vorrichtung 152 nach einer voreingestellten Zeitspanne (Sperrzeit) ab und die Frankiermaschine arbeitet im Normalbetrieb fort. Diese Fähigkeit, Information durch den Kommunikationspuffer in der Steuereinheit hindurchzuschicken ermöglicht den Vorteil, daran eine externe Steuereinrichtung oder externe Geräte anzusetzen. Die externe Steuereinrichtung kann in derselben Weise mit einem Kommunikationspuffer, wie er in der Steuereinheit dargestellt ist, aufgebaut sein und eine derartige Steuereinrichtung kann ihrerseits ein daran angekoppeltes externes Gerät aufweisen. Auf diese Weise kann eine «Dasy-Chain» genannte Kette von externen Geräten 164, wie es in Fig. 13 dargestellt ist, geschaffen werden. Die einzige Beschränkung für die Anzahl der externen Geräte, die auf diese Weise nach Art der Daisy-Chain verkettet werden können, ergibt sich aus der Systemtoleranz und den Sperrzeitbeschränkungen.
Ferner ist vorgesehen, dass externe Geräte bestimmte Befehle an die Steuereinheit selbst abgeben, wobei diese Befehle nicht notwendig in den Buchungsmodul hineinfliessen, wie die Fähigkeit, eine Nachricht auf die Anzeigeeinheit der Steuereinheit auszuschreiben, oder eine Nachricht von der Anzeigeeinheit der Steuereinheit auszulesen, oder der Steuereinheit einen Befehl zur Ausserbetriebsetzung seiner Tastatur und des die Dreischaltstellung aufweisenden Drehschalters zu erteilen. Bei diesem Vorgang spricht der Kommunikationspuffer auf ein Bit im Anfangsteil oder der Vorsatzinformation der digital übertragenen Nachrichtenfolge an und gibt die Richtung an, ob die Nachricht an die Frankiermaschineneinheit oder die Steuereinheit gelangen soll. Diesem Bit, das in dem Header, wie oben beschrieben, eine bestimmte Stelle einnimmt, ist in dieser Stellung eine «1» zugewiesen, wenn es sich um eine Nachricht von oder zu der Steuereinheit handelt, und eine «0», wenn es sich um eine Nachricht zu oder von der Frankiermaschineneinheit handelt. Auf diese Weise kann die Steuereinheit bei Erhalt einer Nachricht durch das externe Gerät die Vorsatzinformation prüfen und aus diesem Bit bestimmen, ob die Nachricht für die Steuereinheit oder für die Buchungseinheit bestimmt ist. Ist sie für die Steuereinheit bestimmt, hält diese die Nachricht an und führt die entsprechende Tätigkeit aus. Ist sie nicht für die Steuereinheit bestimmt, wird die Nachricht an die Frankiermaschineneinheit weitergeschaltet.
Die Steuereinheit kann eine unmittelbare Antwort für das externe Gerät zur Verfügung stellen, ohne überhaupt die Frankiermaschineneinheit ins Spiel zu bringen, beispielsweise in Reaktion auf den Empfang einer das Lesen der Anzeigeeinheit betreffenden Nachricht. In der Steuereinheit findet keine Aufbewahrung der letzten empfangenen Frankiermaschinenstatus-nachricht statt. Wenn daher beispielsweise ein Befehl zur Ausserbetriebsetzung der Tastatur empfangen wird, fordert die Steuereinheit eine Frankiermaschinenstatusnachricht von der Buchungseinheit an. Wenn die Steuereinheit die Antwort erhält, setzt sie in die Frankiermaschinenstatusnachricht ein Bit ein, um anzuzeigen, ob die Tastatur in Betrieb oder ausser Betrieb gesetzt ist. Bei erfolgter Ausserbetriebsetzung zeigt die Steuereinheit den Ausserbetriebszustand in der Statusnachricht laufend an, bis durch den Empfang eines Tastaturinbetriebsetzungsbefehls eine Rücksetzung erfolgt oder bis der Strom aus-und eingeschaltet wird. Beim Eintritt des Stromeinschaltungszu-standes befindet sich die Tastatur stets im Zustand der Inbetriebsetzung.
Die Frankiermaschine ist daher dazu in der Lage, unmittelbar mit den externen Geräten schnittstellenmässig in Verbindung zu treten, was bei bekannten Frankiermaschinen schwierig bis unmöglich ist.
In Zusammenfassung des obigen ergibt sich, dass die Steuereinheit mit einer Steckverbindung für eine Zweirichtungskommunikation mit einer Anzahl von externen Geräten versehen ist. Hierdurch sind die externen Geräte in die Lage versetzt, auf Frankiermaschineninformationen wie Registerlesewerte, Stückzahl und Auswahl laufender Werte zuzugreifen. Ausserdem kann die Frankiermaschine durch ein externes Gerät im selben Ausmass gesteuert werden, als es die Bedienungsperson von der Tastatur aus kann.
Die Frankiermaschine kann mit einer Zusatzeinrichtung versehen sein, um auf der Grundlage einer durch die Bedienungsperson beim Beginn eines jeden Frankierungslaufs eingegebenen Identifikationsinformation Portogebühren für verschiedene Abteilungen automatisch aufzuzeichnen und rückzuladen. Die
5
10
15
20
25
30
35
40
45
50
55
60
65
662 435
12
Frankiermaschine kann zusammen mit einer Anzeigeeinheit/Quittungsdrucker verwendet werden, wodurch der Kunde mit einer Sichtanzeige des auf der Frankiermaschine vorhandenen Wertes und/oder einer Quittung über die Bezahlung der Portogebühr bedient werden kann. Die Frankiermaschine kann zusammen mit kundeneigenen Geräten verwendet werden, wie einem Computerterminal oder einem Minicomputersystem für Echtzeitdatenerfassung, wie es in der Paketverarbeitung beim Aufaddieren der Portogebühr auf die Empfängeradresse der Fall ist.
Die verhältnismässige Einfachheit der schnittstellenmässigen Ankopplung der erfindungsgemässen Frankiermaschine legt weitere Möglichkeiten nahe. Zwei Beispiele dafür sind 1) die
Verwendung am Ende eines entscheidungsfähigen Eintastgerätes um Portogebühren mit veränderlicher Anzahl von Einta-stungen zu verändern, 2) als einen praktischen Postversandau-tomaten.
s Das den Betriebsablauf der Steuereinheit darstellende Flussdiagramm ergibt sich aus der Folge gemäss Fig. 14.
Das den Betriebsablauf der Druckereinheit darstellende Flussdiagramm ergibt sich aus der Folge gemäss Fig. 15. Das den Betriebsablauf der Buchungseinheit darstellende Flussdia-lo gramm ergibt sich aus der Folge gemäss Fig. 16.
Die programmierten Funktionen ergeben sich aus dem in Einzelheiten gehenden Ausdruck für die Buchungseinheit, Steuereinheit und Druckereinheit, die als Anhang zur vorangehenden Beschreibung beigefügt sind.
/
v
38 Blätter Zeichnungen
f;500 ACCOUNT IMG MODULE CAfKMfl/ll version 4.21.57 l5-Oct-79 12:46 :5 TABELLEN FÜR BUClIONGSMODUL UND RAM-SPRICIIERTABELLE
1 DM2 : PEPACC .SRC
2
3 NLIST
7 LIST
8
9 1Û 1 1
12
13
1 4. 6 5 0 0 BUCIIIJNGSMODUL
»5 1 6
17
18 COPYRIGHT 1979 PITNEY ßOWES INÇORPORATED
1 9
20
21
22
23' INCLUDE DMOiACCTQL
24 NLIST
64 I-IST
65 PAG Ii:
6500. CA0040/11 version 4.21.57 15-ÛCL-79 12:47:50
TABELLEN FÜR BIJCHUNGSMODIIL UND RAM-SPRTCiiRRTARELLR
66
67 60
69
70
i
RAM-S PRTCII ERTA BELLE
Pf)R LETSTlINGSfJNABIlXNGIGEN SPEICHER
71
72
73
0020
PECEKT
EQU
20
fi 'Ziffern Stückzahl
74
0024
DSCECC
EQU
PECEKT
* PECES2
1 Byte CRC für abfallendes Register
75
0025
DSCREG
EQU
DSCÉCC
i Dsenssi ft Ziffern abfallendes Register (verwendbare Portogebiihrnn)
76
0029
ASCECC
EQIJ
DSCREG
+ DSCRS2
1 Byte CRC für anwachsendes Register
77 70
002A 002P
ASCREG PRSTAT
EQU EQU
ASCECC i ASCREG
ASERS2 t ASCRS2
10 Ziffern anwachsendes Register (kumulativ verbrauchte
, n ^ . . . Portogebühr) 1 Byte Druckerstatus
79
0030
POSVAL
EQU
PRSTAT
t PRSTS2. '
6 Ziffern Portogebiihrenwert
00
0033
DATAMT
EQU
POSVAL
t POSTS2 *
fl Ziffern Stapelbetrag
01
0037
BATCHT
EQU
BATAMT
♦ BATAS2
fi Ziffern Stapelzahl
82 0 3
00 3 A
NON VOL DATE
CIIECKSUH FOR EQU BATCUT
BLOCK 0 « BATCS2
Nächste RMRS (fernbetätigte) COMBO (Kombination), (lie in Ta balle erhältlich ist
04
003C
CONECC
EQU
PATE »
DATES2
1 Byte CRC für Prüfsumme
0 5
■ 0030
RSTVAR
EQU
CÛUECC
♦ 1
RMRS Masçhi nen-Neueinstel1wert
06
ÛÛ 4 1
nSTCMT
EQU
RSTVAR
• nsTV/sz
• 1 Byte zur Zählung erfolgloser Neueinstellversuche
07 00
0042
0043
PATCÛO PATCNT
EQU EQU
RSTCWT PATCOD
* i
♦ i
1 Byte zur Speicherung von Kode, der verhängnisvollen Fehle;
2 Ziffern verhängnisvoller Fehlerzähler verursacht
09
00 4 4
MTRTYP
EQU
PATCN'P
i i
1 Byte für Maschinentyp: 0=Manuell, 1=RMRS
> W
6500 ACCOUNTING MODULE CAfl04ß/ll version 4.21.57 l5-Oct-79 12:47:50
90
0045
MSEHNO
EQU
MTRTYP *
1
91
0 0 4:9
UNLOCK
EQU
MSERMO t
M'SERSZ
92 '
004C
LOWPOS
EQU
UHLOOK t
UMLVSZ
93
00412
SETI. IM
EQU
LOWPOS t
I.WPSSZ
94
0050
RSTBAS
EQU
S ETI. IM *
SETI.S2
95
Cll ECK S UH
i FÜR
BLOCK 1
96
0054
T I MCNT
EQU
RSTBAS +
RSTBS2
97
0055
TIMWIIO
EQU
TI MCNT *
1
98
0056
MRSTAT
EQU
TIMWIIO *
1
99
0056
STATE
EQU
MRSTAT t
2
100
0059
ACTBLK
EQU
STATE ♦
1
101
005A
NVMBLK
EQU
ACTBI.K +
1
102
005B
CNTXFL
EQU
NVMBLK t
1
103
OOSC
RECBFL
EQU
CNTXFL *
i
104
005D
POI.CMT
EQU
RECOFL t
1
1 05
005E
RECBUF
EQU
POI.CNT *
1
1 06
0066
WRKBF1
EQU
RECBIIF i
RECBSZ
1Û7
ÛÛ6E
WORK H P
EQU
WRKBF1 *
WRKIÌS2
1 0Û
0076
A MTB P
EQU
WORKBF *
WRKBS2
1 09
0070
CMBOBF
EQU
AMTBF »
AMTS Z
1 10
007F
LAST
EQU
CMßQBP *
CMBOSZ.
1 1 1
1 1 2
SUBTTL HEADER
ASSICNM
1 1 3
PAGE
7 Ziffern für Seriennummer 6-ziffriges Feld für Entsperrungswert 4-ziffriges Feld für unteren Por togebührenwa renwert 4-ziffriges Feld für einstellbare Portogebühren-Manuelle Kombination Höchstgrenze
1 Byte für Zeitgeber-Zähler
2 Bytes zur Wartung des Maschinenstatus 1 Byte für Betriebszustand oder -Art
1 Byte zur Kennzeichnung, welcher Block gerade geöffnet ist
1 Byte zur Kennzeichnung des gelöschten Teilbereichs des leistungsunabhängigen Speichers (NVM)
I Byte für Warteschlange Statusnachricht an Steuereinheit
S teue re i nhe i t- Dnp f a ng sma rke
(0 = keine auf Verarbeitung wartende Nachricht) Nrichrich Drucker-Dnpfangsmarke (0 = keine auf Verarbeitung wart.ende
0-Byte-Puffer zum Empfang von Nachrichten fi-Byte-Arbeitspuffer zweiter. 8-By te-Arbei tspuf fer
Puffer für Betragseingabe
Puffer für Kombi nationseingabe letzter verwendeter RAM-Speicherplatz o\
OS »o s 6
(M
6500 ACCOUNTING MODULE CAR04 11/ 1 1
HEADER ASSIGMMFNTS ACCTBL.SRC
1 1 4
) 1 5
1 1 6
117
110
119 1 20
121
122
123
124 1 25
126
127
120 1 29
130
131 1 32
133
134
135 1 36
version 4.21.57 15-Oct-79 12:47:50
HEADER-ZUWEISUNGEN
MNEMONIC VALUE Mnenronischer Kode Wert
COMMANDS NO DATA
Beschreibung Befehle ohne Daten
0040
NODATA
EQU
40
0041
ENBLIID
EQU
4 1
Frei gebe-Maschinenbefehl
0042
DSBLIID
EQU
42
Sperre-Maschinenbefehl
0043
ENDEIID
EQU
43
Ende der Eingabe
0044
CLRBIID
EQU
44
Lösche Stapelbefehl
0045
ACMPIID
EQU
45
Buchung vollständig
0046
SETSIID
EQU
46
Setze Wartungszustand
0047
CLRSIID
EQU
47
Lösche Wartungszustand
ßOMMANDS WITII
DATA
Befehle mit Daten
6500 ACCOUNTING MODULE CA 0040/11 version HEADER ASS IGliMENTS ACCTIÌL.SHC
1 37
ooco wtiidat equ oco
13 6
00c1
•v SPÛSIID
equ
0c1
139
"spare equ
0c2
140
spare
EQU
0c3
141
00c4
sdatiid
EQU
oc 4
142
00c5
entaiio
EQU
0c5
143
û0c6
emtciid equ
0c6
144
145
request value
146
147
0050
reqviid equ
50
148
0000
vlisiid equ
' ooo
149
150
items requestablb
151
152
0000
statmb
EQIJ
000
153
0001
POSVNB
EQU
001
154
value
NORM
155
oxxx
156
2
ASC
REG /anwachs.Reg.
157
3
DSC
REG /abfallend.Reg
150
4 CONTROL
SUM /Kontro]Ìsumme
► Ol
21.57 15-Oct-79 ' 12:47:58
Setze Portogebührenwert Setze Datum
Eingebe Neueinstellbetrag Eingebe Neueinstellkombination
Anfordere Wert
Anfordere Wert Unterer NIBBLE gibt Wert wiedergegeben auf Aufforderung
Anforderbare Posten
Por togebiihrenwer t Wartung .
Rntsperrungswert Untergrenze für Portogebühr
Ma seil i nennummer
-u.
'Vi o\ ©\
ON 0\ bJ
6500 ACCOUNTING MODULE CA 004(1/1 1 version 4.21.57 15-Oct-79 12:47:50 &
HEADER ASSIGNMENTS ACCTBT-.SRC **
159 5 PBICE COIJHT / Stückzahl Diagnosestatus
1 60 6 BATCH AMT / Stapel betrag Einstellbare Portogebührengrenze
161 7 BATCH COIJHT / Stapelzahl. frei.
162
16 3 1
164 SURTTL STATUS ASSIGNMENTS Statuszuweisungen
165 PAGE
6500 ACCÛUNTÏNG MODULE CAß04fl/ll version 4.21.57 15-Oct.-79 STATUS ZUWEISUNGEN ACCTBL.SRC
166
167
168 STATUS ZUWEISUNGEN
169
170
171
172 BIT DESCRIPTION BESCHREIBUNG 1 73
174 PRINTER / DRUCKER
1 75 7 PRIV ACCESS SW / Zugangsl:>erechLigungsschàlter
1 76 6 DATER DOOR / Datumsgeliertür
1 77 5 SIIUTTER BAR / Riegel
] 70 4 LAST HOME ! Alisgangsstellung
179
1 ^ TRIP (NOT HOME) ^ (nicht Ausgangsstellung)
181 2 INTERPOSER POSITION / Vennittlerstellung
1 02 1 SPARE / Frei
1 03 0 HARD ERROR / harter Fehler
184
105 CONTROL (METER) STATUS /Steuer (Maschinen) Status
106 FIRST WORD / Erstes Wort
1 07 7 RESET BASE / Basisneueinstellung
1 = gewählt
1 = offen, 0 = geschlossen
1 = vorne, 0 = Ausgangsstellung
1 = von oder in Stellung 2
0 = von oder in Stellung 1
1 = ausgelöst
1 = freigegeben (in Betrieb)
1 = verhängnisvoller Fehler, Fortsetzung ururögl i ch
1 = Basis muß rückgesetzt werden
©S OS N>
-tk. W VI
650Û ACCOUNTING MODULE CAßfl4fl/U
STATUS ASSIGNMENTS ACCTBL.SRC
6 CHECK DATE' / Dahtmspriifung
5 INSUPPIC1ENT PUNDS
version 4.21.57 15-Oct-79 12:47:50
1 Û 0 189 I 90
191
192
193
194
195
196
197
198
199 2ÛÛ 201 2Û2 20 3
204
205
206
207
208
209
SECOND WORD 7
6
/ unj/.mreichçnde ' Gebuhremiu tt:el
LOW PQSTAGE / unterer Portowert SERVICE MODE / Wartungszustand ENABLED / in Betrieb
BATCH CLEAR / Stapel lösch TRIP / Auslösung
Zweites Wort
IIARO ( PATAU ERROR.
0
SPARE SPARE SPARE SPARE SPARE
SOPT ERROR SPARE
/ Frei
/ Frei
/ Frei
/ Frei
! Frei
/ weicher Fehler / Frei
METER MODE (STATE) / Maschinenzustand ALL 0 /Alles NORMAL OPERATION 7 TRIP / Auslösung fi I2NABLE / Bel.r i ehssetv-ung
5 DISABLß / Auflerbetriebset2ung
öffnet seit Stromeinschalt:unq = Datumsgebertiir offen oder nicht ge-
= abfall.Reg.< Portowert
= abfall.Reg. < unterer Portowert-
= Wartung
= in Betrieb gesetzt = Stapelbetrag und -Zahl = 0
harter (verhängnisvoller) Fehler heilbarer Fehler
Normalbetrieb
> oo
6500 ACCOUNTING MODULE CA804Û/11 version 4.21.57 15-Oct-79 12:47:58
ASSIGNMENT TADLE ACCTBL.SRC - Zuwe.1 sungs tabelle
218
219
220
221
222 22 3
224
225
226
227 220
229
230
231
232
233
234
235
236
237 230 239
0064 00A3
00pp 009B
000 1 0002
Zuwe j snngstabelle
TIME VALUES TRPSET EQU 100 TRPTOL EQU 163
CRC INL CRCPI,Y
CRC ASS IGNMENTS/Zuweisungen EQU OPF EQU 9B
Zeitwerte für Auslöseaktivität 2 Sek. Sperrzeit
Residue + <- no carry ok, C=1 Overspeed Residue < 93, Counts
Anfangswert für CRC-Berechnung CRC-Erzeugungspolynom
Verhängnisvolle Fehlerkodes .für Buchungs-erfaßte Fehler FATAL ERROR CODES l'OR ACCOUNT!NG DETECTED FAILURES
PRTFAT PROFAT
EQU EQU
Druckerkommunikation tot ungültiger Header oder Software fehler
6500 ACCOUNTING MODULE CA0040/11 ASSIGNMENT TABLE ACCTBL.SRC
version 4
240
241
242
243
244
245
246
247
248
249
0003 0(104 00*0 5
0006
0007 0000 0009
COMFAT IHTFAT IIOMFAT ECUFAT SETFAT TRPFAT RSTTRV
3
4
5
6
7
EQU
EQU' EQU EQU EQU EQU EQU
SIJBTTL PAGE
©\ as
-U. W Ul
21.57 1.5-Oct-79 12:47:50
Sperrzeit während Kommunikation (Drucker oder Steuorun ACC Interposer line shorted
Synchronisationsverlust in Ausgangsstellungen ßchofehler während Übertragung > 2 Sek. auf Portoeinstellung
(iter- oder Untergeschwindigkeit bei Auslösung (140<ms TRIP (.
2 Sf-^k keine erfolgreiche Neueinstellung in 9 aufeinanderfolgenden Versuchen
Unterbrechung s vektoren
>
M O
6500 ACCOUNTING MODULE CAQ04fl/ll vera Jon 4.21.57 15-Oct-79 12:47:58 INTERUPT VECTORS PEPACC.SRC
250
:
251
Unterbrechungsvektoren
252
INTERRUPT VECTORS
253
254
255
256
POWER
UP
StromeinSchaltung
257
0000
ORG
0
2 5 0
0000
04
il M P
PWRIJ P
259
260
POWER
PAI LURE
Stromausfall
261
0003
ORG
3
262
0003
65
STOP
TCNT
263
0004
01
09
;IMP
PWRDN
264
265
TIMER
INTERRUPT Zei tgeber-lJnterbrechung
266
000?
ORG
7
267
0007
24
J M P
TI MI NT
260
269
ItICI, IJDE
DMO:PWRDN
270
SDUTTI,
POWER DOWN / Stromabschaltung
271
PAGE
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15-Oct-79 . 12:47:50 POWER DOWN PWRDN.SRC
272
273
274
V
STROMABSCHALTUNG UND STROMAUSFALL POWER DOWN AND POWER FAILURE
275
276
277 2?8
Speichere Variable in leistungsunabhängigem Sepicher (NVM), sperre Zentral ej nhei 1: (CPU) in Rücksetzzustand STORE VARIABLES IN NVM, LOCK CPU IN RESET MODE.
279
200
0009
15
PWRDN DIS
1
201
000A
P4
OE
CALL
NVMWR Schreibe in NVM
282
OOOC
flA
40
ORL
P2. 1140 Ermögliche 8755 in Riicksetzung und schalte NVM ab
203
284
00ÛE
86
OE
PWRUP JHI
Ç Warte auf Stromausfall zur Löschung
285
0010
27
CLR
A
286 '
0011
D7
MOV
PSW, A
287
001 2
9A
OP
AHL
P2, BOP Lösche 8755 Riicksetzung, schälte NVM ein
200
CLEAR RAM
209
001 4
BO
20
MOV
R0, II PECEKT
290
00] 6
BA
60
MOV
R2, II 80-PECE KT
291
292 298
0018 001 A
F4 Bß
Eß 56
C ALL SET INITIAL MOV
CLRBLK
mpimmì Q'i'A'i'ii4? fF PiiPCK date - Setze anfänglichen Maschinen MM LR SI AI US IL LIILCK DA11 status< d.h. Datumsprüfung
R0, II MRSTAT
294
001C
BO
CO
MOV
@R0t HOC0
6500 ACCOUNTING MODULE CA804Û/11 version 4 .21.57 15-Oct-79 12: 47:58
POWER DOWN PWRDN
.SRC
295
LOAD NVM
296
00 1 E
F 4
61
CALL
NVMRD
297
0020
C6
24
JZ
PWRUPO
Lesen i n Ordnung?
290
0022
94
ÇA
CALL
NVMPAT
Setze verhängnisvollen Zustand
299
002â
54
CA
PWRUPO CALL
ASCCRC
300
0026
F 5
SEL
MB1
Stromeinschaltung in oberen 2 K
301
0027
E4
04
;IMP
PWRUPA
302
303
INCLUDE DMOiCTXnVT
304
SUBTTL TRANSMIT ONE
BYTE - Übertrage 1 Byte
305
PAGE
)
6500 ACCOUNTING MODULE CA0040/U TRANSMIT ONE BYTE CTXBYT.SRC •306
307
308 ;
309
310
311
312
313
314
315
3 1 6 -OM
317 1-M
310 —M
319 1--
320
321
322
323
324
325
326
327
version 4.21.57 15-Oct-79 1 2:47:50
ÜBERTRAGE BYTE MIT ECIIOPRÜFUNG
Über trage 10 Bits (1 Start fl Daten + 1 Stopp), Empfange Echo, und TRANSMIT 10 BITS
SET ERROR IP NOT EXACT MATCH - setze Fehler, wenn nicht genau passend
NOTE: INTERNAL LOGIC LEVEL REQUIRES INVERSION FOR TRANSMIT FUNCTION Achtung; 'Interner Togikpegel erfordert Inversion für Übertragungsfunktion
A
R0
R3 - R7 Fl
1--
0029 002A
27 AC
CTXBYT CLR MOV
A
R4 , A
Pelilerzahl während Übertragung Adresse von Datenbyte
Ei nheit
0 Steuérung
1 .Drucker
Stopp-Bi t-Pegel
0 Nachrichtenende
1 Byteende
Lösche Fehlerzähler
6500 ACCOUNTING MOOULE CAGO4£1/11 version TRANSMIT ONE BYTE CTXBYT.SRC
320
002Û
DB
0A
MOV
R3, 110
3 29
0020
BF
02
MOV
R7, 12
330
00 2 F
17
INC
A
33 1
0030
AD
NOV
»5, A
332
0031
04
57
JMP
CTXBLÛ
333
LOOP
334
0033
E6
57
CTXBLP
JNC
CTXBLfl
335
OUTPUT
LOW
336
0035
39
OUTL
PI , A
337
0036
23
01
MOV
A, Il
330
0030
00
NOP
339
340
0039
20
CT X BI.l
XCH
A, R5
341
00 3 A
76
51
JPf
CTXBL6
342
CONTROL
343
003C
36
55
JT0
CTXBL7
344
00312
07
CTXBL2
DEC
A
345
003F
00
NOP
346
347
0040
C 6
5C
CTXBL3
JC
CTXBL9
340
SAVE
ERROR
; OCClJRRAf
349
004 2
IC
I NC
R4
350
0043
27
CLR
A
351
0044
00
CTXBL4
MOP
352
.57 15-Oct-79 12:47: 5 Ü
Schleifenzahl für 10 Bytes
Schalter für Echoprüfung des Stopp-Bits
Vorbereitung für erstes Scheinecho Ausgang niedrig für Startflanke
Ausgang hoch
Vorbereite ACC (Akkumulator) für Echo
Angebe Echo von logischer "1" Zei tausgleich kein Fehler
Anpasse Schleifenzeitgabe
6500 ACCOUNTING MODULE CA0040/U version 4.21
TRANSMIT
ONE BYTE
CTXBYT.SRC
353
0045
FO
MOV
A, @R0
354
0046
67
RRC
A
355
0047
AO
MOV
0RO, A
356
357
0040
FE
MOV
A, R6
350
0049
33
D:JNZ
R3, CTXBLP
359
360
00 4 ß
ßß
Ol
MOV
R3, m
361
004D
E F
39
D.1NZ
R7, CTXBL1
362
004F
FC
MOV
A, R4
363
0050 .
03
RET
364
365
0051
46
3E
CTXÛL6
JNT
CTXBL2
366
ECHO
= LOGIC "0"
367
0053
04
40
JMP
CTXBL3
368
369
0055
04
40
CTXBL7
JMP
CTXBL3
370
t
371
0057
09
22
CTXBL0
OBL
Fl, »22
372
0059
27
CLR
A
373
Û05A
04
39
JMP
CTXßLl
374
375
005C
04
44
CTXBL9
JMP
CTXBL4
57 l5-Oct-79 12 : 4 7 ; 5B Lade Daten
Bringe nächstes Bit zu C-Marke speichere gedrehte Daten Achtung, Übertrag ist zerstörend lade Maske 10 nits ausgeben letzte Meldungsschleife für Stop-Echo Bringe Fehlerzahl in ACC
Echo = logische "1"
Zei tausgleich Ausgang hoch
Zeitausgleich
6500 ACCOUNTING MODULE CA0040/11 version 4.21.5? l5-Oct-79 12:47:58 TRANSMIT ONE BYTE CTXBYT.SRC
376
377 INCLUDE DMO; STCIIK 37 B 3*79
Zustandsprüf-Hilfsroutine 380 STATE CllßCK UTILITY
3 81
302
383
384
385 005E 54 D3 STCIIK CALL DISABL kann nicht RECBUF-Inhalt zerstören
386
387 300 309
390 INCLUDE DM0 :DLKMOV
391 SUBTTL BLOCK MOVE
392 PAGE
005E
54
D3
STCIIK
CALL
DISABL kann
0060
54
EO
STCIIK1
CALL
LSTATW
0062
B9
56
MOV
R1, «MRSTAT
0064
83
RET
ON 0\
W Ol
o\
ON N>
4X
M
m
6500 ACCOUNTIHG MODIJI,l3 CA0048/11 version 4.21.57
15-Octo-79
12:47:58
BLOCK MOVE lì U< MûV . S KC
393
394
-
395
BI..OCKBEWEGUNG
396
397
398
399
1 -M
HO Zielstartadresse
400
1-M
Hi Quellenstartadresse
40)
1-M
R2 Anzahl der zu bewegenden Bytes
402
403
0065
Fl OLKMOV;
MOV
A,@R1
404
0066
MOV
@110, h
405
0067
1 8
INC
R0
406
0068
19
INC
R1
407
0069
EA 65
B.INZ
R2, BI.KMOV
408
ÛÛ6Q
CO
PlïC
K0 • Zeiger auf letztes Byte
409
0Û6C
03
RET
410
411
I NC r,U DR DM0: DR
412
SUIVI'TI. Dßzimalsubtraktion uncl Vergleich
413
PAG liî
> >•*
oo
vo
6500 ACCOUNTING MODULE CAÛ040/11 version 4.21.57 15-Oct-79 12:47:58
DECIMAL
RuarnACT
AND COMPARE
N DI GITS
DECSUB.SRC
414
415
416
DEZIMAL
SUBTRAKTION UND VERGLEICH VON ZIFFERNFOLGEN
417
V
4 1 Q
4 1 9 420
ABZIEHE, SUUTKACT,
UND AND
VERGLEICHE, ZWEI BCD-DATENFOLGEN COMPARE, TWO BCD STRINGS (A=A-B)
421
422
1-M
R0
a Adresse des Bytes niedriger Ordnung der
423
1 -M
R1
= Adresse des niedrigen Bytesder Zif fernf olge B
424
1 -M
R2
= Anzahl abzuziehender Bytes
425
-0M
F0
n
•K. >
tu >
n CD
426
-0M
C
0, A < B; 1 , A > B
427
420
006D
97
DECSlin
CLR
C
429
00 6 E
A 7
C PL
C
430
006F
05
CLR
F0
43 1
0070
95
CPL
F0
Setze auf Gleichheit
432
433
0071
Fl
DECSB1
MOV
A,
ein
Lade einen Byte-Wert in ACC
434
0072
37
CPL
A
435
0073
1 3
9 A
ADDC
A,
II 9 A
436
0075
60
ADD
A , .
É!R0
«t w
ON ©\
■U W <J\
6500 ACCOUNTING MODULE CAß04fl/ll version 4.21.57 15-Oct-79. 1 2:47:58
DECIMAL
SUBTRACT
AND
COMPARE
N DIGITS DECSUB.SUC
437
0076
57
DA
A
4 36
00737
A0
MOV
0RO, A,
439
00 70
es
7B
DECSB 2
A = B
440
0Û7A
05
CLR
PO
A < ) B
441
007B
C0
DECSB2
DEC
R0
442
007G
C9
DEC
RI
443
007D
EA
71
DJ N 2
R2, DECSB1
Bringe Bytezähler auf
444
007P
03
RET
445
446
INCLUDE DMO;MI SC
447
SUBTTL
Verschiedene Routinen
446
PAGE
> O
6500 ACCOUNTING MODULE CA004fl/ll version 4.21.57 15-Oct-79 12:47:58 MISC ROUTINES TO SAVE CODE MISC.SRC .
449
45Û
Verschiedene Routinen
451
M T SCELLANEOUS ROUTINES
452
'
453
454
455
0000
D4
20
RECSTS
CALL
PRCRX
456
0002
04
96
JMP
RECST1
457
458
0004
QO
6F
GETD
MOV
RO, IWORKBF + 1
459
0006
AO
MOV
PRO, A Speichere Header
460
0007
CO
DEC
RO
461
0000
BO
01
MOV
II Größe des Übertragungs-Datenpakets
462
000 A
PO
GETDO
MOV
A, RO
463
OOOR
94
OA
CALL
PRCTX
464
OOOD
D4
20
CALL
PRCRX
4 65
000F
03
RET
466
GET
PRINTER
STATUS
467
0090
94
04
GETSTA
CALL
STRIOM
46Û
0092
23
50
MOV
150 Anfordere Statusheader
469
0094
1 4
04
GRTSTS
CALL
fiß'1'0 Sende Nachricht und verarbeite zurückgegebenen
470
0096
74
16
RISC STI
CALL
DOSTAT
471
ooon
A3
RET
6500 ACCOUNTING MODULE CA0Û40/I1 version 4.21.57 15-Oct~79 . 12:47:50 MISC ROUTINES TO SAVE CODE MISC.SRC
472
473
* INCLUDE DM0 ;LIMTST
474 SUBTTL LOAD AND RßPORMAT LIMIT/ Lade und neuformatiere Grenze
4 75 PAGE
>
6500 ACCOUNTING MODULE LOAD AMD REFORMAT LIMIT
476
477 47ß 479 460 481 402
483
484
CA6048/11 LIMTST.SRC
version 4.21.57 15-Oct-79 12:47:58
1 — —M
Lade und neuformatiere Grenze LOAD AND REFORMAT LIMIT
ni
RO t R2
= ADDI / Adresse der Grenze
4 0 5
0099
B3
6 6 LIMTST
MOV
RO, ÏWRKBF1
486
0090
BA
02
MOV
R2, 12
487
009D
40
MOV
enO, 140
480
Û09P
1 B
INC
R0
489
00A0
1 4
65
CALL
BI.KMOV
499
00A2
D9
66
MOV
RI, ÏWRKBP1
491
00A4
23
03
MOV
A, *03
492
00A6
A4
32
JMP
FMTCII
493
494
INCLUDE
DMO : CIIGPRV
495
SUBTTL
496
PAGß
/ Leer-Header
/ Ändere Berechtigungs-Marke
6500 ACCOUNTING MODULE CA8048/11 CHANGE PRIV FLAG CHGPRV.SRC
497
498
499
500
501
502 501 504
version 4.21.57 15-Oct-79 12:47:50
510
511
512
513
Ändere Berechtigungsmarke CHANGE PRIV FLAG
Ändere Berechtigungszustand : Norm -> PRIV OR PRIV -> NORM
505
00AB
54
E8
CIIGPRV CALL
LSTATW
Lade Zustandswert
506
00 AA
D3
01
XRL
A, *1
Ändere Berechtigungszustands-Bit
507
00AC
AO
MOV
@R0, A
Speichere neuen Zustandswert
508
OOAD
F 4
OA
CALL
NVMCIIG
Ändere offenen Block in NVM (leistungsunabhängiger
509
00 AF
93
Speicher)
RETR
INCLUDE DM0: MILDE!
SUBTTL '
PAGE
Millisekundenverzögerung
6500 ACCOUNTING MODULE CA0O4 8/11 MILLISECOND DELAY MILDEL.SRC
vërsion 4.21.57 15-Oct-79 12:47:58
N> Ul
514
515
516
517
516
519
520
521
522
00BÛ
BE
523
00B2
EE
524
00B4
83
525
526
527
0100
528
529
530
Verzögere N Millisekunden DELAY N MILLISECONDS
DELAY 302.4 U-SEC,
DEL300 DELOOP
MOV
DJNZ
RET
ORG
R6, »33. R6, DELOOP
100
INCLUDE DM0 :ACCEXC
PAGE
Mit Aufruf 302.4 p-sek warte llauptsteuerschleife für Buchungsfunktion
OS
o\
■U
w
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58
N CONTROL
LOOP
FOR ACCOUNTI
NG FUNCTION
ACCEXC.SRC
531
532
533
BUClilJNGS-
IIAUPTSTEUERSC1ILEÏFE
534
535
536
anhängige Nachrichten
537
Schleife für fortlaufende Abtastung von Empfangsleitung auf
538
Liefert Fähigkeit'zum Empfang einer Nachricht und Verarbeitung
539
zur Verarbeitung empfangener Nachricht während Übertragung versucht wird
540
541
NO DATA
keine Daten
542
0100
76
TBCMDN
DB
LOW
SOFTER
frei
543
0101
7C
DB
LOW
ENBLE
setze Maschine in Betrieb
544
0102
89
DB
LOW
DSBLE
setze Maschine außer Betrieb
545
0103
AC
DB
LOW
ENDENT
Ende der Eingabe
546
0104
8 F
DB
LOW
CLRBAT
Lösche Stapel
547
0105
76
DB
LOW
SOFTER
Buchung vollständig
548
0106
9 7
DB
LOW
SETSER
setze Wartungszustand
549
0107
A2
DB
LOW
CLRSER
lösche Wartungszustand
550
551 ..
CMDS
WITU DATA
mit Daten
552
0108
76
TQCMDW
DB
LOW
SOFTER
frei
553
0109
C7
DB
LOW
S ET PO
einstelle Portogebühr
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 l5-Oct-79 12:47:58 &
MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
554
OlOA
76
DB
LOW
SOFTER
frei
555
01 OB
76
DB
LOW
SOFTER
frei
556
Ol OC
76
DB
LOW
SOFTER
einstelle Datum
557
01 OD
C 3
DB
LOW
ENTAMT
eingebe Betrag
558
01ÛE
B9
DB
LOW
ENTCMB
eingebe Kombination
559
010F
76
DB
LOW
SOFTER
frei
560
Adressentabelle für wa rtungsmäßige Eingabe von Neuwert und Portogebühre ins tei lune
561
ADDRESS TABLE
FOR SERVICE ENTER NEW VALUE AND SET POSTAGE
562
0110
49
TBCMDS DB
LOW
UNLOCK
entsperre Adresse
563
Ol 1 1
4C
DB
LOW
LOWPOS
untere Portogebühren-Warnadresse
564
0112
4 E
DB
LOW
SETLIM
Adresse für einstellbare Grenze
565
011 3
7B
DB
LOW
CMBOBP
Adresse für eingestellten Portogebührenwert
566
567
PAGE
-Ck.
w en
65ÛO ACCOUNTING MODULE CA0048/11 version 4.2Ì.57 15-Oct-79 12:47:58 MAIN CONTROL LOOP POR ACCOUNTING FUNCTION ACCEXC.SRC
566
*
QUE
METER
STATUS ENTRY
TO EXC / Warteschlange Maschinenstatuseingabe für EXC
569
0114
B8
5B
QUESTA
MOV
RO, ICTXFL
570
0116
.10
INC
@R0
setze Marke Nichtnull
571
UPDATE PLAGS IN METER
STATUS / Marken in Maschinenstatus auf neuen Stand
572
0117
94
P4
RETEXC
CALL
POSUPD
ACC = Wiedergabekode wie folgt
573
Bit 0 = "0" Porto unter•Entsperrungswert
574
Bit 1 = "1
" unzureichende Gebührenmittel für gegenwärtige Portogebühr
575
0119
67
RRC
A
Speichere Entsperrwert in Übertragungsbit
576
011A
14
60
CALL
STCIIK 1
Lade Zustand und Zeiger in MRSTAT
577
01 IC
96
30
JNZ
EXCDIS
wenn Normalzustand, prüfe Vermittler
578
01 IE
Fl
MOV
A, @ R1
lade Maschinenstatus
579
011F
B2
30
JB5
EXCDIS
wenn unzureichende Portogebühr
580
0121
D2
30
JB6
EXCDIS
wenn Datumsgèbertiir offen
581
582
0123 0125
F2 P6
2B 3.2
JB7 JC
EXCBAS IDLE2
Riickstelle Basis aktiv, prüfe ob weitere Inbetriebsetzung
„ . u . . .. erforderlich wenn Uber Entsperrwert, mache nichts
583
0127
B4
BB
EXCENB
CALL
ENABLE
584
0129
24
32
JMP
IDLE2
585
012B
09
EXCBAS
IM
A( PI
lese Vermittler-Befehlsleitung
586
012C
52
27
JB2
EXCENB
wenn Vermittlerbefehlsleitung niedrig, lasse allein
587
012E
24
32
JMP
IDLE2
588
589
0130
34
D3
EXCDIS
CALL
DISABL
6500 ACCOUNTING MODULE CA804Û/11 version 4.21.57 15-Oct-79 12:47:58 MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
590
IS
STATUS '
TO BE OUTPUT
TO PRINTER / Ist Status auf Drucker auszugeber. '
591
0132
27
IDLE2
CLR
A
592
^0133
B0
MOV
RO, ÏCNTXI
Marke wenn keine Null zur Maschinen-Status-Übertragung
593
0135
20
XCli
A, @R0
Lade Marke und Null
594
0136
96
06
JNZ
METSTA
sende Status
595
0130
F 4
OA
CALL
NVMCBG
ändere offenen Block, wenn nötig
596
01 3A
27
IDLEO
CLR
A
597
01 3 B
DO
5C
NOV
RO, IRECBF
Zeiger auf Empfangspuffer-Marke
590
01 3D
20
XCII
A, @ RO
-
599
01 3 E
96
5 F
JNZ
CNMESS
Warteschlangenachricht, kann nur Steuernachricht sein
600
0140
54
E7
IDLE1
CALL
LSTATE
601
602
014 2 014 4
52 56
54 4C
Jß 2 JT1
IDLE3 IDLE4
wenn bereits verhängnisvoll, keine Kommunikation mit
Druck.
keine Drucker-RTS (Sendeaufferderung)
603
0146
94
04
CALL
STRIOM
starte Zeitgeber
604
0140
1 4
80
CALL
RECSTS
empfange und verarbeite Status
605
01 4A
24
53
JMP
IDLE5
606
607
Inkrement-
Abfrage Zälil erVerzögerung
6ÛQ
0 1 4C
1 Û
IDLE4
I HC
RO
Zeiger auf Sendeaufrufsverzögerungszähler
609
0 1 4D
1 0
INC
@R0
Erhöhe Sendeaufrufszähler-Verzögerung
6)0
01 4E
FO
MOV
A, 0 RO
611
0 1 4 F
96
54
JNZ
1DLE3
612
0151
1 4
90
CALL
GETSTA
On
A
Ut
6500 ACCOUNTING MODULE CAfl 0 4 8/11 version 4.21.57 'MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
o\
OS
W (Ü
15-Oct-7 9
12:47:58
613
0153
65
IDLE5
STOP
TCNT
614
Prüfe Steuer RTS
615
0154
25
58
I OLE 3
JNT0
RCNMES
Empfange Steuernachricht
616
Ù 1 5 6
24
17
JMP
RETEXC
617
618
0158
94
04
RCNMES
CALL
STRIOM
619
01 5A
M
2C
CALL
CNCRX
620
01 5C
65
STOP
TCNT
Stoppe Zeitgeber
621
015D
24
32
JMP
IDLE2
622
623
015F
Q0
5E
CNMESS
MOV
R0, »RECBUF
Adresse von Empfangspuffer
624
Prüfe hohen NIBBLE und verzeige auf richtigen
625
0161
83
CLR
PO
für eingestellte Portogebühr verwendet
626
0162
27
CLR
A
627
0163
20
SCII
A, @R0
.
628
0164
72
74
JB3
IIRDBAD
Bit 3 sollte nicht gesetzt sein
629
0166
30
XCIID
A, @R0
Trenne hohen und niedrigen NIBBLE
630
0167
47
SWAP
A
Bringe hohen NIB in untere ACC-Hälfte
631
0168
D3
OC
XRL
A, «OC
Befehl mit Daten?
632
01 6A
C6
Q5
JZ
CMIJDAT
633
016C
95
CPL
FO
634
0 160
D3
09
XRL
A, »09
Wertanforderung?
635
016F
C6
CD
JZ
RETVAL
Typenbefehl t
6500 ACCOUNTING MODULE CA0048/11 versi oli 4.21.57 15-Oct-79 12:47:58
1 CONTROL
LOOP
FOR
ACCOUNTING FUNCTION ACCEXC.
SRC
636
0171
07
DEC
A
637
0172
C6
7A
J 'L
CMDONY
638
0174
24
1 7
URDBAD
JMP
RETEXC
Wenn Header unzulässig für PEP, übergehe und keine
639
0176
2 3
0F
SOFTER
MOV
A, HOF
640
017Ö
44
32
JMP
VALUES
641
642
COMMAND ONLY
Lade niedrigen Teil ,
643
01 7A
FO
CMDONY
MOV
A, 0RO
auf Seite indirekter Tabellensprung
644
017B
B 3
JMPP
@ A
645
646
017C
54
EO
ENBLE
CALL
LSTATW
Lade Zustandwert
647
01 7E
53
DF
AML
A, II = DF
Lösche Außerbetriebssetzungsbit
648
0180
95
C PL
F0
649
0181
A0
DISSTA
MOV
@ R0 , A
Speichere auf neuen Stand gebrachten Zustandswert
650
0132
B6
14
J F0
QUESTA
651
0104
B 4
BB
CALL
ENABLE
652
-
653
0106
27
METSTA
CLR
A
654
0107
44
32
JMP.
VALUES
655
656
0109
1 4
5 E
DSBLE
CALL
STCIIK
657
U1 80
43
20
ORL
A, S20
Setze Außerbetriebsetzungsbit
650
01 OD
24
n i
JMP
DISSTA
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
15-Oct-79' 12:47:58
659
01 8 F
ßfl
33
CLRBAT
MOV
RO, K BATAi
660
0191
.DA
07
MOV
R2, UBATA
661
0193
F4
E E
CALL
CLRBLK
662
0195
2 4
1 4
JMP
QUESTA
663
0197
1 4
5 E
SETSER
CALL
STCIIK
Eingebe Wartungszustand
664
0199
43
02
ORL
A, 12
Setze Wartungsbit
665
019B
AO
MOV
@R0, A
666
019C
Fl
MOV
A, @R1
Lade Maschinenstatus
667
019D
43
08
ORL
A, 118
668
0 1 9 F
AI
SETSR1
MOV
@ R1 , A
669
01A0
24
1 4
JMP
QUESTA
670
01A2
1 4
5E
CLRSER
CALL
STCIIK
671
01 A4
53
FD
ANL
A, H OFDII
Lösche Wartungsbit
672
01A6
AO
MOV
@R0, A
673
01A7
Fl
MOV
A, @ RI
Lade Maschinenstatus
674
01 AB
53
F7
ANL
A, I0F7
675
01AA
24
9F
JMP-
SETSR1
676
677
Ol AC
1 4
5C
ENDENT
CALL
STCIIK
Prüfe ob verhängnisvoll
678
01AE
52
76
JD2
SOFTER
wenn verhängnisvoll, nur
679
Ol DO
32
CF
JB1
SERENT
wenn im Wartungszustand
6 80
01D2
F5
SEL
MD1
681
01 D 3
24
CD
JMP
RESET
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15-Oct-79 12:47:58 MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
682
683
COMMAND WITII DATA Befehl mit Daten
684
01B5
FO
CMDDAT
MOV
A, SRO
685
01B6
.03
03
ADD
A, II LOW TBCMDW
686
Olßß
B3
JMPP
@A Springe auf Tabelle
687
01B9
B8
7B
ENTCMB
MOV
R0, »CMBOBF
688
01BB
B9
5F
ENTCB1
MOV
R1 , V RECBUF11
689
01 BD
BA
05
MOV
R2, KAMTSZ
690
01 BF
1 4
65
CALL
BLKMOV
691
01C1
24
1 4
SERENI
JMP
QUESTA
692
01C3
B 8
76
ENTANT
MOV
R0, V AMTBF
693
01C5
24
JMP
ENTCB1
694
01C7
23
03
SETPO
MOV
A, |3 Achtung: kann keine Daten im Qnpfangspuffer zerstören
695
01C9
B 9
5 F
MOV
RI, ÏRECBlJFtl
696
01CB
' 24
DF
JMP
SetPOS
697
698
699
value request Wertanforderung
700
0 1 CD
4 4
27
retval
JMP
fmtval
701
702
SERVICE VALUE SET AND SET POSTAGE / Wartungswert gesetzt und Por togebiihreneinstel lung
703
01CF
D9
76
SERENT
MOV
ri, SAMTBF
os Os
W LH
6500 ACCOUNTING MODULE CA804B/11 version 4.21.57 MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCEXC.SRC
15-Oct-79
12:47:50
o\ o\
W m
704
OIDI
D8
?B
MOV
RO, KCMBOBF
705
01D3
FO
MOV
A, @R0
Lade COMBO-Format, annehme
706
01D4
D3
1F
XRL
A, IIP
707
01D6
96
76
JNZ
SOFTER
700
01D3
18
INC
RO
Prüfe COMBO-Wert
709
01D9
FO
MOV
A, @R0 .
710
01 DA
53
FC
ANL
A, IOFC
nur gültig sind 0, 1, 2, 3
711
01DC
96
76
JNZ
SOFTER
712
0 IDE
FO
MOV
A, êRO
713
01DF
43
10 SETPOS
ORL
A, 110
Versetzen für Tabelle
714
01 El
AB
MOV
R3, A
Rette für später
715
01 E2
E3
MOVP3
A, @ A
Lade Formatspezifikation
716
01E3
B4
32
CALL
FMTCII
Prüfe Format
717
01E5
03
02
ADD
A, 12
Für Entsperrung Zeiger auf
718
01E7
AB
MOV
RO, A
719
01E8
F4
F4
CALL
CLRAM
720
0 1 EA
FB
MOV
A, R3
721
Kodiere,
um Eingang des Entsperrungswertes in MI LS zu verhindern
722
01ED
32
F3
Jßl
SERENO
kein Entsperrungswert
723
01 ED
12
F3
JBO
SERENO
724
01EF
27
CLR
A
725
01 PO
30
XCIID
A, @ RO
7 26
01 Fl
96
76
JNZ
SOFTER
>
w
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 MAIN CONTROL LOOP FOR ACCOUNTING FUNCTION ACCESC.SRC.
727
01F3
FB
SERENO MOV
A, B3
728
01F4 !
A3
MOVP
A, @ A
Lade Zieladresse
729
01F5 :
AB
MOV
RO, A
730
01F6
14
65
CALL
BLKMOV
731
01F8
B6
14
JFO
QUESTA
nicht SETPOS
732
01 FA
A4
DE
JMP
SETI NT
733
734
735
736
737
738
0200
ORG 200 INCLUDE DM0 :FMTOUT
SUBTTL RETURN VALUE / Wiedergebe Wert mit Unterdrückung unnötiger Nullen PAGE
6500 ACCOUNTING MODULE CA0040/11 version 4. 21.57 15-Oct-79 12:47:56 RETURN VALUE WITU UNECESSARY ZEROS REMOVED FMTOUT.SRC
739 «
740
■j 4 j Wiedergebe angeforderten Wert
742
743
744
745 Gebe Wert unter Unterdrückung unnötiger Nullen wieder. Zwei Eingänge sind
746 vorgesehen: (1) Ausgabe in Maschineneinheiten benötigt, und (2) Benutzung
747 zur Lieferung von Dezimalplätzen. Sprungtabelle leitet richtige Eintragung 74 8 unter der Annahme, daß niedriger NIBBLE von Header + 10H in Akkumulator ist.
749
750 1-- R0 Adresse zu formatierender Daten
751 1-- ri = Adressenzeiger
752 1-- R2 = Größe von Daten in Bytes
753 1-- R4 = I Anzahl vorkommender Dezimalplätze
754 1-- R5 . = I ' Header für Übertragung
755 --M RI, R3,
756
-,5-, Tabelle für Datenformate (hoher NIBBLE = keine Bytes, niedriger NIBBLE = Anzahl der
'J' ezirrvalplatze)
2f Maschinenstatus
33 • Portogebührenwert
53 anwachsendes Register
756 0200 2F DB
759 0201 33 DB
760 0202 53 DB
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 15-Oct-79 12:47:58 RETURN VALUE WIT11 UNECESSARY ZEROS REMOVED FMTOUT.SRC
761
0203
. 43
DD
43
DESCENDING REGISTER
abfallendes Register
762
0 20.4
53
DB
53
CONTROL SUM
Kontrollsumme
763
0205
4 F
DB
4 F
PIECE COUNT
Stückzahl
764
0206
43
DB
43
BATCH AMOUbiT
Stapelbetrag
765
0207
3 F
DB
3 F
BATCH COUNT
Stapelzahl
766
767
SERVICE
Wartung
768
0208
20
DB
20
METER STATUS
Maschinensta tus
769
0209
33
DB
33
POSTAGE VALUE
Portogebührenwert
770
020A
33
DB'
33
UNLOCK VALUE
Entsperrungswert
771
020B
20
DB
20
LOW POSTAGE WARNING
untere Portogebühren-Warngrenze
772
0 2 0C
4F
DB
4 F
METER SERIAL NUMBER
Maschinen-Seriennummer
773
020D
3F
DB
3 F
DIAGNOSTIC STATUS
Diagnoses ta tus
774
020E
20
DB
20
SETTABLE POSTAGE LIMIT/ Einstellbare Portogebührengrenze
775
"1 1 £
0 2 0 F
2F
DB
2F
USED FOR SOFT ERROR
Für weichen Fehler verwendet
/ / o 777
PAGE
>•
6500 ACCOUNTING MODULE CA804Q/11 version 4.21.57 15-Oct-79 12:47:50 RETURN VALUE WITII UNECESSARY ZEROS REMOVED PMTOUT.SRC
770
LOOP
FOR DELETING ZERO !
BYTES Schleife zur Entfernung von Null-Bytes
779
0210
18
FMTOU1
INC
RO
Bringe Adressenzeiger auf neuen Stand
780
0211
EA
5 E
DJNZ
R2, FMTOU'O
781
HERE
IF ALL
ZERO BYTES
Hier wenn alle Null-Bytes
782
0213
CB
DEC
RO
Zeiger auf bekannte 0-Daten
783
0214
FC
MOV
A, R4
Lade Dezimalplätze
784
0215
BB
01
MOV
R3, *1
785
0217
C6
9C
JZ
FMT014
0 Dezimalplätze
786
0219
D3
0F
XRL
A, HOF
Prüfung auf keine Dezimalplätze
787
0 2 1 B
C6
9C
JZ
FMT014
Ausgebe 0
788
0 2 1 D
CO
DEC
RO
789
0 2 1 E
BQ
03
MOV
R3, *3
790
0220
D3
OC
XRL
A, HOC
791
0222
96
9C
JNZ
FMT014
Ausgebe 0, 00
792
0224
1B
INC
R3
793
0225
44
78
JMP
FMTOU3
•Ausgebe 0.00 nach Abstreifen nachgestellter Null
794
795
0227
F0
FMTVAL
MOV
A, @ RO
Lade Header
796
0228
07
DEC
A
Prüfe ob Portogebührenwert
797
0229
C6
31
JZ
VALUE
Wenn Akku. = 0, setze nicht Wartungsbit ein
790 799
022B 0 2 20
34 53
E7 02
CALL ANL
LSTATE A, 1102
Interpretiere Aufforderung verschieden, wenn im Wartuncjs-
800
0 2 2 F
E7
RL
A
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 15-Oct-79 12:47:58 ^
RETURN VALUE WITH UNECESSARY ZEROS REMOVED FMTOIJT.SRC
BOI
0230
E7
RL
A
802
0231
40
VALUE
ORL
A, @ RO
Lade Header und füge Wartungsbit dazu, wenn erforder
803
804
0232
0233
A9 E3
VALUES
MOV MOV P 3
RI, A A, @ A
aus niedrigem NIBB extrahiere Datenadresse, Größe, Anz. < Datenadresse Dezimalstell-
805
0234
29
XCII
A, RI
speichere Adresse
806
02 3 5
AD
.MOV
R5, A
807
0236
A3
MOVP
A, @ A
Lade SPEC
808
0237
AC
MOV
R4 , A
Hoch = Anzahl der Bytes, Nieder = Dezimalstellen
809
0238
53
OF
ANL
A, ! OF
Maske für niederen NIBB
810
0 2 3 A
2C
XCII
A, R4
Speichere Dezimalstellen
811
0 2 3 B
DC
X RL
A, R4
Bilde Anzahl der Bytes
812
023C
.47
SWAP
A
813
0 2 3 D
AA
MOV
R2, A
814
0 2 3 E
AF
MOV
R7, A
Rette für späteren Gebrauch
815
023F
BB
03
MOV
R3, 83
Setze Fehlziffern-Zähler
816
017
024 1
Fl
MOV
A, @ R1
818
024 2
17
INC
A
819
024 3
96
47
JNZ
FMTOT1
Wenn Daten = FF fehlerhaft
820
024 5
24
76
JMP
SOFTER
Û21
024 7
F 4
E9
FMTOT1
CALL
CLRWK
022
024 9
BO
71
MOV
RO, H (W.
823
0 2 4 B
1 4
65
CALL
BLKMOV
Bewege in Arbeitsbereich
©V CS
W
'Ji
6500 ACCOUNTING MODULE CA8048/11 ''version 4.21.57 15-Oct-79 12:47:58 RETURN VALUE WITH UNECESSARY ZEROS REMOVED FMTOUT.SRC.
824
CHECK
FQR
SERVICE VALUE
Prüfe auf Service Wert
825
024D;
FD
MOV
A, R5
Lade Header
8 2 6
0 2 4 E
17
INC
A
827
02 4 F
92
B7
JB4
FMTSOF
weicher Fehler = XF, = 10
828
CHECK
FOR
CONTROL SUM
829
0251
FD
FMTOT2
MOV
A, R5
830
0252
C6
B9
JZ
FMTSTA
wenn Status, übergehe Format
831
0254
D3
04
XRL
A, «4
832
0256
96
5A
JNZ
FMTOUA
Nicht Kontrollsumme
833
CONTROL SUM
Kontroll'summe
834
0253
54
BF
CALL
CTLSUM
835
836.
025A
B8
71
FMTOUA
MOV
RO, Jf (WOR)
837
025C
FF
MOV
A, R7
838
025D
AA
MOV
R2, A
839
025E
F0
FMTOUO
MOV
A, @ RO
Lade 1 Datenbyte
840
025F
C6
10
JZ
FMTOU1
wenn beide Ziffern 0, setze Prüfung fort
841
kann noch eine vorangestelle Null in oberem NIBBLE
842
0261
FA
MOV
A, R2
Bilde Ziffernzahl
843
0262
E7
RL
A
844
0263
AB
MOV
R3 , A
Rette in R3
845
0264
F0
MOV
A, @R0
846
0265
53
FO
ANL
A, Il OFO
Prüfe hohen NIBBLE des Datenbyte
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58
RETURN
VALUE
WITH
UNECESSARY
ZEROS
REMOVED
FMTOUT.SRC
847
0267
96
6 A
JNZ
FMTOU2
: •
848
0269
CB
DEC
R3
Überlege ob Unterdrückung von hoher Null
849
0 2 6 A
FC
FMTOU2
MOV
A, R4
Prüfe ob 3 Dezimalstellen
850
026B
D3
03
XRL
A, «3
851
026D
• 96
86
JNZ
FMT010
Wenn nicht MILLS, keine weitere Unterdrückung
852
HERE
IF THREE (3) 1
DEC REQUIRED
853
026F
F8
MOV
A, RO
Datenzeiger
854
0270
6A
ADD
A, R2
855
0271
07
DEC
A
Start + Größe - 1
856
0272
A9
MOV
RI , A
857
0273
Fl
MOV
A , @ R1
Lade niedriges Byte
8 5 8.
0274
53
OF
ANL
A, «OF
Prüfe niedrigen NIBB auf Null
859
0276
96
86
JNZ
FMTOIO
Springe, wenn Unterdrückung nicht möglich
860
Hier nachlaufende Null angeben
861
0278
FB
FMTOU 3
MOV
A, R3
862
0279
17
INC
A
Aufrunden für Bytezähler von Daten
863
027A
67
RRC
A
Bilde Bytezahl
864
027B
AA
MOV
R2 , A
865
027C
E6
80
JNC
FMTOU4
bereits ungerade Ziffernzahl
866
867
027E 027F
C8 1A
DEC INC
RO R 2
Anpasse Adresse, um anzusehen wie ungerade
Ziffernzahl
868
0280
FG
FMTOU4
MOV
A, RO
069
0281
ß 4
02
CALL
FMTNB 2
Linksverschiebung um 1 NIBBLE
6500 ACCOUNTING
MODULE CA80 4 8/1 1
version 4
.21.57 15-Oct-79 12:47:58
RETURN
VALUE
WITH
UNECESSARY
ZEROS
REMOVED FMTOUT.SRC
070
0283
A8
MOV
RO, A
Neuer Adressenzeiger
871
0284
ÏCB
DEC
R3
Anpasse Ziffernzahl
872
0285
CC
DEC
R4
Anpasse Dezimalenzahl
873
Vorbereite Übertragungspaket
874
0286
FC
FMTOl0
MOV
A, R4
Prüfe ob von Null verschiedene Ziffern Dezimalpli
875
0287
C 6
9C
JZ
FMTOl4
876
0289
D3
OF
XRL
A, HOF
877
0288
C6
9C
JZ
FMTOl4
wenn Dezimalplätze = 0, überspringe Prüfung
878
028D
FC
MOV
A, R4
879
02QE
87
CPL
A
Subtrahiere und prüfe Übertrag
880
028F
97
CLR
C
881
0290
7 B
ADDC
A, R3
882
0291
F6
9C
JC
FMTOl4
Ziffern in Ordnung
883
PAD IN
LEADING "0" S AS
NEEDED Auffülle vorderde "0" wenn nötig
884
0293
2B
FMTOl1
XCII
A, R3
Prüfe, ob ungerade Ziffernzahl
885
0294
12
97
JBO
FMTOl2
886
0296
C8
DEC
RO
Bewege Adressenzeiger um 1 Byte nach oben
887
0297
2B
FMTOl2
XCII
A, R3
Ersetze Ziffer in R3 und anpasse Zahlung in
88 8
0298
1B
INC
R3
Erhöhe Ziffernzähler
889
0299
17
INC
A
Anpasse Zähler
890
029A
96
93
JNZ
FMTOl1
891
029C
FB
FMTOl4
MOV
A, R3
Bilde Format in Akkumulator
892
029D
47
S WAP
A
6500 ACCOUNTING MODULE CAQ048/11 version 4.21.57 15-Oct-79 12:47:58 RETURN VALUE WITIi UNECESSARY ZEROS REMOVED PMTOUT.SRC
893
029E
4C
ORL
A, R4
894
0 2 9 F
C8
DEC
R0
Anpasse Adressenzeiger
B95
0 2 AO
A0
MOV
@R0, A
Speichere Format
896
: 02A1
C8
FMTSTS
DEC
R0
897
02A2
FD
MOV
A, R5
Einsetze Header
898
02A3
43
00
ORL
A, «00
Einsetze oberen NIBBLE des Header
899
02A5
A0
MOV
0RO, A
900
02A6
CB
DEC
R0 •
901
02A7
FB
MOV
A, R3
Berechne Übertratungsbyte-Zahl
902
02A8
97
CLR
C
903
02A9
17
INC
A
904
02AA
67
RRC
A
Dividieren durch 2
905
0 2 AB
03
02
ADD
A, »2
906
0 2 AD
AO
MOV
0RO, A
Speichere Bytezahl
907
02AE
F8
FMTTRP
MOV
AM RO
gepackte Adresse
908
02AF
94
04
CALL
STRIÛM
909
0 2 B1
A 5
CLR
Fl
910
0282
94
BC
CALL
CTXMES
911
0 2 B 4
65
STOP
TCNT
912
02B5
24
3 A
JMP
IDLEO
913
914
0 2 B 7
10
FMTSOF
INC
0 RO
setze Fehlerbit für weichen Fehler in Übertragungspuffei
915
0 2 B 0
10
INC
0 RO
6500 ACCOUNTING MODULE CA8048/11 vers ion . 4./21.57 15-Oct-79 12:47:50
RETURN '
VALUE WI
TU
UNECESSARY
ZEROS
REMOVED FMTOUT
.SRC
916
02B9
BD
80
FMTSTA
MOV
R5, IVLISHD
Ändere Schein-Header "8F" in "80"
917
0 2BB
C8
DEC
R0
Zurück auf erstes Byte
918
• 02BC
CB
DEC
R3
Ändere Ziffernzahl, so Nachricht = 3 Bytes
919
02BD
44
Al
JMP
FMTSTS
920
921
CONTROL SUM
922
02BF
B9
28
CTLSUM
MOV
RI, IDSCREG+C
923
0 2C1
DA
04
MOV
R2, ÏDSCRSZ
924
02C3
54
EC
CALL
DECADO
925
02C5
27
CLR
A
926
02C6
70
ADDC
A, @R0
Addiere C-Marke und hohes Byte des Akkumulators
927
02C7
57
DA
A
928
02C8
AO
MOV
0RO, A
929
02C9
83
RET
930
931
INCLUDE DM0 :ASCCRC
932
SUBTTL
Berechne CRC für anwachsendes Register
933
PAGE
>
6500 ACCOUNTING MODULE CA804B/11 COMPUTE CRC FOR ASCENDING REGISTER
934
935
936
.937 !
9 38 939
version 4.21.57 ASCCRC.SRC
15-Oct-79
12:47:58
£ Cft
945
946
947
948
Berechne CRC für anwachsendes Register
940
02CA
BS
2 A ASCCRC
MOV
R0 ,
»ASCREG
941
02CC
BA
05
MOV
R2,
IASCRSZ
942
02CE
F4
CF
CALL
CRC
943
02D0
B 8
29
MOV
R0 ,
Ï ASCECC
944
02D2
83
RET
INCLUDE DM0 : DISABL SUBTTL DISABLE METER PAGE
Setze Maschine außer Betrieb o\ Os N>
£-W Ol
6500 ACCOUNTING MODULE CABO40/11 version 4.21.57 15-Oct-79 12:47:50
DISABLE
METER
DISABL,
, SRC
949
950
Setze
Maschine außer
Betrieb
951
1
, 952
953
954
955
Wenn Maschine in Betriebsbereitschaft, setze Maschine außer
956
Betriebsbereitschaft und prüfe Antwort des Druckers, sonst tue nichts
957
958
IS METER ENABLED?
Maschine in Betrieb?
959
02D3
89
04
DISABL
ORL
PI, 14
Setze ACC Hälfte des Vermittlers außer Betrieb
960
02D5
BB
2 F
MOV
R0, »PRSTAT
961
02D7
FO
MOV
A, @ R0
962
02DB
52
DB
JB2
DISAB1
gegenwärtig in Betrieb
963
02DA
83
DISRET
RET
964
.965
02D8
54
E7
DISAB1
CALL'
LSTATE
966
02DD
52
DA
JB2
DISRET
wenn verhängnisvoll, kein Gespräch mit Drucker möglich
967
02DF
94
1 2
CALL
STR60M
968
02E1
14
00
DISAB2
CALL
RECSTS
Warte auf Statusantwort
969
02E3
52
El
JB2
DISAB2
Warte bis außer Betrieb oder Sperrzeit
970
02E5
A4
CF
DISAB3
JMP
ENABRT
971
6500 ACCOUNTING MODULE CAB04Ö/11 version 4 DISABLE METER DISABL.SRC
972 INCLUDE
9 73 SUBTTL
974 PAGE
21.57 15-Oct-79 12:47:50
-4
Lade Zustandswert
CS
es
M
■fe. OA Vi
ON ON
s>
JU.
w en
6500 ACCOUNTING MODULE CA8048/11 LOAD STATE VALUE LSTATE.SRC
version 4.21.57 15-Oct-79 12:47:58
975
976
977
Lade Zustandswert
978
979
980
981
02E7
D5
LSTATE
SEL RDI
982
02EB
Q8 58
LSTATW
MOV RO, jf STATE
983
02EA
FO
MOV A, @R0
984
02EB
93
RETR
985
986
INCLUDE DM0:DECAD
987
SUBTTL Dezimale
988
PAGE
> 4^.
6500 ACCOUNTING MODULE CA8040/11 version•4.21.57 DECIMAL ADDITION OF N DIGITS DECADO.SRC
15-Oct-79 12:47:50
> è
909
990
991
Dezimale Addition von
N Bytes
992
993
994
995
Addi ere zwei (2) Datenfolgen von BCD-Zahlen (A = A + B)
996
997
1--
R0
Adresse des Byte niedriger Ordnung
990
1--
R1
Adresse des Byte niedriger Ordnung
999
1 —
R2
Anzahl zu addierender Bytes
1000
-OM
C
0, kein Überlauf; = 1, Überlauf
1 001
1 002
0 2EC
97
DECADO CLR
• C
1 003
100 4
C 2 ED
F0
DECADI MOV
A, @R0
Lade ACC mit Byte "A"
1005
02EE
71
ADDC
A, @ R1
Addiere "A" + "B"
1006
02EF
57
DA
A
1007
0 2 F0
A0
MÒV
@ RO , A
Rette (2wischenspeichere) Antwort
1008
1009
Bringe Adressenzeiger auf neuen Stand
1010
0 2 F1
CA
DEC
R0
1011
0 2 F 2
C9
OEC
AI
ON ON
W
©s s
W CJ1
6500 ACCOUNTING MODULE CA0O48/11 version 4.21.57 15-Oct-79 12:47:50
DECIMAL ADDITION OF N DIGITS DECADD.SRC
1012 02P3 EA ED DJNZ R2, DECADI Erniedrige Byte-Zähler und fahre fort
101 3 02F5 ; 03 RET
1014
1015 INCLUDE DMO:TMRTST
1016 Prüfe verbleibende Zeit, bis Zeitgeber-Unterbrechung
1017 PAGE
Vi O
6500 ACCOUNTING MODULE CA804Ö/11 version 4.21.57 • 15-Oct-79 CHECK TIME LEFT TILL TIMMER INTERUPT TMRTST.SRC
I 1018
> Cil
12:47:58
1019
1020
1021
1022
1023
1030
1031
1032
1033
1034
1035
.Stelle sicher, daß Zeitgeber nicht unterbricht für > 4 msek.
1024
02F6
42
TMRTST MOV
A, T
Lade Zeitgeberwert
1025
02F7
03
30
ADD
A, *30
Addiere ungefähr 5-6 msek.
1026
02F9
E6
FE
JNC
TMRTS1
C = 0 in Ordnung
1027
02FB
53
CF
ANL
A, i0CF
Ändere Zeitgeber auf Wartezeit von 5
1028
0 2 FD
62
MOV
T, A
Bringe geänderten Wert zu Zeitgeber
1029
0 2 FE
83
TMRTS1 RET
0300
ORG 300
INCLUDE DM0 :PG3TBL
SUBTTL
PAGE
Datentabelle der RAM-Adressen
OS ©\ N>
W <Jl
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 DATA TABLE OF RAM ADDRESS PG3TBL.SRC
1036
o\
N>
4^ W til
15-Oct-79
12:47:58
1037
1038
1039
1040
1041
Tabelle für Adressen der Daten
1042
Jede Eintragung ist Anfangsadresse von mit Header
1043
1044
NORMAL MODE
Normalbetrieb
1045
0300
56
DB
MRSTAT
Maschinenstatus
1046
0301
30
DB
POSVAL
Portogebührenwert
1047
0302
2 A
DB
ASCREG
anwachsendes Register
1048
0303
25
DB
DSCREG
abfallendes Register
1049
0304
2 A
DB
ASCREG
Kontrollsumme
1050
0305
20
DB
PECEKT
Stückzahl
1051
0306
33
DB
BATANT
Stapelzahl
1052
0307
37
DB
BATCNT
Stapelbetrag
1053
1054
SURVIVE MESSAGES
Wartungsnachrichten
1055
0308
56
DB
MRSTAT
Maschinenstatus
1056
0309
30
DB
POSVAL
Portogebührenwert
1057
030A
49
DB
UNLOCK
EntSperrungswert
1058
030B
4 C
DB
LOWPOS
unterer Portogebührenwert
► Ol
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 15-Oct-79 12:47:58 DATA TABLE OF RAM ADDRESS PG3TBL.SRC
1059
030C
45
DB
MSERNO
MaschinenSeriennummer
1060
03 0D
41
DB
RSTCNT
Kode für verhängnisvollen Zustand
1061
030E
4 E
DB
SETLIM
Einstellbare Portogebührenhöchstgrenze
1062
0 30.F
56
DB
MRSTAT
frei
1063
-
1064
Wartungsbetrieb-Betragsformatspezifikationen (SPEC)
1065
0310
63
DB
63
EntSperrungsformat-Spez.
1066
0311
40
DB
40
unterer Portogebührenwert-Formatspez.
1067
0312
40
DB
40
Einstellbare Höchstgrenzen-Formatspez.
1068
0313
53
DB
53
Portoeinstellgebiihr-Spez.
1069
1070
INCLUDE DMO: DOSTAT
1071
SUBTTL
verarbeite Druckerstatus
1072
PAGE
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12;47;58 PROCESS PRINTER STATUS DOSTAT.SRC
1073
1074 "
1075 Verarbeite Druckerstatus
1076
1077
1078
107 9 Bringe Druckerstatus auf neuen Stand, gebe Änderungen in Zustand und Frankiermaschinenstatus wieder
1080
1081
1 —
R0
Adresse an Nachricht'mit Header und Statusbyte
1082
--M
Rl, R5, R6,
1083
108 4
0314
64
7C
TRIPST
JMP
DOTRIP
1085
i
1 086
0316
B9
5D
DOSTAT
MOV
RI, »POLCNT
Nullsetze Sendeaufrufsverzögerungszäh1er
1087
0318
B1
CO
MOV
@R1, »0C0
ungefähr 200 msek.
1088
031A
23
80
MOV
A, »VLISIID
Prüfe.Statusheader
1089
03 IC
DO
XRL
A, 0RO
1090
03 1D
C6
23
JZ
DOSTA1
Header in Ordnung
1091
; BAD
HEADER FATAL - PROCEDURE
1092
0 3 1 F
BF
02
MOV
R7, »PROFAT
verhängnisvoller Kode
1093
0321
84
33
JMP
FATERR
1 094
0323
B9
2F
DOSTA1
MOV
Rl, »PRSTAT
Austausche Status
1095
0325
18
INC
R0
Zeige auf Daten
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 15-Oct-79 12:47:58 PROCESS PRINTER STATUS DÒSTAT.SRC
1096
0326
15
DIS
1
stelle sicher, daß wenn Auslösung übertragen wird, diese verarbeitet
1097
0327
FO
MOV
A, @R0
wird
1 0 9 B
0328
21
XCH
A, @R1
,
1099
0329
Dl
XRL
A, @R1
Bilde XRL aus altem und neuem Status
1 100
032A
53
DF
Ï
ANL
A, »ODF
Maske für Sperrstange
1 101 '
032C
C6
6E
:
JZ
DOSTA7
keine Änderung
1102
032E
AF
MOV
R7 , A
, •
1103
032P
51
ANL
A, @R1
Bilde UND aus neuem und XRL von altem und neuem
1 104
0330
AE
MOV
R6, A
1 1 05
0331
72
1 4
JB3
TRI PST
Führe Buchung aus bei Beginn der Auslösung
1106
0333
05
EN
1
Keine Auslösung
1107
0334
1 2
71
JBO
GETDIA
Wenn neuer verhängnisvoller Fehler, erhalte Diagnosestatus
1 108
0336
FF
MOV
A, R7
1 109
0337
72
3B
JB 3
DOSTA 3
War Änderung in Auslösebit?
1110
Prüfe
Ausgangsstellung
1111
0339
92
À2
JB4
BADHOM
Ausgangsstellung anerkennen
1112
033B
37
DOSTA 3
C PL
A
1113-
033Ç
AD
MOV
R5, A
1114
033D
B8
5B
MOV
RO, »CNTXFL
Änderung in Status, daher Warteschlange an Steuerung
1115
033F
10
INC
0 RO
1116
CHECK
IF CHANGE IN INTERPOSTER
1117
0340
BB
56
DOSTA 4
MOV
RO, »MRSTAT
1118
034 2
52
54
JB2
DOSTA5
Keine Änderung in Vermittler
6500 ACCOUNTING MODULE CA8048/11 version PROCESS PRINTER STATUS DOSTAT.SRC
1119
0344
Fl
MOV
A, @R1
1120
0345
77
RR
A
1121
0346
V
RR
A
1122
0347
61
RRC
A
1123
0348
E0
MOV
A, @ R0
1124
0349
E6
4 D
JNC
DOST4A
11 25
i
C = 1
METER ->
1126
0 3 4 B
53
7 F
ANL
A, 17F
1127
034D
77
DOST4 A
RR
A
1128
034E
77
RR
A
1129
034F
77
RR
A
1130
0350
F7
RLC
A
1131
0351
E7
RL
A
1132
0352
E7
RL
A
1133
0353
A0
MOV
@R0, A
1134
0354
FD
DOSTA5
MOV
A, R5
1135
CHECK DATER
DOÛR
1136
0355
D2
63
JB6
DOSTA6
1137
0357
97
CLR
C
1 138
0358
A7
C PL
C
1 139
0359
FE
MOV
A, R6
1 1 40
0 3 5 A
D2
5D
JB6
DOST5A
1141
035C
A 7
CPL
C
57
1 5-Oct-7D 12 : .47 : 58
c\ o\
i>» *>.
w
VI
Übertrag = Vermittlerstellung
Lade Maschinenstatus und einsetze Vermittler C = 0 - ) Setze außer Betrieb
Inbetriebsetzung muß Basisrücksetzungs-Bit löschen
Keine Änderung
Pehlprüfungsdatenbit auf = 1
Tür gerade geöffnet; verwende Fehlsetzung Türänderung und nicht gerade geöffnet
6500 ACCOUNTING MODULE CA804B/11 version 4.21.57 15-Oct-79 12:47:58 PROCESS PRINTER STATUS DOSTAT.SRC
1)42
035D
F0
DOST5A
MOV
A, @ R0
Lade Maschinenstatus
1143
035E
E7
RL
A
1144
035F
£7
RL
A
1145
0360
6 7
RRC
, A
1146
0361
77
RR
A
1147
0362
A0
MOV
@R0, A
Rette auf neuen Stand gebrachten
1148
0363
FD
DOSTA6
MOV
A, R5
1149
CHECK
PRIV
SWITCH
1 150
0364
F2
6E
JB7
DOSTA7
Keine Änderung
1151
0366
D8
58
MOV
RO, «STATE
1152
0368
Fl
MOV
A, @ RI
Lade neuen Status
1153
0369
F7
RLC
A
Prüfe Derechtigungsbit
1 154
036A
FO
MOV
A, @R0
Lade Zustandswert
1155
036B
77
rr
A
1156
036C
F7
RLC
A
Einsetze Berechtigungs-Info
1 157
036D
ao
MOV
@ro, A
1158
036E
Fl
DOSTA7
MOV
A, @ R1
Lade Druckerstatus in Akku.
1159
0 3 6 F
05
EN
1
1 160
0370
03
ret
1161
1 162
0371
94
04
getd1a :
call striÛM
1163
037 3
23
5D
MOV
A, S 5 DU
Header für "DIA"-Status
1 164
0375
1 4
84
call getd
6500' ACCOUNTING MODULE CA8048/11 PROCESS PRINTER STATUS DOSTAT.SRC
0377 fe5 STOP
0378 Ì 8 INC
0379 F0 MOV 037A 84 3C JMP
1165
1166
1167
1168
1169
1170
1171
1172
version 4.21.57
TCNT RO
A, @ R0 FATRRl
15-Oct-79
12:47:58
INCLUDE DM0.-DOTRIP
PAGE
Verarbeite Auslösung und Buchung
6500 ACCOUNTING MODULE CA8048/11 version 4.21.
PROCESS TRIP AND ACCOUNTING DOTRIP.SRC
1173
1174
1175 Verarbeite Auslösung und Buchung
1176 Ì
1177
I 1 78
1179 Verarbeite Auftreten von Auslösung und Buchung
II 80
1101
1 --
A
Wert des neuen Status
1 182
1 --
R0
Adresse des alten Status
1 1 U 3
1 --
Rl
Adresse des neuen Status
1 184
1105
Bringe Maschinenstatus auf neuen Stand
1 186
037C
65
DOTRIP STOP
TCNT
1 1 87
037D
23
64
MOV
A, ÏTRPSET
Zulässige Zeit für Auslösung
11 88
037F
94
19
CALL
STR20M
Starte Zeitgeber
1189
0381
B0
02
MOV
@R0, #2
zeigt Zeitgabe der Auslösung an
1 190
0383
74
Q8
CALL
DOACCT
1191
0385
05
EN
1
Gestatte Stromabfall
1 192
0386
94
F 4
CALL
POSUPD
1 193
0388
C6
0C
JZ
DOTRP1
Lasse in Betriebsbereitschaft
1 194
038A
09
04
ORL
PI , #4
Setze jetzt außer Betriebsbereitschaft
1 195
Kritische
Buchung jetzt vollendet, so zeige dem Drucker an
6500' ACCOUNTING MODULE CA0O48/11 version 4.21.57 )5-Oct-79 12:47:50 PROCESS TRIP AND ACCOUNTING DOTRIP.SRC
1 1 96
038C
23
45
DOTRPl'
MOV
A, HACMPHD
1 1 97
038E
1 4
94
CALL
GETSTS
1198
0390
37:
CPL
A
1199
0391
7 2:
97
JB3
DOT R P 3
Auslösung vollendet
1200
WA IT
FOR TRIP COMPLETE
Warte auf Auslösung vollständig
1201
0393
14
80
DOTRP2
CALL
RECSTS
1 202
0395
72
93
JB3
DOTRP2
Verbleibe wartend, bis Auslösebit gelöscht
1203
0397
94
01
DOTRP3
CALL
TIMSTP
Stoppe Zeitgeber
1204
0399
03
A3
ADD
A, ÏTRPTOL
Prüfe auf Übergeschwindigkeit
1 205
039B
E6
9 F
JNC
DOTRP4
Geschwindigkeit in Ordnung
1 206
OVERSPEED
1 207
039D
84
79
JMP
TRIPTM
1208
0 3 9 F
FF
DOTRP4
MOV
A, R7
Prüfe Ausgangs-(HOME)-Stellung
1 209
0 3 A0
92
A6
JB4
DOTRP5
Ausgangsstellung geändert, in Ordnung
1210
BAD HOME POSITION
1211
03A2
BF
05
BADIIOM
MOV
R7, »IIOMFAT
1212
03A4
84
33
JMP
FATERR
1213
03A6
B9
56
DOTRP5
MOV
RI, !MRSTAT
1214
03A8
BO
70
MOV
RO, HWORKBF<2
1215
03AA
BA
02
MOV
R 2 , 1(2
1216
03AC
1 4
65
CALL
OLKMOV
1217
03AE
CO
DEC
RO
Zeiger auf erstes Byte
1210
0 3 A F
10
INC
0RO
Auslösebit 0
>
o\
1-4
6500 ACCOUNTING MODULE CAß04ß/ll version 4.21.57 PROCESS TRIP AND ACCOUNTING DOTRIP.SRC
15-Oct-79
12 : 47 :5ß
1219
03B0
C8
DEC
R0
1220
03B1
B0
.80
MOV
' @R0,
IVLISIID
1221
03B3
Cfl
«
DEC
R0
1222
Û3B4
B0
03
MOV
@R0,
13
1223
03B6
44
AE
JMP
FMTTRP
1224 1 225 1 226
Buchung für Auftreten von Auslösung PAGE
o\
Os
■U W Ol
ON
ON b»
M
en
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:50 ACCOUNT FOR OCCURANCE OF TRIP DOTRIP.SRC
1227
1228
1229
V
Buchung für Auslösung
1230
1231
1232
1233
Bringe anwachsendes und abfallendes Register, Stückzahl sowie
1234
Stapelzahl und Stapelbetragsfelder auf neuen Stand
1235
1236
03B8
94
E3
DOACCT CALL
POSWRK Bewege Portogebührenwert in Arbeitspuffer mit
1237
Bringe anwachsendes Register auf neuen Stand
1 238
03BA
B8
2E
MOV
R0, H(ASCREG*ASCRS2-1)
1239
03BC
B9
73
MOV
Rl, II (WORKBP+POSTSZ+3-1)
1240
03BE
BA
05
MOV
R2, ÏASCRS2
1241
03CÛ
54
EC
CALL
DECADO R0=R0iRl
1242
NEW CRC
1 243
03C2
54
CA
CALL
ASCCRC
1244
0 3C4
AO
MOV
@ R0 , A
1 245
Bringe abfallendes Register auf neuen Stand
1246
03C5
C8
DEC
RO POINT AT
1247
03C6
B9
73
MOV
RI, U(WORKBFiPOSTSZ + 3 -1
1 248
03C8
BA
04
MOV
R2, ÏDSCRSZ
1249
03CA
1 4
6D
CALL
DECSUB
> On
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 ACCOUNT FOR OCCURANCE OF TRIP DOTRIP.SRC
1250
03CC
E6
A2
JNC
BADIIOM
1251
NEW CRC
1252
03CE
D4
65
CALL
DSCCRC
1253
03D0
•A0
MOV
@R0, A
1254
*■
UPDATE BATCH
AMOUNT FIELD
Bringe Stapelbetragsfeld auf neuen Stand
1255
03D1
B8
. 36
MOV
R0, #BATAMT +
BATAS2 - 1
1 256
03D3
B9
73
MOV
Rl, S(WORKBF+POSTS2+3-1)
1 257
03D5
BA
04
MOV
R2, BBATASZ
1258
03D7
54
EC
CALL
DECADO
1259
UPDATE PIECE
COUNT
Bringe Stückzahl auf neuesten Stand
1 260
03D9
F4
EA
CALL
CLRWRK
1261
03DB
B9
75
MOV
Rl , H WORKBF +
WRKBSZ - :
1262
0 3 DD
11
INC
@R1
1263
0 3 DE
B8
23
MOV
R0, 8 (PECEKT+PECESZ-1) / Adresse des letzten Byte des Stückzählers
1264
03E0
BA
04
MOV
R2, ÄPECESZ
Anzahl der Bytes
1 265
03E2
54
EC
CALL
DECADO
1266
UPDATE BATCH
VARIABLES
Bringe Stapelvariable auf neuen Stand
1 267
03E4
B8
89
MOV
R0, ÄßATCNT +
BATCSZ -
1268
03E6
B9
75
MOV
Rl, 8WORKBF +
WRKBSZ -
1269
03E8
BA
03
MOV
R2, UBATCSZ
1270
0 3 EA
54
EC
CALL
DECADO
1271
CHECK CONTROL SUM CRC
Prüfe Kontrollsummen - CRC
1272
0 3EC
94
D2
CALL
CTLECC
6500 ACCOUNTING MODULE ACCOUNT FOR OCCURANCE OF
1273 03EE DO
1 274 03EF 9r6 A2
1 275 03F1 8*3
1276
1277
1278 * 1279
8048/11 version 4.21 IP DOTRIP.SRC
XRL A, @R0 JNZ BADilOM RET
INCLUDE DMOiLOWSET PAGE
15-OCI-79 12:47:58
Kommunikationsmaske gesetzt
6500 ACCOUNTING MODULE CA0040/11 version 4.21 COMMUNICATION MASK SET LOV
1 280
«
1281
,
1282
Untere Kommunikationsmaske gesetzt
1283
V
1284
1 285
1286
Bestimme richtige Ausgabe für P1 um niedrigen Pegel -auf aktiver
1 207
Kommunikation auszugeben und andere Leitung unbeeinflußt zu lassen
1 288
1 289
-OM
A
Maskenwert bei Aussprung
1 290
1291
03F2
09
LOWSET IN
A, PI
Lese gegenwärtigen P1
1 292
03F3
53
CC
ANL
A / Ï0CC
Lösche Kommunikationsleitungen
1293
03F5
76
FA
J F1
LOWST1
Drucker
1 294
CONTROL
Steuerung
1 295
G3F7
43
1 3
ORL
A / II 1 3
1 296
03F9
33
RET
1 297
PRINTER
Drucker
1298
0 3 FA
43
31
LOWST1 ORL
A, 131
1299
0 3 FC
83
RET
1 300
1 301
1 302
0400
ORG
400
ON ON M
W Ul
6500 ACCOUNTING MODULE CA004B/11 version 4.21.57 15-Oct-79 , 12 : 4 7: 5 B
COMMUNICATION MASK SET LOWSET.SRC
1303 INCLUDE DMOîTIMER Zeitgeber
1304 Zeitgeber- und verhängnisvolle Fehler-Funktionen
1305 PAGE
► o\
on
6500 ACCOUNTING MODULE CAB048/11 vers i on'4 . 21 .57, 15-Oct-79 12:47:50 TIMER AND FATAL ERROR FUNCTIONS TI MER.SRC
1 306
1307
1300
Zeitgeber -
Verhängnisvoller Fehler
1 309
1310
1311
1312
.•
Liefert drei
Punktionen: (1) Steuerung des Chip-Zeitgebers, (2) Sperrzeitverarbeitung
1 313
2eitgesteuerter Ereignisse und (3) Verarbeitung bei verhängnisvollem Fehler
1314
1315
Zeitbetrag zum Zählen
1316
—M
R0
1317
1310
TADLE FOR
TIMEOUT JUMPS/Tabelle für Sperrzeitsprünge
1319
0400
31
DD
LOW FATCOM Wenn Kommunikationszeit aus
1 320
0401
57
LOW INTPOS Wenn Sperrzeit bei Vermittleränderung
1 321
0402
79
DB
LOW TRIPTM . Auslösung 2u lang
1 322
0403
7D
DB
LOW SETPTM Portogebühr zeitausgesperrt
1323
1324
Schaffe Sperr2eitfunktion für Zeiten von 1 - 20 msec.
1 325
0404
AB
STR1ÛM MOV
R 3 , A
1 326
0405
23
0E
MOV
jj j /) Allgemeine Kommunikations-Sperrzeit
1 327
0407
54
STRMIL MOV
RO, üTJMCNT Eintritt mit Sperrzeit in Akku in msec
1 328
0409
DO
01
MOV
Or-, m Einstellung für 1 Durchgang durch Hauptzeitschleife
-u.
w
6500 ACCOUNTING MODULE CAß04fi/ll version 4.21.57 TIMER AND FATAL ERROR FUNCTIONS TIMER.SRC
1329
0 4 OB
E7
RL
A
1330
04 0C
El
RL
A
1331
04 OD
E 7*
RL
A
1332
040E
37
CPL
A
1333
04 0F
17
INC
A
1334
0410
84
1 E
JMP
STRTIM
1335
MAIN
TIMER
LOOPS
1336
0412
B8
55
STR60M
MOV
R0, ÏTIMWIJO
1337
0414
Q0
01
MOV
@R0, Il
1338
0416
AB
MOV
R3 , A
1339
0417
23
04
MOV
A, #4
1340
0419
B8
54
STR20M
MOV
R0( ÏTIMCNT
1341
0 4 1 B
A0
RSTR20
MOV
@R0, A
1 342
04 IC
23
6B
MOV
A, ï 256. - 1 49
1343
04 1 E
62
STRTIM
MOV
T, A v
1344
04 1F
55
STRT
T
1345
0420
25
EN
TCNT 1
1346
0421
FB
MOV
A, R3
1347
0422
1 8
INC
R0
1348
04 23
93
TIMDMY
RETR
1 349
1 350
04 24
D5
TIM INT
SEL
RB1
1351
0425
AB
MOV
R3 , A
15-Oct-79 12:47:58
msec * 8 ist ungefähr benötigte Zahl
Bilde 2-er Komplement für Hochzahl-Überlauf
Verwende Zentralkode
Hauptzei tgeberschleife
Eintritt für Vermittler-Sperrzeit
Tabelleneintrag für Vermittler-Sperrzeit
Rette Akku.-Wert
60 msec. = 3 * 20 msec-Zählungen
Eintritt, wenn allgemeiner Wert in Akku
Zentralkode für neue Zählung und Neustart des 20-msec-Zähl
Komplementzeit-Zählung für 20 msec.
Lade Zeitgeber
Wiederherstelle Akku, für Zeitgeberneustart
Bei Unterbrechung störe unterbrochene Aktivität nicht SAV R3
6500 ACCOUNTING MODULE CA0048/11 version 4.21 TIMER AND FATAL ERROR FUNCTIONS TIMER.SRC
1352
04 26
65
STOP
TCNT
1353
0427
B8
54
,
MOV
R0, BT1MCNT
1354
0429
F0
MOV
A, 0 R0
1 355
042A
07
DEC
A
1356
0 4 2B
96
1 B
JNZ
RSTR20
1357
TI MED
OUT
1 358
042D
1 8
INC
R0
1359
042E
20
XCII
A, 0 R0
1 360
042F
C5
SEL
RB0
1361
04 30
B 3
JMPP
@ A
1 362
1 361
04 3 1
BF
03
FATCOM
MOV
R7, HCOMFAT
1 364
0433
94
ei
FATERR
CALL
TIMSTP
1365
04 35
89
FF
ORL
PI, SOFF
1366
04 3 7
54
E 7
CALL
LSTATE
1367
04 39
52
47
J B 2
FATER1
1368
04 3B
FF
MOV .
A, R7
1369
0 4 3 E
A0
FATRRl:
MOV
RO,tPATCOD
1371
04 3F
1 8
INC
R0
1372
04 40
F0
MOV
A, 0 R0
1373
04 4 1
1 7
1 NC
A
1374
04 4 2
97
CLR
C
1375
044 3
57
DA
A
57 15-OCL-79 12:47:50 Stoppe Zeitgeber
Wenn Zähler 0, warte weitere 20 msec.
Zeiger auf TIMWHO
Gehe zu richtiger Sperrzeit-Routine Kode für Kommunikationsfehlschlag
Lösche Kommunikationsleitungen und erzwinge Anzeige Wenn bereits verhängnisvoll, überspringe
Speichere verhängnisvollen Kode
Erhöhe Zähler für verhängnisvollen Fehler
Muß in BCD bleiben
6500 ACCOUNTING MODULE CAB048/11 version 4.21.57 15- Oct-79 12:47:58
ÖS os
W (Ji
Eli AND
FATAL
ERROR
FUNCTIONS TIMER.SRC
1 376
0444
A0
MOV
@R0, A
1377
1378
04 4 5 0447
94 C5
4 A
CALL FATER1 SEL
NVMFAT RB0
Zentralkode, um verhängnisvollenZustarvd und Bit in Maschinen status zu setzen
1 379
0448
2*4
1 4
JMP
QUESTA
1 380
1 381
04 4 A
1 4
60
NVMFAT CALL
STCIIK 1
.
1 382
044C
43
04
ORL
A, »4
Setze verhängnisvolles Fehlerbit
1 383
04 4 E
A0
MOV
@R0, A
Rette Status
1 384
044 F
Fl
MOV
A, @R1
1385
0450
53
FB
ANL
A,I0FB
1386
0452
Al
MOV
0R1 , A
1387
0453
19
INC
RI
Zeiger auf zweites Maschinenstatusbyte
1388
0454
B1
86
MOV
@R1, K 80
Setze verhängnisvolles Bit in Maschinenstatus
1389
0456
93
RETR
1 390
im
0457
0458
09 37
INTPOS: IN CPL
A, P1 A
Sperrzeit Programme
1 393
0459
B8
2F
MOV
RO, IPRSTAT
1 394
045B
52
6C
JB2
ENABTM
Betrieb durch Sperrzeit beendet
1 395
DISABLE TIMEO OUT
1 396
0/15D
F0
DISBTM MOV
A, @ RO
1397
CHECK SIIUTTER BAR
1398
045E
B 2
77
JB5
ENTMDN
1 399
TRY TO TALK TO PRINTER
MY HALF COULD BE SHORTED
O
6500 accounting module CA804B/11 version 4.21
timer and fatal error functions timer.src
1 400
0460
99
fd
anl pi, äofdii
1401
0462
bb
46
mov ro, ï 70
1402
0464
14
bo distmi call del300
1403
0466
64
djnz ro, distmi
1404
0468
bf
04
mov r7, h intpat
1405
046a
84
33
jmp faterr
1406
enable time-out
1 1407
046c f0
enabtm mov a, @ ro
1 40q
046d
53
cl
anl a, ï0c1
1409
0 4 6 f
96
77
jnz entmdn
1410
reset base
- best guesf
14)1
0471
bb
56
mov ro, smrstat
14 12
0473
f0
mov a, @r0
14 13
0474
43
00
orl a , a no
1414
0476
a0
MOV
@ ro , a
14 15
0477
24
76
ENTMON
JMP
SOFTER
14 16
TRI p
TIME-OUT
14 17
0479
BF
00
TRIPTM
MOV
R7, fiTHPFAT
1 4 1 b
0 4 7ß
84
33
JMP
FAT!-RR
14 19
1 420
04 7d
BF
07
SETPTM
MOV
R 7, K SETFAT
1421
047f
04
3 3
JMP
FATERR
1422
CLEAR
TIMER
TIME-OUT
57 15-oct-79 12:47:58
Sperrzeitsteuerung
Prüfe auf Einschaltung von Berechtigung oder Datumsgeber, harter
Fehler
Sperrzeit in Ordnung
Auslöse-Sperrzeit
Räume Timer Sperrzeit
6500 ACCOUNTING MODULE CAÜ04fl/ll version 4.21.57 15-Ocl-79 12:4.7:50 TIMER AND FATAL ERROR FUNCTIONS TIMER.SRC
1423
0461
05
TIMSTP- SEL
RDI
1424
04B2
6 5'
STOP
TCNT
1425
0483
2 7
CLR
A
1426
0484
DO 55
MOV
RO, KTÏMWIIO
1427
04 86
A0
MOV
@RO , A
14 2 8
0487
CO
DEC
RO
Zeiger auf TIMCNT
1429
0488
20
XCII
A , @ RO
0 und lade übrige Zeitzähler
1430
0489
93
RETR
1431
1432
INCLUDE DM0 :CTXMES
1433
SUBTTL
Ubertrage Nachricht
1434
PAGE
6500 ACCOUNTING MODULE CA0048/11 TRANSMIT MESSAGE CTXMES
1435
1436
1437
1438
1439
1440 144 1
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
version 4 . 21 .57
15-Oct-79 12:47:58
048A 0 4GB
A5 B5
Übertrage Nachricht und prüfe auf Echo
Übertrage Nachricht.von N Bytes auf Drucker oder Steuerung. Aussprung bei erfolgreicher Übertragung oder Sperrzeit. Wenn Nachricht dreimal erfolglos übertragen, tritt verhängnisvoller Fehler auf. (ibertragungsdatenpaket enthält: (1) Zahl der zu übertragenden Bytes und (2) die zu übertragenden Daten
1 -M — M 1 —
A
R0 PI
= ADDRESS R 2 - R7 = UNIT
0
1
PRCTX
CLR C PL
PI Fl
0 4 OC A 8
048D 74 F2
CTXMES MOV R0, A
SET VALUE FOR LOW OUTPUT CTXME1 CALL LOWSET
Adresse des Sende-Datenpakets
Einheit
Steuerung
Drucker
Setze Fl-Marke für Drucker .
Rette Paketadresse
Einstelle untere Ausgabemaske
6500 ACCOUNTING MODULE) CA8040/11 version 4.21 TRANSMIT MESSAGE CTXMES.SRC
1450
1459
0 4 B F
76
9.0
JP1
CTXMS0
1460
CONTROL
1461
0491
26
C3
JNT0
CTXCNC
1462
0493
39
OUTL
PI , A
1463
0494
36
94
CTXCWT
JT0
CTXCWT
1464
04 96
04
A3
JMP
CTXMS1
1465
PRINTER
1466
0490
46
CB
CTXMS0
JNT1
CTXCNP
1467
049A
39
OUTL
PI , A
1460
1469
049B
BA
04
MOV
R2, ü 4
1470
049D
46
CO
CTXMSP
JNT1
CTXCNP
1471
049F
EA
9D
DJNZ
R2 , CTXMSP
1472
0 4 A 1
56
Al
CTXPWT
JT1
CTXPWT
1473
1474
04A3
AE
CTXMS1
MOV
R6 , A
1 475
04 A4
54
F6
CALL
TMRTST
J 476
04A6
F0
MOV
A , ORO
1477
04A7
1 0
INC
R0
1470
04A0
07
DEC
A
1479
04A9
AA
MOV
»2, A
1 400
04 AA
C 6
B5
JZ
CTXMS7
57 15-OCL-79 12:47:50
Versuche Übertragungsleitung zu erlangen Drucker
Empfange
Warte auf Steuer-CTS Übernehme Steuerung
Empfange
Warte Konfliktsperiode ab, 50 - 100 usec.
Warte 75 usec. lang
Drucker in Konflikt siegreich
Warte auf Drucker-CTS
Übernehme jetzt Steuerung, warte >120 psec.' vor Startflanke Speichere untere Maske
Bytes = > Akku Zeiger auf Datum Einstelle Byte-Zähler auf N-1 Rette eingestellten Byte-Zähler Nachricht nur ein (1) Byte
6500 ACCOUNTING MODULE CAB040/11 version 4. TRANSMIT MESSAGE CTXMES.SRC
1 4 B 1
LOOP FOR N-
1 BYTES
1 4 B 2
04 AC
97
CTXMLP CLR
C
1 4fl3
04 AD
A 7
CPL
C
1 4B4
04 AE
1 4
29
CALL
CTXBYT
1 4 B 5
0 4 DO
96
DO
JN2
CTXMER
I486
04D2
1 o
INC
RO
1 4B7
04D3
EA
AC
DJNZ
R2 , CTXMLI
1488
OUTPUT LAST
BYTE
14 0 9
04D5
97
CTXMS 7 CLR
C
1 490
04D6
1 4
29
. CALL
CTXBYT
1491
04D8
96
DO
JN2
CTXMER
14 92
1493
0 4 DA
FE
MOV
A, R6
1494
0 4 3 D
39
OUTL
PI , A
1495
04DC
1 4
B0
CALL
DEL300
1496
04BE
89
22
ORL
PI , 122
1497
04C0
1 4
D9
CALL
DEL300
14 9 0
04C2
03
RET
1499
RECEIVE FIRST
1 500
04C3
D5
CTXCNC SEL
RDI
1501
04C4
D4
2C
CALL
CNCRX
1 502
04C6
84
CD
JMP
CTXCN2
1 503
PRINTER
57 15-Oct-7 9 12: 47:50
Byteende verhängnisvoller Kommunikationsfehler
Ausgabe letztes Byte C = 0 Nachrichtende
Verhängsnisvoller Kommunikationsfehler Nachricht in Ordnung, ausgebe Anerkeruiungsimpuls (ACK) Maske von Byteroutine Steuerimpuls
Endimpuls
Stelle richtige Ruhezeit sicher Kein Fehler Empfange zuerst
Empfange Nachricht Drucker
650Û ACCOUNTING MODULE CAQ04B/11 TRANSMIT MESSAGE CTXMES.SRC
CTXCNP SEL
B CALL
6 CALL
CTXCN2 SEL
J JMP
FATAL ERROR
l CTXMER JMP
version 4.21.57
15-Oct-79
12:47:50
1 50 4
04C8
D5
1505
04C9
D4
1506
04CB
74
1507
04CD
C5
1508
04CE
8 4
1 509
1510
0 4 DO
C4
1511
1512
1513
1514
Rßl PRCRX DOSTAT RßO
CTXME1 PA TEC II
Verarbeite jetzt Druckernachricht
Schwerwiegender Fehler
INCLUDE DMOJCTLECC
SUBTTL
PAGE
Berechne Kontrollsummen-CRC
6500 ACCOUNTING MODULE COMPUTE CONTROL SUM CRC
1515
1516
1517
1518
1519
1520
1521
CA804B/11 CTLECC.SRC
version 4.21.57
15-OCU-79
12:47:58
Os ON
t
(Si
1531 1 5 32
1533
1534
Berechne Kontrollsummen-CRC
1522
04D2
B8
6E
CTLECC MOV
R0, HWORKBP
1523
04D4
B9
2A
MOV
R1 z 8 ASCREG
1524
04D6
BA
05
MOV
R2, ÏASCRSZ
1525
04D8
14
65
CALL
BLKMOV
1526
0 4 DA
54
BF
CALL
CTLSUM
1527
0 4DC
BA
05
MOV
R2 , IASCRSZ
1528
0 4 DE
P 4
CF
CALL
CRC
1529
04E0
DB
3C
MOV
R0, KCONECC
1530
04E2
83
RET
INCLUDE DM0 ;POSUPD
PAGE
Berechne Kontrollsummen-CRC
Derechne Kontrollsumme
Bringe Maschinen/Steuermarken auf neuen Stand
>
6500 ACCOUNTING MODULE CAG048/11 version 4.21.57 UPDATE METER/CONTROL PLAGS POSIJPD. SRC
15-Oct-79
12:47:50
1535
1536
1537
1538
1539
1540 1 54 1
1542
1543
1544
1545
1546
1547
1548
1549
1550 1 551
1552
1553 | 554
1555
1556
04E3 04E5 04E7 04E9 0 4 Eß 0 4 EC 04ßD
F 4 EA D8 71 09 30 BA 02 Fl 30 18
Bringe Maschinen-Steuer-Marken auf neuen Stand
Bringe unzureichende-Gebührenmittel und unteren Portogebührenwert in Maschinensta tus auf neuen Stand
-OM
BIT 1 BIT 0
Ergebnis nach neuem Stand Unzureichende Gebührenmittel "1", Unzureichende Gebührenmittel "1", Entsperrungswert
--M. —M
R0, PO
RI , R2
Allgemeine IJnterroutine zur Löschung und zum Einladen von Portogebühr in-Arbeitspuffer
POSWRK CALL CLRWRK Nullsetze Arbeitspuffer
MOV R0, SWORKBF ♦ 3
MOV RI, II POSVAL
MOV R2, 8 POSTS2 - 1
MOV A, @R1
XCIID A, @R0 Bewege nur unteren NIBBLE des oberen Portogebührenbytes
INC RÛ
6500 ACCOUNTING MODULE CA0O40/11 ve r s i on 4". 21 . 57 UPDATE METER/CONTROL PLAGS POSUPD.SRC
15-Oct-79
12:47:58
> -J
1557
04EB
.19
INC
Rl
1550
04 EF
1 4
65
CALL
BLKMOV
1559
0 4 Fl
DA
03
MOV
R2, HPOSTSZ
1560
04F3
8 3
RET
1561
. Bringe.
Maschinenstatus auf neuen Stand und bestimme Entsperrungsstatus
1562
04F4
94
E3
POSUPD
CALL
POSWRK
1563
04F6
D9
28
MOV
Rl , BDSCREG
*
1564
04F8
1 A
INC
R2
Wiederkehr als Nach-Größe, Benötige
1565
04F9
1 4
6D
CALL
DECS UD
1566
0 4 PB
27
CLR
A
1567
0 4 FC
B6
FF
J PO
POSBAT
wenn gleich, in Ordnung
1568
0 4 FE
F7
RLC
A
C = INSUFF
1 569
0 4 FF
AB
POSBAT
MOV
R3 , A
1570
0500
DO
37
MOV
RO, jj BATCNT
1571
0502
DA
03
MOV
R 2, BBATCSZ
1 572
0504
FO
POS DA 1
MOV
A, @R0
1573
0505
96
OE
JH2
POSLOW
1574
0507
1 0
1 NC
RO
1575
0 5 0 8
EA
04
DJ N 2
R2, POSBAI
1 576
ALL ZERO
1577
050A
23
1 0
MOV
A , 8 10
1570
050C
4 D
ORL
A, R 3
1579
050D
AH
MOV
R 3 , A
as a\
M
W
(Jl
6500 ACCOUNTING MODULE CA0048/11 version 4.21. UPDATE METER/CONTROL PLAGS POSUPD.SRC
RI, ÏLOWPOS LIMTST A, (f 4 — 1 RO, A
RI, ÏDSCREG+I R2, SDSCRSZ DECSUB A, R3 A A
RO, SMRSTAT A, @R0 A, N OCDII A, @R0 (ÜR0 , A
POSWRK
RI, HUNLOCK+l DECSUD A, R3 A, HOP A
1500
050E
B9
4C
POSLOW MOV
1581
0510
14
99
CALL
1502
0512
03
03
ADD
1503
0514
AB
MOV
1584
051 5
B9
20
MOV
1585
0517
BA
04
MOV
1586
0519
14
6D
CALL
1587
05 1B
FB
MOV
1580
051C
F7
RLC
1589
051 D
47
SWAP
1 590
0 5 1 E
B 8
56
MOV
1591
0520
20
XCII
1592
0521
53
CD
ANL
1593
0523
40
ORL
1594
0524
A0
MOV
1 595
1596
0525
94
E 3
CALL
1597
0527
69
4 B
MOV
1598
0529
1 4
6D
CALL
1 599
052B
FB
MOV
1 600
052C
53
0F
ANL
1601
052E
F 7
RLC
1 602
052F
03
RET
-Oct-7 9 12:47:50
C = 0 keine Warnung, C = 1 Warnung
Bestimme Entsperr-Status •
oe
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 UPDATE METER/CONTROL FLAGS POSUPD.SRC
1603
1 6 04 INCLUDE DM0 :FMT
1605 Ùmwa nd 111 rvj s r ou t: i ne uni variables Format auf Maschineneinheiten zu übertragen
1 606 PACIÏ
Os 0\ M
OJ (Jl
6500 ACCOUNTING MODULE CAB04B/11 version 4.21.57 15-Oct-79 12:47:58 CONVERSION ROUTINE TO TAKE VARIABLE FORMAT TO METER UNITS FMTIN.SRC
1 607
1608
1609
V
Verv/andle in Maschineneinheiten
1610
1611
1612
16)3
Ergreift ein Datenpaket und führt Anpassung der angenommenen Dezimalstelle zur Überein
1614
stimmung mit Maschineneinheiten aus.
Das Paket besteht aus einem Formatbyte (Hoher
1615
NIBBLE = Anz. der
Ziffern! niedriger NIBBLE = Anz. der Dezimalen) und N Datenbytes.
1616
1617
10M
A
Bei Anruf, Konversion Spez. Endformat
1618
=
bei Aussprung, Startadresse der umgewandelten Daten
1619
1--
RI
Eingabepaketadresse
1620
--M
R0, R2
1621
1 622
0530
24
76 FMTBRR JMP
.SOFTER
1623
) 6 2 4
0532
AD
FMTCII MOV
R5, A
Rette SPEC
1625
0533
53
0F ANL
A, HOF
Extrahiere tatsächliche Maschinen-Dezimalstellen
) 626
0535
2D
XCII
A, R5
Rette
1627
0536
DD
XRL
A, R5
Maske auf Anz. Ziffern
1628
0537
47
SWAP
A
16 29
0538
AC
MOV
R4 , A
Rette
6500 ACCOUNTING MODULE CA804Ü/11 version 4.21.57 15-Oct-79 12:47:58 CONVERSION ROUTINE TO TAKE VARIABLE FORMAT TO METER UNITS FMTIN.SRC
1630
0539
27
CLR
A
1631
05 3 A
3 1
XCIID
A, ORI
Lade unteren NIBBLE, keine Anz.-Dezimalstellen
1632
0 5 3 B
97
CLR
C
Berechne zu addierende angehängte Nullen
1633
053C .
A7
CPL
C
1634
053D '
17
INC
A
Prüfe ab Fehleinstellung in Gebrauch
1635
053E
C6
4 1
J 2
FMTCII1
Zweierkomplement von 0 ist 0
1636
0540
07
DEC
A
Wiederherstelle A
1637
0541
37
FMTCH1 CPL
A
1638
0542
7 D
ADDC
A, R5
1639
054 3
E6
30
JNC
FMTERR
Übertrag sollte gesetzt sein
1 640
0545
AD
MOV
R5 # A
164 1
054 6
Fl
MOV
A, @R1
164 2
0547
47
SWAP
A
1643
0548
C6
30
JZ
FMTERR
Nullziffern nicht erlaubt
1644
0 5 4 A
AE
MOV
R6, A
1645
054B
6D
ADD
A, R5
Berechne Anzahl zu addierende vorangestellter
1646
05 4C
Nullen
A 7
CPL
C
1647
0 5 4 D
37
CPL
A
1648
05 4 E
7C
ADDC
A, R4
1649
0 5 4 F
E 6
30
JNC
FMTERR
1650
0551
AF
MOV
R7 , A '
1 651
0552
1 9
INC
RI
Anpasse Zeiger auf Daten
Ov ©v
K» &
6500 ACCOUNTING MODULE CAÛ04G/11 version 4.21.57 15-Oct-79 .12:47:50 CONVERSION ROUTINE TO TAKE VARIABLE FORMAT TO METER UNITS FMTIN.SRC
165 2 Zur Berechnung der Nummer des vorderen Null-Bytes bewege die Gleichung wie folgt:
1 653 BASIC E)QU (Lead Digits + 1 (Round) -i 1 if shift needed - 1 if ODO Num of Dig in) all Div by2
1654
V
FIRST MOD
(LEAD DIG +1
if eve'n DIG ub + 1 shift) ali DIV by 2
1655
FINAL (LEAD DIG + 1 IF
(DIG in + 1 ) ODO + 1 if shift
1656
0553
FD
MOV
A, R5
Lade Zähler für nachgestellte Nullen
1657
0554
67
RRC
A
Speichere ungerade/gerade in Übertragungsbit
1658
0555
F 4
EA
CALL
CLRWRK
Nullsetze Arbeitspuffer
1659
0557
7F
ADDC
A, R7
Vordere Stellen + verschieben oder nicht verschieben
1660
0558
2 E
XCII
A, R6
1661
0559
17
INC
A
+ 1 für Rundung
1662
055A
67
RRC
A
Oividiere durch 2
1663
055B
AA
MOV
R2 , A
Rette Bytezähler in
1664
055C
27
CLR
A
1665
055D
7 E
ADDC
A, R6
1666
055E
67
RRC
A
1667
055F
03
6E
ADD
A, DWORKBF
Bewege Zeiger auf Ende der vorangestellten Nullen
1668
0561
A 8
MOV
RO, A
1 669
Bewege von REC BIJFF um zu arbeiten und mache Stellen 0-9 fällig
1 670
0562
Fl
FMTCII2 MOV
A, SRI
1671
0563
A0
MOV
@ R0, A
1672
VALI DATE
1673
0564
03
60
ADD
A, #60
1674
0566
F6
30
JC
FMTERR
« «
6500 ACCOUNTING MODULE CAB048/11 version 4.21.57 15-Oct-79 12:47:58 CONVERSION ROUTINE TO TAKE VARIABLE FORMAT TO METER UNITS FMTIN.SRC
1675
0568
47
SWAP
A
1676
0569
03
60
ADD
A, 160
1677
056B
F 6
30
JC
FMTERR
1678
. 0 5 6 D
1 Û
INC
R0
1679
*05 6E
J 9
INC
RI
1 680
05 6 F
EA
62
DJNZ
R2, FMTCII2
1681
0571
FC
MOV
A, R4
Lade Byte-Zählung in R2
1682
0572
1 7
INC
A
Round
1683
0573
67
RRC
A
Teile durch 2
1684
0574
AA
MOV
R2, A •
1685
0575
20
XCII
A, R5
Lade hintere Noll-Zählung
1686
0576
67
RRC
A
Bewege ungeradzahlig/geradzahlig in
1687
0577
23
6 E
MOV
A, IWORKBF
Zeige auf Beginn der Daten
1 688
0579
E 6
70
JNC
FMTCII 3
Wenn geradzahlig keine Verschiebung
1609
057B
134
02
CALL
FMTNB2
1690
057D
2 D
FMTCII3
XCII
A, R5
1691
057E
AA
MOV
R2, A
1692
057F
FO
MOV
A, R5
1693
0500
AO
MOV
RI , A
1694
0501
03
RET
1695
1 696
SUBTTI.
Bewege
Datenfolge N NIBBLES nach links
1697
PAGE
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15-Oct-79 12:47:50 MOVE STB ING LEFT H NIBBLES FMTIN.SRC
1690
1699
1700
Bewege Datenfolge N
NÏBBLES nach links
1701
1 702
1703
1704
IOM
A
Pufferadresse, Eingabe und Ausgabe
1705
1--
RO
Zeiger von
1706
1--
Rl
Zielzeiger
1707
1 —
R2
Anzahl zu verschiebender Bytes
1708
--M
R7
-
1709
1710
ODD COUNT
SET UP
1711
0502
A9
FMTNB2 MOV
RI , A
1712
0503
AO
MOV
RO, A
1713
0584
AF
MOV
R7, A
Rette Pufferadressenzeiger
1714
0505
1 0
INC '
RO
1715
0586
27
CLR
A
1716
0507
31
XCIID
A, @ R1
Vertausche erstes Byte
1717
0500
47
S WAP
A «
Bewege NIBB um 1 NIBB nach links
1710
0509
AI
MOV
@R1 , A
Speichere
1719
MOVE LOOP
Bewegungsschleife
1 720
05 8 A
FO
FMTNB1 MOV
A, @R0
Lade 1 Byte
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 MOVE STRING LEFT N NIBBLES FMTIN.SRC
1721
058B
47
SWAP
A
Bewege unteren NIBBLE nach links
1722
058C
31
XCIID
A, @R1
Bewege oberen NIBB zu unterem NIBB der nächsten
1723
058D
A0
MOV
@R0 , A
Rette Zwischenergebnis
1724
OSBE
18
1 HC
RO
1725
05 8 F
1 9>
INC
RI
1726
0590
EA" BA
DJN2
R2, FMTNBl
Fahre fort, bis alle NIBBLES bewegt
1727
0592
PP
MOV
A, R7
R1 hat Pufferadresse
1728
0593
83
RET
1729
17 30
INCLUDE DM0 :CRXBYT
1731
SUBTTI.
»
Empfange 1 Byte
1732
PAGE
6500 ACCOUNTING MODULE CAß04fl/ll version 4.21.57 15-Oct-79 12:47:58 RECEIVE ONE BYTE CRXBYT.SRC
1733
1734
1735
Empfange Byte und führe
Echo aus
1736
1737
1730
1739
Empfange 10 Bits
(1 Start- + fl Daten-
+ 1 Stopp-) und führe Echo aus.
1740
Jedes Bit wird 6
-8 Zyklen ab Vorderflanke abgetastet und
1741
innerhalb 20 jisec. nach Abtastung zum Sender rückübertragen.
1742
1743
1 __
RO
Adresse von DAtenbyte
1744
1--
R7
Maske für unteren Ausgang
1745
--M
R5, R
1 746
-0M
C
Wert von Stopp-Bit
1747
1748
0594
BE
0A CRXBYT
MOV
R6 , ï 1 0
Setze Schleifenzählerwert für 10
1749
0596
76
9C
JP1
CRXPEC
Suche nach Drucker-Startflanke
1750
0598
26
9 0 CRXCWT
JNTÛ
CRXCWT
Warte auf Steuer-Startflanke
1751
059A
A4
AB
JMP
CRXBYL
Fahre fort Steuererfassung
1 752
1753
059C
4 6
9C CRXPED
JNT1
CRXPED
Warte auf Drucker-Startflanke
1754
059E
A4
AO
JMP
CRXBYI.
Zei tausgleich
1755
Haupt-Abtastschleife
1756
05A0
BD
04 CRXBLO
MOV
R5, 114
Schaffe richtige Verzögerung um
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15-Oct-79 12:47:58 RECEIVE ONE BYTE CRXBYT.SRC
1757
05A2
ED
A 2
CRXBL1
DJNZ
R5, CRXBL1
Warte
1758
05 A4
FO
MOV
A, 0 RO
Lade erlangte Daten in Akku
1759
05A5
67
RRC
a
Schiebe Bit in Daten
1760
05A6
A0
MOV
eno, a
Speichere erlangte Daten
1761
05A7
00
NOP
1762
05A8
97
CRXBYL
CLR
C
1763
05 A9
A7
CPL
c
Einstelle auf logische "1"
1 764
05AA
76
B 4
J F 1
CRXBL3
Drucker
1 765
CONTROL
1766
0 5 AC
26
06
JNTO
CRXBL4
Steuereinheit-empfangene logisehe
1 767
RECEIVED LOGIC "0"
1768
05AE
A 7
CRXBL2
CPL
C
1769
05AF
09
22
ORL
PI, 122
Echo hoch
1770
0 5 B1
EE
a0
DJNZ
R6, CRXBLO
1 771
05 B 3
03
RET
1772
1 773
05B4
56
a'e
CRXBL3
JT1
CRXBL2
Druckerempfangene logische "0"
1774
RECEIVED LOGIC "0"
1775
05B6
FF
CRXBL4
mov
A, R7
1776
05B7
39
OUTL
PI , A
Echo niedrig
1777
Û5BÛ
ee ao
DJ N Z
R6, CRXBLO
1778
05BA
03
ret
1779
1700
INCLUDE DM0 :ENAB LE
1781
s witti
-i
Gib Maschine frei
1782
PAGE
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15~Oct-79 12:47:50 ENABLE METER ENADLE.SRC
1 703
1704
,
1705
Setze
Maschine betriebsbereit
1706
1707
1 700
1
1 709
Wenn Maschine außer Betriebsbereitschaft gesetzt, dann setze
Maschine betriebs-
1790
bereit und verifiziere die Antwort des Druckers, andernfalls tue nichts.
1791
,
1 792
Prüfe of Maschine betriebsbereit
1793
05BB
14
60
ENABLE CALL
STCilKl
Prüfe Zustand
1794
05BD
96
DB
JNZ
ENARET
kann nicht in Betrieb setzen
1795
Prüfe
Maschinen-Status wenn erlaube
1796
05BF
Fl
MOV
A , 0 R1
1797
05CÛ
53
64
AML
A, 1(064
DATER, INSUF, ENABLED
1790
05C2
96
DB
JNZ
ENARET
*
1799
NOW TRY TO
ENABLE
1 000
Q5C4
94
1 2
CALL
STR6 0M
1001
05C6
99
FB
ANL
PI, SOFßll
ENABLE ACC HALF
1802
Û5C8
23
4 1
EMABL1 MOV
A, S ENBLUD
SEND ENABLE COMMAND TO PR
1803
05CA
1 4
94
CALL
GETSTS
SEND CMD, REC STATUS AND PROCESS
1 004
Û5CC
37
CPL
A
PR STATUS RETURNED IN ACC
1005
05CD
52
CO
JB2
ENABLI
Wenn nicht freigegeben, schau weiter bis Sperrzeit
6500 ACCOUNTING MODULE CAB04B/11 version 4.21.57 15-Oct-79 12:47:58
ENABLE METER
EMABLE.
SRC
1006
05CF
BB
BC
• ENABRT
MOV
R3, 1140
1607
05D1
1 4
B0
ENABL2
CALL
DEL300
1 BOB
0503
56
07
JT1
ENABL3
1809
0 505
1 4
B0
CALL
RECSTS
1 B 1 0
0507
EB
Ol
EHABL3
DJNZ
R3, ENABL2
1011-
05D9
94
ßl
CALL
TIMSTP
1812
0 5 DB
03
EHARET
RET
IBI 3
1814
INCLUDE OMOiSETINT
1815
SUBTTI.
, Einstelle
IUI 6
PAGE
Einstelle Portogebühr für Druckvorga
6500 ACCOUNTING MODULE CAÛ04Q/11 SET POSTAGE FOR PRINTING SETINT.SRC 1017
1818
1819
1 820 ;
1821
1822
version 4.21.57 15-Oct-79
12:47:50
M tu
Stelle Portogebühr auf den Druckrädern ein
1821
— M
R0, Rl
1824
1825
0 5DC
2 4
76
SETERR
JMP
SOFTER
1026
1827
05DE
B 9
' 4 E
SET INT
MOV
RI, (SETLIM
1020
0 5E0
1 4
99
CALL
LIMTST
1029
05E2
00
03
ADD
A, 13
Zeiger auf letztes Byte
1830
0 5 E 4
A0
MOV
. RO, A
1831
05E5
B9
7 D
MOV
RI, K CMBOBF
Letztes Byte von Portogebührenwert
1832
05E7
1 4
6D
CALL
DECSUB
1833
05E9
E6
DC
JNC
SETERR
Wert ) Grenze = Fehler
1834
05EB
54
E7
CALL
LSTATE
1035
05ED
53
0F
AML
A, *0F
Maske außer Betriebsetzungsmarke heraus
1036
05EF
96
DC
JNZ
SETERR
zur Portogebilhreneinstellung muß Normalzustand
1037
0 5 F 1
54
03
CALL
DISABL
1038
05F3
B9
7B
MOV
RI, II CMBOBF
1039
0SF5
Fl
MOV
A, @ Rl
1840
05F6
43
00
ORL
>
cd ©
Unbekannte Einstellung
>
6500 ACCQUNTI HG MODULE CA0040/11 SET POSTAGE POR PRINTING SETINT.SRC
184 1
05F8
Al
MOV
1842
05F9
BA
03
MOV
1843
0 5 FB
BO
30
MOV
1844
0 5 FD
14
65
CALL
1845
: 0 5 FF
23
6 4
MOV
1046
1 0601
- 9-1
1 9
CALL
1847
0603
B0
03
MOV
1848
0605
BO
7 A
MOV
1849
0607
BO
Cl
MOV
1850
0609
CO
DEC
1051
060A
BO
04 '
MOV
1852
0 6 0C
1 4
QA
CALL
1853
0 6 0 E
FO
SET INO
MOV
1854
060F
D3
01
XRL
1855
0611
C 6
1 7
JZ
1 056
061 3
74
1 6
CALL
1 857
0615
C 4
24
JMP
1858
0617
94
Û 1
SETI NI
CALL
1859
0619
F 4
F5
CALL
1860
06 1 B
B 9
5C
MOV
1861
06 1 D
Al
MOV
1062
06 1 E
b n
30
MOV
1063
06 20
30
XCIID
version 4.21.57 15-Oct-79 12:47:58
0R1, A R2, 13 RO, HPOSVAL PLlKMOV
A, Il 100. i0ß Zahlungen * 20 MS pro Zählung
STR20M
@R0, )(3 Zeige an, gesetzte Gebühr ist Zeituhr abgestimmt
RO, ÏCMBODF-1 @ RO , ÏSPOS1ID RO
@R0, I4 GETDO A, @ RO A, HPOSVNB
SETINI Header ist ein Erwarteter
DOSTAT
SETIN2
TIMSTP
CLRAMT
Rl , IRECBFL
@ R 1 , A
RO, IPOSVAL
A , @ RO
6500 ACCOUNTING MODULE CA8040/11 SET POSTAGE POR PRIMTIN SETINT.SRC
1864 1 R65
1866
1867 1068
1869
1870
1871
0621
0622 06 2 4 0626
20
2 4 7C 04 2 0 C 4 OE
SETIN2
XCII /JMP CALL JMP
version 4.2
A, @R0 ENBLB PRCRX SETINO
INCLUDE DMO;CRXME
SUBTTL
PAGE
o\
ON M
4X W Ol
57 15-Oct-7 9 1 2:47:58
Lösche Marke "Unbekannte Einstellung" Lösche Au ßerbetriebse tzungsbit Empfange Druckernachricht
Empfange Nachricht
>
se
6500 ACCOUNTIMG MODULE CA804ß/ll RECEIVE MESSAGE CRXMES.SRC
>
ve en version 4.21.57
l5-Oct-79
12:47:58
1072
1873
1074
Dìpfange Hachricht
1075
1 8 7 6 :
18 7 7
1878
Empfange Hachricht von N Bytes von Drucker" oder Steuereinheit
1879
1880
— M
R0, RI, R4
- R7, F1 , C
1881
1882
0628
A5
PRCRX
CLR
FI
1883
0629
B5
CPL
FI
F1 = für Drucker
1884
06 2A
C 4
20
JMP
CRXMES
1005
1886
062C
A 5
C NCRX
CLR
FI
1807
0 6 2 D
BQ
5E
CRXMES
MOV
RO) ÏRECBUF
1888
0 6 2 F
B9
5C
MOV
RI, IRECBPL
1809
06 3 1
27
CLR
A
1890
06 3 2
21
XCII
A, @R1
Marke auf Null und stelle sicher, daß
1891
06 3 3
96
6 1
JNZ
FAT IÏCII
1892
0635
76
30
J FI
CRXMS1
Drucker
1893
CONTROL
1894
0637
OC
Ofl
MOV
R4 , DO
Bytegrenze für Steuernachricht o\ ©\
4^ W (M
6 500 ACCOUNTING MODULE CAß0-10/11 version 4 RECEIVE MESSAGE CRXMES.SRC
CRXMSO JTO CRXMSO
JMP CRXMS2 PRINTER
CRXMS1 JT1 CRXMS1
MOV R4, 14
CRXMS 2 CALL TMRTST RESPOND WI TU CTS
CALL LOWSET
MOV R7, A
OUTL PI, A RECEIVE LOOP
CRXMLP CALL CRXBYT
INC @ R1
I NC RO
JNC• CRXPIN
DJNZ R4,CRXMLP
JNP CRX FAT
1895
0639
36
39
1896
0 6 3 ß
C4
41
10 97
1898
063D
56
3D
1899
0 6 3 F
BC
04
1900
1 901
064 1
54
P6
1902
1903
0643
74
P 2
1 904
0645
AF
1905
0646
39
1 906
1907
064 7
B 4
04
1 908
0649
1 1
1909
064 A
1 8
1910
0 6 4 B
E6
51
1911
0 6 4 D
EC
47
1912
064F
C 4
60
1913
1914
0651
1 4
B0
1915
0653
27
1 91 e
0654
76
5D
1917
CRXPIN CALL CLR JP1 CONTROL
DEL300 A
CRXPnl
. 57 15-Oct-79 1 2:47 : 58 Erfasse.Steuer-RTS
Drucker-Dytegrenze
Stelle sicher, daß Zeitgeber hat > 4 Millisek. bis Unterbrechung gebe CTS
Empfange 1 Byte Erhöhe Byteziihler Erhöhe Adressenzeiger Nachricht empfangen Empfange weiteres Byte
Drucker
>
so o\
6500 ACCOUNT I NG MODULE CAB04B/11 version 4.21.57 15-Oct-79 1 2 : 4 7 : 5 B RECEIVE MESSAGE CRXMES.SRC
1 9 1 B
0656
36
60
JTO
CRXFAT
1919
06 5 B
BO
FF
CRXMRT;
MOV
fiRO, «OFF
Einsetze Marke für ungültige Daten nach letztem
1 920
065A
OB
5E
MOV
RO, «RECDUF
192)
065C
83
RET
1922
1923
Û65D
Al
CRXFN1
MOV
eni, A
Lösche Marke
1924
0 6 5 E
46
5 B
JNT1
CRXMRT
1925
.
1926
0660
Al
CRXFAT
MOV
@R 1 , A
Empfangsmarke auf Null
1927
066 1
BF
06
FATECI!
MOV
R7 , HECIIFAT
1 92B
066 3
04
33
JMP
FATERR
1929
1930
INCLUDE DMÛ:DSCCRC
1931
SUBTTI.
Berechne CRC für abfallendes Register
1932
PAGE
4
ON as
N> «t
W VI
6500 ACCOUNTING MODULE CA0048/11 version 4.21.57 15-Oct-79 12:47:50 COMPUTE CRC FOR DESCENDING REGISTER DSCCRC.SRC
1933
1934
1935 ; Berechne CRC für abfallendes Register
193 6
1937
1938
1939 0665 DO 25 DSCCRC
1940
1941
1942
1943
1944
1945
1946 sÜBT"" Zentraler Neueinstellkode
194 7 PAGE
0665
BO
25
0667
BA
04
0669
F 4
CF
066B
BO
24
066D
03
mov ro,
jf dscreg mov r2,
'bdscrsz call crc
mov ro,
ïdscecc ret
include dm0 :rstcom subttl
1
OO
6500 ACCOUNTING MODULE CAflO-lO/11 COMMON RESET CODE RSTCOM.SRC
version 4.21.57 15-Oct-79 12:47:50
>
se se
1948
1 949
1950
Zentraler Neueinstellkode
1951
1 9 5 2-
19 5 3
1954
Zentra1er Meuei ns tellkode
1955
1956
066E
F4
F5
RSTCOM CALL CLRAMT
1 957
0670
B 8
4 1
MOV R0, ÏRSTCNT
1958
0672
93
RETR
1959
1960
I MCI,DDE DM0 ; MVMSTP
1961
SUBTTL NVM
1 962
PAGE
und Basisadressen-Erstellungsroutine
ON ON
W Ul
6500 ACCOUNTING MODULE CAÛ048/11 version 4.21.57 15-Oct-79 12:47:50 &
NVM SETUP PAGE AND BASE ADDRESS SUBROUTINE NVMSTP.SRC
1 963 1964
1965
NVM (leistungsunabhüngiger Speicher) Selten- und Basisadressen-Erstellungsroutine
1 966
.
1 967
1968
1969
Anfangssetzung
[ von
P2 auf NMOS-Seite und
R5 ciuf t'HOS-Adresse für
1 970
laufenden Block des leistungsunabhiingigen Speichers (NVM)
1 971
1 972
-OM
R5 = NMOS
NMOS-Adresse
1973
— M
RI , R7
1974
-OM
P2 = BITS 4-5
sind NMOS-Seite
1 975
1--
NVMBLK =
gegenwärtiger Block des NVM
1976
1 977
0673
B9
5A NVMSTP
MOV
RI , SNVMBLK
Erhalte Speicherplatznummer
1 970
0675
PI
MOV
A , @Rl
1979
0676
47
NVMST1
S WAP
A
Bewege zum oberen NIBBLE
1980
0677
AD
MOV
R5,A
Zwischenspeicherung von Platznummer
1981
0670
53
CO
ANL
A, H0C0II
Verwende Bis 6-7 für Basisadresse
1 982
067A
2D
XCII
A , R5
Rette Basisadresse und aufsuche Platznurrmer
1903
067B
53
30
ANL
A, 1 3 Oll
Verwende Bit 4-5 für Seite (PAGE)
1 984
067D
AP
MOV
R7, A
Zeitweilige Zwischenspeicherung der Seite
1985
067E
53
1 0
ANL
A, ï 1011
SKEW Start-Adresse
6500 ACCOUNTING MODULE NVM SETUP PAGE AND BASE
1986
0680
77
1907
0681
77'
1988
0602
4 D
1909
0683
AD
1990
! 0604
0A
1991
• 0 6 0 5
*53 CP
1992
0687
4 F
1993
0688
3 A
1994
0689
83
1995
1996
1997
1998
CAB040/11 version 4.21.57 15-Oct-79 12:47:58 ADDRESS SUBROUTINE NVMSTP.SRC
RR A
R R A
ORL A, R5
MOV R5 , A
IN A,P2 Erhalte laufende Daten von Port 2 (Tor 2)
ANL A,H0CPII Abstreife Seite
ORL A,R7 Einsetze neue Seite'
OUTL P2,A Ausgabe nach PORT 2
RET
INCLUDE DM0 : NVMB'
SUBTTL NVM Byte-Lese/Lösche/Schreib-Unterroutine
PAGE
650Û ACCOUNTING MODULE CAÛ04Q/11 version 4.21.57 15-Oct-79 12:47:50 NVM BYTE READ/ERA5E/WRITE SUBROUTI NE NVMBYT . SRC
1999
2000
2001 • NVM Byte-Lese/Lösche/Schreib-Unterroutine
2002
2003
2004
200 5 Lese/fösche/Schreibe zwei. aufeinanderfolgende NIBBLES des WIOS, vergleiche die Daten
200 6 mit den erwarteten Daten und delme CRC-Berechnung auf diese NIBBLES aus
2007
2008 IOM A = Bei Aufruf, doppelter OPP-Kode
2009 Bei Aussprung, Vergleichsergebnisse
2010
1--
R0
Adresse von Daten oder Speicher
201 1
I OM
R 3
Nichtübereins timmungszähler
2012
I OM
R4
CRC-Wert
2013
I OM
R5
NMOS-Adresse
201 4
--M
Rl , R6, R7,
F0 Fl
2015
— M
WORKBF + 7
201 6
2017
SETUP
READ
OPP CODE
2010
06QA
23
44
NVMBYR
MOV
A, »4411
Doppeltes Lesen OPP-Kode
201 9
068 C
C 4
90
JMP
NVMBYT
2020
SETUP
WRITE
OPP CO
2021
0 6 e E
23
1 1
NVMBYW
MOV
A( II 1 III
Doppeltes Schreiben OPP-Kode
6500 ACCOUNTING MODULE CA0Û4Û/11 version 4.21.57 15-Oct-79 12 : 47;5B NVM BYTE READ/ERASE/WRITE SUBROUTINE NVMBYT .'SRC
2022
Rette Daten zur
Verwendung bei Verifikation
2023
0690
20
NVMBYT XCII
A,@R0
einlagere Daten in den Akku
2024
0691
B 9
75
MOV
R1 » Ä(WORKBP ♦ 7) und. rette für Vergleich
2025
:r 06 9 3
Al
MOV
@ R1 , A
2026
Lese/Lösch e/Sc hrei.be
1 Byte
2027
0694
30
XCIID
A, @ RO
Aufsetze OPP-Kode und Daten für obere NIBBLE-Operation
2020
06 9 5
47
SWAP
A
2029
0696
D4
A5
CALL
NVMN1B
Ausführe obere NIBBLE-Operation
2030
0 6 9 B
47
SWAP
A
Rette Eirjebnis der oberen NIBBLE-Operation, aufsetze für
2031
0699
20
XCII
A , @ RO
untere NIBBLE-Operation
2032
0 6 9 A
D4
A5
CALL
NVMNIB
Ausführe untere NIBBLE-Operation
2033
069C
30
XCIID
A, @R0
Rette Ergebnis der unteren NIBBLE-Operation
20 31
Wiedergebe
Verif ika tion
2035
069D
FO
MOV
A, @R0
Erhalte Ergebnisse
2036
0 6 9 E
B9
75
MOV
RI , II (WORKBP + 7; und vergleiche mit erwarteten Daten
2037
0 6 A 0
Dl
XRL
A , @ R1
2038
06 A 1
C6
A4
M
NVM610
sind sie gleich?
'10 J !)
0 h A )
1 II
1 NC
IH
NuJn, schalte 'Zilhler weiter
2040
0 6 A 4
03
NVM610 RET
NVM NIBBLE-Lese/Lösche/Schreib-Unterroutine
204 1
204 2
INCLUDE DM0 :NVMN1ß
204 3
SUßTTL
NVM NIBBLE-Lese/Lösche/Schreib-Unterroutine
2044
PAGE
6500 ACCOUNTING MODULE CAB04Q/11 version 4.21.57 15-Oct-79 12 : 4 7 ï 58 NVM NIBBLE READ/ERASE/WRITE SUBROUTINE NVMNIB.SRC
2045
2046
204 7 NVM NIBBLE-Lese/Lösche/Schreibe-Unterroutine
204 B
2049
2050
2051 Lese/Lösche/3chreibe 1 NIBBLE des NMOS und dehne
2052 CRC-Berechnung auf diesen NIBBLE aus
2053
2054 IOM A = Bei Anruf, Hoher NIBBLE = OPP Kode
2055 10 = Schreibe
2056 30 = Lösche
2057 4ß = Lese
205 0 C0 = DE-SELECTED (INTERNAL ONLY)
2059 Niedriger NIBBLE = zu schreibende Daten
2060 = Bei Aussprung, Hoher NIBBLE = Undefiniert
2061 Niedriger NIBBLE = Datenlesen 20 6 2 IOM R4 CRC-Wert
2063 IOM R5 = bei Anruf, Adresse des NMOS-NIBBLE
2064 bei Aussprung, Adresse + 1
2065 --1.1 Rl, Rß, R7, F0, F1
2066
2067 Ansgangsinfo für Hatensparren und gesetzte Marken für Lesen und schreiben
M O
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 15-Oct-79 12:47:50 ^
NVM NIBBLE READ/ERASE/WRITE SUBROUTINE NVMNIB.SRC
2068
06A5
B9
01
NVMNIB
MOV
Rl , 1(1
Setze 8755 Adresse für Datenreg.-PB
2069
06 A 7
20
XCII
A, R5
Auslagere Akku und R5 auf Ausgabeadresse
2070
06A8
91
MOVX
@R1 , A
Setze MNOS-Adresse in 8755 PIA PB
2071
0.6 A 9
2 D
XCII
A, R5
Bringe Daten und OPP-Kode in Akku zurück
2072
06AA
C9
DEC
RI
Setze 8755 Adresse auf PA
2073
0 6 AB
91
MOVX
6RI , A
Bewege OPP-Kode und DAten auf 8755 PA
2074
06AC
A5
t
CLR
Fl
.
2075
06AD
F7
RLC
A
Prüfe auf Lesen und Schreiben der OPP-Kodes und setze
2076
06AE
P7
RLC
A
appropriate Flags geeignete Marken
2077
0 6 AP
F 7
RLC
A
2078
0 6 BO
85
CLR
PO
Bereite Fj? Bit zum Schreiben OPP-Kode
2079
0 6 B 1
E 6
B 4
JNC
NVM710
BElasse F0 = 0 wenn nicht löschen
2080
0 6 B 3
95
CPL
F0
Setze F0 wenn löschen
2001
06B4
67
NVM710
RRC
A
Rotiere Lese-Bit zurück zu Ubertrags-Bit
2082
Setze 8755 Datenrichtunçjs-Register (DDR)
2083
06B5
B 9
03
NVM715
MOV
01,13
Setze 0755 Adresse für DDR PB
2084
06B7
23
FF
MOV
A, ItOFPII
Lade Ausgabemaske in Akku
2005
06B9
91
MOVX
0 R1 , A
Setze 8755 PB auf Ausgabe
2086
Setze 075
5 PA DDR für Ausgabe auf hohen NIBBLE und ein oder aus auf niedrigem NIBBLE
2087
0 6 BA
E6
BE
JNC
N V M 7 2 0
Wenn nicht gelesen, Daten aus dieser Maske heraus
2088
0 6BC
23
FO
MOV
A, il 0 FO II
Setze Maske für Dateneingabe
2089
06BE
C 9
NVM7 2 0
DEC
RI
0755 Adressse für PA DDR
2090
0 6 BP
91
MOVX
eni, a
Setze 8755 PA DDR
6500 ACCOUNTING MODULE CAB040/11 version 4.21.57 15-Oct-79 12:47:58 NVM NIBBLE READ/ERASE.WRITE SUBROUTINE NVMN.SRC
2091
NMOG jetzt ak
:tiv und angewählt
2092
06C0
B9
00
NVM7 3 0
MOV
Rl , HO
0755-Adx-esse gesetzt für Lesen von NIBBLE
2093
06C2
01
MOVX
A , @ R1
Lese Steuerung und Daten in Akku
2094
Chip ist bereits desaktiviert, riicksetze Steuerleitungen auf deaktivierten Zustand
2095
06C3
43
CO
ORL
A, H0C0II
Uberschreibe OPP-Kode, stelle sicher, daß CHIP nicht angewählt
2096
06C5
91
MOVX
0R1 , A
, x. • • „ . . werden kan Desaktiviere MNOS-Speicher •
2097
06C6
76
CD
J Fl
NVM7 3 5
2090
06C8
AE
MOV
R6,A
2099
06C9
47
SWAP
A
2100
06CA
F 4
DB
CALL
CRCNIB
2101
06CC
FE
MOV
A, R6
2102
06CD
F6
E3
NVM7 3 5
•JC
NVM750
Wenn Lesen, fertig
2103
Aufsetze Verzögerungs wert für Schreiben oder Löschen
2104
06CF
BE
31
MOV .
R6,H 4 9
Setze Fehlverzögerung für 10 msec.
2105
06D1
B6
D5
J F0
NVM7 4 0
2106
06D3
BE
04
MOV
R6, «4
Ändere auf Schreiben 1 msec.
2107
06D5
BF
1 7
NVM7 4 0
MOV
R7,Ï23
2108
06D7
EF
D7
NVM7 4 5
DJNZ
R7,NVM745
2109
06D9
EE
D5
DJNZ
R6,NVM7 40
2110
Ausgebe
Schei niesen zur Beendigung von Lösch- oder Schreibbefehl
2111
06DB
23
40
MOV
A, #4011
Ausgebe Scheinlesen
2112
06DD
91
MOVX
@ R1 ,A
Ausgebe Lese-OPP-Kode
21 1 3
06DG
01
MOVX
A, @R 1
Scheinlesen
2114
Lese jetzt zum Verifizieren
6500 ACCOUNTING MODULE CAfl040/ll version 4.21.57 NVM NIBBLE READ/ERASE/WRITE SUBROUTINE NVMN.SRC
15-Oct-7 9
12:47:58
2115
0 6DF
A7
CPL
C Setze Übertragungsbit zur CHIP-Außerbetriebsetzung
211 6
06E0
B5
CPL
Fl
2117
06E1
C 4
B5
JMP
NVM715
2110
SETUP
FOR
NEXT NIBBLE Aufsetze für nächsten NIBBLE
2119
0 6 E 3 -
AE
NVM7 50
MOV
R6,A
2120
06E4 •
1D
INC
' R5
2121
06E5
1D
INC
R5
2122
06E6
FD
MOV
A , R5
2123
06E7
53
OF
ANL
A, ÏOFIl.
2124
06E9
C6
FO
JZ
NVM7 60
2125
0 6 Eß
CD
DEC
R5
2126
0 6 EC
0A
1 N
A , P2
2127
0 6 ED
D3
1 0
XRL
A, H1 011
2128
06EF
3 A
OUTL
P 2 , A
2129
0 6 FO
FE
NVM7 60
MOV
A , R6
21 30
06F1
03
RET
2131
2132
2133
0700
ORG
700
2134
INCLUDE DM0 ;RAMSTP
2135
SUBTTL RAM-Zeiger- und Zähler-Erstellungsroutine
2136
PAGE
6500 ACCOUNTING MODULE CA0048/11 version 4.21.57 15-Oct-79 12:47:50 RAM POINTER AND COUNTER SETUP SUDROUTINE RAMSTp.SRC
2137
2138
2139
RAM-Zeiger- und Zähler-Erstellungsunterroutine
2140
2141
2142
2143
Anfangs Setzung von R(2f auf den Beginn und von RZ
2144
auf die Länge des gegenwärtig aktiven Blocks
2145
2146
-OM
R0 = ADDRESSE des aktiven RAM-Blocks
2147
-OM
R2 = Länge des aktiven Blocks (Bytes)
2140
— M
Rl
2149
1--
ACTBLK =gegenwärtig aktiver Block
2150
2151
TADLE OF RAM
1 POINTERS/ Tabelle der RAM-Zeiger
2152
0700
20
NVMTBL DB
2011 Adresse des aktiven Blocks # j?
2153
0701
3 A
DB
3AH Adresse des aktiven Blocks H 1
2154
2155
Aufsetze Zei ger (R0) und Zähler
(R2)
2156
0702
D 9
59
RAMSTP MOV
R1,I!ACTBLK Aufsetze RAM-Pufferzeiger
2157
0704
Fl
MOV
A , @ R1
2150
0705
A3
MOV P
A,0A
2159
0706
MOV
RO. A
2160
0707
DA
1A
MOV
R2 . H1 All Aufsetze Byte-Zähler
e
6500 ACCOUNTING MODULE CAQ04Q/11 version 4.21.57 15-Oct-79 12:47:50 ^
RAM POINTER AND COUNTER SETUP SUBROUTINE- RAMSTP.SRC
2161 0709 03 RET
2162
2163 INCLUDE DM0:NVMCUG
2164 subttl NVM Zus tandsìinderungs- & Blockeröffnungsroutinen
2165 ; PAGE
©n
On M
■U.
W
Ul
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 NVM CHANGE STATE (. OPEN BLOCK SUBROUTINES NVMCHG.SRC
2166
2167
1 s
2168
V
NVM Zustandsänderungsroutine
2169
2170
NVM Blockeröffnungsroutine
2171
2172
2173
2174
Wenn erforderlich, dann schließe gegenwärtig aktiven Block und eröffne neuen
2175
2176
—M
ALIE REGISTER & MARKEN
2177
IOM
ACTBLK = Aktive Blocknummer
2170
IOM
NVMBLK = Blocknummer des NVM
2179
1--
state = gegenwürtiger Zustand
2180
— M
WORKBF+O, +6, +7
2181
2182
Berechne neue'aktive Blocknummern und vergleiche mit laufender
2183
070A
54
E 7 NVMCIIG CALL
LSTATE Erhalte Bit 0 — 2 des Zustands
2184
070C
53
9 7 ANL
A,H07H
2185
0 7 0 E
C6
1 2 JZ
NVM 10 Wenn Bit 0-2 Null sind, dann neue aktive Blocknunmer
2186
0710
23
01 MOV
a,01 sonst, neue aktive Blocknummer = 1
2187
071.2
B9
6E NVM110 MOV
RI , ffWORKBF zeitweilige Zwischenspeicherung der neuen aktiven Blocknr.
2)88
0714
AI
MOV
@ni, A
6500 ACCOUNTING MODULE CA0048/11 version 4.21.57 15-Oct-79 12:47:58 NVM CHANGE STATE & OPEN BLOCK SUDROUTINES NVMCHG.SRC
2189
0715
B9
59
MOV
Rl ,«ACTBLK
vergleiche mit gegenwärtiger aktiver Blocknumer
2190
0717
D1
XRL
A, @R1,
2191
0718
C6
5C
. JZ
NVM150
sind sie gleich?
2192
Schließe gegenwärtigen aktiven Block
2193
0 71 A :
1 5
DIS
1
*** Anfang kritischer Bereich ff 1 ***
2194
0 7 1 B
F 4
CALL
NVMWR
Ausschreibe gegenwärtig aktiven Block
2195
0 7 1 D
96
5D
JNZ
NVM190
Schreiben erfolgreich? .
2196
0 71 F
37
CPL
A
2197
0720
B9
5 A
MOV
RI,»NVMBLK
Angebe, daß kein Block offen
2190
0722
A 1
MOV
@ R1 , A
2199
07 2 3
05
EN
1
*** Ende kritischer Bereich ff 1 ***
2200
0724
B 9
6 E
MOV
RI ( HWORKBF
Aufsuche neue aktive Blocknummer
2201
0726
Fl
MOV
A , @ R 1
2202
Ändere aktive
Blocknr und lokalisiere neue aktive Blocknummer
2203
iï 7
\>9
5
NVMOPN MOV
Rl , «ACTDLK
Rette neue aktive Blocknummer
2204
0729
Al
MOV
@m,A •
2205
0 7 2 A
1 5
DIS
1
*** Anfang kritischer Bereich ff 2 ***
2206
0 7 2 D
F 4
B 4
CALL
NVMFND
Finde gegenwärtigen Platz des neuen'aktiven Blocks
2207
0 7 2 D
C 6
5 D
JZ
NVM190
Gefunden?
2200
072F
05
EN
I
*** Ende kritischer Bereich ff 2 ***
2209
0730
D 9
6 E
MOV
Rl,HWORKBF
Ja, zeitweilige Zwischenspeicherung des gegenwärtigen
2210
07 3 2
Al
MOV
<?R 1 , A
2211
Berechne neue Platznummer und lösche sie
6500 ACCOUNTING MODULE CA804B/11 version 4.21.57 15-Oct-79 12:47:58 NVM CHANGE STATE L OPEN BLOCK SUBROUTINES NVMCHG.SRC
2212
0733
B 9
59
MOV
Rl , ÄACTBLK
Erhalte neue aktive Blocknr. und zeitweilig zwischenspeichere sie
2213
0735
21
XCII
A, @Rl
2214
0736
9,6
40
JNZ
NVM13 0
Neue aktive Blocknummer = ÇS ?
2215
0738
21
XCII
A, @R1
Wiederherstelle neuen Platz für aktiven Block ff 0
2216
0739
17
INC
A
Berechne neue Stelle für aktiven Block f}0
2217
073A
96
43
JNZ
NVM14 0
2218
073C
1 7
INC
A
2219
073D
1 7
INC
A
2220
073E
E4
43
JMP
NVM14 0
2221
0740
21
NVM13 0
XCH
A,(3R1
Wiederherstelle aktive Blocknr. und aufsuche gegenwärtigen Pia
2222
074 1
D3
01
XRL
A, »Olli
Berechne neuen Platz für aktiven Block ff 1
2223
0743
19
NVM14 0
INC
Rl
Zeiger auf NVMBLK
2224
074 4
31
XCRD
A, 0R1
Rette neüen Platz
2225
0745
F 4
7 A
CALL
NVMER
Löscihe neuen Platz
2226
0747
96
5E
JNZ
NVM195
Löscihen erfolgreich?
2227
Freigebe gegenwärtigen
Pia tz
2228
074 9
1 5
DIS'
I
•*** Anfang kritischer Bereich ff 3 ***
2229
07 4 A
B 9
6 E
MOV
Rl,SWORKBF
Aufsuche gegenwärtigen Platz
2230
074C
Fl
MOV
A , @R1
2231
0 7 4 D
D4
76
CALL
NVMST1
Aufsetze auf Zugriff darauf
22 32
0 7 4 F
B8
6E
MOV
RO, HWORKBF
und freigebe in durch Einschreiben von 00 in seinen Header
223 3
0751
BO
00
MOV
@RO , «0011
2234
0753
D4
8E
CALL
NVMBYW
6500 ACCOUNTING MODULE CA8048/11 NVM CHANGE STATE £. OPEN SUBROUTINES
version 4.21.57 NVMCHG.SRC
15-Oct-79 12:47:58
2235
0755
96
5 D
JNZ NVM190
00H Header richtig geschrieben worden?
2236
0757
D9
5 A
MOV Rl,«NVMBLK
Ja, angebe daß Block jetzt offen
22 3 7
0759
21
XCII A, @R1
2230
075A
.31
SCIID A , @ R1
2239
075B
05
EN 1
*** Ende des kritischen Bereichs ff 3 ***
2240
075C
83
NVM150
RET
2241
Verhängnisvolle Ausgänge,
handhabe NVM-Fehler
224 2
075D
05
NVM190
EN l
Gestatte Unterbrechungen
224 3
075E
94
4 A
NVM195
CALL NVMFAT
Setze verhängnisvolles Bit
224 4
0760
03
RET
Zustandsänderung nur von EXEC aufgerufen und
22 45
224 6
INCLUDE DM0 :NVMRD
224 7
SUBTTL
NVM Blocklese-Unterroutine
224 8
PAGE
springe
6500 ACCOUNTING MODULE CA0O40/11 version 4.21.57 15-Oct-79 12:47:58 w
NVM READ
BLOCK
SUBROUTINE NVMRD.SRC
2249
2250
2251
NVM Blocklese-Unterroutine
2252
2253
2254
. 2255
Auffinde und l.ese den gegenwärtig aktiven Block
2256
2257
-OM
A " = CRC-Verifikation
2250
— M
alle Register und Marken
2259
1--
ACTBLK = aktive Blocknummer
2260
— M
WORKBF+6, +7
2261
2262
' Finde Block
2263
0761
B9 59
NVMRD MOV
Rl, 8ACTBLK Erhalte aktive Blocknummer
2264
0763
Fl
MOV
A , @ R1
2265
0764
F 4 B 4
CALL
NVMFND Firde aktiven Block und aufsetze zum Zugriff auf seinen Platz
2266
0766
C6 70
JZ
NVM230 Gefunden?
2267
Anfangsset2e CRC
2260
0760
BC FF
MOV
R4 , SCRCINL Anfangswert für CRC
2269
READ DATA
Lese Daten
2270
076A
74 02
CALL
RAMSTP Anfangssetzung für RAM-Zeiger und Zähler
2271
076C
D4 0 A
NVM210 CALL
NVMBYR Lese Byte, rette und bringe CRC auf neuen Stand
6500 ACCOUNTING MODULE CA804Û/11 version 4.21.57 15-Oct-79 12:47:50
READ
BLOCK
SUBROUTINE NVMRD.SRC
2272
0 7 6 E
1 0
INC
R0
Zeiger auf nächsten Speicherplatz
2273
0 7 6 F
EA
6 C
DJNZ
R2,NVM210
fertig?
2274
Lese CRC und wiedergebe
Verifikation
2275
0771
FC
MOV
A, R 4
Erhalte CRC
2276
0772
B-B
74
MOV
R0, 11 IWORKBF
+6) ; und rette
2277
0774
AO
MOV
@R0 , A
2270
0775
D4
8A
CALL
NVMBYR
Lese CRC, und vergleiche mit errechneten
2279
0777
37
CPL
A
2200
0770
37
NVM220 CPL
A
220 1
0779
83
RET
2282
2203
INCLUDE DM0 :NVMER
2204
SUBTTL
NVM Blocklöschungs-Ünterroutine
2205
PAGE
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:50 NVM ERASE BLOCK SUBROUTINE NVMER.SRC
2286
2287
2200
:r
NVM-Block lüschungs-Un ter routine
2209
t
2290
2291
2292
Lösche'
den gegenwärtigen NVM-Block
2293
2 294
-OM
A = ' Fehlerzähler
2295
— M
Alle Register & Marken
2296
1--
NVMBLK = Blocknummer des NVM
2297
--M
WORKBF+ 6, +7
2298
2299
Aufsetze Löschparameter
2300
077A
D4
73
NVMER CALL
NVMSTP Aufsetze auf Speicherplatzzugriff
2301
077C
BA
IC
MOV
R2, Ä ( 1 AM + 211) Anzahl zu löschender Bytes
2 J0 2
077E
BB
00
MOV
R3, 10011 Anfangssetze Fehlerzähler
2 3 0 3
ERASE BLOCK
2304
0700
BB
74
MOV
R0,8(WORKBF + 6) Speicher für Löschergebnisse
2305
0782
ß 9
' I- F
NVM3 10 MOV
0 R 0,Ä O F F11 Erwartetes Löschergebnis
2 306
0784
23
33
MOV
A, H 3 311 Doppel-lösche OPP-Kode
2307
0706
1 5
DIS
j *** verhindere Unterbrechung während Löschen ***
2308
0 78 7
D4
90
CALL
NVMBYT Lösche Byte, verifiere, und Fehlerzähler auf neu'-»>
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 NVM ERASE BLOCK SUBROUTINE NVMER.SRC
2309 0709 05 EN I Lasse wieder Unterbrechung zu
2310 07QA EA 02 DJNZ R2,NVM310 Fertig?
2311 Rückkehr bzw. Riicksprung Fehler Zahlung
2312 0 7 8C FB MOV A,R3 . Erhalte Fehlerzahl
2313 0 78D 8 3 RET
2314 '
2315 INCLUDE DM0 :NVMWR
2316 SUBTTL NVM Blockschreib-Unterroutine
2317 PAGE
ti 5 0 0 ACCOUNTING MODULE CA004Q/11 vers ion 4 . 21 . 57 15-0ct-79 12 : 47:50 NVM WRITE BLOCK SUBROUTINE NVMWR.SRC
2310
2319
2320 NVM Blockschreib-Unterroutine
2321 2 3 2 2
2323
2324 Schreibe gegenwärtig aktiven Block auf den gegenwärtigen Block des NVM aus
2325
2326 -OM A = FehlerZählung
' 232? —M Alle Register & Marken
2320 1-- ACTBLK = -aktive Blocknummer
2329 1-- NVMBLK = • Hoher NIBBLE = Schreibschutzmarke
23 30 Niedriger NIBBLE = Blocknummer des
23 3 1 —M WORKBP * 6, +7
2 3 3 2
2333 Prüfe Schreibschutzmarke
23 34
0 7 0 E
B9
5 A
NVMWR MOV.
Rl,»NVMBLK
Erhalte Schreibschutzmarke
2335
0790
Fl
MOV
A , @R1
23 36
0791
53
F0
ANL
A,H 050H
23 37
0 7 9 3
96
B3
JNZ
NVM4 20
Ist sie gesetzt?
23 38
Aufsetze Schreibparameter
2339
0795
D4
73
CALL
NVMSTP
Aufsetze auf Platzzugriff
2340
0797
BB
00
MOV
R3 , »0011
Anfangssetzung Fehlerzähler
!►
6500 ACCOUNTING MODULE CAQ040/11 version 4.21.57 15-Oct-79 12:47:58 m v©
NVM WRITE BLOCK SUBROUTINE NVMWR.SRC
234 1
Berechne und Schreibe
Header
234 2
0799
B9
59
MOV
Rl,»ACTBLK
Erhalte aktive Blocknummer
234 3
079B
Fl
MOV
A, @R1
234 4
079C
4 3
FO
ORL
A, «0F0I1
Setze hohen NIBBLE auf F für Header
2 3 4 5
079E
B8
74
MOV
R0,H(WORKBP
+ 6) Rette Header
234 6
0 7 A0
A0
MOV
@R0 , A
234 7
07A1
D4
0 E
CALL
NVMBYW
Schreibe Header
23 4 8
Anfangssetze CRC
234 9
07A3
BC
FF
MOV
R4 , KCRCINL
Anfangswert für CRC
2350
WRITE DATA
Schreibe Daten
235 1
07A5
F 4
02
CALL
RAMSTP
Anfangssetze RAM-Zeiger und Zähler
2352
2353
07A7 07A9
D4 1 8
0 E
NVM 410 CALL INC
NVMBYW R0
Schreibe Byte, verifiziere, CRC auf neuen Stand und Fehlerzähle)
„ . ,, . , „ ^ auf neuen Stand Zeiger auf nächstes Byte
2354
0 7AA
EA
A 7
DJNZ
R 2,NVM410
fertig?
2355
WRITE CRC
Schreibe CRC
2356
0 7 AC
FC
MOV
A , R 4
Erhalte CRC
2 35 7
0 7 AD
B 8
74
MOV
R0,»(WORKBF
+ 6) ; und speichere
2 3 5 Ü
0 7AF'
A0
MOV
@R0 , A
2 359
07B0
D4
GE
CALL .
NVMBYW
Schreibe CRC, verifiziere und Fehlerzähler auf neuen Stand
2 3 60
Rückkehr b2w
. Rücksprung
Fehler Zählung
2 36 1
0 7B2
FB
MOV
A, R 3
Erhalte Fehlerzähler
2 36 2
0 7 ß 3
03
MVM 4 2 0 RET
2 36 3
■fc-Ut i
On On
«t (*> U)
6500 ACCOUNTING MODULE CABÛ4B/11 version 4.21.57 15-Oct-79 12:47:58 NVM WRITE BLOCK SUBROUTINE NVMWR.SRC
2364 INCLUDE DM0 :NVMFND
2365 SUBTTL NVM Auffindungs-Unterroutine für aktiven Block
2366 . ' PAGE
O
6500 ACCOUNTING MODULK CA8048/11 version 4.21.57 15-Oct-79 12:47:58
NVM FIND
ACTIVE
DLOCK SUBROUTINE MVMFND.SRC
2367
2360
2369
2370
2371
2372
2373
Durchsuche die MVM-
-Blöcke auf einen gegebenen Header und verlasse
2374
MvDS Seiten- und Mressenerstellung um auf ersten Caten-NIBBLE zuzugreifen
2375
2376
IOM
A = ON CA Bei Anruf, 'Header
2377
= ON RE Bei Aussprung, Blocknurmer des NVM
2 3 78
— M
Alle Register & Marken
2379
— M
WORKBF+6, +7
2380
2381
Aufsetze
Suchparameters
2382
0 7 h 4
AA
NVMFND MOV
R2,A Zeitweilige Speicherung der aktiven Blocknurmer
238 3
0 7 ß 5
4 3
©
o r
A, H0F0II Suche Header mit oberem NIBBLE F
2384
0707
2 A
XCil
A, 1(2 Rette Header und aufsuche aktive Blocknurmer
2 3 85
0 7 ß 8
E7
RL
A Berechne anfänglichen Suchpunkt
2 386
0 7 ß 9
D3
0 2 XRL
A , « 0 2 II
2387
0 7 Dß
AD
MOV
R3,A und rette
2308
Suche bis aktiver Block gefunden oder alle NVM-Blöcke geprüft
2389
0 7 DC
D 8
7 4 MOV
R0,S(WORKBP +6) Speicherung für Lese-Header
2 390
0 7 B E
FD
NVM510 MOV
A,R3 Erhalte Speicherplatznummer
Os as
4*. OA VI
6500 ACCOUNTING MODULE CA0040/11 version 4.21.57 15-Oct-79 12;47:50
NVM FIND
ACTIVE
BLOCK
SUBROUTINE NVMFND.SRC
2391
07BF
B 2
CD
JB5
NVM520
Alle Plätze durchsucht?
2392
07C1
D4
76
CALL
NVMST1
Nein, einstelle auf Zugriff zu Speicherplatz
2393
07C3 v
FA
MOV
A, R2
Erhalte gesuchten Header
2394
0 7C4 ■
AO
. MOV
@R0 , A
und rette ihn für den Vergleich
2395
07C5
D4
Q A
CALL
NVMBYR
Lese Header, vergleiche und bringe Speicheiplatznr. auf
2396
07C7
96
BE
JNZ
NVM510
Richtigen Header gefunden?
2397
Suche erfolgreich - Wiedergebe NVM Blocknummer
2390
07C9
FB
MOV
A, R3
Erhalte Speicherplatznummer
2399
07CA
43
F0
ORL
A, tf 0P0II
und anhänge Schreibschutzmarke
2 4 00
07CC
03
RET
2401
Suche erfolglos -• Wiedergebe' Fehleranzeiger
2402
07CD
27
NVM5 2 0 CLR
A
Anzeigefehler i 2403
0 7CE
03
RET
1
2404
2405
INCLUDE DM0:CRC
.
2406
SUBTTL
CRC-ERzeuger-Unterroutine
2407
PAGE
Stand
N)
6500 ACCOUNTING. MODULE CA8048/11 version 4.21.57 15-Oct-79 12 : 47:58 CRC GENERATOR SUBROUTINE CRC.SRC
2408
2409
24 10
CRC-ERzeuger-Unterroutine
24 11
2412
\ •
24 1 3
24 1 4
Erzeuge
CRC für jede gegebene Datenfolge
2415
24 16
-OM
A = CRC"
■Wert
24 1 7
1-M
RO = Adresse der Datenfolge
24 } 8
1-M
R2 = Länge der Datenfolge
2419
— M
R4 , R7
24 20
24 2 1
07CF
nc
FF
CRC
MOV
R4,HCRCINL
Anfangssetzung Rest
24 2 2
07D1
F0
C HC 1 1 0
MOV
A , 0 RO
Erhalte Datenbyte
24 2 3
07D2
F 4
DB
CALL
CRCNIB
und dehne CRC auf laufendes
24 2 4
07D4
F 4
CALL
CRCN I B
24 2 5
07D6
1 0
INC
R0
Zeiger auf nächstes Byte
24 26
07D7
EA
Dl
DJNZ
R 2,CRC 110
Fer tig?
24 2 7
07D9
FC
MOV
A , R 4
Wiedergebe CRC in Akku
24 28
0 7 DA
83
RET
24 29
24 30
INCLUDE DM0 :CRCNIß
24 3 1
SUDTTL
,CRC ( Einzel-NIBBLE) - Erzeuger
2 4 3 2
PAGE
6500 ACCOUNTI CRC (SINGLE NI
NG MODULE CA8048/11 version 4.21.57 BBLE) GENERATOR SUBROUTINE CRCNIB.SRC
15-Oct-79
12:47:58
24 3 3
24 34
2 4 35
CRC - (Einzel-NIBBLE)-Erzeuger-Unterroutine
24 36
24 37
24 38
24 39
ERstrecke gegenwärtigen CRC-Wert auf Einschluß eines weiteren Daten-NIBBLES
2 4 4 0
24 4 1
I-M
A = Oberer NIBBLE = Daten
24 4 2
unterer NIBBLE = übergehen
24 4 3
IOM
R4 = CRC-Wert
24 4 4
— M
R7
24 45
-
24 46
07DB
BF 04
CRCNIB
MOV
R 7 , II 4 Anfangssetze Bitzähler
244 7
07DD
97
CRC 210
CLR
C Linksverschiebung der Obertragungs-Rest-Daten
24 48
07DE
F7
RLC
A CY - R5 - A - 0
24 49
07DF
2C
XCII
. A , R 4
2450
07E0
F7
RLC
A
2451
07E1
E6 E5
JNC
CRC220 herausgeschobener Bit des Restes = 1?
2452
07E3
D3 9B
XRL'
A, HCRCPLY Ja, XOR (ausschl. ODER) von Rest mit Generatorpolynom
24 53
07E5
2C
CRC200
XCII
A,R4 Rette Rest und erhalte Daten
2454
07E6
EF DD
DJNZ
U7,CRC210 Erledigt?
2455
07E8
93
RETR
>
6500 ACCOUNTING MODULE CAÛ048/11 version 4.21.57 15-Oct-79 12:47:58 CRC (SINGLE NIÜBLE 1 GENERATOR SUBROUTINE CRCNIB.SRC
2456
2457 INCLUDE DM0 :CLRBLK
2458 SUBTTL Lösche RAM-Block
2459 PAGE
Ov Ov
W Ol
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58' CLEAK BLOCK OF RAM CLRBLK.SRC
2460
24 61
2462
Blocklöschung des internen RAM (freiadressierbarer
Speicher)
2463
V
24 64
2465
2466
Lösche (s etze auf Null) Block des internen RAM
2467
2468
I -M
R0
= Startadresse
24 69
I-M
R2
Anzahl zu löschender Bytes
24 70
2471
07E9
D5
CLRWK
SEL
RB1
24 72
07EA
B8
6E
CLRWRK
MOV
R0 ,
KWORKBF
2473
0 7 EC
BA
08
MOV
R2,
SWRKBSZ
24 74
2475
07EE
27
CLRBLK
CLR
A
'
2476
2477
07EF
A0
CLRBK1
MOV
@ R0
, A
2478
07F0
18
INC
RO
2479
07 Fl
EA
EP
DJN2
R2,
CLRBK1
24 80
07F3
93
RETR
2481
2482
INCL
UDE DM0 :CLRAMT
2483 "
SUBTTL
Lösche Betrags- und COMBO-
Puffer
24 84
PAGE
3
Lösche Betrags- und COMBO (Kombinations)-Puffer
Hilfsroutine zur Löschung von Betrags- und COMBO-Puffer
6500 ACCOUNTING MODULE CA8040/11 version 4.21.57 CLEAR AMOUNT AND COMBO BUFFERS CLRAMT.SRC
2485
2486
2487 24 88 2409 24 90 24 91 2492 24 9 3
2494
2495 24 96
2497
2498
2499
2500 2 501
15-Oct-7 9
12:47:58
07F4
D5
CLRAM
SEL
RB1
07F5
B0
76
CLRAMT
MOV
R0, HAMTBF
0 7 F 7
BA
0A
MOV
R2, H AMTS Z
07F9
F 4
EE
CALL
CLRBLK
0 7 FB
93
RETR
INCLUDE DM0:RESET
SUDTTL
PAGE
Neueinstellung a
ON
N>
U* Vi
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct.-79 12:47 RESET RESET.SRC
2502
.
2503
2504
•7
Neueins telliing
2505
2506
2507
2508
Manuelle Neueinstellung
2509
2510
Argumente keine
251 1
2512
verwendet RO, Rl, R2, R4, R5, R6, R7
2513
2514
JUMP TABLE ENTRY Sprungtabellen-Eingang
2515
2516
0880
ORC 8 80
2517
0880
F9
PG800 MOV A,Rl
2518
0881
A3
MOVP ' A, @A
2519
0882
24
80
JMP PG900
2520
2521
Spezialeingang für nur Fehlerlöschzähler
2522
0884
23
83
RSTRM6 MOV A,K (DSCRSZ * 2)* 10 * 3
2523
0 8 86
B 4
32
CALL FMTCII
2524
01)88
6A
ADD A, R2
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 RESET RESET.SRC
2525
0889
07
dec
A
Zeiger;auf letztes Byte
2526
0 8 8 A
A8
MOV
RO, A
2527
083b b9
28
MOV
ri, kdsc:
2528
088d
14
6d
CALL
decsub
2529
038f b6
d5
jfo
RSTIA
Wenn gleich, lösche Fehlerzahl
2530
2531
0891
Wenn Fehler, lösche BEtrags- u. COMBO-E5 RSTERR SEL MDO
-Puffer, erhöhe Neueinstellversuchszähler und gebe weichen
Fehler wieder
2532
0392
d4
6E
CALL
RSTCOM
2533
0894
FO
MOV
A, @ RO
Lade Neueinstellversuchs-Zähler
2534
0395
03
F 7
ADD
A,K0F7
Prüfe Neuversuchszähler, wenn > 9 keine Erhöhung
2535
0897
f6
EO
jc
RSTFAT
2536
0899
1 0
INC
@ RO
2537
0 8 9A
1 4
AO
RSTER1
CALL
CIIGPRV
2538
089c
14
A 8
CALL
C1IGPRV
25 39
0 8 9 E
24
76
RSTER2
jmp
SOFTERR
2540
Prüfe auf COMBO-ziffern
254 1
0 8 AO
E5
RESETI
SEL
MBO
2542
08A1
96
9E
jnz
RSTER2
Format für COMBO nicht "8F'-'
254 3
0BA3
1 q
INC
RO
254 4
08A4
FO
MOV
A, @R0
Lade Daten
254 5
08A5
Dl
xrl
A , 0 R1
254 6
08A6
96
DO
jnz
RSTRMS
keine manuelle Kombinationsprüfung für rmrs
(fernbetätigte Laden)
6500 ACCOUNTING MODULE CA8048/11 . version 4.21.57 15-Oct-79 12:47:58 RESKT RESET.SRC 4
254 7
08AÛ
19
INC
Rl
2548
06A9
EA
AO
' DJNZ
R2, RESETI
2549
V
Prüfe auf Gebührenmittel-Aufhebung
2550
08AB
B9
76
MOV
Rl, HAMTBF
2551
0 8 AD
Fl
MOV
A, @R1
2552
08AE
D3
22
XRL
A, Ï22 Format mu "22" sein
2553
0BB0
96
C7
JNZ
RSTMN1
2554
08B2
1 9
INC
Rl
2555
0 8 ß3
PI
nov
A, SRI
2556
08B4
96
C 6
JNZ
RSTMAN Daten müssen "00" sein
2557
Letzter NIBBLE des abfallenden Registers nuß Null sein, um manuelles RMRS-System aufzufinden
2558
08B6
B8
28
MOV
R0, K DSCREG +
2559
08B8
FO
MOV
A, @R0
2560
08B9
53
OF
ANL
A, K0F Prüfe nur letzten NIBBLE
2561
UOBB
96
9 E
JNZ
RSTER2
2562
Nullsetzung für
• abfallendes Register
2563
OOBD
B8
25
MÖV
R0, 8 DSCREG
2564
0 8 BE
BA
04
MOV
R2 , IDSCRSZ
2565
08C1
F 4
EE
CALL
CLRBLK
2566
08C3
F5
SEL
MB 1
2567
2568
08C4
44
AB
JMP
RST11 Speicher müssen noch geräumt v/erden; berechne neuen DSCECC
und OONECC
2 5 § 9
Für manuelle Neueinstellung prüfe NeuversuchsZähler und Vorhandensein von Zugangsberechtigungszustand
6500 ACCOUNTING MODULE CA804Q/11 version 4.21.57 15-Oct-79 12:47:58
:t reset, src
2570
08C6
Ç9
RSTMAn
DEC
Rl
Zurückstelle Zeiger auf Format
2571
08C7
54
E7
rstmn1
CALL
LSTATE
Lade Zustandswert und zerstöre nicht REG-Werte
2572
03C9
37
CPL
A
Bit 0 sollte "1" sein
2573
03CA
1 2
0 4
JBO
RSTRM6
2574
08CC
23
72
MOV
A,H (DSCRSZ*
2-1)*10+2 Format check to pennies
2575
08CE
54
32
CALL
FMTCII
2576
08D0
B4
82
CALL
FMTNB2
Eingang für Verschieben eines NIBBELS,ungeradzahlige
2577
08D2
F5
SEL
MB1
Stellenzählung
2578
O0D3
44
8 4
JMP
RSTAMT
2579
2580
08D5
F5
RST1A
SEL
MB 1
2581
08D6
44
B 2
JMP
RST11A
2582
2583
2504
RMRS
- Rückstellung
2585
OOD8
54
e 7
rstrms
CALL
lstate
Prüfe auf Normalzustand
2586
08DA
1 2
91
JBO
rsterr
2587
0 8DC
F5
sel
MB 1
2580
08DD
24
BF
JMP
RMRS
2589
2590
2591
wenn hier verhängnisvoll
6500 ACCOUHTING MODULE CA8048/11 RESET RESET.SRC
2593 08DF E5 RSTFT8 SEL
i
2594 08E0 BF 09 RSTFAT MOV
2595 0 8 E 2 84 3 3 JMP
2596 PAGE
version 4.21.57 MBO
R7, HRSTTRY FATERR
o\
Os 4à.
w
Ul
15-Oct-79
12:47:50
to
6500 ACCOUNTING MODULE CAÛ040/11 version 4,21.57 15-Oct-79 12:47:58
ST RESET.SRC
2597
0980
ORG
900
2598
0980
29
PG900
XCII
A, RI
2599
0981
A3
MOVP
A, @ A
2600
0982
24
CF
JMP
PAGRET
2601
2602
V
Prüfung auf manuelle Kombination
2603
098 4
B8
*7B
RESET
MOV
RO, KCMBOBF
2604
0986
B9
50
MOV
RI, H RSTBAS
Zeiger auf manuelle COMBO
2605
0988
Ba
04
MOV
R2, *4
Bytezahl
2606
098A
FO
MOV
A , @ RO
Lade Format, muß "8F" sèin
2607
098B
D2
8F
XRL
A, »0F
2608
098D
04
AO
JMP
RESETI
2609
2610
0 9 8 F
B9
7C
RMRS
MOV
RI, ÏCMBOBF+1
261 1
0991
BB
7C
MOV
RO, S CMBOBF +1
2612
0993
BC
02
MOV
R4 , Il 2
2613
0995
27
RSTRM1
CLR
A
2614
0996
BB
02
MOV
R 3 , «2
2615
0998
AF
RSTRM2
R7,
A
2616
0999
FO
MOV
A , @RO
Lade COMBO-Byte
2617
0 9 9 A
03
60
ADD
A , «60
Prüfe auf Ziffern oberhalb
2618
099C
F6
EF
JC
RMSERR
2619
0 9 9 E
47
SWAP A
2620
099F
03
60
ADD
A, Ï60
2621
0 9 A 1
F 6
EF
JC
RMSERR
6500 ACCOUNTING MODULE CA8048/11
version 4.
RESET RESET.SRC
2622
09A3
27
CLR
A
2623
09A4
30
XCIID
A,
0 R0
2624 '
09A5
37
CPL
A
2625
09A6 *
A3
MOVP
A,
0 A
• 2626
09A7 •
DF
XRL
A,
R7
2627
09 A8
20
XCII
A,
@R0
2628
09A9
47
SWAP
A
2629
09AA
37
CPL
A
2630
09AB
A3
MOVP
A,
0 A
2631
09AC
DO
.
XRL
A,
@ R 0
2632
09AD
18
INC
R0
2633
09AE
EB
90
DJNZ
H3,
RSTRM2
2634
09B0
AI
MOV
0 R1
, A
2635
09B1
1 9
INC
2636
09U2
EC
95
DJNZ
R4 ,
RSTRM1
2637
Nachschlage gespeicherte
2638
09B4
B8
3B
MOV
R0,
Il DATE i
2639
09B6
F0
MOV
A,
0RO
2640
09B7
97
CLR
C
264 1
0908
F7
RLC
A
2642
09B9
77
RR
A
2643
09BA
A9
MOV
RI ,
A
264 4
09BB
C 8
DEC
R0
2645 "
09BC
F6
MOV
A,
0RO
15-Oct-79 12:47:58
Trenne eine Ziffer ab
Tabelle an» Seitenende in umgekehrter Reihenfolge Verwandle COMBO-Ziffer in Bandkode os
ON «k w
Vi
Lade MS Byte der Zählung
W
6500 ACCOUNTING MODULE CA8048/11 version 4.21 . 57 15-Oct-79 12 : 47: 58
ET RESET.SRC
2646
09DO
F7
RLC
A Einbeziehe C vom neu belegten Modul
264 7
09BE
52
EF
JB2
RMSERR Bit 2=1, 512 keine weiteren Kombinationen
2648
09C0
03
C3
ADD
A, «LOW PAGBR
2649
09C2
B3
JMPP
@A
2650
1
Tabelle für
Sprung
2651
0 9C3
Cl
PAGBR
DB
LOW PAGO00
2652
09C4
C9
DB
LOW PAGAOO
2653
09C5
CB
DB
LOW PAGCOO
2654
09C6
CD
DB
LOW PAGEOO
265 5
2656
09C7
04
60
PAG800
JMP
PG800
2657
09C9
44
80
PAGAOO
JMP
PCAOO
2658
09CB
04
80
PAGCOO
JMP
PGCOO
2659
09CD
C4
80
pageoo
JMP
PGEOO
2660
2661
09CF
B8
7D
PAGRET
mov
RO, ICMBOBF + ? Prüfe Kombination (CXDMBO) gegen gespeicherte
2662
09D1
DO
XRL
A, @R0
2663
09D2
96
EF
JNZ
RMSERR
2664
09D4
CO
DEC
RO
2665
09D5
F9
mov
A, RI
2666
09D6
DO
XRL
A , @ RO
2667
09D7
96
ef
JNZ
RMSERR
2668
09D9
E5
SEL
MBO
6500 ACCOUNTING MODULE CA8048/11 RESET RESET.SRC
version 4.21.57 15^0ct-79 12:47:58
2669
09DA
B9
76
MOV
RI, H AMTBF
2670
0 9DC
23
83
MOV
A, K DSCRSZ * 2
2671
09DE
B4
32
CALL
FMTCII
2672
09E0
AF
MOV
R7, A Rette Startadresse von Daten
2673
09E1
B8
3D
MOV
R0, H RSTVAR Prüfe empfangenen Betrag gegen
2674
09E3
FO
RMRS1 MOV
A, @ R0
2675
09E4
Dl
XRL
A, @ Rl
2676
09E5
96
EF
JNZ
FMSERR
2677
09E7
18
INC
R0
2678
09E8
19
INC
Rl
2679
09E9
EA
E3
DJNZ
R2, RMRS1
2680
2681
09EB
FF
MOV
A, R7
2682
09EC
F5
SEL
MB 1
2683
C9ED
44
84
JMP
RSTAMT
2684
2685
RMRS ERROR
RMRS-Feh1er
2686
09EF
F5
RMSERR SEL
MB1
2687
09F0
04
91
JMP
RSTERR
2688
RM RS-COMBO in Bandkonversionstabelle
2689
09F6
ORG
9F6
2690
09F6
Ol
00
20 DB
1, 0, 20, 2,
6500 ACCOUNTING MODULE CA8048/11 RESET RESET.SRC
version 4.21.57 15-Oct 79 12:47:50
09F9
02 08 40
09 FC
04 10 80
09FF
00
2691
L
Taste
(CDMBO-Ziffer)
Band-Bit
2692
KEY {
COMBO
DIGIT )
TAPE BIT '
2693
9
0
2694
8
- NO BIT kein
2695
7
5
2696
6
1
2697
5
3
2698
4
6
2699
3
3
2700
2
4
2701
1
7
2702
2703
PAGE
2704
0A80
ORG
0 ABO
2705
0A80
F9 PGA00
MOV
A, RI
2706
0A81
A3
MOVP
A, @ A
2707
0AQ2
64 80
JMP
PGD00
2700
2709
Gemeinsamer Kode für manuelle und
RMRS-(ferntetätigte)
2710
271 1
OA84
E5 RSTAMT
SEL
MßO
.
o\ o\
w
VI
6500 ACCOUNTING MODULE CAB04B/11 version 4.21.57 15-Oct-79 12:47:58
CT RESET.SRC1
2712
0A85
03
03
ADD
A, K DSCRSZ-1
Zeige auf letztes Byte
2713
0A87
AB
MOV
RO, A
2714
0A8Q
B9
41
MOV
RI, HRSTCNT
'9
2715
0A8A
Fl
MOV
A, @R1
2716
0A8B
03
F7
ADD
A, « 0F7
.
2717
OA BD
E6
92
JNC
RSTAM1
2718
0A8F
F5
SEL
MB1
2719
0A90
04
DF
1
JMP
RSTFTO
2720
Addiere Neueinstellbetrag (RESCT AMP)
zu Wert des abfallenden Registers
2721
0A92
B9
28
RSTAM1
MOV
RI, Il DSCREG * D
2722
0A94
BA
04
MOV
R2, d DSCRSZ
2723
0A96
54
EC
CALL
DECADD
2724
OA 98
F6
BC
JC
RSTERA
RAP AROUND NOT ALLOWED
2725
0A9A
BA
04
MOV
R2, » DSCRSZ
2726
0A9C
Al
tnov
@R1 , A
Speichere neue DSC CRC
2727
0A9D
19
RSTAM2
INC
Ri
2728
0A9E
18
INC
RO
2729
0A9F
FO
' MOV
A, @R0
2730
OAAO
Al
MOV
@R1 , A
2731
0AA1
EA
9D
DJNZ
H2,RSTAM2
2732
0AA3
B8
3B
MOV
RO, Il DATE U
Dringe auf den neuesten Stand
2733
0AA5
10
INC
0 RO
2734 '
0AA6
FO
MOV
A, @ RO
w
00
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58
ÎT RESET. SRC
2 73 5
0AA7
96
AB
JNZ
RST11
2736
0AA9
C8
DEC
RO
2787
OAAA
10
INC
@ RO
2780
OAAB
E5
RST11
S EL
MBO
2739
OAÄC
D4
65
CALL
DSCCRC
2740
OAAE
AO
MOV
@R0, A
27 41
CLEAR AMT
AND COMBO BUFFERS
AND CLEAR RSTCNT COUNTER
2742
OAAF
94
D2
CALL
CTLECC
Berechne neue Kontrollsummen
2743
0AB1
AO
MOV
@R0, A
274 4
OAB2
E5
RST11 A
SEL
MBO
2745
0 AB 3
D4
6E
CALL
RSTCOM
2746
0AB5
AO
MOV
@ RO , A
Lösche Neueinsteil fehler zäliler
274 7
OAB 6
14
ab
RST12
CALL
CHGPRV
lindere priv. Bit
2740
oabb
1 4
AB
CALL
CIIGPRV
2749
OABA
24
14
JMP
QUESTA
2750
2751
OABC
F5
RSTERA
SEL
MB 1
2752
-oabd
04
91
JMP
RSTERR
2753
2754
ob 8 0
ORG
0b00
2755
ob 0 0
29
PGßOO
XCII
A, RI
2756
oboi a3
MOVP
A, @ A
2757
0082
24
CF
JMP
PAGRET
6500 ACCOUNTING MODULE CA0048/11 RESET RESET.SRC
o\
M ».
OA VI
version 4.21.57 15-Oct-79
12:47:58
2758
2759
0C80
ORG
OCBO
2760
0C80
F9
PGCOO
MOV
A, Rl
2761
0C 81
A3
MOVP
A, 0 A
2762
0C82
A4
80
JMP
PGDOO
2763
2764
0D80
ORG
0D80
2765
ODO 0
29
PGDOO
XCH
A / RI
2766
0D81
A3
MOVP
A, 0 A
2767
0D82
24
CF
JMP
PAGRET
2768
2669
0E80
ORG
OESO
2770
0E80
29
PGEOO
MOV -
A, RI
2771
0E81
A3
MOVP
A, 0A
2772
0E82
E4
80
JMP
PGFOO
2773
2774
0F80
ORG
0F80
2775
0F80
29
PGFOO
XCII
A, RI
2776
0F81
A3
MOVP
A, 0A
2777
0F82
24
CF
JMP
PAGRET
2778
2779
2780
INCLUDE DMO:PWRUP
2781
SUBTTL
4i.
Stromeinschaltung & Anfangssetzung
6500 ACCOUNTING MODULE CA8048/11 POWER UP & INITIALIZE PWRUP.SRC
2783
2784
2785
2786
2787
2788
2789
2790
version 4.21.57 15-Oct-79 12:47:58
> M
Stromeinschaltung und Anfangssetzung
Anfangssetzung des Buchungssys ten, stelle sicher, daß Buchungsfunktion bereit ist
2791
--M
R0
Adresse filr NVM (leistungsunabhäng. Speicher)
2792
— M
Rl
Adresse für NVM Laden
2793
— M
R2
Zähler
2794
2795
0F84
E5
PWRUPA
SEL
MD0
Setze auf Aufruf von untere 2 K
2796
0F85
DO
XRL
A, @R0
v
2797
0F86
C 6
8 B
JZ
PWRUP2
Anwachsendes Register in Ordnung?
2798
0F88
18
INC
R0
Zeiger auf höchstst. Byte des anw. Registers
2799
0F89
B0
FF
MOV
@ R0, »0
ff
2800
0F 8D
D4
65
PWRUP2
CALL
DSCCRC
2801
0F8D
DO
XRL
A, @ R0
2802
0F8E
C 6
93
JZ
PWRUP4
abfallendes Register in Ordnung?
2803
0 F 9 0
1 B
INC
R0
Zeiger auf abfallendes Register
2 8 01
0F9 1
BO
FF
MOV
@R0 , HOFF
2805
OF93
59
PWRUP4
MOV
R0, IACTBLF
Os os ».
W
6700 ACCOUNTING MODULE CA8040/11 . version <1.21.57 15-Oct-79 12:47:50
as
05
6
POWER UP
L INITIALIZE
PWRUP.SRC
2B06
0F9 5
10
INC
@R0
2807
0F96
1 8
INC
RO
Zeiger auf NVMBLK
2808
0 Fr9 7
BO
FO
MOV
@ RO/ I0F0
Anzeige, daß kein Block offen
2809
0F-99
05
EN
1
ARM Unterbrechung
2810
0F9A
F4
61
CALL
NVMRD
2811
0F9C
C6
AO
JZ
PWRUP5
Lesen in Ordung?
2812
0F9E
94
4 A
CALL
NVMFAT
2813
Prüfe berechnete Kontrollsumme gegen gespeicherte CONEOC
2814
0PA0
94
D2
PWRUP5 CALL
CTLECC
' 2815
0FA2
DO
XRL
A, @R0
2816
0FA3
9 6
F7
JNZ
PWRER8'
2817
Empfange
Druckerstatus
2818
0FA5
94
19
CALI, v
STR20M A =
0 ungefähr 5 sec. um Rückkehr von Riegel
2819
0FA7
D4
28
CALL
PRCRX
2820
0PA9
65
STOP
TCNT
2821
0PAA
FO
MOV
A, @R =
Lade neuen Druckerstatus
2822
0FAB
D3
80
XRL
A, KVLISIID
Header = *'80"?
2823
OFAD
96
F5
JNZ
PWRPRE
Druckerfehler
2824
2025
OFAF
B9
56
MOV
RI, II MRSTAT
Lösche Basisrückstellbit
2026
0FB1
B1
40
MOV
(?R1, 140
2827
0FB3
1 8
INC
RO
Zeiger auf Statusadresse
2828
0FB4
B9
2F
MOV
Rl, »PRSTAT
Zeiger auf alten Druckerstatus zu ermögliche
» N>
6500 ACCOUNTING MODULE CA8048/11 version 4.21
POWER UP
{. INITI ALI ZE
PWRUP.SRC
2829
0FB6
F0
MOV
A, 0RO
2830
0FB7
12
F5
JBO
PWRPRE
2831
0FB9
21
XCII
A, 0R1
2832
0FBA
72
BE
JB3
PWRUP6
2833
0FBC
D3:
10
XRL
A, *10
2834
0FD E
Dl:
FWRUP6
XRL
A, 0R1
2835
0FBF
92
C3
JB4
PWRUP7
2836
Führe
Buchung aus
2837
0FC1
74
B8
CALL
DOACCT
2838
0FC3
B8
2 F
PWRUP7
MOV
R0, *PRSTAT
2839
0FC5
B9
58
MOV
RI, » STATE
2840
0FC7
F0
MOV
A, 0R =
284 1
0FC8
37
CPL
A
284 2
0FC9
F2
CC
JB7
PWRUP8
2843
0FCB
11
INC
@R1
284 4
0FCC
E8
66
PWRUP8
MOV
R0, »WRKBFI
2845
0FCE
Fl
MOV
A, 0 R1
2846
0FCF
52
F9
JB 2
PWRER9
284 7
0FD1
B0
64
MOV
0 R0, «4
284 8
0FD3
18
INC
R0
28 4 9
0FD4
B0
Cl
MOV
0 R0 , »SPOSIID
2850
0FD6
1 8
INC
R0
2851
0FD7
B9
30
MOV
Rl, »POSVAL
57 15-Oct-79 12:47:58
verhängnisvoller Fehler gesetzt
Auslösung im Fortschreiten, Abrechnung komplett bei PWR
aus vergleiche Ausgangsstellungen keine Buchung
Prüfe Berechtigungsschalter Lade PRSTAT
Berechtigungsschal ter geschlossen Setze Berechtigungszustand Setze Anfangssetzung-Portogebühr Prüfe ob verhängnisvoll wenn verhängnisvoll, keine Einstellung in Drucker
Os
Os »
W Vi
6500 ACCOUNTING MODULE CA8048/11 version 4.21.57 15-Oct-79 12:47:58 POWER UP i INITIAL!ZE PWRUP.SRC
2852
0FD9
BA
03
MOV
R2, 1POSTSZ
2853
OFDD
1 4
65
CALL
BLKMOV
2854
OFDD
94
04
CALL
STRIOM
Setze Zeitgeber für ungefähr 10 msec.
2855
OFDF
23
66
MOV
A, 1WRKBFI
2856
0FEÌ
94
BA
CALL
PRCTX
2857
0FE3
65
STOP
TCNT
2858
Während
Druckereinstellung der Portogebühr, lösche NVM
2859
0FE4
54
E7
CALL
LSTATE
Benötigter ACT-Block ( Zustandd kann nur 0 oder 1 sein)
2860
0FE6
F4
27
CALL
NVMOPN
2861
0FE8
D8
30
MOV
RO, 1POSVAL
0 Portogebührenwert
2862
OFEA
BO
80
MOV
@R0, UBO
Schütze gegen Stromabfalle währerd Druckeranfangssetzung
2863
OFEC
18
INC
RO
2864
OFED
B4
02
MOV
R2 , II POSTSZ
-
2865
OFEF
F 4
EE
CALL
CLRBLK
2866
WAIT
REST
OF SET POST TIME
2867
0FF1
94
19
PWRUP9
CALL
STR20M
2868
0FF3
C 4
24
JMP
SETIN2
2869
0FF5
64
71
PWRPRE
JMP
GETDIA
2870
0FF7
94
4 A
PWRER8
CALL
NVMFAT
2871
0FF9
24
14
PWRER9
JMP
QUESTA
2872
2873
2874
END
6500 ACCOUNTING MODULE CAQ040/11 version 4 POWER UP & INITIAL1ZE PWRUP.SRC
A'
= 000E
ACMPIID
0045
ACTBLK
ASCCRC
02CA
ASCECC
0029
ASCREG
UADHOM
0 3 A 2
BATAMT
0033
BATASZ
BLKMOV
• 0065
BUS
= 0004
C
CLRAM
, 07F4
CLRAMT
07F5
CLRIÌAT
CLRBLK
07 E E
CLRSER
01 A2
CLRSIID
CMDÛBP
007B
CMBÛSZ
0005
CMDDAT
CMMESS
015F
CHT
= 0009
CNTXFL
CRC
07CF
CRC INL
00PP
CRCNIB
CRC210
0 7 DD
CRC220
07E5
CRXBLO
CIIXBL3
05B4
CRXBL4
05B6
CRXBYL
CRXFAT
0650
CRXFIN
0651
CRXFN1
CRXMRT
0050
CRXMSO
063 9
CRXMSI
CTLECC
04D2
CTLSUM
02BF
CTXBLP
CTXDL3
0040
CTXBL4
0044 v
CTXDL6
CTXBL9
005C
CTXBYT
0029
CTXCNC
CTXCWT
0494
CTXMER
0 4 DO
CTXMES
CTXMSP
0 4 9 D
CTXMSO
049(1
CTXMSI
DATE
003A
DA'i'ESZ
0002
DBB
DllCSßl
007 1
DECSB 2
00 7 B
DECSUB
DISABL
02D3
D 1 SAB 1
0 2DIÌ
D1SAU2
DISRET
02DA
DISSTA
010 1
DISTMI
DOSTA1
0 12 3
DOSTA3
0.1311
DOSTA4
21 . 57
15-Oct-79
12:47:50
0059
AMTBF
0076
AMTSZ
0005
002A
ASCRSZ
' 0005
ASERSZ
0001
0004
BATCNT
0037
BATCSZ
0003
= 0007
CIIGPRV
00A0
CLK
= 0010
01 ö F
CLRBIID
0044
CLRBK1
07EF
0047
CLRWK
07E9
CLRWRK
07EA
01B 5
CMDONY
Ol 7A
CNCRX
062C
005B
COMFAT
0003
CONECC
003C
07DB
CRCPLY
009B
CRC1I0
07D1
05 AO
CRXBL1
05A2
CRXBL2
05AE
05AB
CRXBYT
0594
CRXCWT
0590
065D
CRXMES
062D
CRXMLP
0647
063D
tRXMS2
0641
CRXPED
059C
0033
CTXBL1
0039
CTXBL2
00 3 E
0051
CTXBL7
0055
CTXBL8
0057
04C3
CTXVNP
04C8
CTXCN2
04CD
0 4 OC
CTXME1
04 BD
CTXMLP
0 4 AC
04A3
CTXMS7
04B5
CTXPWT
04 A 1
= 001 1
DECADD
02EC
DECADI
. 02ED
006D
DELOOP
00B 2
DEL300
00B0
0 2 E 1
D1 SAB 3
02E5
DI SBTM
045D
04 64
DOACCT
0 3 BO
DOSTAT
0316
0 34 0
DOSTA5
0354
DOSTA6
0363
6500 ACCOUNTING MODULE CAQ040/1I version 4.21.57
POWER UP &
INITIALIZE
PWRUP.
SRC
DOSTA7
0 3 6 E
DOST4A
0 3 4 D
DOST5A
035D
DOTRP2
0393
DORP3
0397
DOTRP4
039F
DSBLPD
00 4.2
DSCCRC
0665
DSCECC
0024
DSERS2
0001
ECIIFAT
0006
ENABLE
05BB
ENABL3
05D7
ENABRT
05CF
ENABTM
046C
EMBLIID
0041
ENDEIID
0043
ENDENT
01 AC
ENTCB1
01 BB
• ENTC1ID
00C6
ENTCMB
01B9
EXCDIS
0130
EXCENB
0127
FATCNT
0043
FATECU
0661
FATERR
04 33
FATERI
0447
FMTCII 1
054 1
FMTCII 2
0562
FMTCII 3
057D
FMTMB2
0582
FMT0T1
0247
FMTOT2
0251
FMTOU1
0210
FMTOU2
0 2 6A
FMTOU3
0278
FMTOl1
0293
FMTOl2
0297
FMTOl4
V
029C
FMTSTS
0 2 A 1
FMTTRP
02AE
FMTVAL
0227
. PI
j
= 200D
GETD
0084
GETDI A
0371
GETSTS
0094
liOMFAT
0005
IIRDBAD
01 74
IDLE )
0140
IDLE2
0*13 2
IDLE3
0154
INTFAT
0004
INTPOS
0457
LAST
007 F
LOWSET
03F2
LOWST!
0 3 FA
LSTATE
0 2 E 7
MPO
= 200B
MB I
= 3 0 0 B
METRSZ
000 2
MSERNO
0045
MSERSZ
0004
MTRPSZ
0001
NVMBLK
005A
NVMÜYR
06GA
NVMBYT
0 6 90
NVMER .
077A
NVMFAT
04 4 A
NVMPND »
0704
Oct-79
12:47:
58
DOTRIP
037C
DOTRP5
03A6
DSCREG
0025
ENABLI
05C8
ENARET
-5DB
ENTAIID
00C5
ENTMDN
0477
FATCOD
0042
FATRRl
043C
FMTERR
0530
FMTOUA
025A
FMTOU4
0280
FMTSOF
02B7
FTLCSZ
0001
GETDO
008A
I '
= 000C
IDLE4
01 4C
LIMTST
0099
LSTATW
02E8
METSTA
0186
MTRTYP
0044
NVMBYW
068E
NVM I ß
06A5
DOTRP1
038C
DSBLE
0189
DSCRSZ
0004
ENABL2
05D1
ENBLE
Ol 7C
ENTAMT
01C3
EXCBAS
Ol 2B
FATCOM
0431
FMTCII
0532
FMTNB1
058A
FMTOUO
025E
FMTOl0
0286
FMTSTA
02B9
FO
-000D
GETSTA
0090
IDLE0
01 3 A
IDLE5
0153
LOWPOS
004C
LWPSSZ
0002
MRSTAT
0056
NODATA
0040
NVMCIIG
070A
NVMOPN
0727
6500 ACCOUNTING MODULE CAG04H/11 version 4 POWER UP L INITIALIZE PWRUP.SRC
NVMRD
0761
NVMSTP
0673
NVMSTI
NVM110
0712
NVM130
0740
NVM14 0
NVM195
0 7 5 E
NVM210
0 7 fiC
NVM220
NVM4 20
0 7B3
NVM510
0 7 B E
NVM520
NVM715
06B5
NVM720
06BE
NVM730
NVM7 4 S
Ò6D7
NVM750
0 6 E 3
NVM760
PAGC00
OOCB
PAGEOO
0 9CD
PAGRET
PECESZ
0004
PGAOO
OAflO
PGBOO
PGE00
OEGO
PGFOO
0 F 0 0
PG (100
POSnAT
0 4 FF
POSBA1
0504
POSLOW
POSVAL
0030
POSVNB
OOfl J
POSWRK
PROFAT
0002
PRSTAT
00 2 F
PRSTZ
PWRDH
0009
PWRERO
OFF 7
PWRER9
PWIIUPA
0 F 0 4
PWRUPO
0024
PWRUP2
PWRUP6
0 F UE
PWRIJP7
0FC3
v pwRupn
P2
= 0205
P4
= 0006
P5
QUESTA
0114
RAMSTP
0702
RÜÜ
RIL'COFL
00 5C
RECDSZ
ooon
RECBUF
REQVIID
0050
RESET
09 0 4
RESETI
RMRS
0911F
RMRS 1
0 9 E 3
RMSERR
RSTAM2
OA'JD
RSTBAS
00 50
RSTBSV5
RSTDSZ
0000
R STI-RA
OABC
RSTERR
RSTFAT
o n l:o
RSTFTfi
0 0 DF
RSTMAN
RSTRMI
0995
RSTRM 2
09 90
RSTRM6
1.57 15-Oct-79 12:47:50
0676
NVMTBL
0700
NVMWR
07BE
0743
NVM150
075C
NVM190
075D
077H
NVM310
0702
NVM410
07A7
0 7CD
NBM610
06A4
NVM710
06B4
06C0
NVM7 3 5
06CD
NVM740
06D5
0 6 FO
PAGAOO
09C9
PACBR
09C3
0 9CF
PAG800
09C7
PECEXT
0020
OBBO
PGCOO
ocao
PGDOO
ODOO
Oit 00
PG900
0900
POLCNT
005D
-5-E
POSTSZ
0003
POSUPD
04F4
0 4E3
PRCRX
0620
PRCTX
0 4 8 A
0001
PRTFAT
0001
PSW
= 0003
0 F F 9
PWRPRE
0FF5
PWRUP
000E
0 F11B
PWRUP4
0F93
PWRUP5
OFAO
0 FCC
PWRUP9
OFFl
PI
= 0105
= 0106
P6
= 0206
P7
= 0306
= 0 0 0 B
RB1
= 1 00B
RCNMES
0150
00 512
RECSTS
0000
RECSTI
' 0096
OfiAO
RETEXC
0117
RETVAL
0 1 CD
0 9 E F
RSTAMT
OAQ4
RSTAM1
0A92
0 00 4
RSTCNT
004 1
RSTCOM
066E
0 0 9 1
RSTER1
009A
RSTER2
089E
0 (IC 6
RSTMN1
OOC7
RSTRMS
00D8
0 (10 4
RSTRSZ
0001
RSTR20
04 1 B
6500 ACCOUNTING MODULE CA004B/11 versiop 4.21.57 I'OWEII UI» L INITIALIZE PWRUP.SRC
RSTT»y
0009
RSTVAR
00 3 D
RSTVSZ
0004
TST11 A
0AB2
RST1 2
0AU6
RO
= 0002
m
= 0 3l02
R4
= 0402
R5
= 0502
SDATRD
00C 4
SERENT
0 1 CF
SERENO
Ol F3
SETFAT
0007
SET INT
05 DE
SETINO
060E
SETL1 M
00 4 E
SETLSZ
000 2
SETPO
0 J C 7
SETSEU
0107
SETSIID
0046
SETSRI
019F
STATE
0050
STATND
0000
STCIIK
0 0 5 E
STRT1M
04 1 E
STR10M
0404
STR20M
04 1 9
TIÌCXDN
0100
TßCMDS
0110
TIÎCMDW
0100
T iMCNT
0054
TIMDMY
0423
TIMI NT
04 24
TMRTST
02F6
TMRTS1
0 2 FE
TR i PST
0 3.» 4
TRPSET
0064
TRPTOL
0 AA 3
UNLOCK
v
00 4 9
VALUES
0232
vi, i sud
00 0 0
WORKDF
00 6 E
Wl IIDAT
OOCO
No
üfrors cioLected
i
-Oct-79 12:47:50
nSTIA 0BD5
RI =0102
R6 =0602
SERENI 01C1
SETI NI 0617
SETPOS 01 DP
SOPTER 0176
STCIIK 1 0060
STR60M 0412
TCNT =000A
TIMSTP 04 01
TR1PTM 0 4 79
UNLVSZ 0003
WRKDF1 0066
RST1 1
OAAB
R2
= 0202
R7
= 0702
SETERR
05DC
SETIN2
0624
SETPTM
047D
SPOSIID
00C1
STRM IL
0407
T
= 0008
TCNT 1
= 200C
TIMWIIO
0055
TRPFAT
0000
VALUE
0231
WRKBSZ
00 00
Croüä riit'iiftìnciì listing (MICRI Synibo I Uefa (V = définition
ACM fi II)
1 J 1 II
ACTllt.K
100»
AMT HP
100»
AMTS2
- 109
ASCCRC
299
ASCECC
76»
ASCREG
77»
ASCRSZ
73
ASERS2
77
ÜADIIOM
1)11
lìATAMT
119»
I1ATAS2
(Il
I1ATCHT
0 1 »
UATCSZ
83
DLKMÜV
403 »
CIIGPKV 505»
CLRAM VI 9
CLIIAMT IU59
Cl.lìBAT '_>4 6
1196
101
2 156
2 3-12
2005
109
692
61)9
2 4 95
940»
1 243
77
9 4 3
70
940
94 1
12 30
1211»
1 250
0 )
659
660
1 255
03
1X) 5 2
660
1 267
407
4 09
1525
1550
2537
2 5 3 0
2 4 9 3 »
) 9 3 6
2 4 9 4
6 5 9 M
P vers ion 4.0)
$ = write <blank> = read)
2109 003
1047 1240
1274 1051 1257 1 267 1269 690 1044 2747
2203 2494
1049 1524
1255
2212 2550
1230 1527
2263 2669
1523
1216
1570
1571
730 023
2053 27 4 0
CI.KßllD
1 J0I
ci,nina
2477»
2479
CLPIÌLK
29 1
66 1
24 7511
2496
CLRSER*
5 4 (J
670«
CLHSHD
13 31
CLRWK
321
24 7 1 (1
CLRWRK
1 260
1550
1 650
24 721)
CMÜCßF
1091
110
565
607
1040
26(13
2610
CMßOSZ
1 10
CMDDAT
632
634 II
CMDOilY
637
64 3 «
CMCRX
619
1501
nif)6D
CNMfcIS
599
6 2 3 «
CNTXFL
10211
103
56 9
592
COMFAT
240U
1363
CQNliCC
3 4 U
35
1529
CRC
94 2
1520
194 1
2421 *
enei io
24 221
24 26
CRC210
2 -l 4 7 a
2454
CRC220
24 5 1
24 5 3 II
CRC1NL
23 1 II
2260
2 3 4 9
24 2 1
CRCN 111
2 100
24 23
24 24
2446#
CUCPLY
2 3 3«
2452
CRXDL0
1 75611
1770
1777
2565
704 261 1
1114
os os
N>
t
Ol
2065
1031 1030
2661
Ol o
CRXBLl
1 757 II
CRXBL2
17601
CRXBL3
1764
CRXBL4
1766
CRXBYL
1 751
CRXBYT
1 740 *
CRXCWT
17301
CRXFAT
19 12
CRXFIN
1910
CRXFNl
1916
CRXMES
1 084
CRXMLP
1 907 H
CRXMRT
19191
CRXMSO
10 9 51
CRXMS1
1092
CRXMS2
1096
CRXPED
1749
CTLECC
1 272
CTLSUM
034
CTYBLl
340«
CTYBL2
34 4 Ï
CTXBL3
34 7 1
CTXBL4
35 1 I
CTXBL6
34 1
1757
1773
1 77311
1775*
1734
1 762*
1607
1750
1910
1 926*
1914*
1923 *
1 007*
1911
1924
1095
1 090*
1090
1901*
1 753 *
1 753
1 522 *
2742
922 *
1526
361
373
365
367
369
375
3 65 *
CTXBL7
343
369»
CTXBL8
332
334
CTXBL9
347
375»
CTXBLP
334 1
350
CTXBVT
• 326 »
1404
CTNCN2
: 1502
1507*
CTXCNC
1461
1500»
CTXCNP
1466
1470
CTXCWT
1 4 6 3»
1463
CTXME1
1 4 57 II
1500
CTXMER
1405
1491
CTXMES
910
1455»
ÇTXMLP
1 402»
1407
CTXMSO
1459
1 466»
CTXMS1
14 64
1 4 74 »
CTXMS7
1400
1 409»
CTXMSP
1 47011
1471
CTXPWT
1 472 »
1472
DATE
03»
04
DATESZ
04
DECADI
1004 »
1012
DECADO
924
1002»
DECSB1 '
4 33 »
443
DECSB2
439
441»
DECSUli
420 »
1249
37111
1490
1 504 H
15101
263(1 2732
1241 1250 1265 1270 2723
1565 1506 1590 1032 -2520
DELS00
522»
DELOOP
523»
disagi
962
DISAR2
96 8»
DISAB3 .
970»
DI S A ß L
305
DISQTM
1 396»
DISRET
> 963»
DISSTA
• 649»
DISTMI
1 402»
DOACCT
1 190
DOST4 A
1 124
DOST5A
1 140
DOSTA1
1090
DOSTA3
1 109
DOSTA4
1117»
DOSTA5
1110
DOSTA6
1 136
DOSTA7
1101
DOSTAT
470
DOTRlP
1004
DOTRP1
1193
DOTRP2
1 20 1 «
DOTRP3
1199
DOTRP4
1 205
1495 1497'
9 591 1037
20 37
mo»
1506 1056
1402
523
965«
96 9
509
966
650
1403
1 236»
1 127»
114 2»
10 9 4»
1112»
1134»
1140»
1 150
1006»
1106«
1196»
1 202
1 20 3 «
1 200 «
in07 1914
en
W
on on
M »
W en
DÛTRP5
1 209
1213«
DSßLE
544
656«
DSBI.IID
1 20«
DSCCRC
1252
1 9 3 9 M
2739
2800
DSCECC
74«
73
194 2
DSCREG
• 75«
76
9 22
1048
1563
2527
255 A
2563
2721
DSCRSZ
76
922
923
1248
1563
1940
2522
2527
2558
2670
2712
2721
2722
in;i::ii:;z
Vii
ECHI'AT
24 3 1
19 27
ENABLl
1 fl Ü 2 «
1 005
ENADL2
1007«
mo
ENAQL3
i non in 10«
ENADI.E
503
651
1793 «
ENAORT
970
i no6 «
ENAHTM
1394
1 407«
ENARET
1794
1798
1812«
ENBLE
543
646«
1865
ENBLED
127«
1 302
ENDEIID
129«
ENDENT
545
677«
EMTAIID H 2 II ENTAMT 55 7 60 2«
os on
N> »
M (Ji
1584 1939
1584 1585
2564 2574 2725
H* Ul
ENTCni 60 0« EHTClin 1431
EHTCMO 55 A
ËliTMDH 1 3 9 A
EXCIÌAS 50 1
EXCDIS
577
EXCENQ
503 »
FATCNT.
00»
PATCOD
07 II
FATCÛM
1319
FATECII
1510
FATER1
1367
FATERR
1093
FATRRl
1 160
FMTCII
492
FMTCII 1
1 635
FMTCII 2
1 670»
FMTCII 3
1600
FMTERR
1 622 »
FMINB1
1 720 »
FMTHU2
069
FMTÛI0
0 5 Ì
FMTÛ1 1
0 0 4«
FMTO 1 2
nos
1415» 500 50 91
1369 1927»
1364« 1405 1624» 2523
v
1643 1649
1711« 2576 074 »
693
667»
1 409
503«
579
506
09
00
1 3 6 3 «
1091
1 370 «
1212
2595
1 369»
716
1 637 «
1 600
1 690»
1639
1726
160 9
059
090
0 (17 II
en en
1410 1421 1928
2575 2671
1674 1677
On Os bJ »
w en
FMTÛ14
705
70 7
791
FMTOT1
0 19
021 II
FMTOT2
fl 29 K
FMTÛUD
7ûn
03911
Pj4TOU 1
779 II
040
FMTOL12 ;
047
0 4 9 H
FMTOIJ 3
793
061 V
FMTOU4
065
0 60 H
FMTOUA
032
036 H
FMTSOP
027
914Ï
FMTSTA
030
91611
FMTSTS
0 96|
• 919
FMTTIÌP
9071
1 223
FMTVAL
700
795 D
GETD
4501
469
1164
GETDO
4621
1052
GETD1 A
1 107
1 1621
2069
GETSTA
4 7411
612
GETSTS
469 1
1197
1003
IlÛMPAT
24 2 1
121 1
linDliAD
620
630 a
1DLE0
596 H
912
IDLE1
600V
I OLE2
5(12
504
5(17
! OLE 3
601
611
6)51)
075
077
59 H
621
o\
on W
802 891 1
ut on
IDLB4
602
603 »
im.i:5
60 6
6 11 »
INÏTAT
2 4 1 »
1404
I NTPOS
1 320
1391 »
LAST
1 10|
Lf M.TST
4 û 5 |
1501
1020
LOWPOS
. 921
9 3
563
1050
LOWSET
1291 »
1457
1903
LOWSTl
1293
1 290»
LSTATE
600
793
965
901»
2571
2505
2059
LSTATW
306
505
646
902«
LWPSS2
93
METSTA
594
653 »
*
MRSTAT
90 V
99
293
307
1117
1213
1411
MSERM0
90||
91
10 59
MSERS2'
91
MTRTYP
69jf
90
NODATA
1 261
NVMl10
2 105
2107»
NVMl3 0
22 14
222 1 »
NVMl 40
22 17
2 2 20
222 3 »
NVMl50
2 19 1
2 2 4 0 1
H* Ul -4
1500
1366 1834 2183
1045 1055 1062
1590 2825
ON
ON »
(*> en
NVM190
2195
2207
2235
NVMl95
2226
224 3 »
NVM210
2 2 7 1 II
2273
NVM2 2Û
2266
2260»
NVM310
23051
2310
NVM410
2 352 1
2354
NVM42Û
23 3 7
2362»
NVM510
2 3 90 »
2396
NVM52Û
2391
2402» '
NVM610
20 31)
2040»
NVM71Û
2079
200 1 »
NVM715
200 3 H
2117
NVM720
2 01)7
2009»
NVM7 3 0
2092»
NVM735
2097
2102»
NVM740
2105
2107»
2109
NVM74 5
2100»
2100
NVM75Û
2102
2119»
NVM7Û0
2124
2129»
NVMBLK
1011
102
1977
NVMBYR
20 1 Û I
227 1
2270
NVMBYT
2019
2023»
2300
NVMBYW
2021»
. 22 3 4
2 34 7
NVMCBG
500
595
2103»
* 224 2 H
2197 2395
2352
2236
2359
o\ ©\ N>
Ui
2334
ai 00
nvmer
2225
2300»
nvmfat
29fl
1 377 .
1301»
nvmfnd
2206
2265
2 3 0 2»
nvmnin
2029
2032
2068»
nvmüpn
22031
2860
nvmro
296
2263 »
2010
nvmst»
1 9791
223 1
2392
nvmstp
19 7 71
2300
2339
nvmtbl
21621
nvmwr
28 1
2194
2334 1
pagß 00
265 1
26561
pagaûû
2652
2657 »
pagbr
2648
265 1 »
pagcûû
2653
• 2650»
pageoû
2654
2659»
pagret
2600
266 1 »
2757
pecekt
731
74
209 v peces2
7 4
1 263
1264
pcbûo
25171
2656
pg900
2519
2 5 9 n »
pgaû0
2657
2705»
pgb00
2707
2755»
pgcoo
2650
27601
pcdûo •
2762
2765 »
2243
2012
2767 290
2777 1050
2870
1263
ON
ON »
W
PGEÛO
2659
27701
PCPOO
2772
27751
POLCNT
104«
105
1006
PSBAl
1 5721
1575
PÛSBAT
>1567
15691
POSLOW
. 1 570
150001
POSTSZ
30
1239
1247
1256
2064
PÛSUPD
572
1192
1 562#
POSVAL
7 9#
00
1046
1056
205 1
2061
PÛSVNB
15311
1054
POSWRK
1236
15501
1562
1596
PRCRX
455
4 6 4
1505 .
. 1066
PRCTX
463
1 4521
2056
v
PRÛFAT
2 3 9 S
1092
PRSTAT
701
79
960
1094
PRSTS2
79
PRTFAT
2301
PWRDN
263
2001
PWRERÛ
2016
20701
PWRER9
20 4 6
2071 «
PWRPHE
20 2 3
20.10
2069«
PWRUP
250
204 «
PWRUPO
297
299«
1553
■ 1552
10021
1393
os os
K> »
W VI
1559 2852
1043 1062
2019
2828 2832
M OS
PWRUP2
2797
PWRUP4
2302
PWRUP5
20 1 1
PWRUP6
2 0 3 2
PWRUP7
2035
PWRUPO
204 2
.PWRUP9
20671
PWRUPA
301
QUESTA
569«
RAMSTP
2156«
RCNMES
615
RECDFL
103«
RECRS2
106
RECniJF
105«
RECST1
456
RECSTS
455«
REQVRD
147«
RESET
601
RESETI
254 1 «
RETEXC
57 2 «
RETVAL
635
RMRS
2500
RMRS 1
2674 «
£62 669 2071 2351
597 1 Q 60
623 600
9tìfl 1201
2600 630
20001t
2ÛÛ5 i
201 411
2034 II
203011
2044 1
2795 «
650
2749
2270
6131
104
106
4 70|
604
26031
254 0
6 1 6
7001
26 1 0||
2679
691 731 1379
1QÛÛ
695 1887 1920
1009
Os
Os »
W Ul
RMSERR
2618
2621
2647
RSTl 1
2567
2735
2 7 3 8»
RSTl1 A
2581
274 4 »
RSTl 2
274 7 1
RSTlA i
2529
2580»
RSTAMl-
2717
2721 »
RSTAM2
2727»
273 1
RSTAMT
2578
2683
271 1 II
RSTBAS
94»
96
2604
RSTBSZ
96
RSTCNT
86»
87
1060
RSTCOM
1 Û56 »
253 2
2745
RSTER1■
2537»
RSTER2
2539»
2542
2561
RSTERA
2724
275 1 *
RSTERR
253 1 »
2586
2687
RSTFAT
2535
2594 »
RSTFT8
2593 »
2719
RSTMAN
2556
2570»
RSTMNl
2553
2571 »
RST
184 1 »
1 356
RSTRMl
2 6 1 fl »
26 36
RSTRM2
2615»
2633
RSTRM6
2522»
2573
2663 2667 2676 2686»
1957 2714
2752
RSTRMS
254 6
2505«
RSTTRY
2 4 6 H
2594
RSTVAR
05 *
06
2673
RSTVSZ
06
141«
SERENO
722 .
723
727«
SEBENU
6918
SEBENT.
679
703«
SETERR
i 8 2 5 y
1033
1036
SETFAT
24 4 1
1 420
SETI NO
1 053 1
1067
SETINI
1055
1 050«
SETIN2
1057
1066«
2860
SET INT
702
1 027«
SETLI H
93«
94
564
94
SETPO
553
694 «
SETPOS
696
713«
SETPTM
1322
1 420«
SETSER
540
663 «
SETSIin
1321
SETSR1
660 «
675
SOFTER
542
547
552
6 39 «
670
14 15
1622
1061
554 707 1025
Os Ol
1027
555 556 559
711 726 820
2539
SPÛSIID
130»
1849
2049
STATE
99»
100
982
1151
STATNQ
152»
STCRK
385»
656
663
670
STCIIK f
306»
576
1301
1793
STRI OH
4 67
603
6 1 0
900
STH20M
1 1 08
1 340»
1046
2010
STR60M
967
1 336#
10 00
STRMIL
1 327»
STRI IM
1334
1 343#
TBCNDN
542»
TßCMDS
562»
TßCMDW
552 »
605
TI MEUT
96»
97
1 327 .
1340
TIMDMY
1 34 0 »
v
■TI M INT
267
1 350#
TIMSTP
1 203
1364
1 423 »
1011
97»
93
1336
1426
TMRTS 1 .
1026
1 029»
TMRTST
1 024 »
1475
1901
TRIPST
1 0 (14 fi
1 105
TRIPTM
1 207
1321
14 17#
TRPPAT
245 #
14 17
TRPRET
2 2 6»
1 U17
Ol
ON
*>>
»
<JÌ
m
2039
677
1162 1325» 2854 2067
1353
1Q5Û
>
l-l
On
TBTPOL
2271
1204
IJN LOCK
ou
92
562
1057
92
1597
VALUE
797
002«
VALUES
640
654
003«
VLIÇIIO
HU«
916
1000
1220
wonVHP
107 «
100
450
022
1247
1 256
1261
1667
1607
2024
2209
2229
2232
2357
2009
2472
WRKBFI
106«
107
405
490
WRKDS'Z
107
100
1261
1260
WTIIDAT
137«
©\ Ol
1597
2022
036
1214
1239
1260
1522
1551
2036
2187
2 200
2276
2304
2345
2044 2055 2473 .
os os ts> »
Cji (Ji
Cross re fe rünce
1 i s ti ng
(MI CREI?
versi on
4.0)
Symbo1
Refs IH = définition
$ = write <blank> = read)
ACHPUD
13)«
1196
ACTBLK
ino*
ini
2156
2)09
2203
2212
2263
V
23 4 2
2005
AMTBF
ino il
109
692
003
2494
2550
2669
AMTS2
109
609
2495-
ASCCRC
299
9 40 «
1 243
ASCECC
761
7 7
943
ASCREG
7711
70
940
1047
1049
1230
1523
ASCRS2
73
94 1
12 30
1240
1524
15 27
ASERSZ
77
BADIIOM
mi
121 11
1250
1274
DATAMT
Ü9 H
01
659
1051
1255
0ATAS2
Û 1
660
1 255
Ìv25 7
QATCIIT
fll «
03
1052
1267
1570
BATCS2
0 3
660
1267
1269
1571
BLKMOV
40311
407
409
690-
730
823
1216
1525
1550
1044
2053
CllGPRV
505 II
2537
25 3 0
2747
2740
CLR AM
719
24 93 «
CLRAMT
11)59
1936
2494
CLRBAT
54 6
659«
c liidiid
1301
CLRBKl
24 77 1
2479
CLPBLK
29 1
661
24751
2496
2565
CLRSER
549
6701
CL.RSHD
1331
CLRWK
321
24 7 1 1
clrwrk
1260
1550
1650
24721
CMßCBF
1091
*110
565
607
704
1040
2603
2610
2611
CMßOSZ
1 10
cmddat
632
634 1
,
CMDOIIY •
637
64 3 1
CMCRX
619
1501
1 0061
cnmës
599
623 1
CNTXPL
1021
103
569
592
1114
COMPAT
2401
1 363
CONECC
34 1
35
1529
v
CRC
942
1520
194 1
24 2 1 1
CRC 11Q
24 2 2 1
24 26
CRC210
24 4 7 1
24 54
CRC 2 2 0
24 5 1
2 4 5 3 1
CRC 1 NI.
23 11
2260
2 349
24 2 1
CRCNlll
2 100
2 4 2 3
2 4 24
2 4 46 1
CRCPLY
2 3 3 1
24 52
CR XII LO
17 5 61
1 770
1 777
©\ -J
2065
1031 1B3B
2661
os os
M »
U> Ul
CRXULl
1757»
1 757
CRXBL2
17681
1773
CRXBL3
1764
1 773»
CRXBL4
1766
1 775»
CRXBVL
j r? 51
1734
1 762Ä
CRXRYT
1 7 1 t i ti
1607
CRXCWT
1 7301
1750
CRXFAT
1912
1 9 1 Q
1 926»
CRXPIN
1910
1914»
CRXFN1
1916
1 923 »
CRXMES
10 0 4
1 007»
CRXMLP
1 907»
19 11
CRXMRT
1919»
1924
CRXMSO
1 Û 9 5 »
1095
CRXMS1
1092
1 090 »
1090
CRXMS2
1 fi 96
1901»
CRXPEO
1749
1 753 »
1753
CTLECC
127 2
1 522 »
2742
CTLSIJM
0 3 4
922»
1526
CTYBL1
340»
361
373
CT Y H 1.2
3 4 4 »
3 6 5
CTXBL3
34 7 »
367
369
CTXBL4
351 B
375
CTXRL6
341
365»
CTXBL7
343
3691
CTXQLÜ
332
334
CTXBL9
347
375 ï
CTXBLP
33411
350
CTXBVT
3261
14 0 4
CTNCN 2
1 502
1 507*
CTXCNC
1461
150011
CTXCNP
-1466
1 470
CTXCWT
1 46311
1463
CTXME1
1 457Ï
1500
CTXMER
1485
1491
CTXMES
910
1 455 1
CTXMLP
1 4 0 2 H
1407
CTXMSO
14 59
1 466 «
CTXMS1
14 6 4
1 4 74 «
CTXMS7
1 4Û0
140911
CTXMSP
1 4 70 1
1471
CTXPWT
1 4 72 1
1472
DATE
031
A4
DATES2
fi 4
DECADI
1 004 U
1012
DECADO
924
1 00211
DECSin
4 3 3 1
44 3
DECS02
4 39
44 1 ï
DECSlIfi
4 2 û |
12 4 9
371 N
1490
1504»
15 10#
26 3fi 2732
UM 1 1 2 5 0 1 265
1565 1 5(16 1 59 Û
9\
ve
1270 2723
1832 -2520
©\ o\
N) Ol
DELSÛÛ'
5 2 2 *
1402
14 95
DEL00P
5 2 3 1
523
DI.SAB1
962
9 6 5 t
DISAB2
960 1
969
DI SAB3
970|
DISABL
: 305
509
959*
DISBTM
i 39611
DISRET
963 |
966
DISSTA
6 4 9 t
650
DISTMI
1 4 0 2 H
1403
DÛACCT
11 90
1 236*
2037
DOST4A
1 124
1127*
DOST5A
1 140
1142*
DOSTA1
1 Û9Û
1 094 *
DOSTA3
1109
1112*
DOSTA4
11171
DOSTA5
1110
1134*
DOSTA6
1 136
11 4 û *
DOSTA7
1101
1 150
1150*
DOSTAT
470
1006*
1506
DOTRlP
1004
1106*
DOTRP1
1193
1 1 06 H
DOTRP2
120 11
1 202
DOTRP3
1 199
1 203*
DOTRP4
1 205
1 200 *
1007
1056
on On
W <Jl
1914
>
t-k -4 O
D0TRP5
1209
1213#
DSBLE
544
656 #
DSBLIin
1 2(1 II
DSCCRC
1252
1 939#
2739
2800
DSC12CC
74«
73
1942
DSCREG
75«
76
9 22
1048
L
2527
2558
. 2563
DSCRS2
- 76
922
9 23
1248
1940
2522
2527
2670
2712
2721
»
DSERS2
75
ECIIFAT
24 3 «
1927
ENABLl
1 802«
1805
ENABL2
1007«
1810
ENABL3
1808
1810 V
ENABLE
583
65 l.
1 793«
ENABRT
970
1 006#
ENAflTM
1394
1 407#
ENARET
1 794
1 7 9 Û
m 2#
GNflLE
543
6 4 6 #
10 6 5
ENBLED
127«
1 302
ENDEIID
129«
ENDENT
54 5
6 77 3
EMTAIID
14 2«
EUTAMT
557
69211
>
H* -J
1563
2721 1563 2550
2722
1584
1504 2564 2725
1939
1585 2574
On Os
«t
W Ol
ENTCB1
6 8 8 H
693
ENTCIID
143«
ENTCMß
550
667«
ENTMDN
13 9»
1 409
EXCDAS
58 1
583 «
EXCDIS
• 577
579
EXCENß
'583«
586
FATCNT
88«
89
PATCOD
87«
88
FATCOM
1319
1 363 «
FATECI!
1510
1891
PATER 1
1367
1 378«
FATERR
1093
1212 '
2595
FATRRl
1 168
1 369«
FMTCII
492
716
FMTCII 1
1635
1 637«
FMTCII 2
1670«
1680
FMTCII 3
1688
1690«
FMTERR
1 622«
1639
FMINÖl
1 720«
17 26
PMTNQ2
869
1609
FMTÛ10
851
859
FMTOl1
8041
090
FMTO 12
805
087«
)4)5|
580 50911
1369 1 9271
1 364 « 1405 1418 1421 1928
16241 2523 2575 2671
1643 1649 1674 1677
1711« 2576 074 1
FMTÛ14
7115
707
791
FMTOT1
019
02111
FMTOT2
0291)
FMTOIJD
7 ü û
0 39 1
FMTOU1
779#
840
FMTOU2
047
0 4 91
FMTOIU
793
0611
FMTOU'4
065
0601
FMTOUA
032
0361
FMTSOF
0 27
9141
FMTSTA
030
9161
FMTSTS
09611
919
FMTTRP
907 II
1223
FMTVAl,
700
7951
GETD
4 5fì H
469
1164
GETDO
4 62 1
1052
GETD1 A
1 107
11621
2069,
GETSTA
4 7 4 1
6 1 2
GETSTS
4 6 9 S
1197
1003
IlÛMPAT
2 4 2 H
1211
IIRDBAD
620
6 30 1
IDLEO
5061
9 1 2
I DI.E 1
6ons
I OLE 2
5 Û 2
5 0 4
507
IDI. 123
601
61 1
6 151
075
877
501 |
621
882
8911
-j W
0\
o\
Ni
-U
W Ol
JDLB4
602
I DLE5
605
IMTFAT
2 4 1«
INTPOS
1 320
LAST
a 101
LIMTST
4 0 5«
LOWPOS
92«
LOWSET
1291 II
LOWSTl
1293
LSTATE
600
LSTATW
386
LWPSS2
93
METSTA
594
MRSTAT
9 0«
MSERN0
90«
MSERSZ
91
MTRTVP
Û 9 H
NODATA
126«
NVMl10
2105
NVMl30
2214
NVMl40
2217
NVM150
2191
6 0 3 « 6131 1 4 04 139)1
1501 10 20
93 563
1457 1903 1 290 |
793 965
2571 2505
505 646 .
6 5 3 N 99 293
1117 1213
91 1059 •
90
210711 222 1 I-
2220 2223 B 22401
1050 ■ 1500
90111 1366 2059 90211
,307 1045 1411 1590
1834 2183
1055 1062 2825
M -J
«t
NVMl90
2195
2207
.2235
NVM195
2226
2243*
NVM21Q
2271 *
2273
NVM220
2266
22601
NVM31Û
2305*
2310
NVM41û
2352*
2354
NVM4 20
-2337
2362*
NVM510
>300*
2396
HVM5 2Û
239 1
2402 *
nvm610
2030
2040*
NVM710
2079
200 1 *
NVM715
2003 1
2117
NVM720
2087
2009*
NVM7 3 0
2002»
NVM7 3 5
2007
2102*
NVM7 4 0
2105
2107*
2109
NVM7 4 5
2100*
2100
NVM750
2102
2119*
NVM700
2124
2129*
nvmdlk
101 |
102
1977
nvmbyr
2 010 1
2 2 7 1 '
2270
nvmbyt
2019
20 2 3 *
2 300
nvmbyw
202 11
2 2 3 4
2 3 47
nvmcbg
500
595
2 10311
2242*
2107 2305
.2352
M -J Cil
2236 2334
2359
os os bJ
Jà. W Cil
NVMER
2225
NVMFAT
200
NVMFND
2206
NVMNIB
2020
NVMOPH
2203«
NVMRD
206
NVMSTl
1 970«
NVMSTP
1 977«
NVMTBL
2152«
NVMWR
201
PAGB00
2651
PAGA00
2652
PAGBR
2640
PAGCÛÛ
2653
PAGEOÛ
2654
PAGRET
2600
PECEKT
73«
PECESZ
74
PCBÛÛ
2517«
PGOOO
2519
PGAOO
2657
PGBOO
2707
PGCOÛ
26511
PCDOO 276 2
2300«
1 377
1301«
2265
2302«
2032
2060«
20 60
2263«
2010
223 1
2392
2300
2330
2194
, 2334«
2656«
2657«
265 1 «
2650«
2659«
266) «
2757
74
2 09
1263
1264
2656
2590«
2705«
27551 2760 11 2765 «
2243 2012
TISI 2777 200 1050
On Os N>
6
(SI
2870
1263
>
M -I 9\
PGE00
2659
PCF00
2772
POLCNT
104k
PSBAl
1572k
PÛSBAT
1567
POSLOW
1570
POSTSZ
30
POSUPD
572
POSVAL
79k
POSVNIi
153k
POSWRK
1236
PRCRX
455
PRCTX
463 .
PROFAT
239 k
PRSTAT
70k
PRSTS2
79
PRTFAT
230 k
PWRDN
263
PWRERO
2016
PWRER9
2046
PWRPRE
2023
PWRUP
250
PWRUPO
297
27701 27751
105 1006 1575 1 569«
15000k
1239 1247 1256 1553 2064
1192 1562k
00 1046 ' 1056 155 2 2051 2061 1054
1550k 1562 . 1596
464 1505 1066 1002k 1452k 2056 1092
79 960 1094 1393
v
200 k 2070k 2071k
2030 2069k 204 k 299 1
> i-*
-a -a
1559 2852
1843 1862
2819
2028 2832
os os
-b. W Ol
PWRUP2 2797 2 û 0 0 il
PWRUP4
2302
20051
PWRUP5
281 1
20141
PWRUP6
2 0 3 2
2034 1
PWRUP7
2835
20381
PWRUPO
•2842
2 8 4 4 1
PWRUP9
2067 i
PWRUPA
301
27951
QUESTA
56911
650
2749
RAMSTP
21561
2270
RCNMES
615
6131
RECBFL
1031
104
RECRSZ
106
RECBUP
1051
1 06
RECSTl
456
4701
RECSTS
4551
604
REQVRD
1471
RESET
681
2603 1
RESETI
254 1 1
2548
RETEXC
5721
616
RETVAL
635
7001
RMRS
2508
26101
RMRS 1
2674 1
2679
66 2 "669 691 2871 235 1
597 1060 1000
623 600 695
960 1201 1009
2600 630
On Os N>
£» W (i)
731 1379
1887 1920
>►
i—1 -4 00
RMSERR
2610
2621
2647
RSTl 1
2567
2735 '
27308
RSTl1A
250 1
27448
RST) 2
274 7 8
RST 1 A
2529
25008
RSTAMl
2717
2721 8
RSTAM2
V 27 27 B
2731
RSTAMT
r 257B
2683
2711 H
RSTBAS
94«
96
2604
RSTBSZ
96
RSTCNT
068
87
1060
RSTCOM
10568
2532
2745
RSTER1
25378
RSTER2
25398
25 4 2
2561
RSTERA
2724
2751 8
RSTERR
253 1 8
2586
2607
RSTPAT
2535
2594 8
RSTPTfl
25938
2719
RSTMAN
2556
25708
RSTMN1
2553
2571 8
RST iû
10 4 18
1 356
RSTRMl
261 88
2636
RSTRM2
26158
263 3
RSTRM6
2522 8
2 57 3
2663
1957
2667 2676 26868 ^
vo
2714
©N ON
M 'Jì
RSTRMS
2546
2585«'
RSTTRV
24611
2594
RSTVAR
85*
86
2673
RSTVS2
86
S f) ATI m
Hl«
SEDENO
722
723
727»
SEBEN1
691*
SEDENT
679
703«
SETERR
1 82511
1833
1836
SETFAT
24 4 11
1420
.
SETINO
1 853 1
1 86 7
SETI NI
1 855
. 1858«
SETIN2
1857
1 066«
2868
SETINT
782
1827«
SE'PLIM
93«
94
564 1061
• 1827
SETI.SZ
9 4
v
S ET PO
553
694 »
SETPOS
696
713»
.
SETPTM
.1 3 2 2
1 420»
SETS I2R
548
66 3 »
SETSHD
1 12«
SETSRI
6 6 8«
675
SOFTER
542
54 7
552 554
555
6 39 «
678 707
711
1415
1622 1825
2539
OS Os N>
JU M rji
556 726
559 820
oo o
SPÛSIID
Ì 30 H
1049
2040
STATE
99«
100
902
1151
STATNB
15 2a
STCRK
30511
656
663
670
STCIIK 1
31168
576
1301
1703
STRIÛM
467
603
610
900
STR20M
1 100
1 340«
1046
2010
STR6ÛH
967-
1 3368
1000
STRMIL
1 3278
STRI IM
1334
1 34 3«
TBCNDM
5428
TBCMDS
5628
TBCMDW
552 8
605
TIMEMT
968
97
1327
1340
TIMDMY
1 3408
TIMIMT
267
1 3 50 B
TIMSTP
1 203
1364
1 4 2 3 8
10 11
978
93
1336
1426
TMRTS1
1 026
10298
TMRTST
1024 8
1475
190 1
TRIPST
1 0 Û 4 1
1 105
TRIPTM
1 2 0 7
132 1
14 178
TRPPAT
246 8
14 17
TRPRET
2268
1 107
2039
>
Hl 00
677
1162 • 13251 2054 2067
1353
10 50
On ON
W (Jl
TBTPÛL
22711
1204
UNLOCK
91 «
9 2
562
1057
1597
92
1597
VALUE
797
00211
VALUES
6;4 0
654
00311
VLISIID
14 01
9 1 6
10 0 0
1220
2022
MÛRKDP
10711
10 0
450
022
036
124 7
1 256
1261
1260
1667
1607
20 2 4
2036
2 209
2229
2232
2276
2357
2009
2472
WRKDPl
1061
107
405
490
2044
WRKDS2
107
100
1 261
1260
2473
WTIIDAT
137«
Os Os bJ
t*. W Wl
1214 1239
1522 1551
2107 2200
2304 2345
2055
oo
N>
Ji^EL «S 500 DRUCKER PROGRAMM CA Û040/XI version 4.21.57 15-Oct-79 14:6:17
! 1
2 Titel Modell 6500-Druckerprogramm
3 PEPPRP - Drucker '
•1 v. Aufbau-Organisation füt Drucker-Hauptfluß
5 . Version mit zusätzlichem Vermittler
6
7 ' :
ö
9 COPYRIGHT 1979 PITNEY BOWES INCORPORATED
; 10 1 L
! 12
13 CHECKPOINT 12 ' SAME OBJECT CODE AS OCTOBER 4,1979
14 OBJEKT-KODE GEHÖRT ZUR SERIE INTEL 8(348 MIKROPROZESSOREN
* " v
15
16 INCLUDE DM2 : EQUIV
17
18 EQUIV - Drucker
19 Äquivalenzen
20
21 RAM-Speicherplätze
22 0020 POSTII EQU 2011 "PortogebUhr ist"-Header ao
0\ ©\ N>
<Jl
5ÛÛ
23
24
25
2 6
27
28
29
31
32
33
34
35
3 fi
37
38
39
PRINTER PROGRAM CAÛÛ40/11 version 4.21.57 15-Oct-79
ÛÛ21
POSTß
EQU
2111
gegenwärtige Portogebühr (3)
0024
DATEII
EQU
2411
(X) 'Datum-ist'-Header
00 25.;
DATEB
EQU
2511
(X) gegenwärtiges Datum (3)
0028°
TEMP
EQU
• 2011
(X) Zwischenspeicherplätze (8)
0030
DELTA
EQU
3011
Portogebührenänderungen (6)
0036
STATU
EQU
3611
Status-Header
0037
STATUS
EQU
3711
Status
0038
DSTAII
WQU
3811
Diagnosestatus-Header
0039
FESTA
E QU
3911
verhängnisvoller Fehlerstatus
00 3 A
INSTA
EQU
3 All
(X) verhängnisvoller Fehler, Information
00 3 Q
DSSTA
EQU
3ßil
Status außer Betrieb setzen
003C
I Nil
EQU
3CII
Eingabe-Header
0030
IND
EQU v
3011
Eingabe-Puffer (3)
(X) = Gegenwärtig nicht verwendet PAGE
500
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
PRINTER PROGRAM CA 8040/11 version 4.21.57 15-Oct-79 14:6:47 U
00 U\
0000 ORG 0
Seite 0 enthält Anfangssetzung, Ilauptprogramm-Scheduler und Fühlerhandhabungsroutinen
INCLUDE DM2 : IN ITP
INITF - Drucker Programm
Benötigte Stapelebenen = 5, wenn kein Fehler
Anfangssetzung Koimt.-Header und starte Zeitgeber (15 Zyklen = 62,86 usec.)
0000
B8
36
INITi
MOV
RO. IST AT II
Anfängssetzung Statusheader'
0002
B0
80
MOV
0RO, fl 00011
0004
18
INC
RO
Zeiger auf Status
0003
BO
OO
MOV
eno,no
Anfangssetzung
0007
88
38
MOV
RO, iDSTfUI
AnfangsSetzung Diagnosestatusheader
0009
BO
8D
MOV
@RO, | 0ÜDII
ÛÛÛB
18
INC
RO
Zeiger auf verhängnisvollem Fehlerstatus
OOOC
BO
93
MOV
0UO, »9311
Anfangssetzung
OOOE
55
STRT
T
Starte Zeitgeber
Bringe Riegel in Ausgangsstellung urd Vermittler nach unten (71 Zyklen = 297,52 usec. min
000 F
B9
6E
MOV
IU ,» 1 10
107 Zyklen = 448,38 usec. total 49,32 msec.
9s OS
u>
Ui
JOEL 6500
I
62
63
64
65
66
67
68
69
70 7 i
72
73
74
75
76
77 70
79
80 Ol 82
. 83 84
PRINTER PROGRAM CAQ040/II version 4.21.57
0011
14
DD
INIT1:
CALL
SENSE
0013
37
CPL
A
0014
P2
1 1
JB7
IN IT 1
0016
D2
22
JB6
INIT3
00 1 B
34
A7
CALL
DL 1.50
00 1A
E9
11
DJNZ
Rl, IN ITI
001C
74
BE
CALL
FREEZE
00 1 E
B9
85
INIT2;
MOV
RI , «(1511
0020
24
AB
JMP
ERROR
Anfangssetzung für Motore a
00 22
23
EE
INIT3 s
MOV
A, «0EEII
0024
39
OUTL
PI, A
0023
A8
MOV
RO, A
0026 ■
34
A3
MS74 :
CALL
DL300
0028
E8
26
DJNZ
R0,MS74
0Û2A
89
PF
ORL
PI , »OFF.
Anfangssetzung für Schal
002C
1 4
BE
CALL
SWITCH
002E
AE
MOV
R6 , A
002F
C5
SEL
RDO
00 30
B8
37
MOV
R0,«STA
15-Oct-79
1 4 s 6 : 4 7
£ N>
t
Stift 1!
Springe, wenn Riegel vorne = Licht = Niedrigpegel an CPU-
Springe, wenn Vermittler unten = Licht = Niedrigpegel an
CPU.Stift 1
Setze zusätzlichen Vermittler Fehler "Vermittler nicht gefallen"
i f Ausgangsstellung (17.619 Zyklen = 73.832,009 usec.)
Betriebsenergie für Motore Warte 7 4 msec.
(72 Zyklen = 301, 71 usec. pro Aufruf)
Betriebsenergie für Motore abschalten
(35 Zyklen = 146,67 jisec.)
Prüfe "Dunkel", Lese Schalter Speichere "OSW"
Zeiger auf Status
► M
MODEL 6500
85
86
87 B 8
' 89 90 9)
92
93
94
95
96
97
98
99
100
101
102
103
PRINTER PROGRAM CAG048/11 version 4.21.57
00 3 2 AO MOV @R0, A
0033 B8 3 0 MOV RO^DSS
0035 AO MOV @R0,A
Anfangssetzung für Fühler (69 003 6. 14 DD CALL SENSE
00 3 8 AF MOV R7,A
0039 53 10 ANL A.1I0II
ÛÛ3B 40 ORL A,@R0
003C AO MOV @ RO, A
Anfangssetzung für DruckrMder
Û03D
54
23
CALL
S ST AT
00 3 F
34
51
CALL
CRECW
004 1
54
8C
CALL
I POST
0043 ZINIT EQU Ç-INIT
PAGE
15-Oct-79 14:6:47
Anfangssetzung Schalterstatus Zeiger auf Außerbetriebsetzungsstatus Speichere Schalter-Info.
Zyklen = 289,14 usec.)
Lese Fühler Speichere "OSENS"
Schaue auf Bit 4 der "NEW"-Fühler (Ausgangsstellung) "OR" in den Status . Wiederherstelle Status
(11,6 Zyklen = 48,61 usec. bis RTS)
Sende Status an Buchung
Warte auf RTS und empfangene Nachricht Anfangssetzung der Druckräder
MODEL 5600 PRINTER PROGRAM CA0048/11 version 4.21.57 15-Oct-79 14:6:47
104
INCLUDE DM2:MAI
105
1
106
MAINF
- PEP
Drucker-Ilauptfluß (erste Hälfte)
107
*
Stationärzustandsschleife
108
Benötigte Stapelebenen
= 4
109
110
0043
09
MANI :
IN
A.Pi
I
Moduliere Ziffern-Motor 2 msec. ein = 1/4 Leist'
111
004 4
D3
01
XRL
A, »1
Invertiere Bit 0
112
113
114
0046
39
OUTL
PI, A
Wiederherstelle neues Motor-Abbild
0047
14
DE
CALL
SWITCH
Lese Schalter
115
00 4 9
2E
XCII
A, R6
Rette "NEW" in OSW
116
004 A
DE
XRL
A i R6
Suche nur nach Änderungen
117
118
119
0Û4D
C6
62
JZ
MAN3
Springe, wenn keine Änderung
004D
' 23
3 F
MOV
A, B3PII
Lösche Bits 6 & 7 des Außerbetriebszustandes
120
00 4 P
54
20
CALL
ENADL
121
0051
FE
MOV
A / R6
Bringe neue Bits in 6 & 7 des Außerbetriebssetzungsslx
122
00 5 2
C6
58
JZ
MAN 2
Wenn alles abgeschaltet, fahre fort
123
124
0054 0056
43 54
08 32
ORL CALL
A, «Oli DSADL
Wenn irgendeines angeschaltet, stelle sicher, daß Antwort von
Buchung erforderliei
Setze außer Betrieb wie erforderlich
125
0058
88
37
MAN 2 :
MOV
DO, V status Zeiger auf Status
126 -
005A
FO
MOV
A,@R0
Erhalte Status
MODEL 650Û PRINTER PROGRAM CA8048/11 version 4.21.
127
005B
53
3 F
ANL
A , II 3 PH
128
005D
4 E
ORL
A, R6
129
005E
A9
MOV
@110, A
130
00 3 F
C5
SEL
RB0
131
0060
54
23
CALL
SSTAT
132
133
006 2
C5
MAN3 :
SEL
RB0
134
135
0063
14
DD
CALL
SENSE
136
0065
2F
XCII
A, R7
13 7
0066
DF
XRL
A, R7
138
0067
C6
98 ■
JZ
INTRP
139
140
0026
ZMAIN
EQU
Ç-MAN1
141
142
PAGE
15-Oct-79 14:6:47
Lösche Bits 6 & 7 Einsetze neue Bits Wiederlìerstelle
Sende neuen Status und Aussprung
Lese Optik
Rette "NEW" (neu) in "OSENS": Suche nur nach Änderungen Springe, wenn keine Änderung
1 5-Oct.-<79
•DEL 6500 PRINTER PROGRAM CAQ048/11 version 4.21.57
INCLUDE DM2 s SI1DLP
SHDLP - Drucker .Fühlerhandhabungsroutine Benötigte Stapelebenen = 4
Zeitgabe: Max. To Return (No Corniti.)
Max. To CTS if RTS is on
©\ «>-
w
Ul
14:6:47
143
144
145
146
V
147
i
148
149
150
151
152
153
0069
A9
154
006A
53
0F
155
006C
C6
72
156
006E
B9
81
157
0070
24
AB
158
159
160
0072
P9
161
0073
53
PO
162
0075
47
163
0076
E3
22 Zyklen: = 92-190 usec, 84 Zyklen. = 352 ,000 usec.
Schrittmotor-Dekoder
SIIDL :
MOV
ANL
JZ
MOV
JMP
RI ,A A. IfOPJI SI1DL1 RI, 18111 ERROR
Rette Änderungen in R1 Schaue nur auf Kodierer Fehler, wenn Kodierer bewegt
Kodierer bewegt, wenn unzulässig
Sprung auf Basis von Änderungen SHDLI: MOV A.Rl Wiederherstelle Änderungen
ANL A,K0P0)I Schaue auf Nicht-Kodierer
SWAP A Bringe Jn niedrige Ordnung
MOVP3 A,@A Ubersetze
> M
ve
i
MODEL 6500
PRINTER PROGRAM ca8048/ 1 1 version 4.21.57
164
007 7
7 2 7 F
JB3
SHOME
165
0079
92 9 1
JB4
SIITN
166
007B
09 82
MOV
RI, //82II
167
007D
24 AB
JMP
ERROR
168
V
169
-
Ausgangsstellung verändert
170
007P
FF
SIIOME; MOV
A,R7
171
0050
37
CPL
A
172
0081
53 30
ANL
A, // 3 011
173
0083
96 98
JN2
INTRF
174
0085
f0
MOV
a.gro
175
0086
72 98
JB3
INTRF
176
0088
4 3 08
ORL
a, 08h
177
008A
a0
MOV
0ro,a
178
0060
2 3 20
MOV
A, // 2 011
179
00BÛ
54 3 2
CALL
DSABL
. 180
008F
04 96
JMP
S111N 2
181
182
Riegel und/oder
Vernüttl er
183
009 1
f0
Sil in: MOV
A ,0 r0
184
0092
53 c3
anl
A, //0C3H
1 85
0094
6 a add
A, R2
15-Oct-79 14:6:47
>
H* <ö
Ausgangsstellung geändert Riegel oder Vermittler geändert
Ungültiges Knderungsmuster Schaue auf Daten.
Ausgangsstellung (HOME) = 1, wenn nun ein
Schaue nur auf HOME
Wenn ein, Aussprung
Beide aus, erhalte Status
Aussprung, wenn bereits ausgelöst
Nicht ausgelöst, auslöse Maschine
Wiederlìerstelle Status
Setze Auslöse-Außerbetriebsetzungs-Bit
Setze Maschine außer Betrieb
Sende Status und Aussprung geändert
Erhalte Status Lösche Bits 2-5
Gebe neue Daten ein (Lösche Auslösung)
OS OS
-u.
'Ji
MODEL 65ÛÛ PRINTER PROGRAM CA8048/11 version 4.21.57
186 009 5 AO MOV @R0,À
187 0096 54 23 SHIN2s CALL SSTAT
188
189 002F • ZSIIDL EQU Ç-SIIDL
190
191 • PAGE
v
15-Oct~79 14:6:47
Wiederherstelle Status Sende Status und Aussprung
M V© W
MODEL 6 500 PRINTER PROGRAM CA0040/11 version 4.21.57
INCLUDE DM2 s IN'J'RP
15-Oct-79
14:6:47
192
193
194
195
196
197 1 9Q
INTRF - Drucker
Prüfe Vermittler im llauptf luß-Scheduler Benötigte Stapelebenen = 0
Zeitgabe, wenn kein Fehler -
199
Minimum
4 Zyklen =
= 16,762 usec.
200
Mittelwert -
16 Zyklen =
= 67,048 tisec.
201
Maximum
20 Zyklen =
= 83,809 Msec.
202
203
Erniedrige Zähler, wenn Riegel in Ausgangsstellung und Zähler nicht bereits Null
204
0098
FF
INTRF: MOV
A.R7
Schaue auf Fühler-Abbild
205
0099
37
CPL *
A
Riegel nun vorne = 1
206
009A
F2
AB
JB7
MAN4
Aussprung, wenn Riegel vorne
207
009C
D5
SEL
RB1
Riegel in Ausgangsstellung (HOME)
208
009D
FA
MOV
A.R2
Schaue auf Zählung
209
009E
C6
A 2
JZ
INTR2
Fahre fort, wenn Null nicht Null
210
00 AO
EA
AA
DJNZ
P2,INTR3
nicht Null; erniedrige, Aussprung, wenn jetzt noch
2 11 212
Zähler ist Null.
Fei il er, wenn
Vermittler oben und Steuerung außer Betrieb gesetzt
213
00A2
C3
INTR2: SEL
RB0
©\ ©\ m
«k.
w
U\
MODEL 65ÛÛ PRINTER PROGRAM CAÖ04Ü/11 version 4.21.57
214
00A3
ÛA
IN
A, P2
215
ÛÛA4
37
CPL
A
216
Û0A5
^F2
AB
JB7
MAN4 .
217
ÛÛA7
FF
MOV
A.R7
218
OOAO
S 2
JB6
1NIT2
219
00AA
C5
INTR3:
SEL
RBO
220
221
0013
ZINTRF
EQU
$-INTRF
222
223
PAGE
u\
15-Oct-79 14:6:47
Schaue auf Steuerleitung
Strom an Vermittler jetzt = 1
Aussprung, wenn nicht außer Betrieb gesetzt
Schaue erneut auf FUhler-Abbild
Fehler, wenn Vermittler oben
Aussprung
>
M
MODEL 6500 PRINTER PROGRAM CA8048/11 4.21.57 15-Oct-79 14:6:47
224
INCLUDE DM2 :MAIN2
225
226
MAIN2 - Drucker •
227
V
Fortsetzung der PEP Drucker-IIauptf luß-Stationärzustandsschleife
228
Benötigte Stapelebenen
= 4
229
\
Zyklen =
2 30
*
Zeitgabe: 5
20,952 |isec., wenn keine Aktivität
231
37
Zyklen =
155,048 usec. auf CTS, wenn RTS ein
232
1
, 6 Zyklen =
6,705 usec. auf Ende nach RTS-Fehlprobe
233
234
OOAB
FD
MAN4: MOV
A, R5
Ist eine empfangene Nachricht in Warteschlange?
235
OOAC
96
B6
JNZ
MAN6
Wenn ja, springe.
236
OOAE
56
43
JT1
MANI
Kleine WS, springe, wenn RTS ebenfalls aus.
237
OOBO
34
53
CALL
CRECV
RTS, erhalte Nachricht
238
00B2
54
60
MAN5 : CALL
IIDR
Analysiere Header
239
00B4
04
43
JMP
MANI
Schleife zurUck
240
24 1
ÛÛB6
07
MAN6: DEC
A
War mehr als 1 Nachricht in Warteschlange?
242
0027
07
MOV
B5 , A
Wiederherstelle WS-Anzeiger
243
OOBB
C 6
B 2
JZ
MAN5
WS war 1, analysiere Header
244
OOBA
B 9
91
MOV
RI ,8 9111
245
OOBC
24
AB
JMP
ERROR
Einlaufende Nachricht überlagert
MODEL 6500 PRINTER PROGRAM CA8040/11 version 4.21
246
247 0013 ZMAIN2 EQU Ç-MAN4
248
249 • PAGE
-Oct-79
14:6:47
os
OS t>>
W Ul b*
so
OS
vo
-4
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 15-Oct-79 M:6:47
250-
INCLUDE
DM2:SWITCH
251
252
Switch - Drucker
253
Lese.Schalter,
prüfe auf steckengebliebene Eingaben.
254
Benötigte Stapelebenen =
0
255
256
Stelle sicher, daß
LED's 1 msec.
lang ausgeschaltet waren, bevor gelesen wird
257
Bei Aussprung ist RB1 gewählt
258
A = Statusäquivalent der Schalter
259
Zeitgabe = 27 Zyklen einschließlich Aufruf = 113,14 usec., wenn keine Wartezeit.
260
261
00BE
16
C 2
SWITCH: JTF
SWIT1
Springe, wenn Zeitgebermarke gesetzt ist
262
OOCO
04
JMP
SWITCH
Nicht gesetzt, warte
263
V
264
00C 2
08
SWIT1 INS
A, BUS
Lese Eingabe
265
00C3
37
CPL
A
Sollte 0 sein nach Vollendung
266
00C4
96
D5
JNZ
SWIT2
Fehler, wenn nicht
267
268
00C 6
9A
DF
ANL
P2 . S0DFII
Schalte Schalter ein
269
00C8
08
INS
A, BUS
Lese
270
00C9
8 A
20
ORL
P 2 , Ä 0 2 Oll
Schalte Schalter aus
I
MODEL 6500 PRINTER PROGRAM CA804B/11 version 4.21.57
271
272
00CB
53
FO
ANL
A, Ì0F01I
273
00CD
47
i
SWAP
A
274
00CE
E3
MOVP 3
A, @ A
275
00CF
B2
D9
JP5
SWIT3
276
OODi
53
CO
ANL
A,»OCOH
277
00D3
D5
SEL
RB1
27B
00D4
83
RET
279
.
280
0005
B9
61
SWIT2:
MOV
RI, Ï61H
2B1
00D7
24
AB
JMP
ERROR
282
00D9
B9
62
SWIT3:
MOV
RI,H62H
283
000B
24
AB
JMP
ERftOR
284
285
001F
ZSWITC
EQU
Ç-SWITCH
28 6
287
PAGE
15-Oct-79
14:6:47
Lösche Bits niedriger Ordnung Bringe Daten in niedrige Ordnung Ubersetze
Fehler, wenn Bit 5 eingeschaltet Lösche 6 Bits niedriger Ordnung
Aussprung
Hängengeblieben Unzulässiges Schaltermuster
MODEL 6500 PRINTER PROGRAM CAÛ048/11 version 4.21.57 15-Oct-79 14:6:47 v§
288 INCLUDE DM2 : SENSE
289
290 SENSE - Drucker
291 Lese die optischen Fühler
292 Benötigte Stapelebenen = 2
293
294 . Nach Aufruf warte wenigstens 1 msec., bevor Lesen der Schalter, oder "Dark" (dunkel)
295
Dai Aussprung A =
FUhlerlesewerte +
296
R0 =
Adresse des Status
297
R2 =
Ubersetzte Statusinformation
298
Zeitgabe = 64
Zyklen = 268,19 usec. einschließlich Aufruf
299
300
00DD
9A
BF
SENSE: ANL
P2, //OBFII
Einschalte Optik
301
00DF
34
A7
CALL
DL150
\
36 Zyklen = 150,86 usec.
302
177,66 usec. von
Einschalten ab bis Füliler gelesen
303
0 0E1
23
F 3
MOV
A.//243
2 msec. Schleife; 1.716 usec. von Abschalten
304
13 Zählungen = 416 Zyklen = 1.743,238 usec.
305
00E3
62
MOV
T.A.
Rücksetze Zeitgeberzähler
306
Q0E4
1 6
E6
JTF
$ + 2 .
Rücksetze Marke, wenn ein
307
00E6
08
JMS
A, BUS
Lese Optik
3 08
00E7
8 A
40
ORL
P2 ,//040H
309
os Os N»
W (Jl
MODEL '6500 PRINTER PROGRAM CA0Û48/11 version 4 . 2 1 . 57
310
00E9
AB
MOV
R0, A
311
00EA
53
F0
ANL
A, Ï0F0U
312
00EC
17
INC
A
313
00ED
47
SWAP
A
314
00EE
E3
MOVP3
A, @ A
315
00EF
12
F6
JBO
SENSI
316
00F1
AA
MOV
R2 , A
317
00F2
F8
MOV
A, R0
318
Û0F3
B8
37
MOV
R0 , 8 STATUS
319
00F5
83
RET
320
321
Û0F6
B9
63
SENSI:
MOV
RI, ï 6 311
3 2 2
00F8
24
AB
JMP
ERROR
323
324
POID
2SENSE
EQU
Ç-SENSE
325
326
0006
PÛFREE
EQU
10011-$
327
PAGE
15-Oct-79
14:6:47
Rette Lesewerte
Schaue auf 4 Nichtkoder-Bits
Zeiger auf 2-te 16 Bytes - Seite 3
Ubersetze
Bit 0=1 wenn unzulässiges Muster Rette neues Muster für Status Wiederherstelle Lesewerte Zeiger auf Status (für später) Aussprung
Unzulässige Fühlerkombination
Freier Platz am Ende von Seite 0
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 15-Ocb-79 14:6:57
>
329 0100 ORG 100H
330 Seite 1 enthält Kommunikationsroutinen und Fehlerhandhabungsroutinen
331
332 INCLUDE DM2:COUTF
333 . •
334 COUTF - Drucker
335 Drucker-Ubertragungsroutine
. 336 Benötigte Stapelebenen = 3, wenn kein Fehler
337
338 Bei Konflikt, Zeit einschließlich Aufruf von CTS:
339 Min. = 35,8 Zyklen = 150,019 |isec.
340 Max. ' = 37 Zyklen = 155,048 jisec.
34 1
342 Arbeitet in RB0; A,R0,R1,R2 zerstört, R5 abgeändert
343 Rl - Adresse "1
344 R2 - Bytezähler
345 Bei Normalaussprung: R2 = 0
34 6 R1 zeigt auf letztes Byte
347 R0 = 0
348 A = Abfall
349 R5 = Zahl empfangener Nachrichten in Warteschlange
350
On on
N>
4^.
6 500
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
3 68
369
370
371
372
PRINTER PROGRAM CA8040/11 version 4.21.57
15-Oct-79 14:6:57
o\
OS «t w
<JI
0100
1D
COUT1;
INC
R5
RTS, Erhöhe Q (Warteschlange)
0101
34
53
CALL
CRECV
Eingabe Nachricht
0103
4 6
00
COUT:
JANT1
COUT1
Eintritt - Springe, wenn RTS ein (T1 = 14,248 usec. max.)
0105
9;A
EF
ANL
P2,K0EFH
Ausgabe RTS
0197
B8
FC
MOV
R0,#252
Sperrzeit für 23,24 msec. (T13)
0109
34
94
COUT2:
CALL
DELI 0
Warte 92,19 usec. (Schleifenzeit)
01 OB
46
15
JNT1
COUT 4
Springe, wenn CTS ein
0100
E8
09
DJNZ
R0 . COUT'2
Versuche nochmals, wenn nicht Zeit vorbei
010F
B9
51
MOV
RI # 1511!
0111
24
AB
JMP
ERROR
Zeit vorbei, verhängnisvoller Fehler
0113
34
47
COUT3:
CALL
TESTI '
nicht letztes Byte, Ausgabe Zwischenstopp, prüfe 8-tes Bit-Echo
0115
34
93
COUT4:
CALL
DELI 9
wenn erstes Byte,. T4 = 171,79 usec; übergehe nächste 3 Kormentari
0117
56
87
JT1
.CEROR
Prüfe Zwischenstopp-Bitecho
0119
19
INC
RI
Zeige auf nächstes Byte
0 11A
34
9A
CALL
DELI 2
T5 = 1.135,619 iisec.
01 1C
Fl
MOV
A, @R1
Erhalte nächstes Byte
01 1D
B8
08
MOV
R0, «0
Zählung für 8 Bits
011F
97
CLR
C
Setze Ubertrag auf Startbit-Echo
0120
8 A
10
ORL
P2 , Il 1011
Ausgebe "Start"-Kante
0122
34
9B
CALL
DELI 1
0124
34
9 E
COUT5:
CALL
DEL8
> O
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
15-Oct-79
14:6:57
> o
373
0126
12
3F
JBO
COUT7
Springe, wenn nächstes Bit l'ist
374
0128
34
43
CALL
TESTO
Ausgebe 0 und prüfe vorheriges Echo
375
0 1 2 A
67
COUT6:
RRC
A
Bringe laufendes Bit nach C (llbertrag) , nächstes
376
012Q
E8
24
DJNZ
R0,COUT5
Schleife, wenn 8 Bits nicht erledigt
377
0120 v
34
9E
CALL
DELO
378
01 2F :
EA
13
DJNZ
R2,COUT3
Springe, wenn nicht letztes Byte
379
0131
34
43
CALL
TESTO
Letztes Byte, Ausgebe EOM Stopp-Bit, prüfe 8-tes
380
0133-
34
95
CALL
DELI 7
'
381
•0135 .
46
87
JNT1
CEROR
Prüfe EOM-Stoppbit-Echo
38 2
0137
9 A
EF
ANL
P2 . Ï0EFH
Schalte "Fehlerfrei"-Impuls ein
383
0139
34
A3
CALL •
DL300
T7 = 310,09 |isec.
384
' 013B
8A
10
ORL
P2, « 1011
Schalte "Fehlerfrei"-Impuls aus
385
013D
24
A5
JMP
DL225
Aussprung
386
387
01 3 F
34
47
COUT7
CALL
- TESTI
Ausgebe 1 und prüfe vorheriges Echo
388
0141
24
2A
JMP
COUT6
Rückkehr zur Schleife (LOOP)
389
390
0143 '
8 A
10
TESTO :
ORL
P2, Il 1011
Ausgebe Daten Null
391
0145
24
49
JMP
TESTI1
392
393
0147
9 A
EF '
TESTI :
anl
P2 , Ï0EFII
Ausgebe Daten 1
394
0149
56
4 E
testi 1 :
jt1
COI) t0
Springe, wenn letztes Echo = 0
©\
W Ol
MODEL 6500 PRINTER PROGRAM CAQ048/11 version 4.21
395 014B E6 87
396 014D 83
397 v
398 014E F6 87
399 0150 83
400
401 0051
402
403
JNC RET
COUTB: JC RET
ZCOUT EQU PAGE
CEROR
CEROR
Ç-COUT1
ON ON N»
6
Vi
15-Oct-7 9 14:6:47 Echo = 1; Fehler, wenn Ubertrag = 0
Echo = 0; Fehler, wenn Ubertrag = 1
>
>
MODEL 6500 PRINTER PROGRAM CA804B/11 version 4.21.57 15-Oct-79 14:6:47 ' ®
404 INCLUDE DM2:CRECVF
405
406 CRECVF - Drucker
407 66 (Dezimal) Bytes 4 08
409 - Aufruf CRECV - Unterroutine zum Empfang von Kommunikationseingaben
4 10 . Benötigte Stapelebenen = 2, wenn kein Fehler 4 11
412 Zeitgabe, einschließlich Aufruf, bis CTS:
413 Min. = 30,8 Zyklen = 129,067 usec.
414 Max. = 32 Zyklen = 134,095 qsec.
4 15
4 16 ' Arbeitet in RB0 oder RB1
4 17 A & R0 sind zerstört
4 1B Gibt variable Anzähl von Bytes ein, beginnend bei RAM-Speicherplatz "INI!"
419 Eingabepuffer läuft von INH bis RAM-Byte 63 (3FII)
4 20 Nimmt an, daß RTS ein bei Eintritt; auch alle Fühler außer Betrieb gesetzt
• 421 Achtung: Keine T13 Sperrzeit, Vermittler ist stattdessen verwandet
4 2 2 Fl = 1, wenn Vermittler bei Eintritt in normalem Aussprung in Betrieb gesetzt wax
4 23 (P2B7=0), A enthält letztes enpfangenes Byte,
4 24 R0 zeigt auf letztes enpfangenes Byte (in RAM)
425
426 Aufruf CRECW - alternativer Eintrittspunkt
-b.
6500
427
428
429
430
431
432
433
434
435
4 36
437
438
.439
440
44 1
442
443
444
445
446
44?
4 4 6
PRINTER PROGRAM CAÛ040/11 version 4.21.57 l5-Oct-79 14:6:47
Warte auf RTS vor Empfang von Nachricht o\
»>»
w
(ji
0151 '
56
51
CRECW:
JT1
?
Warte auf RTS
0153
@A
CRECV;
IN
A , P2 '
Leser-Vermittlerkontrollstatus
0154
A5
CLR
Fl
Setze Marke auf "Außer Betrieb setzen"
0155
F2
58-
JB7
CREV1
Wenn Bit 7 = 1, lass-e Marke "außer Betrieb geset
0157
B3
CPL
Fl
Wenn Bit 7=0, setze Marke auf "Betrieb"
0158
B8
3B
CREV1:
MOV .
R0,S(INH- 1)
Zeige auf Eingabepuffer-1
015A
34
93
CALL •
DELI 9
T3 = 127,377 usec. min. fallen
015C
23
EF
CREV2:
MOV
A,JOEFH
Ausgebe CTS oder Zwischenstopp-Bitecho, lasse Vermittler
015E
3A
OUTL
P2 , A
015F
46
5 F
JNT1
?
Warte auf Vorderflanke des Startimpulses
0161
76
65
JF1
GREV3
Wenn Marke = 1, setze Maschine in Betrieb
0163
24
67
JMP
CREV4
Marke = 0, lasse Maschine außer Betrieb
0165
9A
7F
CREV3:
ANL
P2,K 7FH
Setze Maschine in Betrieb
0167
18
CREV4;
INC
RO
Bewege Pufferzeiger
0168
FB
MOV
A, RO
Prüfe, ob Zeiger über Pufferende hinweg
0169
D2
BF
JB6
CREVB
Fehler - zu viele Bytes
016B
8 A
10
ORL
P 2,I10H
Echogabe "Start" in Bit-Mitte
016D
97
CLR
C
Lösche einlaufendes Datenbit
016E
OB
INS
A, BUS
Doppeltes NOP (keine Operation) zum Ausgleich
016F
23
B0
MOV
A,1(8011
Anfangssetzung Akkumulator
>
449
450
451
452
453
454
455
4 56
457
458
459
460
461
462
463
4 6 4*
465
466
467
468
4 69
470
>
e
-a
PRINTER PROGRAM CA8048/11 version 4.21.57
15-Oct-79
14:6:47
0171
34
96
CREV5:
CALL
DELI 6
0173
56
8 B
JT1
CREV7
Springe, wenn Daten = 0
0175
9A
EF
ANL
P2,80EFH
Gebe Echo " 1 "
0177
A'7
CPL
C
Setze einlaufendes Bit
0178
00
NOP
(Ausgleich)
0179
67
CREV6
RRC
A
Bewege neue Daten zum Akkumulator
017A
E6
71
JNC
CREV5
Springe, wenn Byte nicht erledigt
017C
A0
MOV
@R0, A
Erledigt, rette Byte
0170
34
98
CALL
DELI 4
017F
46
5C
JNT1
CREV2
Springe, wenn Stoppbit nicht EOM ist
0181
BA
10
ORL
P2, | 10H
Gebe Echo EOM Stopp
0183
34
A3
CALL
DL300
T8 = 1.291,919 psec.
0185
46
A3
JNT1
DL300
Springe, wenn Irrpuls "fehlerfrei", T15 = 1.591,116
0187
74
BE
CEROR:
CALL
FREEZE
Setze zusätzlichen Vermittler
0189
JMP
§
Falle
018B 8A 10 0180 ' 24 79
CREV7
ORL JMP
P2, S10II CREV6
Gebe Echo: Daten 0
018F B 9 54 0191* 2 4 AB
CREV8
MOV JMP
RI , 8 5 4 H ERROR
Mehr als Pufferkapazität empfangen
Os ON
-b. W Ul
MODEL '6500 PRINTER PROGRAM CAÛ048/11 version 4. 21.57
471
472 0042 ZCRECV EQU Ç-CRECW ■ 473
474 * PAGE
I
v
-Oct-79
14:6:47
o\
Os
W Ol
>
N> O 00
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
INCLUDE DM2:DELAY
1 5-Oct-79
14:6:47
«
475
476
477
478
479
480
481
482
DELAY - Drucker
Kleine Zeitgabeverzögerungen - 16 (dezimale) Bytes
Verzögerungen schließen Aufruf ein, und lege an 3,58 MHZ. TV-Kristall an Benötigte Stapelebenen = 0
483
0193
00
DELI 9 :
NOP
79
,62
usec.
484
0194
00
DELlß:
NOP
75
,43
psec.
485
0195
00
DELI 7 :
NOP
71
,24"
usec.
486
0196
00
DELI 6 :
NOP
67
,05
usec.
487
0197
00
DELI 5 :
NOP
62
vo co usec.
488
0198
00
DELI 4 :
NOP
58
,67
usec.
489
0199
00
DELI 3 :
NOP v
54
,48
usec.
490
019A
00
DELI 2 :
NOP
50
,29
usec.
491
019B
00
DELI 1 :
NOP
46
,09
usec.
492
019C
00
DELIO
NOP
41
,90
usec.
493
019D
00
DEL9 :
NOP
37
,71
usec.
494
01 9E
00
DEL8 :
NOP
33
usec.
495
019F
00
DEL? :
NOP
29
,33
usec.
496
0 1 A0
00
DEL6 ;
NOP
25
,14
' usec.
ON On
OS
ON
«t
W Ut
MODEL 6500 PRINTER PROGRAM CAQ048/11 version 4.21.57
15-Oct-79
14:6:47'
497
498
499
500
501
502
503
508
509
510
511
0 1A1 01A2
00 83
DEL5: NOP 20,95 usec.
DEL4: RET 16,76 usec.
Mittlere Zeitgabeverzögerungen - 8 (dezimale) Bytes
Verzögerungen enthalten Aufruf, und lege an 3,58 MHZ TV-Kristall an Benötigte Stapelebenen = 1•
504
01 A3
34
.94
DL300
CALL
DELI 8
301
/ 71
jisec.
(72
Zyklen)
505
01À5 .
34
94
DL225
CALL
DELI 8
226
,29
' usec.
(54
Zyklen)
506
01A 7
34
.94
DL150
CALL
DELI 8
150
,86
.usec.
(36
Zyklen)
507
01A9
24
96
JMP
DELI 6
0018
ZDELAY EQU
PAGE
Ç-DEL19
i
> N>
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
15-Oct-79
14:6:47
512
INCLUDE
DM2:ERRORF
513
514
ERRORF
- Drucker
515
Handhabungsroutine für verhängnisvolle Fehler
516
Kann von RB0 oder RBl aus eingetreten werden
517
Fehlereingabe -
Expliziter
Kode nach R1 gegeben
518
519
0 1 AB
8 A
FF
ERROR:
ORL
P2,Ï0FFH
Abschalte Vermittler, LEDs, Kommunikation, usw
520
0 1 AD
89
FF
ORL
PI . Ï0FPH
Schalte Motore ab
521
522
0 1A F
B8
37
MOV
R0.|STATUS
523
0 1 B 1
FO
MOV
A , @R0
524
01B2
12
B9
JBO
ERRI
Springe, wenn Fehlerbit schon gesetzt
525
01B4.
10
INC
@R@
Nicht gesetzt, setze Fehlerbit
5 26
01B5
B 8
39
MOV
R0,iFESTA
527
0 1 B 7
F9
MOV
A, RI
Fehlerkode in Akkumulator
528
0 1 B 8
A0
MOV
@ R0 , A
Bringe Kode in verhängnisvollen Fehlerstatus
529
530
01B9
27
ERRI :
CLR
A
531
0 1 B A
D7
MOV
PSW, A
Lösche und neueinstelle PSW
532
533
01BB'
AB
MOV
R0 , A
Koimi.-Ubertragungsleitung für mindestens 2.338 usec.
dunkel as as
OJ
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
534
0 1BC
EB
BC
DJNZ
R0,?
535
536
01 BE
17
INC
A
537 •
01 BF
5.4
32
CALL
DSABL
538
539
01C1
54
23
CALL
SSTAT
540 '
01C3
•34
51
CALL
CRECW
541
01C5
54
CALL
DIAG
542
01C7
24
87
JMP
CEROR
543
544
00 1E
ZERROR EQU
Ç-ERROR
545
546
PAGE
!
15-Octr79 14:6:47
(Ref. T8 = 1.340,625 usec. max.)
Anschalte Bit 0 des Anzeigestatus Ubertrage Status
Warte auf Aufforderung und empfange Nachricht
Verarbeite Nachricht
Einfriere (FREEZE) und Falle (TRAP)
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
INCLUDE DM2: ICOMON
15-Oct-79
14:6:47
t-* W
547
548
549
550
551
552
ICOMON - Drucker
Zentralkode durch IPOST aufgerufen Benötigte Stapelebenen = 3
553
01C9
DA
09
ICOMON:
MOV
R2,j|(9
Bewege
Rad 9 Stellungen auf Null
554
01CB
74
32
CALL
DMOVE
555
0 ICD
1A
INC
R2
Bewege einen Satz nach unten
556
0 1 CE
74
3A
CALL
BMOVE
557
0 1 DO
85
CLR
F0
Zeiger
"UP"
558
OIDI
83
RET
559
560
0009
ZICOMN
EQU
$-ICOMON
561.
562
00 2 E
PI FREE
EQU
200H-$
Freier
Raum am Ende von Seite 1
563
PAGE
On ©\
W Ul
o\
0\
è
Ul
HÖDEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
15-Oct-79
14:6:47
564
565
566
567
568
569
570
571 572-573
0200
ORG 20011
Seite 2 enthält Nachrichten-Analysator & Hochebenen-Druckräder-Routinen
INCLUDE DM2 :HDRF
HDRF - Drucker Header-Analysator Benötigte Stapelebenen = 3
574
0200
B8
3C
HDR :
MOV
R0, «INI«
Zeige
R0 auf Eingabeheader
575
0202
F0
MOV
A', @R@
576
0203
D3
Cl
XRL
Ai jfOC 1 Ii
V
577
0205
C6
45
JZ
SPOST .
Wähle
Portogebühr
578
0207
F0
MOV
A, @R@
579
0208
D3
50
XRL '
A, 05011
580
020A
C6
23
JZ
SSTAT
Sende
Status
581
020C
F0
MOV
A, @R@
582
020D
D34
1
XRL
S, #04111
583
020F
C6
29
JZ
ENPR
Setze
Drucker betriebsbereit
584
0211
F0
MOV
A,@R@
585
0212
D3
42
XRL
A, ü04 211
>
► N>
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 15-Oct-79 14:6:47 wî
586
0214
C6
30
JZ DISPR
Setze Drucker außer Betriebsbereitschaft
587
0216
FO
MOV A, @R@
58 8
0217
D3
" 45
XRL A , 1(04 511
.
589
0219
C6
1F
JZ ACCTC
Buchung vollständig (Betriebsbereitschaft)
590
-
591
Routine "Sende Diagnosestatus"
592
0 2 1 B
B9
37
DIAG: MOV RI, H (DSTAII-1 ) Zeige auf Header-1
593
0 2 1D
44
25
JMP SEND1
Sende 2 Bytes & Aussprung
594
595
Buchung vollständig
596
021F
23
DF
ACCTC: MOV A,Ì0DFH
Lösche Bit'5 in Außerbetriebsetzungsstatus
597
0221
44
2B
JMP ENABL
Setze in Betrieb
598
599
Sende Statusnachricht
600
Benötigte Stapelebenen
= 3
601
602
Zeitgabe einschließlich
Aufruf (SSTAT):
603
6 Zyklen = 25,
143 usec. zum Aufruf COUT
604
43 Zyklen =180,
190 usec. bis CTS
605
606
0223
B9
35
SSTAT: MOV R2 , H ( STATU -1 ) Rl = Ileaderadresse-1
607
0225
BA
02
SEND1: MOV R2,K2
R2 = Sende 2 Bytes
■u w en
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
608 0227 24 03 JMP COUT
609
610 0029 ZliDR EQU Ç-IIDR
611
612 PAGE
on on
W
15-Oct-79 14:6 : 47
Ubertrage und Aussprung
M on
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 l5-Oct-79 14:6:47
6
613
INCLUDE DM2 :ENABLF
614
615
ENABLE
- Drucker
616
Benötigte Stapelebenen = 0
617
'6)8
Kann von RB0
oder RE1 aus aufgerufen werden
619
620
0229
23
F 7
ENPR :
MOV
A, Ï0F7II
Lösche Bit 3 in Außerbetriebsetzungsstatus-Wort
621
0 2 2 B
B8
3 lì
ENABL:
MOV
R0,ÏDSSTA
Zeiger auf Außerbetriebsetzungsstatus
622
022D
30
ANL
A , @R@
Abschalte erforderliche Bits
623
022E
44
35
JMP
DSAB1
Fahre fort
624
625
02 30
23
08
DISPR;
MOV
A,S OOÜH
Setze Bit 3 in Außerbetriebsetzungsstatus-Wort
626
0232
B8
3B
DISABL:
MOV
. R0,ÏDSSTA
Zeiger auf Außerbetriebsetzungsstatus
627
02 34
40
ORL
"A,@R@
Anschalte erforderliche Bits
628
629
02 35
AO
DSAB1
MOV
@R@ , A
Wiederherstelle Außerbetriebsetzungsstatus
630
0236
ce
42
J2
ENAÛ1
Springe, wenn jetzt gelöscht
631
0238
0A
IN
A, P2
Ist er gegenwärtig außer Betrieb gesetzt?
632
0239
F 2
3 F
JÜ7
DSAB2
Springe, wenn der Fall
633
0 2 3 B
B 3
1 A
MOV
R0, U1 All
Zeiger auf RB1-R2
634
0 2 3 D
B0
1 E
MOV
@R@,«30
Setze Niederzähler o\ Os
W (Jl
MODEL 6500 PRINTER PROGRAM CA0Û48/11 version 4.21.
635 023F BA BO
636 0241 63
637 »
638 0242 9A 7F
639 0244 83
640
641 001C
642
643
DSAB2: ORL RET
ENABl ANL RET
2ENABL EQU PAGE
P2 , H 8011
P2.Ï07FU
S-ENPR
15-OcL-79 14:6:47
Nicht gelöst, setze außer Betrieb
Setze in Betrieb
M 'O
MODEL 6500 PRINTER PROGRAM CA0040/11 version 4.21.57
INCLUDE DM2;SPOST
1 5-Oct-79
14:6:47
644
645 6 4 6 64 7
648
649
SPOST - Drucker
Portogebührenwahl - Unterroutine Benötigte Stapelebenen = 3
650
0245
54
BC
SPOST:
CALL
DELT
Berechne Bewegungen
651
024 7
19
SPOST :
INC
Rl
Zeige auf nächstes DELTA
652
0248
Fl
MOV
A, 0R1
Lese DELTA für diesen Satz
653
0249
06
63
JNZ
S POS 4
Satzbewegung erforderlich?
654
0 2 4 B
EE
47
DJNZ
R6 ,SPOSI
5 Räder erledigt?
6 55
0 2 4 D
BD
00
SPOS2:
MOV
R5, KO
Speichere QR
656
0 2 4 F
8 A
40
ORL
P2 , H 04 Oll
Abschalte Optik
657
025 1
89
FF
ORL
PI , tf 0FPU
Abschalte Motore
658
0253
FF
MOV
A . R7
Schaue auf Fühler
659
0254
53
0F
ANL
A, ti 0 FU
Schaue auf Kodierer
660
0256
E3
MOVP3
A , @ A
Zulässige oder Ausgangsstellung (HOME)?
661
0257
72
5D
JB 3
SPOS3
Springe, wenn in Ordnung
662
0259
B9
92
MOV.
RI ( I 9 211
663
0 2 5 B
24
AB
JMP
ERROR
Unzulässige Fühler für Ausgangsstellung
664
665
025D
E9
IF
S POS 3
MOV
RI , ( (POSTH-
1) Zeige auf "Portogebühr ist"-Header-1
OS os
OJ V)
I
MODEL 6500 PRINTER PROGRAM CAÛ048/11 version 4.21
666
025F
BA
04
MOV
R2, 14
667
0261
24
03
JMP
COUT
668
;
669
0263
BA
02
SPOS4:
MOV
R2 # *2
670
0265
74
32
CALL
DMOVE
671
0267
FE
MOV
A, R6
672
0268
AA
MOV
R2 , A
673
0269
85
CLR .
F0
674
026A
74
3 A
CALL
BMOVE
675
026C
Fl
SP0S5:
MOV
A, @R1
676
026D
C6
7E
JZ
S POS 8
677
026F
95
CPL
F0
678
0270
74
3 A
CALL
BMOVE
679
0272
Fl
MOV
A, @R1
680 '
0273
F2
78
JB7
S POS 6
681
0275
85
CLR
F0
682
0276
44
7 A
JMP
SPOS7
683
0278
37
SPOS6 :
CPL
A
684
0279
17
INC
A
685
027A
AA
S POS 7 :
MOV
R2, A
686
0 2 7B
74
32
CALL
DMOVE
687
027D
85
CLR
F0
57 15-Oct-79 14:6:47
Sende 4 Bytes
Ubertrage neue Einstellung und Aussprung
2 nach unten zur Entsperrung von Satzwahl Bewege Ziffernwähler
Bewege Satzwähler zu höchster Stellung
Satz "nach oben"
Bewege Satzwähler
Erhalte gegenwärtiges Satz-DELTA
Springe, wenn 0
Zeige Satzwähler "nach unten"
Bewege Satzwähler
Erhalte wieder gegenwärtiges DELTA Springe, wenn negativ Positiv, zeige "nach oben"
Speichere und bewege Mache DELTA positiv
Bringe Abstand nach R2 Bewege Ziffernwähler
MODEL 6500 PRINTER PROGRAM CAQ04Q/11 version 4.21.57
688
0 27E
1A
SPOS8:
INC
R2
689
027F
19
INC '
Rl
690
0280
EE
6C
DJNZ
R6,SPOS5
691
0282
95
CPL
F0 ■ '
692
0283
: 74
3 A
. CALL
BMOVE
693
0285
BA
02
IPOSB:
MOV
R2, *2
694
0287
85
CLR
F0
695
0 2 & B
74
32"
CALL
DMOVE
696
0 2 8 A
44
4 D
JMP
S POS 2
697
698
0047
2SPOST
EQU
Ç-SPOST
6 99
700
PAGE
15-Oct-79 14:6:47
Bewege Erhöhung 1 Satz Bewege Zeiger 1 Satz Alle Sätze erledigt?
Bewege Satz R2 verbleibende Stellungen Sperre Wähler Zeiger nach oben
Ausgang
MODEL 6500 PRINTER PROGRAM CA804Ö/11 version 4.2.57
15-Oct-79
o\
ON bJ
W Ol
14 : 6 : 4 7
701
INCLUDE
DM2 : I POS
702
703
t,
IPOST
- Drucker
704
Setze
Druckräder anfänglich auf Null
705
Benötigte Stapelebenen =
4
706
707
028C
54
F0
IPOST;
CALL
CLRB
Setze Puffer für "alte Portogebühr" auf
700
0 28E
54
BC
CALL
DE LT
Unpack Auswahl
709
0290
54
F0
CALL
CLRB
Lösche Portogebührenpuffer wieder
710
0 2 92
74
20
CALL
DSEEK
Entsperre Satzwähler
711
0294
FF
MOV
A, R7
Prüfe, ob Satzwähler nicht HOME
712
0295
53
OC
ANL
A, « OCH
Prüfe Pühlerbits 2 und 3 auf Null
713
0297
96
AF
JNZ
ALLO
Springe, wenn nicht in Ausgangsstellung
714
0299
FL
MOV
A , @R1
Erhalte F NIBBLE
715
Ò29A
72
AF
JB3
ALLO
Springe, wenn Portogebühr unbekannt
716
029C
BA
05
MOV
R2, 85
Portogebühr bekannt, bewege nach Satz 5
717
029E
74
3 A
CALL
BMOVE
718 '
0 2 A0
19
IPOSTL
: INC
RI
Zeiger auf DELTA für diesen Satz
719
0 2 A1
23
F6
MOV
A,Ï0F6M
Komplement von 9.
720
02A3
61
ADD
A,@R1
Ziehe gegenwärtige Stellung ab
721
02A4
37
CPL
A
722
02A5
AA
MOV
R2, A
Bewege aufwärts zu Stellung 9
>
N> bJ
MODEL 6500 PRINTER PROGRAM CA004a/ll version 4.21.57
723
02A6
74
32
CALL
DMOVE
724
02A8
95
CPL
F0
725
02A9
34
C9
CALL
ICOMON
726
0 2 AB
EE
A0
DJNZ
R6, IPOSTL
727
0 2 AD
>44
85
JMP
IPOSB
728
-
729
02AF
1A
ALLO :
INC
R2
730
0 2 BO
74
57
CALL
BMOVX
731
02B2
C6
AF
JZ
ALLO
732
0284
74
20
ALL1 :
CALL
DSEEK •
733
02B6
34
C9
CALL
ICOMON
734
.0 2B8
EE
B4
DJNZ
R6, ALL1
735
02BA
44
85
JMP
I POSB
736
737
0030
ZI POST
EQU
v $ -I POST
738
739
PAGE
15-Oct-79 14:6:47
Zeige "nach unten"
Bewege Rad nach Null und Satz nach unten um 1
Ist Satz 0?
Ja, mache fertig.
Suche Bank 5
Suche 9 auf diesem Rad
Bewege Rad auf Null und Satz nach unten um 1 Ist Satz Null?
Ja, mache fertig
Os OS
W
VI
6500
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
PRINTER PROGRAM CA8048/1 1 version 4.21.57 15-Oct-79 14:6:47
o\
ON
«t
W VI
INCLUDE DM 2 : DE LT
DELT - Drucker
Erstelle Räderänderungen•(DELTAS) im RAM; bringe Eingabe zum Portogebührenpuffer Benötigte Stapelebenen = 1
02BC 9A BF 02BE 54 30
DELT.: ANL P2,#0BF1I Schalte Fühler ein
CALL DISPR Setze Drucker außer Betriebsbereitschaft
02C0 BB 21 MOV
02C2 B9 3D MOV
02C4 BA 03 MOV
02C6 D5 SEL
02C7 B8 30 MOV
02C9 C5 SEL
02CA PO DELTI: MOV
Û2CB 53 FO ANL
02CD 47 SWAP
02CE AB MOV
02CF Fl MOV
02D0 47 SWAP
02D1 54 E6 CALL
R0,8 POSTB RI,BINB R2, y 3 RBl
RÒ,BDELTA RB0 • A, @R0 A, H0F0H A
R3 , A A , @ R1 A
COMON
Zeiger auf alte Portogebühr Zeiger auf neue Portogebühr Bytezähler
Zeiger auf Änderungspuffer
Erhalte altes Byte
Rette NIBBLE hoher Ordnung
Rechtsanpassung
Rette
Erhalte neues Byte
Bringe hohe Ordnung nach rechts
> N>
MODEL 6500
PRINTER PROGRAM CA8048/11 version 4.21.57
762
0203
F0
MOV
763
0204
53
0F
ANL
764
02D6
AB
MOV
765
02D7 •
Fl
MOV
766
02D8
A0
MOV
767
02D9
34
E6
CALL
768
0 2 DB
18
INC
769
0 2DC
19
INC
770
0 2DD
EA
CA
DJNZ
771
112
Weiterer von
773
02DF
85
CLR
774
02EQ
95
CPL
775 .
0 2 E1
B9
30
MOV
776
0 2 E 3
BE
05
MOV
777
02E5
cd l_>
RET
778
779
00 2 A
ZDELT EQU
780
78 1
PAGE
A, @R0 A, UOPI! R3 , A A, @ RI SRO,A COMON RO RI
R2, DELTI
FO FO
RI,V DELTA R6, 1(5
$ -D E LT
15-Oct-79 14:6:47
Erhalte altes Byte
Rette NIBBLE niedriger Ordnung
Rette
Erhalte neues Byte
Bringe in alten Portogebiihrenpuf fer
Bewege Pufferzeiger
Alle 3 Bytes erledigt?
verwendeter Kode Zeige "nach unten" auf Entsperrung
Voreinstelle DELTA-Zeiger Voreinstelle Satzzeiger
©\ 0\ N)
W Ui
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 15-Oct-79 14:6:47
782
INCLUDE
DM2 : COMO
783
>
784
COMON - Drucker
785
Durch DELT aufgerufener
Gemeinschaftskode
786
Benötigte Stapelebenen s
= 0
787
Zeitgabe einschließlich
Aufruf = 13 Zyklen = 54,476 psec.
788
789
02E6.
53 OF
COMON: ANL
A. KOFI!
Behalte nur rechten NIBBLE
790
. 02E8
37
CPL
A
791
02E9
6B
ADD
A. R3
Subtrahiere alten von neuem
792
02EA
37
CPL
A-
793
' 02EB
D5
SEL
Rtìl
794
02EC
AO
MOV
@R0, A
Speichere in DELTA-Puffer
795
02ED
18
INC
RO
Bewege Zeiger
796
02EE
C5
SEL
RBO
797
02EF
83
RET
798
.
799
OOOA
ZCOMON EQU
?-COMON
800
801
PAGE
MÙDEL 6500 PRINTER PROGRAM CAB048/11 version 4.21.57 l5-Oct-79 14:6:47
802
INCLUDE DM2 :CLRB
,
803
604
CLRB -
Drucker
805
V
Lösche
Puffer
"Portogebühr ist"
806
Benötigte Stapelebenen = 0
807
Zeitgabe einschließlich Aufruf = 15 Zyklen = 62,857 usec.
808
809
02F0
B8
20
CLRB:
MOV
RO, il POSTH
Zeiger auf "Portogebühr ist"-Puffer
810
02F2
BO
81
MOV
SRO,J081H
Einsetze Header
811
02F4
27
CLR
A
Null in Puffer
812
02F5
18
INC
RO
Zeiger auf nächstes Byte
813
02F6
AO
MOV
@R0 , A
Lösche' Byte
814
02F7
18
INC
RO
Etc.
8 15
02F8
AO
MOV
SRO, A
816
02F9
18
INC
RO
817
02FA
AO
MOV
SRO, A
818
0 2 FB
83
RET
819
820
OOOC
2CLRB
EQU
$-CLRB
821
822
0004
P2 FREE
EQU
3 0 011 — $
Freier Raum am Ende von Seite 2
823
PAGE
li!
©\
4*.
w
Vl
K^DL'L 6500 PRINTER PROGRAM CA804 8/11 version 4.21:57
15-Oct-7 9
14:6:47
824 ! B25 826 327
828
829
830
831
832
833 83-1 835 8 36
837
838
839 d -t 0 8-11 842 B 4 3 84 4 845
0300'
ORG 30011
Seite 3 entJiält Ubersetzungstabellen & Niedrigebenen-Druckräder-Routinen INCLUDE DM2:
ENTBL - Drucker
Fühlerübersetzungstabelle - 3-2-0-1 anwachsende (Bits 0-1) Ebenso:
(Änderung +1)
BIT ßlT BJT BIT BIT BIT BIT
2 - 1 = Falsche Kodiereränderung (zu schnell bewegt?)
3 - 0 = Falsches Ausgangsstellungs-Bitmuster
3 - 1 = Gültig, Ausgangsstellung verändert
4 - 1 = Gültig, Riegel oder Vermittler verändert
5 - 1 = Schalterfehler
6 - 1 = Datumsgebertür offen
7 - 1 = Zugangsberechtigung
Alt Neu Ergebnis
0 3 00 0301
AI AA
ENTBL:
DB DB
10100001B 1010101 OB
00 00 0 00 01 +1
>
M oo
MODEL 6500 PRINTER PROGRAM CAG048/11 version 4
846
0302
AO
DB
84?
0303
07
DB
848
0304
F0
DB
849
0305:t
El
DB '
850
0306 *
C7 „
DB
851
0307
C2
DB
852
0308
32
DB
853
0309
07
DB
854
0 3 0 A
2 1
DB
855
030B
00
DB
856
0 3 OC
57
DB
857
030D
40
DB
858
030E
4 2
DB
859
030F
4 1
v DB
860
861
00)0
ZENTBL EQU
862
863
PAGE
>
.57 15-Oct-79
14:6:47
10101000D
00
10
-1
100001 IIB
00
11
Fehler
1111OOOOB
01
00
-1
1 1 100001B
01
01
0
110001Ì1B
01
10
Fehler
1 1000010B
.01
11
+ 1
00110010B
10
00
+ 1
000001 IIB
10
01
Fehler
OOIOOOOIB
10
10
0
OOOOOOOOB
10
1 1
-1
01010111B
11
00
Fehler
01000000B
11
01
-1
01000010B
11
10
+ 1
01000001B
11
1 1
0
Ç-ENTBL
On On
■U. W (Jì
1500
864
865
866
867
868
869
6 70
871
872
873
8 74
875
876
877
878
879
880
881
882
883
884
885
o\
o\ &
PRINTER PROGRAM CA8048/11 version 4.21.57 15-Oct-79 14:6:47
INCLUDE DM2 :TBL2
TBL2 - Drucker
Fühlergiiltigkeitsbewertung und Ubersetzungstabelle
DIT
0 ■
- 1 =
Fehler
DIT
1 ■
nicht benutzt
DIT
2 •
- 1 =
Vermittler oben
{Betriebsbere itschaft)
D IT
3 ■
Auslösung (immer Null)
BIT
4 ■
- 1 =
Ausgangsstellung //2
BIT
5 •
- 1 =
Riegel vorne
BIT
6 -
nicht benutzt
BIT
7 -
nicht benutzt
Ù310
ORG
31011
0310
21
TBL 2
.
DB
00100001B
0000
Fehler
- Beide HOME-Fühler an
0311
10
DB
00010000B
0001
HOME 2
- außer Betrieb, Riegel teilweise vor
0312
00
DB
000000Q0B
0010
HOME 1
- außer Betrieb, Riegel teilweise vor
0313
31
DB
00110001B
0011
Fehler
- Vermittler gesetzt, Tronmel nicht HOME
0314
25
DB
00100101B
0100
Fehler
- beide HOME-Fühler ein
0315
34
DB
001 10100B
0101
HOME 2
- Riegel vorne
K> W
MODEL 6500 PRINTER PROGRAM CA8048/11 version'1.21.57
886
0316
24
DO
00100100B
887
03 17
34
DB
00110100B
888
0318
01
DB
00000001B
889
0319
vlO
DB
00010Û00B
890
û 3 1 A
.00
-
DB
OOOOOOOOB
891
03 1B
1 1
DB
00010001B
892
03 1C
05
DB
00000101B
893
03 1 D
14
DB
00010100B
894
0 3 1 E
04
DB
000001OOB
895
03 1 F
15
DB
00010101B
896
897
0010
ZTBL2
EQU
Ç-TBL2
898
899
PAGE
15-Oct-79 14:6:47
0110
: HOME 1 -
Riegel vorne
Oli 1
Ausgelöst - in Teilzyklus
1001
Fehler -
beide HOME-Fühler ein
1001
HOME 2 -
außer Betrieb
"1010
HOME 1 -
außer Betrieb
1011
Fehler -
Riegel HOME, Tronunel nicht
HOME
1 100
Fehler -
beide HOME-Fühler ein
1101
HOME 2 -
in Betrieb
Ilio
HOME 1 -
in Betrieb
1111
Fehler -
Riegel HOME, Trommel nicht
HOME
©\ OS
w en
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57 15-Oct-79 14:6:47
900
.
INCLUDE DM2 :DS
901
,
902
DSEEK -
Drucker
903
Suche Extremstellung des Ziffernwählers in Richtung F0
904
Benötigte Stapelebenen
= 2
905
906
FO = 0
bedeutet "oben"
907
.
R 2 " mu ß
i bei
Eintritt 0
sein
908
909
Achtung :
Bei
Aussprung ist F0 umgekehrt, R2 und R0 = 0
910
911
0320
1A
DSEEK:
INC
R2
Bewege um 1 Ziffer
912
0321
74
52
CALL
DMO VX
l
913
0323
1A
DSEEK
INC
R2
Bewege um eine weitere Ziffer
914
0324
74
52
CALL
DMOVX
915
0326
C6
23
JZ
DSEK
Wenn erfolgreich, bewege um 1 weitere
916
0328
95
CPL
F0
Richtungsumkehr
917
0329
FF
MOV
A, R7
Schaue auf Fühler
9 18
0 3 2 A
53
03
ANL
A, H 311
Schaue auf ZiffernwahlfUhler
9 19
032C
E3
MOVP 3
A , @ A
Ubersetze
9 20
032D
72
A5
JB3
P3RET
Aussprung, wènn zulässige Ziffer
921
032F
1A
INC
R2
R2 = 1 .
HÖDEL 6500 PRINTER PROGRAM CA0048/11 version 4.21.57
15-Oct-79
14:6:4
922 0330 64 52
923
"9 2 4 001 2 9 25 ■■
926
JMP
ZDSEEK EQU
PAGE
DMOVX
Ç-DSEEK
Schrittweise 2urilck
ON ON M «t W Ol
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
15-Oct-79
14:6:47
927
INCLUDE
DM2: DMOVE2
928
929
DMOVE2
- Drucker
930
Bewege
Satz oder Ziffer
R2
Ziffern in Richtung F0, prüfe auf Fehler
931
F0 = 0
bedeutet
"oben"
.
.932'
Benötigte Stapelebenen =
= 2
933
934.
Achtung:
bei Aussprung ist F0 unverändert, R2 und R0 = 0, R3 (Motore) = Abfall
935
936
0332
D5
DMOVE:
SEL
RBl
Anfangssetzung Neuversuchs-Zähler
937
0333
BD
0A
MOV
R5, Ï10
938
0335
C5
SEL
RB0
939
0336
74
52
CALL
DMOVX
Erstversuch.bei Bewegung (MOVE)
940
0338
64
45
JMP
DM2
941
942
033A
D5
BMOVE:
SEL '
RBl
Anfangssetzung NeuVersuchs-Zähler
943
033B
BD
06
MOV
R5, »6
944
033D
C5
SEL
RB0
945
033E
74
57
CALL
BMOVX
Erstversuch bei Bewegung (MOVE)
94 6
0340
64
45
JMP
DM2
947
948
0.3 4 2
C5
DMI :
SEL
RBQ
► W
MODEL 6500 PRINTER PROGRAM CAQ040/11 version 4.21.
949
0343
74
61
CALL
RENT
950
0345
C6
A5
DM2 :
JZ
P3RET
951
0347
1A
INC
R2
952
034 8 v
D5
SEL
RBl
9 53
034 9 ;
ED
42
DJNZ
R5 , DM1 - '
954
034B
B9
71
MOV
Rl , II 7111
955
034D
76
50
JF1
DM3
956
0 3 4 F
19
INC
Rl
957
0350
24
AB
DM3 :
JMP
ERROR
958
959
0020
ZDMOVE
EQU
Ç-DMOVE
960
961
PAGE
15-OCL-79
14:6:47
Wiedereingebe Stufenprogramm nach PMCNT-Beginn Aussprung, wenn PMCNT = 0
Nicht Null, versuche einen weiteren Schritt
Aber falle heraus, wenn Neuversuche erledigt
Satzbewegungs-Fehlercode
Springe, wenn Satz
Ziffernbewegungs-Fehlercode (= 72H)
Druckräder-Einstellfehler
o\
©\ »>>
4^. W Ol
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4;?1.57 15-Oct-79 14:6:47
962 INCLUDE DM2:DMOVX2
963
964 " l DMOVX2 - Drucker
965 Benötigte Stapelebenen.= 1
966
967 Zeitintervall zwischen Kodiererlesewerten 96fl Min. = 34 Zyklen = 142,476 jisec.
•969 Max. = 59 Zyklen = 247,233 usec.
970
971 Bei Eintritt - F0 = 0 für aufwärts, F0 = 1 für abwärts
972 . R2 = Anzahl der Stellungen, um die bewegt wird
973 R7 = alte Fühlerlesewerte
974 Bei Aussprung - F0 ^unverändert
. 975 F1 = 0 für Ziffern, F1 = 1 für Satz
976 R2 und R0 = 0
977 • R3 (Motor) = Abfall
978 Wenn kein Fehler, A und R5 = 0
979 R1 und R6 unverändert
980 R4 = Abfall
981 R7 = Gegenwärtige Fühlerlesewerte
982
983 0352 A5 DMOVX: Cl F1 = 0 für Ziffernwahl
K> W OS
MODEL 6500 PRINTER PROGRAM CAÛÛ4B/11 version 4.21.
984
035 3
FA
MOV
A,R2
985
0354
E7
RL
A
986
0355
64
5 A
JMP
Ml
987
988
0357
A5
BMOVX:
CLR
Fl'
989
0358
B5
V
CPL
Fl
990
0359
FA
:
MOV
A,R2
991
Ò35A
06
5E
Ml :
JF0
M2 •
992
Û35C
37
CPL
A
'993
035D
1 7
INC
A
994
Û35E
AO
M 2 :
MOV
R5 , A
995
035F
C6
A5
JZ
P3 RET
996
0361
FA
RlL'NT :
MOV
A, R2
997
0362
E7
RL
A
998
0363
E7
RL
A •
999
0364
AA
MOV
R2 , A
1000
0365
BB
CC
MOV
R3 , BOOCH
1001
0367
B6
70
J F0
M5
1002
0369
FB
M 3 :
MOV
A, R3
1003
036A
B6
6E
J F0
M4
1004
0 3 6C
77
RR
A
1005
036D
77
RR
A
15-Oct-79 14:6:47
Schaue auf Ziffernwähler Multipliziere mit 2 für Kodierer Fahre fort
F1 = 1 für Satzwahl
Schaue auf Satzzähler Wenn abwärts, mache negativ (Zweier-Kompliment)
Rette in Kodierer Wenn Null, Aussprung Neuversuchs-Eintritt
Multipliziere R2 mit 4 Motorschritten Rette Motorschritte
Anfangssetzung Zweiphasen-Motorabbild Springe, wenn abwärts (links)
Schaue auf Motorabbild Springe, wenn abwärts (links)
Aufwärts - (Rechts)
MODEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
1006
036E
E7
M4 :
RL
A
100 7
036F
AB
MOV
R3 , A '
100 8
0370
FB
M 5 :
MOV
A, R3
1009
0371
53
FE
ANL
A,Ï0FEH
1010
0373
43
0E
ORL
A, H 00E1I
1011
0375
76
78
JP1
M 6
1012
0377
47
SWAP
A
1013
0378
89
M6 :
OUTL
PI, A
1014
0379
B8
23
MOV
R0, «35
1015
037B-
74
86
CALL
READ1
1016
037D
EA
69
DJNZ
R2,M3
1017
037F
23
EE
MOV
A,S0EEH
1018
0381
39
OUTL
PI, A
1019
0382
BB
D3
MOV
R0,Ï21 1
1020
0384
64
86
JMP
. READ1
1021
1022
0034
2DMOVX
EQU
Ç-DMOVX
1023
1024
PAGE
i
15-Oct-79
14:6:47
Wiederherstelle Motorabbild
Motorabbild in Akku, (wenn nötig)
Halte anderen Motor in Ausgangsstellung (HOME)
Springe, wenn Satz
Ausgabe MOVE
5 msec. Verzögerung (196,4 bis 196,9 Schritt/sec. Warte 5 msec. lang
Springe, wenn Zählung nicht erledigt Beide Motore HOME
30,0876 msec. Verzögerung Warte 30,0876 msec. und Aussprung
6500
1025
I 1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
104 1
1042
104 3
1044
1045
1046
PRINTER PROGRAM CA804B/11 version 4.21.57 15-Oct-79
14:6:47
INCLUDE DM2 .-READ READ - Drucker
Bringe Kodierer-Lesewerte während Druckwahl auf neuen Stand Benötigte Stapelebenen = 0
Bei Eintritt - Fi = 0 für Ziffern, F1 = 1 für Satz
R0 = Anzahl der Schleifen durch Routine von Aussprung
R5 = Kodierer
R7 = Alter Fühlerlesewert
Bei Aussprung -A = Kodierer
R0 = 0 R4 = Abfall R5 = tfodierer
R7 = Gegenwärtiger Fühlerlesewert R1,R2, R3, R6, und F1 unverändert Zeitgabe = 32 Zyklen (142,476 usec.) pro Schleife, plus 4 Zyklen (16,762 usec.) für Aufruf und Aussprung
0386 08 READ 1 : INS A, BUS Lese Fühler
0387 2F XCII A, R7 Neue Fühler in R7
0388 AC MOV R4 ,A Alte Fühler in R4
«lODEL 6500 PRINTER PROGRAM CA804Û/11 version 4.21.57
15-Oct-79
14:6:47
ON ON
w
Vi
1047 ■
0389
DF
XRL
A.R7
Änderungen nun im Akkumulator
1048
038A
76
A6
JP1
READ3
Springe, wenn Satzwahl
104 9
1050
Ziffernwahlkodierer-Handhabung
1051
038C
53
OC
ANL
A,HOCH
Schaue auf Satz
1052
Û38E
96
B3
JNZ
READ4
Fehler, wenn irgendeine Änderung
1053
0390
08
INS
A.BUS
(2 Zyklen NOP als Ausgleich)
1054
0391
PF
MOV
A, R7
Erhalte neue Fühler
1055
0392
53
03
ANL •
. A , B 0311
Schape auf Ziffern (neu)
1056.
0394
2C
XCIt
A, R4
Neu in R4, .alt in A
1057
0395'
53
03
ANL
A,Ï03H
Schaue auf Ziffern (alt)
1058
' 0397
47
SWAP
A
Bewege alt zu Bits 2 & 3
1059
1060
Common Wrapup
Routine
1061
0398
77
READ 2 RR
A
1062
0399
77
RR
• A
1063
039A
6C
ADD
A, R4
Kombiniere alte und neue Fühler
1064
039B
E3
MOVP3
A, @A
Aufsuche Tabelleneintrag
1065
039C
52
BA
JB2
READ6
Wenn Bit 2=1, Kodiererfehler
1066
039E
53
03
ANL
A, 11 0 3 II
Schaue auf letzte 2 Bits
1067
0 3 AO
07
DEC
A
Anpasse Eintragung um 8 Bit-Negativzahl
1068
03A1
6D
ADD
A, R5 '
Anpasse alten PMCNT
- 1
>
hi -b.
>
MODEL 6500 PRINTER PROGRAM CAB048/11 version 4.21.57 15-Oct-79 14:6:47 £
M
1069
03A2
AD
MOV
R5 , A
Speichere PMCNT
1070
03A3
EB
86
DJNZ
RO ,READ 1
Fahre fort, wenn Zeit nicht abgelaufen
1071
03A5
83
P3RET:
RET
Aussprung
107 2
1073
V
Satzwahlkodierer-Handhabung
1074
03A6
53
03
READ 3:
ANL
A,»03H
Schaue auf Ziffern
1075
03A8
96
B3
JNZ
READ4
Fehler, wenn irgendwelche Änderungen
1076
0 3 AA
FC
MOV
A, R4
Erhalte alte Fühler
1077
03 AB
53
OC
ANL
A,HOCH
Schaue auf Satzfühler
1078
03AD
AC
MOV
R4 , A
Rette nur Satz
1079
03AE
FF
MOV
A, R7
Erhalte neue Fühler
1 0B0
03 AF
53
OC
ANL
A,«OCH
Schaue auf neue Satzfühler
1 OB 1
03B1
6 4
98
JMP
READ2
Bewege neu zu Bit 0 und 1
108 2
.
1083
03B3
B9
87
READ4 :
MOV
RI, 0711
Ziffernkodierer bewegt, als Satz gewählt
1064
0385
' 76
BB
J F1
READ5 .
Springe, wenn Satz
1085
03B7
19
INC
Ri
Satzkodierer bewegt, als Ziffer gewählt (=
1086
0388
24
AB
READ5 :
JMP
ERROR
Falschen Kodierer bewegt
1087
1088
0 3 BA
B 9
84
READ6 :
MOV
R1 , J 8 4 H
1089
0 3BC
24
AD
JMP
ERROR
Kodiererfehler (zu schnell bewegt?)
1090
1091
0038
ZREAD
EQU
?-READ 1
1092
1093
*.
PAGE
-U
cn
HÖDEL 6500 PRINTER PROGRAM CA8048/11 version 4.21.57
INCLUDE DM2 : FHEEZE
15-Oct-79
14:6:47
o\
ON N>
Oi VI
1094
1095
1096
1097 1 09 ß 1099
1115
1116
1117
1118
FREE2E - Drucker
Setze zusätzlichen Vermittler
Eenötigte Stapelebenen = 2
1 100
0 3 BE
85
FREE2E:
CLR
F0
Zeiger auf "unten"
1101
03BF
95
CPL
F0
1 102
03C0
8 A
FF.
ORL
P2,S0FFH
Schalter Vermittler, LED 1 s, usw. ab
1103
03C2
BA
EP
MOV
R2, *239
1104
03C4
EA
C 4
DJNZ
R2,$
Warte 2 msek. auf LED-Erlöschen
1 105
03C6
08
INS
A, BUS
Lese Eingaben, sofern vorhanden
1 106
0307
AF
MOV
R7 i A
Speichere zur Verhütung von "Lese"-Fehlern
1107
03C8
BA
03
MOV
IU,«3
Um wenigstens 2 Ziffern bewegen
1 108
03CA
74
52
CALL
DMOVX
Wie erforderlich bewegen
1 109
. 03CC
89
FF
ORL
P2,Ï0FFH
Schalte Motore ab
1110
03CE
8 3
RET •
1111
1112
0011
ZFREZE
EQU
Ç-FREEZE
1113
1114
0031
P3 FREE
EQU
40011-$
Freier Platz am Ende von Seite 3.
0069
TFREE EQU
END
P 0 F R E E ♦ P2PREE+P3FREE
> -U.
MODEL 6500 PRINTE
A
000E
OMO VX
0357
CLRD
02F0
COUT2
0109
COUT7
013F
CREV2
015C
CREV7•
018B
DELT
028C
DELI 2
019A
DELI 7
0195
DEL6
0 1 A0
DI SPR
0230
DMOVX
. OK52
DSAB1
0235
DSTAII
0038
LRROR
0 1 AB
PI
= 200D
I Nil
00 3C
INSTA
00 3 A
1 POST
O20C
HAN 4
00 AB
HS 7 4
0026
PROGRAM CA8048/
ACCTC
0 2 1 F
BUS
= 0004
CNT
0009
COUT3
0113
COUT8
01 4 E
CREV3
0165
CREV8
018F
DELTA
0030
DELI 3
0199
DELI û
0194
DEL?
Ol 9F
DL 1 5 0
01A7
DM1
034 2
DSAB2
0 2 3 F
ENABL
0 2 2 B
ERRI
01B9
HDR
0200
INIT
0000
I NTRF
0090
I POSTL
0 2 AO
MAN 5
00B2
MI
0 3 5 A
1 version 4.21.57
ALLO
02AF
C
= 0007
COMON
0 2E6
COUT4
0115
CRECV
0153
CREV4
0167
DATEB
0025
DELTI
02CA
DELI 4
0198
DELI 9
0193
DEL8 •
019E
DL225
01A5
DM2
0345
DSEEK
. 0320
ENAB1
024 2
FESTA
0039
I
= 000C
INIT1
001 1
INTR2
00A2
MAN 1
0043
MAN6
00B6
M 2
035E
-Oct-79 14:6:47
ALL1
02B4
BMOVE
033A
CEROR
0187 '
CLK
>0010
COUT
0103
COUT1
0100
ÇOUT5
0124
COUT6
012A
CRECW
0151
CREV1
0158
CREV5
0171
CREV6
0179
DAT E H
0024
DBB
= 0011
DELIO
019C
DELI 1
019B
DELI 5
0197
DELI 6
0196
DEL4
01A2
DEL5
0 1A1
DEL9
019D
DIAG
0 1 2 1B
DL300
01 A3
DMOVE
0332
DM3
0350
DSABL
0232 .
DSEK
0323
DSSTA
003B
ENPR
0229
ENTBL
0300
FREEZE
03BE
FO
= 000D
ICOMON
01C9
INB
00 3 D
INIT2
00 1 E
INIT3
0022
INTR3
00 AA
I POSB
0285
MAN 2
0058
MAN3
0062
MBO
= 200B
MB 1
= 300B
M3
0369
M4
036E
MODEL 6500 PRINTER PROGRAM CA0O4O/11 vers ion -4 . 2 1 . 57
M 5
0370
M 6
0378
POSTB
0021
POFREE
0006
PI
= 0105
PI FREE
002E
P3FREE
0031
P3RET
03A5
P4
= 0006
P7
«0306
ï RB0
= 000B
RBl
= 100B
READ3
03A6
j READ4
03B3
READ5
03BQ
RO
= 0002
RI
= 0102
R2
= 0202
R5
= 0502
R6
= 0602
R7
= 0702
SENSI
00 F 6
SIIDL
0069
SIIDL1
0072
SJIOME
00 7 F
SPOST
0245
SPOSI
0247
S POS 4
0263
S POS 5
026C
S POS 6
0270
SSTAT
0223
STATU
0036
STATUS
0037
SW1T2
00D5
SWIT3
00D9
T
= 0000
TCNT 1
= 200C
TEMP
0028
TESTO
0143
TFREE
0069 •
ZCLRB
OOOC
JZCOMON
000A
ZDELAV
00)8
ZDELT
002A
ZMOVE
0020
ZENABL
001C
. ZENTBL
0010
. ZERROR
001E
ZCOMN
0009
ZINIT '
0043
ZINTRP
0013
ZMAIN2
0013
ZREAD
0038
ZSENSE
001D
ZSWITC
001 F
ZTBL2
0010
No errors detected
-Oct-79
14:6:47
POSTH
0020
P2
= 0205
P5
= 0106
READ1
0386
READ6
03 BA
R3
= 0302
SEND1
0225
SHIN
0091
SPOS2
024D
SPOS7
027A
SWITCH
OOBE
TBL2
0310
TESTI
0147
ZCOUT
0051
ZDMOVX
0034
ZFREZE
0011
Z1 POST
0030
ZSHDL
002F
PSW
= 0003
P2FREE
0004
P6
= 0206
READ2
0398
RENT
0361
R4
= 0402
SENSE
OODD
SHIN2
0096
SPOS3
025D
SPOS8
027E
SWITl
00C2
TCNT
= 000A
TESTI 1
0149
XCRECV
0042
ZDSEEK
0012
ZHDR
0029'
ZMAIN
0026
ZPOST
0047
Cross reference listing (MCREP version 4.0)
te <blank> = rpad)
Symbo1
Ref s
(# = définition
$ = w
ACCTC
589
596#
ALLO
713
715
729#
731
ALL1 •
732#
734
BMOVE
556
674
670
692
BMOVX 1
730 ^
945
. 980#
CEROR
364
3 81
395
398
CLRS .
707
709
809#
820
COMON
761
767
789#
799
COUT
353 #
608
667
COUTl
351 #
353
401
COUT2
356 #
358
COUT13
362#
378
COUT4
357
363 #
COUT5
372#
376
\
COUT6
375#
388
COUTl7
373
387#
COUTl8
394
398#
CRECV
237
352
430 # '
CRECW
90
4 29 a
472
540
CREVl
452
4 3 4 #
CREV2
436 #
450
CREV3
4 39
441 #
717
463#
942#
542
CREV4 •
440
CREV5
44 9 #
CREV6
454 #
CREV7
450
CREV8 v
444
DATEB .
25#
DATEII
24#
DELIO
492#
DELI 1
371
DELI 2
366
DELI 3
489#
DEL 1 4
457
DELI 5
487#
DELI 6
449
DELI 7
389
DELI 8
356
DELI 9
363
DEL4
490 #
DEL5
497#
DEL6
496#
DEL7
495#
DEL8
372
DEL9
493 #
DELT
650
507
v
504 505
4 8 31 509
494 11
746# 779
442#
455
467
466#
469#
491#
490#
488#
4 8 6#
485#
484 #
435
377
708
9\ b->
«t ai
506
fc
0\
DELTI
755 #
770
DELTA
2 71
753
775
DI AG
541
592 i
DISPR
586
625*
747
DL) 50
66
301
506#
DL2 2 5
385
505*
DL300
76
383
4 60
461
DM 1
94 0 *'
953
DM2
940
946
950#
DM3
955
957*
DMOVE
554
670
606
695
DMOVX
9 1 2
914
922
939
DSABl
623
629*
DSAB2 .
632
635*
DSABL
1 24
179
537
626#
DSEEK
7 10
782
911#
v
924
DSEK
9 131
915
DSSTA
' 3 3 |
86
621
626
DSAH
301
54
592
ENABl
630
633
ENABL
120
597
621 #
ENPR
503
. 6 2 0#
64 1
ENTBL
Olli
06 1
ERRI
524
530#
> -4
504 #
723 936* 959
983 II 1022 1108
ON ON Ni
M 'J\
ERROR
70
157
167
245
360
470
519*
1086
1089
FESTA
311
526
FREEZE
68
463
1 100«
1112
HDR
2 38
574 «
610
ICOMON
5381
560
725
733
INQ
3511
750
INIi
341
434
574
IHIT
50|| .
101
INITl
62 H
6 4'
67
1NIT2
69«
218
INIT3
65
73«
INSTA
32«
INTR2
269
213«
INTR3
210
219«
INTRF
138
173
175
204«
IPOSB
693 «
727
735
I POST
99
707«
737
IPOSTL
718«
726
Ml
986
991«
M2
991
994 «
M 3
1002«
1016
M4
1003
1006«
381 544
221
283 663
322 957
®\ ON N>
«t
W
en
>
Ni Jà. 00
M5
1001
1008«
H6
1011
1013«
MANI
110«
140
236
MAN2
122
• 125«
MAN3
117
133«
MAN4
206
216
234«
lMAN5
230 «
243
MAN6
235
24 1 «
MS 7 4
76«
77
PÛFREE
326«
1116
PI FREE
562«
1116
P2 FREE
822«
1116
P 3 FREE
1114«
1116
P3RET
920
950
995
POSTB
23«
749
POSTll
22«
665
809
READl
1015
1020
1 044 «
READ2
1061«
1081
READ3
1040
1074 «
READ4
1052
1075
1083«
READ5
1004
1006«
READ6
1065
1000
RENT
949
996 «
S END 1
593
607 B
► è
239
247
.107111
1070 1091
o\
ON N»
4^ W
Ol
SENSI
315
321 #
SENSE
62
90
135
SIIDL
1531
189
SUOLI
155
160#
SUIN
165
103#
SHIN2
1 00
187#
SIIOME
164
170#
SPOSI
6511
654
S POS 2
65511
696
S POS 3
661
665#
SPOS4
653
669#
SPOS5
675#
690
SPOS6
680
683 #
SPOS7
682
685#
SPOS8
676
688#
SPOST
577
650#
698
SSTAT
97
131
187
STATU
28#
50
606
STATUS
29#
84
1 25
SWIT1
261
264 #
SWIT2
266
200#
SWIT3
275
202 #
SWITCH
81
114
261#
TD 1 2
880#
097
3001
539
318
262
c\
(ji ZJi
6061
N> Ut O
TEMP
26#
TESTO
374
TESTI
362
TESTI 1
391
TFREE
1116#
ZCLRB
820#
2C0M0N
799#
ZCOUT"
401#
ZXRECV
4 72#
ZDELAY
509#
ZDELT
779#
ZDMOVB
959#
ZDMOVX
1 922 1
ZDSEEK
924 #
ZEMABL
64 1 I
ZENTBL
86 11
ZERROR
5 4 4 #
ZFREZE
11121
ZIIDR
6101
ZICOMN
560#
ZINIT
101 I
ZINTRF
221 #
ZI POST
737 1
ZMAIN
Ilo«
379 ■ 3901 307 393#
394 #
ZMAIN2 247 S
ZREAD 1091«
ZSENSE 3241
ZSIIDL 1 ß 9 |
ZSPOST -690 II
ZSWITC '2û5 I
ZTDL2 097 II
ON ©\
ÎS
Vl
>
Ni Ol N>
10/16/79 12:40:37 DMO;CROSS.Tl3
ÛÛ0Û)
00002
ÛÛÛÛ3
ÛÛÛÛ4
ÛÛÛÛS
ÛÛÛÛ6
Û0ÛÛ7
00008
.00009
ÛÛÛ10
0001 1
0000
000 12
0001 3
0000
0500
00014
0005
0500
000)5
000 A
0809
000 1 6
00) 2
0890
000 1 ?
i
000)8
00 1 A
0100
00019
001 B
0100
00020
00 IC
0100
0002 1
00 io
0 1 00
00022
00 1 E
0100
00023
001F
0100
00024
0020
0100
00025
00 2 1
0100
NAM TEST 1.3
* SYMBOL
COPYRIGHT 1979, PITNEY BOWES, INC.
* SYMBOLDEFTNÏTIONRN
ÛRG 20000
i BUFFERS DISBUP RMB -5 WRKBUF RMB 5 1 NBIJF RMB 0 OUTBUF RMB fl *VARIABLES
BCTR
BEND
BLINK
BPTR
pnounc
DECPOS
DISCTR
DISPTR
RMB 1 RMB 1 RMB 1 RMB 1 RMB 1 RMB 1 RMB 1 RMB)
Puffer
Anzei rjepuf fer Arheitspu ffer Ringangsouffer Ausgangspuffer Variahle
Bytezähler für Format-( FMT)-Routinen und Eingabe/Ausgabe
(E/A)-Routinen
Ende von Empfangspuffer-1 356-Sek.-Zähler
Bytezeiger für FMT- und E/A-Routinen Ziihler für Tastaturentprellung Deziinalstellung Steuerzahler für Anzeige Bytezeiger für Anzeige
test 13 10/16/70
1 2 : <1 fi : 3 7
dmo;cross.ti 3
ûûû26
0022
0100
getptr rmb
)
0002?
0023
0200
ii3ptr hmd
2
000 21)
*
000 20
0025
0 1 00.
iomask rmb
1
00030
0026
.0100
kclean rmb
)
0003 1
0027
;qioq kcleen rmb
1
00032
0028
0100
keycol rmb
)
00033
0029
0100
klijsed rmb
1
00034
002a
0)00
ksw rmb
)
00035
0028
0100
lnctih rmb
1
00036
002c
0100
NlflCTR
rmb
1
ûoû37
002d
0)00
pksw rmb
)
00038
00 2e
0)00
PORTA)
rmb
1
00039
002p
0)00
PORTC)
rmb
1
00040
0030
0)00
portco rmb
)
0004 )
003]
0)00
portc1
rmb
1
00042
0032
0)00
PtJTPTR
rmb
1
00043
0033
0400
tempo)
rmb
4
0004 4
0037
0 1 00
TEMPO2
rmb
)
00045
* external flags
00046
3800
yplags equ
*
00047
0038
0100
y11esba rmb
1
00048
0039
0)00
ycpdat rmb
1
00049
00 3 a
0)00
y ims f rmß
1
00050 "
oo3n
0)00
ylowp
RMß
)
0005 )
0û3c
0)00
yserv rmb
1
00052
00 30
0)00
yemabl rmb
1
Nibbie-2eiger für GETNIB Anfangsbyte-Zeiger für E/A-Routinen (u/O Null für indirekte Adressierung) Bitwähler für RCVMSG, XMTMSG Entprellte Tastatur
DITTO - Nicht geändert durch GETKEY Tastenspalte für KBSC
Letzter Tastenkode ausgegeben von GETKEY
Sch Iiis sei schal terbi ts
Zähler für zeitgesteuerte Anzeige
Zahl angezeigter "NIBBLES"
Vorherige SchlüsseIschalterStellung
PORT B-Abbild.
PORT C-Abbild.
PORT C-Abbild. - Daten = 0
PORT C-Abbild. - Daten = 0
Nibble-Zeiger für PUTNIB
Arbeitsbytes für KBSC
Arbeitsbyte für Nichtunterbrechungsroutinen
Externe Marken
Zeiger auf erste Marke
Basisrückstellung
Datumsprüfung
Unzureichende Gebührenmittel Niedrigstand der Gebührenmittel Wartungszustand Maschine betriebsbereit
• 1 EST
1.1 Ul/16/7'J
l 2 : 4 lì :
3 7 DMO:CUOSS.
TI. 3
.1
003E
0 100
YQATHC
RMB 1
Stapelregi sher gelöscht
000 5-1
0Ü3E
0 100
YIIARDE
RMB 1
harter Fehler
00055
0040
0 100
YKHDÌS
RMB 1
Tastatur aufler Betrieb ilOOiio
* INTERNAL
FLAGS
Interne Marken
O005 7
4 100
2 F LAG ti *
EQU *
Zeiger auf erste Marke
000 5 B
00-1 )
OìOO
2SCDWN
RMB 1
Stapellösch-Tastendruck
00059
004 2
0 100
2 K E Y HO
RMB )
Tasteneingabe2ustand
00060
0043
0100
2 STO LI)
RMB 1
Einstellbare Anzeige
0006 1
00 '1 il
0100
ZSTNCD
RMB 1
Einstellung angezeigt
000ó 2
0045
0)00
2T1MD
RMB 1
Zeitgesteuerte Anzeige
OOOó 3
ÛÛ 4 6
0)00
2ADDDL
RMB )
Addierbare Anzeige
000 6-1
0047
0 100
ZDBLINK
RMB 1
Anzeigeblinker i)0065
004 0
0 100
2ECIIER
RMB 1
Echofehler
00066
QQ4 9
0100
2EXC0M
RMB 1
Externe Kommunikation
OilO 6 7
004 A
0 100
2QIH
RMB 1
Eingangsnachricht in Warteschlange
0 0 0 61)
ÛÛ4U
0100
2Q0UT
RMB 1
" Ausgangsnachricht in Warteschlange i)0 0 6 0
004C
0 100
2TÛTAC
RMB )
Gesamtsummen-Akkumulation i)00 70
00 4 0
0100
2Till P
RMB 1
Maschinenauslösung
0ÛÛ7I
* MESSAGE HEADERS
Nachrichtenheader oder - Vorsatzinformation
000 7 2
«CÛMMANOS
TO AU - NO DATA
Befehle an Buchungseinheit (AU) - keine Daten
110073
4 100
II EN ABL
EQU $4 1
Setze Maschine betriebsbereit
000 7 |
4 200
UDÌ SAB
EQU $42
Setze Maschine außer Betriebsbereitschaft
ò 00 7 5
4 300
II EM n E II
EQU $43
Ende der Eingabe
0 00 7 6
4 4 00
IIBESIÌA
EQU $44
Rücksetze Stapelgesamtsummen i)JÛ77
4500
IISETSV
EQU $46
Setze Wartungszustand
l'i!.ST 13 10/16/79 J 2 : 4fi ; 37 DMO:CROSS. TI3
0007» 47ÛO IIRESSV EQU §47
IH1Û 79 . *COMMANDS TO A
00080 0100 IIS ET PO EQU ?C1
00081 C500 O-ENTAM EQU $C5 0Û0Û2 C600 fìENTCO EQU ÇC6 0000 3 * REQUEST DATA PROM AU 00081 5000 IIREQST EQU $50 (10085 5100 II II EQ PO EQU § 5 1 00086 5200 I.IREQAR EQU $52 00007 5200 1IREQDL EQU $52 00088 - 5300 IIREQDR EQU §53 i)ÛÛ89 5300 IIREQLP EQU $53 00090 5400 UREQCS EQIJ $54
il00 3 1 5400 IIREQHN EQU $54
Ù0092 5500 IIREQPC EQU $55
00093 5500 1IREQPS EQU $55
00094 5600 IIREQOA EQU $56
00095 5600 1IREQIIS . EQU $56
00096 5700 1IREQI1C EQU $57 000 97 «DATA PROM AU -0009Ü QOOO 11 ST AT EQIJ $00 vKi099 "DATA I'ROM AU -
uJUO 8100 II PS ET EQU § fl I
001.11 0200 Il A REO EQU $ lì2
00 102 0A00 110LOCK EQU $02iS0ß
Riicksetze Wartungszustand Befehle an AU - mit Daten Portogebühr einstellen Betrag eingeben Kombination eingeben Anfordere Daten von AU Anfordere Status
Anfordere Portogebühreneinstellung
Anfordere anwachsendes (ASC)-Register (Betrieb.)
Anfordere Dollarsperrwert (Wartung)
Anfordere abfallendes (DESC)-Register (Betrieb)
Anfordere untere Portogebührengrenze (Wartung)
Anfordere Kontrollsumme (Betrieb)
Anfordere Maschinennummer (Wartung)
Anfordere Stückzahl (Betrieb)
Anfordere Diagnosestatus (Wartung)
Anfordere Stapelbetrag (Betrieb)
Anfordere oberen Einstellgrenzwert (Wartung)
Anfordere Stapelzahl
Daten von AU - ohne Formatbyte
Daten von AU - mit Formatbyte Portogebühreneinstellung anwachsendes Register Dol1 arsperrwert
TEST 13 10/16/79 12:40:37 OMO:CROSS.TI 3
00103 0300 IIDREG I2QIJ $03
0010-1 01300 IIEOPOS EQU § fl3 i S0fl il0105 0*100 IICS1JM EQU $04
OOIOô OCOO IIMTRNO EQU $04tSÛ0
00 107 1J5 0Ó II PC NT 1-QIJ $05
00108 ODOO IIDIAGS EQU $fl5 + SOO
mil 09 0 6 on HO AMT I2QU $06
00110 flEOO IIESE1M EQU $06tS00
Où III 0 700 II13CNT EQU $07
00112 *COMMANOS PROM EXT DßV •
i)ü I I 3 El 00 IIEXWR EQIJ $Ei
00 in- * COMMANDS PROM EXT DEV -
00 1 15 6 I 00 IIEXRD EQU $6 1
001 16 6200 IIEHAK13 EQU $62 00 1 1 7 6300 1101 SKR EQU $63
v
0011 0 * DATA TO EXT DEV
00 1 19 A 100 HD I SPC EQU $ A 1
00120 »MISC PARAMETERS
00121 0 100 AUMASK EQU $0 1 Oi) I 2 2 0200 EXMASK EQU $02
Util 2 3 1000 I Iii. NO EQU INfUJPtß
ih)l 2-1 lUOO OllDEN EQU OUTIHIP i 6
00 125 71'Il0 TSTACK EQU $7P 00 126 * PORTS AMD TIMERS
S
ui -4
Abfallendes Register
Unterer Portogebühren-Warenwert
Kontrol1summe
Maschi nennummer
Stückzahl
Di agnosestatus
Stapelbetrag
Obere ßinstellgrenze
Stapelzahl
Befehle von externem Gerät - mit Daten
Mache zeitweilige Anzeige
Befehle von externem Gerät - keine Daten
Anfordere Inhalt der Anzeige
Anfordere Tastatur-Betriebsbereitschaft
An fordere Tastatur-Außerbetriebsetzung
Daten an externes Gerät
Inhalt der Anzeige
Verschiedene Parameter
Wähle Eingabe/Ausgabe-Bit für Buchungseinheit Wähle Eingabe/Ausgabe-Bit für externes Gerät Ende des Eingangspuffers - 1 Ende des Ausgangspuffers - 1 Stapel an fang
PORTS (Tore) und Zeitgeber o\ o\
N» w
Ui
TEST
13 10/16/79
. 12:
40:37
OMO ; CROSS.
»Ui 1 2 7
fiflOO
ACR
EQU
$013
OD 1 2'd
0500
CTRIIO
EQU
$ 05
00 1 2 9
0400
CT H LO
EQU
$04
001 30
ÛA00
1ER
EQU
$ OA
00 1 3)
Û900
IPR
EQU
$ 09
00 i 3 2
OCOO
PCR
EQU
$ OC
00 1 33
0000
PORTA
EQU
$09
00 1 3-i
ÛD00
PORG
EQU
$ OD
00 1 35
0100
PORTß
EQU
$01
00 1 3 6
0D00
PORTBX
EQU
$ 0E
00 1 3 7
0200
PORTC
EQU
$ 02
00 1 iß
0300
PORTD
EQU
$ 03
Oül-lfl
MNTRP
00 i 1 i
»INTERRUPT PROCESS
001-12
3000
ORG
S300Û
ÙÙI-I3
3000
40
INTRP
PIIA
0ÙI-H
300 1
A5 8 4
INTRP
LOA
CT R 1.0
00115
3003
OA
TX A
00 1 In
300.1
4« .
PIIA
001-17
3005
9 0
TVA
00 1 10
3006
40
PIIA
00 1 19
3007
C6 IC
DEC
I3LINK
l)ü ) 50
3009
Dû OC
RM E
iNTno2
Iii 1 f ssteuerregister •
Zähler li/0 Zähler L/0
Unterbrechungs-Inbetriebsetzungs-Register
Unterbrechungsmarken-Register
Periphere Stuerregister
Tasta turspai te/Anzeigesegment-Wahl
Tasta turzeile/Anzeigeziffern-Wahl
LED- und serielle Ausgabe Serielle Eingabe
Unterbrechungs-Verarbeitung
Rette Akkumulator
Lösche Unterbrechungs-Marke
Rette X
Rette V
Erniedrige .395-Sek.-Periodenzähler Wenn .395-Sek.-Periode beendet
TEST 13 10 / 16/71) 12:40:37 OMO : CROSS . 'PI 3
0i) 15 1
380ß
A5
2 0
LOA
LNGTIM
- wenn 101-Sek.-Zähler ^ 0
Oül 5 2
3 OOD
FO
02
OEQ
INTRÛ2
00153
380F
C6
2n
DEC
LENGTIM
Erniedrige Zähler
Oll 15-1
1130
INT HO
1 EQU
k
.
00)55
30 1 1
A 9
0 0.
I.DA
IfSOO
Kippe IUinkermarke
00 156
i
30 1 J
45
47
EOR
2ÜL1NK
00 157
3015
05
47
STA
2BLINK
00)58
1730
INTR02
EQU
*
00) 60
* KBSC
00 1 6 1
* KEYBOARD AND SWITCH SCAN
Tastatur- und Schalterabtastroutine.
00 I 62
* PART
OP INTERRUPT ROUTINE
Teil der Unterbrechungsroutine
DO 163
38 1 7
A9
OE
KBSC
LOA
il 1 4
Wähle Tastaturzeile 4
00 1 6-1
38 19
85
81
STA
PORTß
00 165
30 in
AO
00
LOY
II n
Anfangssetzung für getasteten Tastaturzeilenzähler
00 166
30 ID
84
20
ST Y
KEYCQL
Lösche
Û31 6 7
30 IP
8 4
OD
ST Y
PORTAX
Setze auf Lesen der Tastaturspalten-Bits ilil 1 ó B
302 1
46
4 1
LSR
ÜBCDWN
Lösche Stapel-Lösch--Tastendruck
00)69
3 0 2 3
4 A
LSR
A
Lese Schlüsselschalter, 3 L/O-Bits (niedrige Ordnung)
001 70
*
Lösche Übertrag für spätere Verzweigung illl 1 ? )
3824
25
80
AND
PORTA
üü 1 7 2
3026
05
2 A
STA
KSW
Où 1 73
3020
A 2
03
LDX
»3
Setze auf lesen von 4 Tastaturzeilen
00 17 4
2A3 8
|\0 SCO
1 EQU
A
Ausführung bis 4 Tastenzeilen gelesen
00 175
3 8 2 A
C 6
8 1
DEC
PORTR •
Wähle nächste Tastaturzeile
4)0 1 76
3ß2ft
A5
HO
I.DA
PORTA
Lese Tastaturspalten-Bits
i
TEST 13 10/16/79 12:40:37 DMO:CRÛSS.T13
û û 1 7 7
382E
49
FF
EOR
1 SPP
00 I 78
3830
95
33
STA
TEMPO1,X
00 I 79
3832
07
beq
KBSC02
00180
3834
06
36
STX
TEMPO 1 + 3
00101
3836
05
28
OHA
KEYCQL
0018 2
3838
«5
28
STA
KEYCOL
00 I 83
3 8 0 A
CO
INY
00184
3038
KBSCÛ2
EQU
*
00 1 85
388B
CA
DEX
001 86
383C
10
EC
BPL
KBACOl
00187'
*
00188
383E
98
TVA
001 89
383F
DO
OC
BNE
KBS04
00190
384 1
A5
IE
LDA
DBÛIJNC
00191
3043
04
BNE
KBSC03
00 1 92
3845
A9
FF
LDA
i-i
00 193
3847
30
37
BMI
KBSC11
00194
4938
KBSC03
EQU
*
00 | 95
3849
C6
IE
DEC
DBOUMC
00)96
à
00 197;
384 3
90
37
BCC
KBSC 12
00198
*
00199
4D3Q
KBSC04
EQU
*
Mache die Logik positiv
Rette gegenwärtiges Spaltenbild wenn Tastendruck
Speichere Tastaturzeilennummer
Speichere Tastaturspaltennummer
Zähle getastete TaSTATURZEILE
Zähle Tastaturzeile
Wenn keine Taste gedrückt
Wenn Entprellungszähler = 0
Anzeige keine Taste gedrückt
Verlasse Routine sonst
Erniedrige Übertrag gelöscht Verlasse Routine
ri-'-î'P IJ l il/ I li / 7 U J 2 : 4 II : 3 V OMO ; L'ItOSS . TI 3
ÙJÛÛ
384D
02
cpy
12
Wenn viele Tasten gedrückt
Où20 |
3 0 41-
10
on
bpl
K13SC06
Wenn Löschtaste gedrückt
0Û202
*
Wenn beide Stapeltasten gedrückt
00 20 3
*
Setze Stapel-Lösch-Tastendruck
0020-1
A
00 205
-
*
00206
*
Anzeige viele Tasten gedrückt
0Û207
*
Setze Entprellungszähler
ÛÛ208
A
Verlasse Routine
00209
A
002 10
3051
A5
28
LDA
keycol
Setze auf Berechnung der Tastaturspalte
002 1 1
3053
A2
FF
LDX
1-1
002 1 2
3855
86
28
STX
keycol
û 0 2 1 3
5738
kbsc05
equ
*
Führe aus bis Bit gefunden
Oû 2 14
3857
e6
28
I mc keycol
Berechne Spaltennummer
Ù0 2 1 5
3859
4 A
LSR
A
Schiebe Bit in Übertrag
002 1 6
3Û5A
90
F13
bcc
KBSC05
002 17
*
0021 a
385C
PO
1 3
beq
KQSC09
Wenn mehrere Bits in Byte
002 1 9
3Û5E
A5
34
kdsc06
LDA
tempo 1t]
Wenn Löschtaste gedrückt
00220
3860
29
20
AND
1 S 2 0
0022 1
3862
fo
09
neo k13scob
00222
3864
A 5
35
LDA
tempo 1 i2
Wenn beide Stapeltasten gedrückt
002 3 3
3866
29
30
AND
i S 3 0
0022-1
3868
fo
03
13 eq kbsco 7
00225
3 8 6A -
38
sec
Setze Stapel-Lösch-Tastendruck
TKST 13 10/16/79 12:40:37 DMO; CROSS,TI 3
0Û226
3Û6U
66
41
ROB
2BCDWN
û 0 2 2 7
6D30
KBSC07
EQU
A
00220
6D30
KBSCOO
EQU
*
0Ü229
306D
A9
RE
LDA
il -2
002 30
3 0 6F
30
OB
BMI
KBSC10
0023 1
A
00232
7 1 30
KBSCO9
EQU
*
00233
3071
A4
1E
LDY
DBOUNC
00234
3073
no
OF
BNE
KBSC12
00235
*
00236
3075
A5
36
LDA
TEMPO)i3
00237
3077
0A
ASL
A
00230
3070
0A
ASL
A
00239
3079
0A
ASL
A
00 2-10
307A
65-
20
ADC
KEYCOL
0024 1
3B7C
A2
26
KBSC10
LDX
«30
Ü0242
307E
86
)E
STX
DBGUNG
0024 3
3 0BÛ
•05
26
KBSC 1 1
STA
KCLEAH
00 2 4 4
3002
05
27
STA
tfCLEEN
00 2-15
0 4 3 û
KBSC 1 2
EQU
*
Où 2 17
*D1SP
ù û 21 a
'DISPLAY
NEXT NIBBLE
00249
* PART OP
I NT
ERRUPT ROUTINE
0 0 2 5 Û
3004
A5
20
Df SP
LDA
DISCTR
Anzeige viele Tasten gedrückt Setze Entprellungszähler Verlasse Routine
Wenn Entprellungszähler t 0 Verlasse Routine
Berechne Tastenkode
Setze Entprellungszähler Anzeige Tastenkode Verlasse Routine
Anzeige nächsten Nibble in Anzeigepuffer
Teil der Unterbrechungsroutine
Wenn Abtastfolge vollständig beendet
if-.i j .ij iu/i(j//y 1 ^ ; «in i J / UNUiCKuaa. riJ
0025 1
3886
10
00
BPL
DISPOÌ
0U252
3880
A9
00
LDA
«DISBUPtO
01)25 3
388A
05
2)
STA
DISPTR
00 2 5 1
388C
A9
0v9
LDA
1 9
00255
380E
05
20
STA
DI SCIMI
00 256
9039
DI S PO 1
EQU
*
0025 7
3890
4 A
LSR
A
00250
3 0 91
A 6
21
LDX'
DISPTR
00259
3893
B5
00
LDA
O. X
00260 '
3895
90
05
BCC
DÏSP02
.0026 1
3097
20
OP3 E
JSR
SWAP
00262
3 0 9A
90
02
BCC
DISPÛ3
00263,
9C3Q
DISPÛ2
EQU
*
00 2 6-1
3Q9C
E6
21
INC
DISPTR
00265
9E30
DI SPO3
EQU
a
00266
309E
29
ÛF
AND
ISOP
00267
3 0 AO
AA
TAX
Û026B
3 0 A 1
OD
CPX
113
00269
3 8 A 3
DO
09
BNE
DISPÛ6
00270
3ÛA5
24
44
BIT
2STIIGD
ù 0 2 7 1
3 Û A 7
1 0
05
BPL
DI S PO5
0 0 2 7 2
38A9
24
3D
BIT
VENABL
0 0 2 7 3
3 ü AB
30
0 1
DM I
D I SPO4
00 2 7-1
3 0 AD
UNX
00275
ÀE30
DI S PO 4
EQU
i
Anfangssetzung Anzeigezeiger Anfangssetzung Anzeigezähler
Setze (ibertrag wenn Zähler ungerade Hole gepackte Nibbles
Wenn Zähler ungerade markiert austausche Nibbles sonst zeige auf nächste 2 Nibbles
Trenne Nibble ab
Setze für Tabellensuchvorgang wenn auf Anzeigeteil gesetzt
Wenn Anzeigesetzungsmarke gesetzt Wenn Maschine nicht betriebsbereit setze auf Anzeige von Bindestrich
TUST 13 10/16/79
12 ; 4 fl; 3 7 OMO ; CROSS
0 ü 2 7 6
AE30
DI S PO5
EQU
*
00277
AE30
DISP06
EQU
*
00 2 7fl'
3ÛAE
BC FD30
LDY
DISP 16,X
0 Û 2 7 9
30BI
10 ;
CLC
00 200
3 OU 2
A5 ) P
LDA
DECPOS
00 2 0 1
30B4
45 20
EOR
DISCTR
00 20 2
3006
DO Ol
BNE
DISP07
00203
3008
30
SEC
00204
B920
DISP07
EQU
*
00205
3009
24 4 4
BIT
ZSTBGD
00206
30BU
10 10
BPL
DISP12
00207
3 8 BD
24 3P
BIT
YIIARDE
00 280
28BF
10 03
BPL
D1SP08
00209
3 OC 1
30
SEC
00290
3QC2
>
D
D O
LDY
IISOO
0029 1
C4 30
D1SPOO
EQU
*
00292
3BC4
24 4 7
BIT
2 BLINK
00293
38C6
30 OD
BMI
DI S P1)
00294
30C0
A5 3ß
LDA
Y LOUP
00295
38CA
05 3A
ORA
YINSP
00296
3 0CC
10 01
BPL
DISP09
00297
3 ACE
10
CLC
00290
CP30
DISP09
EQU
*
Lade verschobenen 7-Segment-Kode in Y set2e auf Löschen des Dezimalsegments wenn In Dez imalformat setze auf Setzen des Dezimalsegments wenn Anzeigesetzungsmarke gesetzt wenn Marke "harter Fehler" gesetzt setze auf Setzen des Dezimalsegments setze auf Anzeige von Leerzeichen wenn Blinkermarke gelöscht wenn Niedrigstand oder unzureichende Geldmittel setze auf Löschen des Dezimalsegments
TEST 13 10/16/79 l 2 ; 4 0 ; 3 7 OMO ; CROSS.TI 3
0Û299
30CF
24
3 A
BIT
VINSP
wenn unzureichende Geldmittel
00 300
3001
10
02
BPL
DI SPO 10
0030 1
3ÛD3
AO
00
lo y
«0
setze auf Anzeige von Leerzeichen
00302
05 3 0
D1SP10
EQU
A
ÛÛ303
D53Û
DI SPI 1
EQU
*
û û 3 0 4
0538
DI S p 1 2
EQU
à
Û0305
38D5
90
TYA
Hole verschobenen 7-Segment-Kode
00306
3 006
24
3C
BIT
YSERV
Wenn Wartungsmarke gesetzt
00307
30Dß
10
06
BPL
DISPÌ 4
00308
3 ODA
49
00
EOft
IfOOO
wenn Leerzeichen angezeigt werden soll
00309
3 ßDC
DO
02
UNE
DISPÌ 3
003 1 0
30DE
A9
10
LDA
IISIO
einsetze Unterstreichen
003 1 1
E03Û
DI SPI 3
EQU
*
ùû 3 1 2
EQ30
DI S P1 4
EQU
*
003 1 3
3 ÛEÛ
6 A
ROR
A
Verschiebung in Dezimal für 8-Segment-Kode
003 1 4 '
3ÛE1
A 2
00
LDX
HO
Lösche Ausgabetor
003 1 5
3BE3
Û 6
00
STX
PORTA
Û03 1 6
30E5
CA
DEX
Setze auf Ausgabe
00 3 17.
3 fi E 6
06
OD
STX
PORTAX
003 1 Û
3 0 Ed
AA
TAX
Bewege 0-Segment-Kode nach X
003 ) 9
30E9
A 5
20
LOA
DI SCTR
Wähle Ziffer für Anzeige
00 3 20
3 ÜEO
û 5
n i
STA
PORTA
00 3 2 1
3 fi EO
A5
26
LDA
KCLEAN
Ts!: eine oder keine Taste gedrückt
Ù0 322
3 fl EF
C9
PE
CMP
1-2
00 32 3
3 ß P 1
PO
02
BEO
DI SPI 5
00 3 24
3 ftp 3
06
no
STX
PORTA
Erleuchte Segmente
\
TUST
13 10/16/79
12:48:37
DMO:CROSS.TI 3
00225
F5 3 8
DISPÌ5 EQU
*
00 3 2 6
3 8F5
C6 20
DEC
DISCTR Zähle Anzeige
Dû 3 2 7
3ßF7
68
PLA
Wiederherstelle Y
003 28
3 8 F 8
A8 .
TAY
00329
38F9
68 '
PLA
Wiederherstelle X
00 3 30
3 8 FA
AA
TAX'
003 3 1
38FQ
68
PLA
Wiederherstelle A
003 32
3 8 FC
40
RTI
Aussprung aus Unterbrechung
003 3 3
FD3 8
DIS PO 16 EQU
* 7-Segment-Kodes linksverschoben
00334
*
0 1 2 3 4 5 6
00335
3 8 FD
7E
FCB
S7E,S0C, SB&, S9E, SCC, SDA, SFA,
3 8 FE
©C
38FF
06
3900
9E
3 90)
CC
V
3902
DA
3903
FA
3904 •
OE
3905
FE
3906
DE
:Û33Û
*
UPPER CASE E großes E
00 3 37
3907
F 2
FCß
SF2
003 38
*
LÛWER CASE R kleines R
00 3 39
3 901)
•AO
FCß
SAO
0 0 3 -1 fi
* •
LOWER CASE 0 kleine O
n n ì .i i inno nfl
Pen
Sßß
TI'.'ST U i « / i £» / 7 U
12 ; 4 11 : 3 7 DMÛ t CHOSS. 'P1 3
003-12
*
Wl NGS
ü 0 3-13
390A
92
pen
$92
00 3 M
A
IIYPIIRN
0 0 3 15
3900
00
PCB
$00
00 316
V
BLANK
0 û 3 -1 7
3 9ÛC
00
PCB
SOO
00349
*
IM IT
00 3 50
A
IM l TI A1
LI Z R
SYSTEM AT R
0035 1
390D
A2
7F
JNJT
LDX
ÏTSTACK
OÜ352
390F
9 A
TX S
00353
39 10
70
SE)
00354
39 1 1
CLD
00355
39 1 2
A 9
00
LDA
DO
ÛÛ356
M 3 9
INI TO 1
EQU
*
00357
3914
95
00
STA
= ,X 4
00 358
39 1 6
CA
DEX
00 359
3917
F(3
QPL
INITÛL
û 0 3 6 0
*
0036 1
39 19
20
1 û 3 A
JSR
BLANK
00362
*
00 36 3 '
39 IC
û 5
49
STA
2EXCOM
00364
39 IE
A9
F7
l,DA
8SP7
00365
3 9 20
05
2 F
STA
PORTCI
00 366
3922
ß 5
û 2
STA
PO UTC
00 36 7
39 24
A9
0F
LDA
IISÛP
Flügel
Bindestrich Leerzeichen
Anfangssetzung des Systems zur Rücksetzzeit Anfangssetzung Stapelzeiger
Setze Unterbréchungs-Außerbetriebssetzung Setze auf Ausführung binärer Arithmetik Lösche Akkumulator
Ausführung bis Seite Null gelöscht Lösche Byte Zähle Byte
Fülle Anzeigepuffer mit Leerzeichen
Setze X = -1 = #FF
Setze EXT-Kommunikations-Marke
Einleite Porte, Anschalte Datumsprüfung-LED
Einleite PortB, setze serielle E/A in Betrieb
TUST 13 10/16/79
12:40:37
DMO:CROSS.T13
ihl 3 68
3926
05
8 )
STA
PORTB
Ü0369
3928
85
2 E
STA
PORTBI
Û03 70
392A
46
40
LSR
YKBDIS
Où 3 7 )
3 9 2C
A9
5P ,
LDA
*?5P
00372
3 9 2 E
85
812 *
STA
PORTBX
00373
3930
85
20
STX
DÏSCTR
00374
39 32
86
29
STX
KLIISED
Ù0375|
3934
A2
08
LDX
8 $08
003 76
3936
86
OC
STX
PCR
00377
3938
A2
OA
LDX
#?OA
OÛ37A
398A
86
ÜB
STX
ACR
00379
393C
A 2
06
LDX
H ?06
0038 0
398E
86
2D
STX
PKSW
0038 )
3940
86
8 4
STX
CTRLO
00382
3942
86
85
STX
CTRllO
00383
3944
A9
50
LDA
IIIREQST
00384
3946
20
6P3B
JSR
1IDR2AH
00385
*
OÛ386
3949
20
PR3C
JSR
PSKE03
00387
*
00 3 88
*
00390
* MLOOP
00 391
4MA I ML
1 NE LOOP
00392
4039 M1 -00 P
EQU
*
00393
394C
20
R23A
JSR
FLUSII
nnin i
1 0 4 P
h 0
n?
T.DA
1EXMASK'
Einleite PORTB Abbild
Lösche Marke "Tastatur sperren"
Anfangssetzung Anzeigezähler Anzeige kein Tastenkode ausgegeben Setze zur Ausgabe IR0 auf PB6
Setze für freien Lauf auf Phase 2
Anfangssetzung Schlüsselschalterstellung
Starte 1542-usec-Zeitgeber
Hole Status
Empfange Status einschleuse Warteschlangen-Nachricht Anfordere Portogebühreneinstellung Ei nschleuse Warteschlangen-Nachricht llauptf luß-Schleif e Schleife
Ei nschleuse Warteschlangen-Nachricht
Wenn RTS (Sendeaufforderung) von externem Gerät
TEST tJ iU/16/79 12MU:37 DMO; CROSS.T13
00395
395 1
24
03
bit porto
00396
3953
do
06
bne mloûû1
00397
3955
20
703d
jsr rcvi n
00390
3958
20
b23a
jsr plusii
00399
5 b 3 9 l mloool equ
*
0û1û0
395b-
a9
ûi ;
*
lda iaumask
00 101
395d
24
03
bit porto
00-102
3 9 5f do
06
bne ml00 0 2
00-10 3
396 1
eû3d
jsr rcvout
0ü-104
3964
d23a
jsr plusii
00105
6739
mlû002
equ
*
00-106
3967
a 2
40
ldx il $40
00-107
3969
06
fi a
stx
1er
00-100
396b
50
cli
00-1û9
396c
24
45
bit
2timd
ü0-1 10
296e
10
07
bpl mloûû4 '
üü-1 11
3970
a5
25
lda lngti m
00-1 1 2
3972
03
BNE
Ml00 0 3
oo-m
3 9 74
20
0 1 3 d
JSR
PSKI204
üü-1 1 -1
A
üü-1 15
7739
ML0Q0 3
EQU
■à,
0û-i 1 6
7739
M LOÛÛ '1
EQU
*
00-1 1 7
3977
a 5
47
LDA
2 B LI M K
00 1 Iß
3979
25
38
AND
YRESBA
00-ii 9
397b
0a
ASL
A
00420
397c a5
47
LDA
ZBLINK
> tJ
o\ so
Erhalte Nachricht von externem Gerät Einschleuse Warteschiangen-Nachricht
Wenn RTS von AU (Sendeaufforderung von arithmet. Einhei
Erhalte Nachricht von AU Einschleuse Warteschlangen-Nachricht
Setze Unterbrechungen in Betrieb
Wenn Marke "zeitgesteuerte Anzeige" gesetzt
Wenn Zeitperiode erledigt
Hole Postgebiihreneinstellung einschleuse Warteschlangen-Nachricht
Setze zum Ein/Ausscha1ten von Basisrückstellung o\
Halte Bit in Übertrag S
Setze zum Ein/Ausschalten von Datumsprüfung
TEST 13 10/16/79
1 2 : 4 fi ; 3 7
OMO{CROSS.TI 3
0 0 121
397E
25
39
AMD
YCKDAT '
0 0 12 2
3 9 UO
2 A
ROI-,
A
Bewege Bits ir» Stellung
00 12 3
3 90 |
2A
HOL
A
00-121
3 902
2A
V
ROL
A
00425
3983
2A
ROL
A
00426
3984
09
F 3
ORA
Il ?P3
Setze alle weiteren Bits
00427
3986
05
2P
STA
PORTCI
Schalte T.ED's an oder aus
004 2 6
39QB
05
02
STA
PORTC
00-12 9
3 9 0 A
A5
01
LDA
PORTB
Hole Wartungsschalterbits
00430
39ÛC
A6
2E
LDX
PORTB1
Hole vorheriges Bit
0043 1
398E
0 5
2 E
STA
PORTB1
Speichere gegenwärtiges Bit .
004 32
3990
flA
TX A
wenn Knderung des Schalters aufgetreten ist
00-1 33 .
3991
45
2E
EOR
PORTBI.
00434
3993
29
20
AMD
1400100*000
00435
3995
PO
16
DEQ
ML000 7
004 36
3997
A5
2E
LDA
PORTBI
Wenn in Wartungsstellung
004 37
3999
29
20
AMD
HiOOlOOOOO
004 38
399Q
DO
00
BNE
ML0005
00-139
3990
46
49
LSR
2EXCOM
Lösche Marke "externe Kommunikation"
00 4 40
399F
46
40
LSR
VKBDIS
Lösche Marke "Tastatur außer Betrieb"
004 1 1
3 9 A 1
A9
46
LDA
«IISETSV
Setze zur Anforderung des Wartungszustandes
004 4 2
39A3
10
05
MM,
M 1.0006
00-1-13
A5 3 9 MI.0005
EQU
*
sonst, schalte in Normalstellung
004 4-1
39A5
3 fl
SEC
Setze Marke "externe Kommunikation"
00-1-15
39A6
66
4 9
ROR
2EXCOM
Ti:ST 13 10/16/79 l 2 : 4fl : 37
00 -1 16
3 9AÛ
A9
47
004 17
AA39
ML000 6
00 148
39AA
20
0D3B
00 4 4 9
*
00450
A
00451
AD3 %
ML00Û7
00452
3 9 AD
24
4fl
-
00453
3 9 AP
30
9B
00454
3 9B 1
24
4 1
00455
' 39B2
10
OC
00456
3 9B5
24
3 E
00-157
3907
30
05
00458
3 9 U 9
A 9
44
004 39
39ÛB
20
flD3n
00 160
A «
00 16 1
A
00462
BE39
MLOOÛO
00463
39BE
20
01 3D
004 6 1
A
00 4 6 5
A
00466
C) 39
ML000 9
00467
39C1
24
4 D
00460
39C3
10
0F
0Û569
39C5
4 6
4 D
00470
39C7 „
A5
27
OHO ; CROSS.T
LDA ÏIIRRSSV.
EQU *.
JSR KRYM03
EQU *
BIT YKBDIS BMI*MLOO19 BIT 2BCDWN BPL MLÛ009 BIT YBATRC BMi Mf.nnnn LDA jf IIRI2SBA JSR K12 y Mû 3
EQU *
JSR PSKE04
EQU * BIT 2TRIP BPL MLOO I 2 LSR 2'rniP LOA KCLI2EN
Setze auf Anforderung Normalzustand
Anfordere Zustand Empfange Status
Elnschleuse Warteschlangennachricht Wenn Tastatur in Betrieb Wenn Stapellösch-Tastendruck
Wenn Stapel zur Löschung fällig
Setze auf Löschung des Stapel-Registers Sende Nachricht an AU Empfange Antwort
Ei nschleuse Warteschlangen-Nachricht
Anfordere Portogebühreneinstellung Empfange Antwort
Ei nschleuse Warteschlangen-Nachricht Wenn Maschinenauslöse-Marke gesetzt
Lösche Maschinenauslöse-Marke Wenn keine Taste gedrückt
TJ-ST ' 1 3 1 0/ 16/79 1 2:40:37
OMO s CROSS.TI 3
Û0.I71
39C9
10
06
BPL
ML0010
004 72
39CB
20
01 3D
JSR
PSKE0 4
00-1 7 3
*
00-174
39CE
4C
D4 3£)
JMP
a o ►-2 2
00-175
013 9 .
MLÛÛ1Û
EQU
*
00-176
39D)
20
B93C
JSR
PRKEOO
00-17 7
*
00470
*
i) ü -1 7 9
*
00-100
0439
MLOO11
EQU
*
00 -18 1
0439
MLOO12
EQU
*
00-18 2
3904
A9
08
LDA
KB
00483
3 906
A6
2 A
LDX
KSW
0Û4Û41
3 908
03
CPX
Ä 3
00485
39DA
PO
0B
REQ
ML0013
004 86
39DC
EO
05
CPX
#5
00487
3 9 DE
FO
04
BPQ
MLOO13
00 4 OB
39E0
EO
06
CPX
U 6
00 189
39E2
DO
OE
BUE
MLOOl4
00490
39E4
8 A
ML00 1 3
TX A
0049 1
39E5
4 A
LSR
A
00-192
39E6
05
37
STA
TEMPO2
0 0 19 3
39EB
■A 5
2D
LDA
PKSW
004 9 1
39EA
OA
ASL
A
00-195
39EIÌ
OA
ASL
A
A i\ 1 Ci C
i o or>
ORA
TEMPO2
Hole Portogebühren-Einstellung Rinschleuse Warteschlangen-Nachricht sonst, Taste gedrückt Fall
Verarbeite reg. Tastendruck Kein Fall
'Setze Fallnummer=kein Fall
Hole Schlüsselschalterstellung wenn zulässige Schlüsselschalterstellung
Berechne Fallnummer auf PKSW, KSW
U-3T M JU/lli / / U 12:40:37 DMO;CROSS . T13
00-194
3 9EA
0A
ASL A
00495
3 9 EB
0A
ASL A
00496
39EC
05
37
ORA TEMPO2
00497
3 9EC
29
OF
AMD II SO F
00498
3 9 FO
06
2D
STX PESW
00499
F2 3 9.
ML0014
EQU *
00500
39F2
AA
*
TAX
00501
39F3
A 9
39
LDA il MLOO 10 — 1 <
00502
39F5
4 Ö
PII A
00503
39P6
A9
4 B
LDA |MLOO10-Ì >
00504
39FB
40
PII A
00505
39FB
BD
FD39
LDA MLOO16-5,X
00506
3 9 FC
40
PIIA
00507
39FD
BD
00 3 A
LDA ML0017-5, X
0050Û
3 A06
40
PRA
00509
3 A0 1
60
ML0015
RTS
00510
3 A0 2
3 A
MLOO16
FCB ECEA-K
0051 1
3A93
3 A
PCB ECEC-K
005 1 2
3 A04
3 A
FCB ECOP-K
005 1 3
3A05
3 A
FCB MLOO15-Ì <
005 1 4
3A06
3B
PCB OPEA-K
0Û5 I 5
3A07
3 B
FCB OPEC-K
005 16
3 A0 0
3 B
FCB OPOP-U
005 1 7
3AÛ9
3 A
FCB M 10015- 1<
>
N> -J
W
Bringe vorherige Schlüsselschalterstellung auf neuen Star
Setze PalInummer in X Setze für RTS auf Endfall
Setze für RTS auf Fall
FALL - Schlüsselschalter-Übergänge von Kombinationseingabe auf Betragseingabe von Kombinationseingabe auf Kombinationseingabe von Kombinationseingabe auf Betrieb kein Fall.
von Betrieb auf Betragseingabe von Betrieb auf Kombinationseingabe von Betrieb auf betrieb kein Fall
TEST i 3 10/16/79 12:4(1:37
ÛÛ518 3AÜA 3A
005 J 9 3AÛB 3A
00520 3AÛC 3A
OÛ5 21 3Aûû 60 • HLÛÛ17
00522 3AÛE 01
00523 3AÛP 09
00524 3A 10 00
00525 3A I1 92
00526 3A 12 92
00527 3A 13 AT 00520 3A 14 ûû 00529 3A 1 5 .54 ÛÛ530 3A 16 5F ÛÛ531 3A 17 63
005 3 2 4C39 HLÛOlfl
OÛ533 4C39 MI.ÛÛ 19 ÛÛ534 *
DMO;CROSS.T13
PCB EAEA-K PCB EAEC-K PCB EAOP-K PCB EC12A- Ì >. PCB ECEC-1> PCB ECOP-1> PCB Mi.00 1 5 - 1 > PCB OPEA-1> FCB OppC-l> FCß OPOP-i> PCB MLOO|5-1> PCB EAEA-1> PCB EAEC-1> • PCB EAOP-1 EQU MLOOP EQU MLOOP
von Betragseihgabe auf Betragseingabe von Betragseingabe auf Kombinationseingabe von Betragseingabe auf Betrieb
TUST 13 10/16/70 12:40:37 DMO: CROSS.TI 3
0 û 5 3 6
* BLANK
Leerzeichen
005 37
Fülle Anzeigepuffer mit Leerzeichen, Setze
00530
3A10
A 2
04
BLANK
LDX ï 4
Setze auf Leerzeichen- 5 Bytes
00539
A
und auf Löschen 5 Marken
00 5-10
IA3A;
BLAHK Ì
ËQ" *
Führe aus, bis Bytes, Marken gelöscht
0054 l
3 A 1 A
A9
FF
LDA II? FF
Fülle Byte mit Leerzeichen
00542
3A IC
95
00
STA DISBUF,X
0054 3
3A IE
56
4 )
LSR 2FLAGS , X.
Lösche Marke für zeitgesteuerte Anzeige
00 5 4 4
A
Lösche Marke für Einstellungsanzeige
00545
A
Lösche Marke für einstellbare Anzeige
00546
*
Lösche Marke für Tastatureingabe
00547
A
Lösche Marke für Stapellösch-Tastendruck
00540
3A20
06
2C
STX NIBCTR
Lösche Nibble
-Zahl
00549
3A22
CA
DEX
00550
3A23
l.û
F5
BPL BLANK 1
00551
A
v
00552
3A25
06
1 F
STX DECPOS
Unterdrücke Dezimalpunkt
00553
3 A 2 7
60
RTS
Aussprung
00555
*DISBFR
00556
»DISPLAY
BUFFER
Anzei gepuffer
00557
3 A 2 0
06
22
disüer
STX GETPTR
Zeiger auf NIBBLE-Puffer +2*2
00550
3A2A
20
4 F 3 A
JSR DISI NT
Lege Anzeige still
TEST 13 10/16/79 1 2 : 4fl 37
00559
3A2D
20
10 3A
00560
3A30
20
5F3ß
ÛÛS61
3 A3 3
Afi
00562
. 3 A 3 4
20
5P3B
00563
3A37
05
IF
00564
3A39
66
22
005 65
3A3B'
90
00566
3A3C
4 A
00567
3A3D
26
22
ÛÛ56Q
3PSA
DJSBOl
00569
3 ASP
CO
OB
00570
3A4 1
10
OB
00571
4 33A
DISB02
00572
3A4 3
00
Û0573
3 A4 4
30
00
ÛÛ574
3 A4 6
20
5F3ß
00575
3A49
20
AD3C
00576
3A4C
.1°
P5
00577
4 E3 A
DISB03
Û057Û
4123 A
DISQOil
Û 0 5 7 9
3A IE
60
DMO; CROSS. T1 3
JSR
BLANK
JSR
GI':'.T II I B
TAY
JSR
G ISTMI ß
STA
DI2GPOS
ROR
GISTPTR
TYA
LSR
A
ROL
GETPTR
EQU
*
CPY
I 1 1
BPL
D1SB04
EQU
*
DEY
BMI
DISß03
JSR
GETNIB
JSR
PSIINIB
BPL
DISB02
EQU *
EQU
*
RTS
Fülle Anzeige mit Leerzeichen Bringe Zeichenzahl in Y
Hole Dezimalstellung
Zeiger auf BYTE-Puffer + 3
Zeiger auf NIBBLE-Puffer + 3 * 2 + (0 oder 1)
Alternativer Eintrittspunkt Wenn Y < 11
Führe aus bei Y>.-1 Erniedrige und prüfe Y
Hole Zeichen Bringe és in Anzeige
Aussprung
> ÌS
o\
TEST 13 10/16/79
12:40:37
DMO:C ROS S,T13
00580 3A4P 70
005 0 2
00503
00501 3 A 4 P 70 Où505 3A5Û A9 OP 00536 3A52 05 0) 00507 54 3A
00500 3A54 60
*DISINT
* S ET INTERRUPT DISAß!
* RETURN WITU H/O BIT DISI NT
LDA ÄSOP STA PORTB DISI 01 EQU *■
RTS
>
-4 -J
Setze Marke "Unterbrechung außer Betrieb" - Lege Anzeige Aussprung mit H/O-Bit des Akkumulators auf Null gesetzt^—i— Setze Marke "Unterbrechung außer Betrieb"
Lege Anzeige still alternativer Eintrittspunkt Aussprung o\
OS
w
TEST 13 10/16/79
12:40:37
DMO;CROSS.TI 3
o\ o\
w
Ol
00590 0059 1
00592 3a55 20 533b
00593 3a5û 30 fa'
00594
00595
00596
00597 3a5a 20 e03b 0059û 3a5d 4c d23b
00599
00600 '
0060)
00603
00604
00605
00606 3a60 a9 c5 û0607 •
00608 3a62 30 07
00609 •
00610 006 1 I 006 I 2
* eaea
* process keyswitcii eaea eaec eaec *
t
M
jsr getkey-bmi disio»
jsr pdkey jmp pake02
VerarteIte Schliisselschalterübergarig von Betragseingabe auf Mole Schliisselkode Betragseingabe
Wenn kein Tastendruck Anssprung
Fall verarbeitè numerische oder Löschtaste verarbeite Dezimaltaste kein Fall
Aussprung
Verarbeite" Schlüssel Schalterübergang von Betragseingabe auf Kombinationseingabe
Aussprung mit positivem Status übertrage Betrag Status ist negativ lda ii ii eut am bmi ecea01
Empfange Status
Einschleuse Wartesehlangen-Nachricht
Lösche Anzeige
Aussprung
► -J
00
ti:üt n in/
16/79
12:411:37 DMO ; L'ItUSS ,
T13
ÛÛ614
* EAÛP
00615
»Verarbeite Schlüsselschalterübergang von Betriebseingabe auf Betrieb
006)6
3A6 4
20 603A
EAOP JSfì EAEC
(ibertrage Betrag
006 1 ?
. V
*
Empfange Status
Û06 1 Û
Einschleuse War teseli la ngen-Nachri cht
00619
-
A
Lösche Anzeige
00620
A
Status ist positiv
0062 1
3A67
10 24
BPÏ, ECOPÛÎ
übertrage Ende der Eingabe
00622
Empfange Status
00623
*
Ei nschleuse Warteschiangen-Nachricht
00624
A
Anfordere Portogebiihreneinstellung
00625
A
Empfange l'or togebühr ene ins tellung
00626
.A
Ei nschleuse Warteschlangennachricht
0062?
A
Aussprung
00629
* ECEA
00630
*A/erarbei te Schlüssel schal teriibergang von Kcmbina tionseingabe auf Betragseingabe
0063)
*
. Aussprung mit positivem Status
ÛÛ632
3A69
A 9 C 6
ECEA LOA IIIIEIITCÛ
Definiere Header für Kombinationseingabe
00633
6 [3 3 A
ECEAQl EQU *
alternativer Eintrittspunkt
006 34
3 A 6 11
05 on
STA INßUFtl
00635
3 A 6D
A5 1P
KDA DECPOS
Hole Stellung der Dezimalen
006 36
3A6F
2 9 OP
AND II OOP
Berei ni ge
00637
3A71
An
TAY
Setze Dezimalen-Stellung in Y
006 30
3 A 7 2
A5 2C
LDA NIBCTR
Hole NTBBLE-Zahl
TEST 13 10/i 6/79 12:40:37 DMO: CROSS,TI 3
006 3 9 00640 ÛÛ64 1 006 4 2 0064 3
00644
00645 00647 006 4 8 006 4 9
00650
00651
00652
00653 OÛ654 00655-00656' 00657
00659
00660
00661
00662
3A74 3A76 3A79
3A7C 3 A7F
3AÛ2 3 AB 5
A2 OD 20 2Q3B 20 75 3B
20 B 2 3 A 4C 98 30
LDX DINßtJP+3 JSR FMTB02 JSR IIDR2A1
Formatiere Nachricht
übertrage Nachricht • Empfange Status Einschleuse Warteschlangennachricht Lösche Anzeige à Aussprung
* ECEC
»Verarbeite Sehl iissei ischa 1 terübergang von Kombi nationseingabe auf Kombi na tionseingabe
JSR PLUSII JMP PCLROI
20 533B ECEC 30 CD
JSR GETKEY BHl DISI 01
3Afl7 4C E030
JMP PDKßY
Hole Schlüsselkode Wenn kein Tastendruck Aussprung
Fall
Verarbeite numerische oder Löschtaste kein Fall
Aussprung
ECOP
Verarbeite Sehl iissel schal terübergang von Kombinationseingabe auf Betrieb 3AGA 20 69 3A GCOI» JSR ECEA Übertrage Kombination
* • Empfange Status
TI-ST 13 1Û/16/7U 12:40:37 DMO ; CROSS . TI 3
006 6 3
*
00664
*
00665
0D3A
ECOP1
EQU
*
00666
3 AOD
A9
43
LDA
U MENDEN
00667
3A0F
20
6 Fh
JSR
IIDR2AU
00668
*
00669
3A92
4C
PE3C
JHP
PSKE03
00670
*
00671
*
00672
»
00673
*
Û0675
* FLSOUT
00676
t
00677
3A95
24
4B
FLSOUT
BIT
2Q01JT
00670
3A97
10
1 8
BPL
P LS 00 2'
00679
3A99
A5
1 3
LDA
s
0UTBUP+1
ÙÛ6ÛÛ
3A9B
C9
80
CMP
SIISTAT
0068 1
3 A9D
DO
09
BNE
PLS001
00682
3A9F
A 5
40
LDA
YKBD1S
00603
3 AA 1
29
00
AND
il]0000000
Û Ü 6 B 4
3 A A 3
4 A
LSR
A
00605
3 A A 4
05
1 5
ORA
OUTBUFt 3
00606
3 AA6
05
15
STA
OUTBIJP i 3
00687
Aû 3 A
EQU
*
00680
3 AAfl
-20
153F
JSR
XMTOUT
Einschleuse Warteschlangen-Nachricht Lösche Anzeige alternativer Eintrittspunkt übertrage Ende der Eingabe
Empfange Status
Ei nschleuse Warteschlangen-Nachricht Anfordere Portogebühreneinstellung Empfange Portogebühreneinstellung Einschleuse Warteschlangen-Nachricht Aussprung
Ei nschleuse Warteschlangen-Ausgabenachricht Wenn Ausgabenachricht in Warteschlange
Wenn Statusnachricht ßinset2e Tastaturstatus
übertrage Ausgabenachricht
TEST 13 10/16/79 l2 : 4 0 î 3 7 DMO: CROSS.Ti 3
00689
*
00690
3 A AD
20
0A3D
JSR
PSTATR
0069 |
3 AAË
20
4 4 3C
JSR
PPÛSTR
00692
*
00693
*
*
006 94
B ) 3 A
PLS00 2
EQU
*
00695
B 1 3 A
FI.S003
EQU
*
00696
60
RTS
006 98
* PLUSII
00699
* PLUSII
QL1EUED
MESSAGES
00700
B23A
F L1J S11 .
EQU
* ■
0070)
3AB2
A5
4 A
LDA
2QIN
00702
3AB4
05
4 Q
ORA
2QOUT
00703
3AB6
F9
BPL
PLUSIIÛ
00704
3AB8
20
95 3 A
JSR
FLSOUT
00705
3 ABB
24
4 A
BIT
2QIN
00706
3ABD
10
4P
BPL
PLUSII 7
00707
3 ABF
A5
on
LDA
INBUF*1
00708
3 AC )
C9
6)
CMP
IIIIICXRD
00709
3 AC 3
DO
1 F
BNE
PLUSII 2
00710
3AC5
46
4 A
LSR
20 IN
0071 1
3AC7
24
43
BIT
2STI1LD
00712
3AC9
10
19
BPL
PLUSII)
0071 3
3 A en '
A9
Al
LDA
1IID1 SPC
00 7 1 1
3AC0
05
1 3
STA
OUTHUPi1
Fall
Verarbeite Statusantwort
Verarbeite Portgebühreneinstellungs-Antwort kein Fall alternativer Eintrittspuhkt
Aussprung
Einschleusen
Ei nschleuse Warteschlangen-Nachricht
Führe aus während Nachrichten in Warteschlange
Prüfe auf Warteschlangen-Nachricht
Ei nschleuse Warteschlangen-Ausgabenachricht Wenn Warteschlange-Eingabenachricht
Wenn externe Anzeige gelesen
I,fische Marke für Warteschlangen-Eingabenachricht Wenn einstellbare Anzeige
Formatiere Ausgabeantwort
TEST 13 10/16/79 12:40:37 DMO;CROSS.T13
0071 5
3 AC F
A5
IF
LDA
DECPOS
0071 6
3 AD 1
29
OF
AMD
ÏSOF
0071 7
3AD3
AB
TAY
007 1 a
3AD4
A5
.2C
LDA
NIBCTR
0071 9
3 AD6
A2
15
LDX
ÏÛUTBUP+3
00720
3 ADO
20
2B3B
jsn
FMTB02
0072 1
3 ADß
20
1 0 3 A
jsn
BLANK
00722
3 ADE
20
A03C
JSR
PRKE04
00723
3AE1
30
SEC
00724
3 AE 2
66
4 B
ROR
2QOIJT
00725
E43A
FLUSII1
EQU
*
00726
E43A
FLIJSII2
EQU
*
00727
3AE4
A5
0B
LDA
INBUF t1
00728
3AE6
C9
62
CHP
III EM A KB
00729
3AEÛ
DO
04
BME
FLUSII 3
00730
3 AEA
46
40
LSR
YKBDIS
0073 1
3AEC
10
15
BPL
PLUSII5
007 3 2
EE3A
EQIJ
*
00733
3 AEE
C9
63
CMP
ItllDISKD
0073 4
3 A FÛ
DO
05
fi H E
FLUSII 4
00 7 15
3AF2
30
SEC
007 16
3 A F 3
66
40
ROR
YKBDIS
00737
3AF5
30
OC
lì M I
F LU SI 15
Fülle Anzeige mit Leerzeichen Führe kurzzeitige Anzeige aus
Setze Marke für Warteschl'angen-Ausgabenachricht
Hole Header (Vorsatzinformation)
Wenn Tasta turInbetriebsetzungs-Auf forderung
Lösche Tastaturaußerbetriebsetzungs-Marke Ändere Nachricht in Statusanforderung
Wenn Tastaturaußerbetriebsetzungs-Aufforderung Setze Marke für "Tastatur außer Betrieb" Ändere Nachricht in Statusanforderung
test 13 10/ 16/79
12:40:37
dmo;cross.ti3
00738
F73A
FLUS1I4
. EQU
*
00739
3AF7
C9
El
CMP
U llßXWR
00 74 0
3AF9
DO
10
13 M E
FLUSII6
0074 1
3AFB
A 2
I Dt
LDX
S INI3UP + 2*2
00742
3 AFß
20
203 A
JSR
DISßFR
00743
31300
20
A4 3C
JSR
P R KßO 2
0074 1
3003
AO
Ol
FLUSII5
LDA
81
00745
3Q05
85
0A
STA
INßUPtO
00746
3B07
A9
50
LDA
8 IIRßQST
00747
3B09
85
OB
STA
INRUFt1
00748
0B3B
FLUS1I6
EQU
*
00749
3 BOß
20
A 3 3 ß
JSR
XMTIN
OO750
OE3B
FLUSII 7
ßQU
A
0075 1
3B0E
4C
B23A
JMP
FLUSII v
00752
ß 1 3 A
FLUSII8
EQU
FLS003
00753
ik
00755
*fmtquf
00756
A '
00757
3 B 1 1
95
FE
FMT 13 UP
STA
""2 , X
00758
3131 3
86
1D
STX
ß P'I'R
00759
3 ß l 5
20
3 9 3 E
JSR
FIXDßC
00760
3(118
A0
03
LDY
8 3
00761
3 D1 A ,
A6
2C
LDX
HI I3CTR
00762
301C
CA
DEX
00763
3ßlD
A5
04
f.DA
DISßUF*4
Wenn extern schreibe in Anzeige Anzeige Eingabepuffer
Führe zeitgesteuerte Anzeige aus Ändere Nachricht in Statüsanforderung
übertrage Eingabenachricht
Aussprung
Bilde formatierte Nachricht aus Anzeige Speichere Header in Puffer + 1 Zwischenspeichere Pufferzeiger Neuformatiere Anzeige Annehme Dezimale für MILS Annehme Ziffernzahl für MILS
Wenn CENTS angezeigt
TEST i3 10/16/79
1 2 ; 4 ß ; 3 7
DMO;CROSS.TI 3
00 76*1
3B1P
C9
FF
CMP
«SPP
00765
31121
DO
02
BNE
FMTBOl
ÛÛ766
3B23
88
DEY
Q0767
3B24
CA
DEX
00 76 û
25
3 B
FMTBOl
EQU
*
00769
3B25
BAÇ
TX A
00770
3026
A 6;
1 D .
-
LDX
BPTR
0077 1
2B:
3B
FMTB02
EQU
*
00772
3B28
85
37
STA
TEMPO2
00773
3B2A
04
FF
STY -1,X
00774
3B2C
20
OF3E
JSR
SWAP
00775
3B2P
15
FF
ORA
-1
00776
3B31
95
FF
STA
-1 iX
00777
3B33
A4
37
LDY
TEMPO2
00770
3B35
C8
I H Y
00779
3036
98
TYA
00780
3B37
4 A
LSR
A
007B 1
3B38
AB
TAY
007Q2
3B39
CB
IHY
00783
3B3A
INY
Û078-Î
3 II 3 B
94
FD
STY
-3,X -
00785
3 fJ 3 B
0A
ASL
A
0 0 7 8 6
A
00787
3n3E
85
1 A
STA
nC TR
Û07BÛ
A
>
Setze Dezimale für CENTS Setze Ziffernzahl für CENTS
Bewege Ziffernzahl nach A Wiederherstelle Pufferzeiger alternativer Eintrittspunkt Rette Ziffernzahl
Setze Dezimal in Formatbytè, Puffer + 2 Definiere Ziffernzähler für Formatbyte
Speichere Nachrichtenbytezähler in Puffer +0 (BUF+0)
Zwischenspeichere Nachrichtenzeichenzähler Lösche Ubertrag für SBC
Zeiger auf Il/O-Anzeigezeichen
ON
W <J1
TEST 13 10/16/79 1 2 ; 40 ; 37 DMO;CROSS.TI3
00709
3040
A9 Oß
LDA
lOISßUPt5*2
ÛÛ79Û
3B42
E5. 2C
SßC
N T BCTR
0079 1
3D44
85 22
STA
GETPTR
00792
3B4 6
4 5 3 7r
LSR
TEMPO2
00793
3ß4 ß
90 02
HCC
PMTB03
00794
3B4A
C6 22
DEC
GETPR
00795
4C3B
PMTB03
EQU
#
00796
3B4C
• 8 A
TX A
00797
3B3D
OA
ASL
A
00798
3B4E
A4 1A
LDY
BCTR
00799
3B50
4C 303C
JMP
PPEQ06
00 8 00
*
00801
*
00803
»GETKEY
v
00Ü0-1
*
00805
*
00806
3B5 3
A5 26
GETKEY
LDA
KCLEAN
00807
3D55
30 07
BMl
GETKOt
00808
3B57
A2 PP
LDX
1-1
00809
3B59
86 26
STX
KCLEAN
008 10
3B5ß
AA
TAX
008 1 1
3U5C
06 29
STX
KLUSED
008 12
5E3B
GETKOI
EQU
*
008 1 3
3B5E
60
RTS
0\
o\
£>. W Ul
Wenn Ziffernzähler ungerade
Zeiger über H/O-Anzeigezeichen hinaus
Setze auf Setzung von PUTPTR=BUF+3*2
Setze Y = Nachrichten-Zeichenzähler Definiere PUTPTR Editiere und bewege Puffer Aussprung
Hole Tastenkode in Akkumulator
Wiedergebe Tastenkode =-1 wenn Tastendruck bereits geles Wenn unausgegebener Tastenkode vorhanden
Angebe ausgegebenen Tastenkode
1
Passe Status an Tastenkode an Angebe letzten ausgegebenen Tastenkode
Aussprung
TEST 13 lû/16/79
12:40:37
OMO:CRÛSS.TI 3
0081 5 008)6 008 1 ? OOfl I $ 008 1 9 00020 0002 1
00022
00023
00024 00825 00026
00028
00029
00030
00031
00032
00833
00834
00035
00036 00 0 3 7 00038
3B5F 3B61 3B62 3063 3D65 3067
3 BOA 3B6C 3B6E
3Q6P 307 1 3D73
3 B 75
3B78 3B7B
»GBTNIB *
A5 22 GETNIÖ
4 A AA
05 00 ÜO 0 3 20 OP3E
6A3B GETMOl E6 22 29 OP 60
MIDR2AU * *
IIDR2AU
85 OB A 9 01 8 5 OA 753B 20 A3 3E 783B 20 953A 4C EO 30
11D R 2 A 1
HOn2A2
LDA GETPTR LS R A TAX
LDA 0,X BCS GETNOl JSR SWAP EQU *
I NC GETPTR AND ISOP RTS
STA INBUpi) LDA i 1 STA IHBUPtO EQU * JSR XMTIN EQU *
JSR FLSOUT JHP RCVOUT
!
>
00 -J
Erhalte NIBBLE von (GETPTR) und erhöhe GETPTR
Hole NIBBLE-Zeiger
Bilde Byte-Zeiger
Bringe Byte-Zeiger in X
Hole Byte
Wenn NIBBLE-Zeiger gerade Erhalte Il/O NIBBLE
2eige auf nächsten NIBBLE Bereinige NIBBLE Aussprung
Sende HEADER an Buchungseinheit, empfange Nachricht Speichere HEADER in Puffer Speichere Bytezahl alternativer Eintrittspunkt übertrage Nachricht alternativer Eintrittspunkt
Einschleuse Warteschlangen-Ausgabenachricht
Empfange Antwort
Aussprung
ON ON N»
-b. (jJ (Ji
TIÎST 13 10/16/79 12:10:37 DMO:CRQSS.T
ooä-jo
* KEYMOD
0004 1
* ENTER
KEYENTftY MODE
00042
307E
24
42
KEYMOD
BIT
2KEYMO
008-13
3089
30
P9
0M1
KEYMO)
00844
3882
20
j 03A
JSR
ri LANK
00845
*
00846
3085
86
42
STX
ZKEYMO
00847
3087
86
43
STX
ZST0LD
008 4 8
3089
86
46
STX
Z ADDO L
00849
8030
KEYMOl
EQU
*
00850
8030
KEYM02
EQU
A
0005 1
308B
A9
42
LDA
S1IDISA0
00852
8D3F
KEYM03
EQU
*
00853
308D
20
6P3Q
JSR
IIDR2AU
0085-1
A
00855
3090
4C
B23A
JMP
PLUSII
00856
*
00858
*0PEA
00859
*
00860
3093
46
4C
OPE A
LSR
ZTOTAC
0086 1
*
00862
*
00863
«
Eingebe Tastatureingabebetrieb
Wenn Marke für Tastatureingabebetrieb gelöscht
Fülle Anzeige mit Leerzeichen Setze X = #FF
Setze Marke für Tastatur-Eingabebetrieb Setze Marke für einstellbare Anzeige Setze Marke für addierbare Anzeige alternativer Eintrittspunkt
Lade Maschinenaußerbetriebsetzungs-Header alternativer Eintrittspunkt
Sende Nachricht an Buchungseinheit
Empfange Antwort
Einschleuse Warteschlangen-Nachricht Aussprung
Verarbeite Schlüssel schal terübergang von Betrieb auf Betrag eingab
Lösche Gesamtakkumulations-Marke Gelange nach PCLRK, was folgt Lösche Anzeige Aussprung
TEST 13 10/16/79
12;4fl; 37
DMO j CROSS.T
Û0B65
*pclrk
«
ÛÛB66
»procbss
CLEAR KEY
ÛÛB67
3B95
20 Bß3ß
pclrk
JSR JEYMÛ2
00B6B
9 8 3 n
PC f.ROI
equ *
ÛÛÛ69
*
00070
3N9Q
20 1 0 3A
JSR blank
00B7 1
3B9B
A9 FC
LDA 11$ PC
00072
3B9D
B5 04
STA DI SßUFt 4
00073
3ß9F
24 4C
bit 2totac
OOB74
3 LA 1
10 oa
BPL PCLR03
OOfl 75
3BA3
26 46
ßlT 2addbl
OOB76
3BA5
10 06
BPL PCLR02
OOfl 77
3RA7
20 39312
JSR P1XDEC
00B7B
30AA
20 IC3J2
JSR W2ADD
00079
AD3D
PCLR02
equ * *
0QBBÛ
AD3ß
PCLR03
equ * v
OOBB 1
3ßAD
46 4C
lsr 2totac
ÛÛÛ 0 2
3BAF
60
rts
0088 4
«OPEC
00 88 5
&
00(10 6
9 3 Jß
opec equ opea
00007
*
0ÛQBB
*
>
N> 00
VO
Verarbeite Löschtaste Setze Maschine außer Betrieb alternativer Eintrittspunkt Aussprung mit positivem Status Fülle Anzeige mit Leerzeichen Bringe klein o in Anzeige
Wenn Gesamt-Akkumulationsmarke gesetzt Wenn Marke für addierbare Anzeige gesetzt
Führe Festkomma-Dezimalanzeige aus Addiere Arbeitspuffer zu Anzeige
Lösche Oesamtbetrags-Akkumulationsmarke Aussprung
Verarteite Schlüsselschalterübergang von Betrieb auf Kombinati« Lösche Gesamtbetrags-Akkumulationsmarke eingab
Lösche Anzeige Aussprnng
Cs Cs
W (Jl
TEST 13 l'O/iß/79 12:40:37
DMO; CROSS,TI3
00890
*OPOP
00091
*
0009 2
3 BB0
20 533B
OPOP
jsn
GETKEY
00893
3BB3
30 OC*.
BMI
OPOPOJ
00894
k
ÛÛ895
3BQ5
20 E03B
JSR
PDKEY
00896
3BB6
20 CA3B
JSR
PAKEY
00897
3BBB
20 873C
JSR
PRKEY '
00890
3BBE
4C DB3C
JMP
PS KEY
00099
*
00900
*
00 90)
A
00902
Cl 3B
0POPOI
EQU
*
00903
3BC1
A5 IE
LDA
DBOUNC'
00904
3BC3
FO 0 4
BEQ
0P0P02
00905
3BC5
A9 05 '
LDA
115
00906
3BC7
85 20
STA
LNGTIM
00907
C93B
0P0P02
EQU
*
00908
3BC9
60
RTS
00909
*
On ©\ N»
W «1
Verarteite Schlüsselschalterübergang von Betrieb auf Betrieb
Erhalte Tastenkode
Wenn kein Tastenkode ausgegeben
Fa 11
Verarbeite Datenvorbereitungstasten Verarbeite arithmetische Tasten Verarbeite Registeranzeigetasten Verarbeite Einstelltaste kein Fall
Aussprung .
sonst
Wenn Taste niedergedrückt
Set2e Anzeigeperiodenzeitgeber .
Aussprung
>
TEST 13 10/16/79 12:40:37 DMO; CROSS.TI 3
00 91 1
* PAKEY
0091 2
* PROCESS
ARI TIIMETTC KEYCODE
Verarbeite arithmetischen Tastenkode
00 9 1 3
3 DCA
A5
29
PAKEY
LDA
KLUSED
Hole Tastenkode
00914
3DCC
C9
OD
CMP
«Il
Wenn "+-"-Tastenkode
009 1 5
38CE
Dp
02
BNI2
PAKEOl
009 1 6
3 ODO
32
BEQ
PPEQK .
Verarbeite "+"-Tastenkode
0091 7
*
Aussprung
009 1 0
D23B
PAKEOl
EQIJ
à
00919
D23Û
PAKE02
EQU
A
alternativer Sintrittspunkt
00920
3BD2
C9
OC
CMP
112
Wenn Dezimaltastenkode
00921
. 3BD4
DO
09
BNE
PAKE04
00922
3BD6
20
7E3U
JSR
JEYMOD
Bewirke Tastatureingabezustand
009 2 3
*
Setze Maschine außer Betriebsbereitschaft
00924
3BD9
A5
1 P
LDA
DECPOS
Wenn Dezimalpunkt nicht schon eingegeben
00925
3B0B
10
02
BPL
PAKE03
00926
3BDD
E6
1 F
ING
DECPOS
Schiebe Dezimalpunkt in Anzeige
00927
DF3Q
PAKE03
EQU
*
009 26
DF3D
PAKE04
EQU
* '
00929
DF3B
PAKE05
EQU
t
*
alternativer Eintrittspunkt
00930
3BDF
60
RTS
Aussprung
TEST 13 10/16/79
1 2 : 4 Ü ; 3 7
DMO: CROSS,TI3
ÛÛ932
* PDKRY
00 9 3 3
*PROCESS
DATA
PREPARAT IC
009 34 3 BI2Û
A5
29
PDKEY
LDA
KLUSED
00935 3BE2
C9
Oh-
CMP
110
00936 3BG4
30
06 ;
BMI
PNUMK
00937
*
0093B
*
009.39 3BE6
C9
OD
CMP
«13
00940 3BE8
DO
F5
BNE
PDKEOl
0094 1 3 BEA
FO
A9
BEQ
PCLRK
009 4 2
*
009 4 3
DF3B
PDKEO1
EQU
PAKE05
00944
*
00946
* PNUMK
v
0094 7
* PROCESS
NUMERIC KEY
009 4 8 3 BEC
20
7E3B
PNUMK
JSR
KEYMOD
00949
*
00950 3BEF
A5
2C
LDA
N1BCTR
0095 1 3 BF 1
C9
OA
CMP
II 10
00952 3BF3
10
EA
BPL
PAKE05
00953 •
k
00954 3BP5
A5
1 F
LDA
DECPOS
00955 3BF7
30
06
BMI
PNUMOI
00956 3BP9
C9
03
CMP
113
Verarbeite Datenvorbereitungskodes
Hole Tastenkode
Wenn numerische Taste
Verarbeite numerischen Tastenkode
Aussprung
Wenn Löschtastenkode
Verarbeite Löschtastenkode Aussprung
Aussprung
Verarbei te numerische Taste Setze auf Tastatureingabebetrieb Maschine außer Betriebsbereitschaft Wenn Anzeigepuffer voll
Aussprung
Wenn Dezimalpunkt eingegeben Wenn 3 2iffern hinter Dezimalpunkt
TUST 13 10/16/79 12:10:37
DMO;CROSS.TI 3
00957
3BFB
10
E2
BPL
PAKE05
ÛÛ95B
*
00959
3BFP
E6
1 F
INC
DECPOS
00 9 60
*
00961
FFSß.
PMUMOl
EQU
*
00962
3BFF
A5
2 9
LDA
KLUSED
00963
3C01
4C
AD3C
JMP
PSIINIB
00964
*
00966
* PPEQK
00967
* PROCESS
PLUS-
-EQIJAL KEY
OÛ96Û
3C04
20
0B3B
PPEQK
JSR
KEYM02
00969
3C07
24
46
BIT
2ADDBL
00970
3C09
30
0E
BMI
PPEQ02
00971
3COB
24
45
BIT
ZTIMD
00972
3COD
10
02
BPL
PPEQOJ
00973
3COF
30
07
BMI
PCLROI
00974
*
00975
1 1 3 C
PPEQ01
EQU'
*
00976
3C1 1
30
SEC
00977
3C1 2
66
4C
ROR
2TOTAC
Ü 0 9 7 0
3C 1 4
20
3 9 3 E
JSR
FlXDEC
ÙÛ979
*
0 0 9 0 0
3C1 7
10
0F
BPL
PPEQ04
0090 1
*
0090 2
'
*
Aussprung sonst
Schiebe Dezimalpunkt nach links
Bringe Tastenkode in Anzeigepuffer Aussprung
Verarbeite "Plus-Gleichheitszeichen"-Taste Setze Maschine außer Betriebsbereitschaft Wenn Marke für addierbare Anzeige gelöscht
Wenn Marke für zeitgesteuerte Anzeige gesetz
Lösche Anzeige
Aussprung sonst
Setze Gesamtbetragsakkumula tions-Marke
ßewi rke Festkomma-Dez ima 1anzeige Status positiv
Bewege Anzeige in Arbeitspuffer Aussprung
TEST 13 10/16/79 12:40:37 OMO : CROSS.TI 3
Û09B3
1 93C
PPEQ02
EQU
*
0090-1
3C1 9
20 393E
JSR
PIXDRC
Û09Û5
3C1C
24 4C
BIT
2TÛTAC
00986
3C1E
10 03 i
BPL
PPEQ03
00937
3C20
2 0 1C 3
JSR
W2DADD
00908
233C
PPEQ03
EQU
A
00909
3C23
30
SEC
00990
3C24
6 6 4C
ROR
2TOTAC
0099 1
3C26
4 6 4 6
LSR
2ADDBL
00992
203C
PPEQ04
EQU
A
0099 3
3C20
A9 00
LDA
UDÌSBUPt 0* 2
00991
3C2A
05 22
STA
GETPTR
00995
3C2C
A9 0A
LDA
jfWRKBUF* 0*2
00996
2E3C
PPEQ05
EQU
*
\
00997
3C2E
AD 0A
LP Y
«lû
00990
303C
PPEQ06
EQU
A
00999
3C30
85 32
STA
PÜTPTR
01000
3 2 3C
PPEQQ7
EQU
A
0 1001
3 2 3C
PPEQOO
EQU
A
01002
3C32
08
DEY
01003
3C33
30 AA
BMI
PPEQ10
0 1004
3C35
20 5F3B
JSR
GETNin
01005
3C30
C9 0A
CMP
«SOA
01006
3C3A
*39 02
BMI
PPE
0IÛQ7
3C3C
A9 00
LDA
VS0Û
C\ as hi
«t
W (Jl
Bewi rke Festkomma-Dezimalanzeige Wenn Gesaintbetragsakkumulations-Marke
Addiere Arbeitspuffer zu Anzeige
Setze Gesamtbetragsakkumulations-Marke
Lösche Marke für addierbare Anzeige alternativer Eintrittspunkt
Setze auf Erhalt der NIBBLES von Anzeige
Setze auf Einbringung der NIBBLES in Arbeitsspeicher alternativer Eintrittspunkt
Setze Y auf Zählung von 10 NIBBLES
alternativer Eintrittspunkt
Definiere PÜTPTR
alternativer Eintrittspunkt
Führe aus, falls Y t 0
Erniedrige und prüfe Y
Hole NIBBLE
Wenn nicht numerisch
► V©
Ändere auf Null ^
< i—a i 1J IU/JÛ/ /'J
12:40:37
DMO : C OOS S . 'P J
Û I 008 01009 0 10)0 01011 0)0)2 0 10)4 0 10)5 0)0)6 0 1017 0 1018 010)9 0)020 0)02) 0 1022 0 I 023 01024 0 1025 0)026 'û ) 0 2 7 0 1028 0)029 0 1030 0 1031 û 1 0 3 2 0)033 01034
3C3E 3C4 )
3C4 4 3C46 3C4D 3C4 A 3C4C 3C4F 3C52 3C54 3C56
3C50 3C5Q 3C5D
3C5P 3C6 1 3C62 3C6 3 3C65
3E3C PPEQ09 20 523D 4C 3 2 3C
DP 3 0 PPEQ10 *
* P POSTll
*PROCESS POSTAGG
A 5 ) 3 C9 Û) DO 3C A2 20 20 28 3A 20 39312
4 6 4 3 A9 00
05 22 503C
20 5F3ß C9 OP FO P9
A 6 22
CA
CA
06 32 EO OO
PPOSTR
PPOSTI
EQIJ
JSR PUTNIB JMP PPEQO0 EQU PAKE05
S ETTING RE PL Y. LDA OUTBUPt) CMP IIIPSET BNE PPOST5 LDX BOUTBUPt 2 JSR DISBPR JSR FIXDEC LSR 2STBLD LDA VDÎSniJPtO-
v
STA GETPTR EQU *
JSR GETNIB CMP f?P BEQ PPOSTI
LDX GETPTR
DEX
DEX
STX PUTPTR CPX ÏDJSI3IJP1Û'
Speichere NIBBLE Aussprung
Verarbeite Por togebiihreneinstel lungs-Antwort Wenn Portogebühreneinstel,lungs-Antwort erhalten
Anzeige-Einstellung
Neuformatiere in Festkomma-Dezimalanzeige
Lösche Marke fiir einstellbare Anzeige
Set2e auf Abtastung der H/O (hohe Ordnung) der Anzeige
Führe aus bis H/O Nichtleerzeichen gefunden
Zeiger auf letztes H/O-Leerzeichen Wenn ll/0-Leerzeichen gefunden
TEST 13 10/16/79 12 :10 ; 3 7 DMOs CROSS.TI 3
01035
3C67
FO
05
13 ßQ
PPOST2
01036
3C69
A9
OD
I.DA
«50
01037
3C6ß
20
5230
JSR
PtJTNIB
01038
6E3Ç
PPOST2
equ
*
01039
6E3C
•PPOST3
equ
*
01040
3C6E
20
5P3B
JSR
GßTNIß
0104 1
3C71
C9
OF
CMP
#?F
0.104 2
3Ç73
DO
P9
BNE
PPOST3
0 1043
*
01044
3C75
A6
22
LDX
GETPTR
0)045
3C77
CA
DEX
0 1046
' 3 C 713
06
32
STX
PUTPTft
01047
3C7A
A9
OD
LDA
l$D.
0 1040
3C7C
20
5 2 30
JSR
PUThMB
0)049
3C7P
30
SEC
0)050
3CÛ0
66
44
ROR
ZSTNGO
0 1 05 1
023C
PPOST4
EQU
*
0)052
3CÛ2
4 6
46
LSR
2ADDBL
0)053
3C84
46
4C
LSR
2TOTAC
01054
fl 6 3C
PPOST5
equ
*
01055
Q63C
PPOST6
EQU
*
01056
3CÜ6
60
RTS
Einsetze Il/O-Flügel
Führe aus bis L/O Leerzeichen (niedrige Ordnung) ge Suphe nach Leerzeichen
Zeiger auf erste L/O-Leerzeichen Einsetze L/O-Flügel
Setze Marke für Anzeige der Einstellung alternativer Eintrittspunkt
Lösche Marke für einstellbare Anzeige
Lösche Gesamtbetragsakkumulations-Marke alternativer Eintrittspunkt Atissprung
TEST 13 10/16/79 12:40:37 DMO; CROSS.TI 3
0)058
* PRKEY
0 1059
* PROCESS
REGISTER DISPLAY
0 ) 060
3CÛ7
A 5
29
PRKEY
LDA
KLUSED
û 1 0 6 1
B93C
PRKE00
EQU
*
0 1 06 2
3C89
C9
10
CMP
II 16
01 û 6 3
3C8B
90
P9
BCC
PPOST6
ü 1064
3BBD
C9
16
CMP
122
ù 1 065
3CÛP
BO
P5
BCS
PPOST6
0)066
*
0)067
*
0 1068
3C9 )
69
42
ADC
BIIREQAR-16
0 1069
3C93
20
6P3D
JSR
IIDR2AU
0 1 070
3C96
A5
1 3
LDA
OUTBUPt1
0 107)
3C98
C9
B0
CMP
IIISTAT
0)072
3C9A
DO
03
BNE
PRKEO1
v
0 1073
3C9C
20
7B3B
JSR
IIDR2A2
010 7 4
*
0)075
9P3C
PRKEO1
EQU
*
0 1076
3C9F
A 2
2 B
LDX
IQUTBUPt 2*2
01077
3CA1
20
2 ß 3 A
JSR
BISBPR
0 1078
A4 3C
PRKE02
EQU
*
0 1079
3CA4
A 9
05
LDA
15
0 1 OilO
A63C
PRKEO3
EQU
A
0 1 0 Ii 1
3CA6
ß 5
2 11
STA
I.NGT1M
0 1 0Ö2
-
Afl 3C
PRKG04
EQU
*
-4
Verarbeite Registeranzeige-Tastenkodes Hole Tastaturkode alternativer Eintrittspunkt Wenn nicht Registeranzeigetaste Aussprung
Aussprung
Obertrag ist gelöscht Bilde Aufforderungs-Header Anfordere Registerwert Wenn unerwartete Statusantwort
Einschleuse auslaufende Warteschlangen-Nachricht Empfange Registernachricht
Anzeige empfangene Daten alternativer Eintrittspunkt
Setze auf Einstellung der Anzeigezeit alternativer Eintrittspunkt
Setze Anzeigezeitgeber on alternativer Eintrittspunkt
W 'Jt
TEST 13 10/16/79
12:40:37 DMO: CROSS.TI 3
01083
3CA8
38
SEC
Û108-I
3CA9
66
45
ROR
ZTIMD
fì 1 085
3CAB
DO
D5
BNE
PPOST4
01086
*
010 8 7
*
0 1089
* PSIIN1 B
0)090
*PUSII NIBBLE
INTO DI S PL/
0109)
3CAD
PSIIN I B
PIIA
01092
3CAE
A5
00
LDA
DISBUFtO
01093
3CBO
20
OP3E
JSR
SWAP
01094
*
0 1 095
3CB3
85
00
STA
DISBUP+0
01096
3CB5
A2
03
LDX
13
û 1 09 7
3CB7
86
37
STX
TEMPO\
Û 1 0 9 U
3CB9
A2
00
LDX
HO
01099
i
BB3C
PSIIN02
equ
01 100
3CBB
E8
I NX
01101
3CBC
B5
00
LDA
DISBUF,X
0 1102
3CBF
20
0F3E
JSR
SWAP
0 1103
3CC1
48
PIIA
01 104
3CC2
90
OF
ORA
HÇ0F
01 105
3CC4
95
00
STA
DISBUF,X
0 1106
3CC6
68
PLA
01107
3CC7 -
09
PO
ORA
1 $ FO
0 1 108
3CC9
35
FF
AMD
DISBUF- 1 , X
0 1109
3CCB
95
FF
STA
DISBUF-1,X
Setze Marke für zeitgesteuerte Anzeige
Lösche Marke für addierbare Anzeige Lösche Gesamtbetragsakkumulations-Marke Aussprung
Bringe NIBBLE in Anzeigepuffer Rette NIBBLE in den Stapel Hole H/O-Anzëigebyte Bewege L/O-NIBBLE nach oben Bewege H/O-Leerzeichen nach unten
Setze auf viermalige Schleife
Zeiger auf gerade verschobenes Byte
Führe aus, bis 8 NIBBLES nach oben bewegt
Zeiger auf nächstniedriges Byte
Hole 2 NIBBLES
Bewege L/O-NIBBLE auf H/O
Rette vertauschte NIBBLES
Bringe Leerzeichen hinter L/O-NIBBLE ein
Einsetze in selbes Byte
Hole H/O NIBBLE
Bringe Leerzeichen von H/O-NIBBLE ein Einsetze in nächstes Byte oben
•TEST 13 10/
16/79
12:40:37
DMO:CROSS.TI3
OHIO 3CCD
01111 3CCP
01112
Û I 1 1 3 3CD1
01114 3CD2
01115 3C14
01116 3CD6 Oli 17 3CD0 Ol 1 10 3CDA 0Ì 120
0 1121
01122 3CDD 0 I I 23 3CDD 01124 3CDF 0 1)25
0 1)26 3CE1 0 1127 3CE3 0 I I 28 0 1129 0 1130 0 113 1 0 1132
0113 3 3 C E 5 01134 3CE7 0 l'i 3 5 3CE9
C6 37 DEC TEMPO2 '
10 EA BPL PSIIN02 *
6 8 PLA
09 -PO ORA ÏSFO
35 00 AND DISBUP+O,X
95 00 STA DISBUP+O,X
E6 2C INC NI BCTR.
60 RTS
* PS KEY
* PROCESS SET KEYCODE A5 29 PSKEY LDA KLUS ED C9 OA CMP 110
DO 28 BNE PSKE05
« v
24 44 BIT ZSTNGD
30 07 BMI PSKEO)
2 4 4 3
3 0 OB 20 Ol3D
OIT 2STBLD IÌMI PSKEO 2 JSR PSKE04
Zähle die Schleife
Hole ' geretteter» NIBBLE Setze Leerzeichen von NIBBLE Einsetze NIBBLE in L/O-Byte
Zäl)le den NIBBLE
Aussprung .
Verarbeite Einstelltasten-Kode Hole Tastenkode Wenn nicht Einstell taste Aussprung
Wenn Marke für Anzeige der Einstellung
Sende Inbetriebsetzungsbefehl Empfange Antwort
Einschleuse Warteschlangennachricht Aussprung
Wenn Marke für einstellbare Anzeige gelöscht
Hole Portogebühreneinstellung g
«i w
TEST 13. 10/16/79 12:48:37 DMO : CROSS . TI 3
01136
À
0 1137
EC3C
PSKEO!
EQU
*
0)138
3CEC
A9 4 1 .
LDA
BIIENABL
0 1139
3CEF
4C 8D3Ö
JMP
KEYM03
0 1140
*
0 114 1
*
0)142
F) 3C
PSKE02
EQU
*
0)143
3CF1
20 043C
JSR
PPEQK
01144
3C4F
A9 Cl
LDA
BIISETPO
0 1145
3CF6
A2 OD
LDX
H INBUF+ 3
0 1)46
3CF8
20 113B
JSR
FMTBUF
0)147
3CFB
20 7 5 3 B
JSR
IIDR2A1
Ol 14 8
*
01149;
FE3C
PSKE03
EQU
v
A
0) 150
3CFE
20 B23A
JSR
FLUSII
0115)
Ol 3D
PSKE04
EQU
A
01)52
3D01
A 9 51
LDA
ÏIIREQPO
01)53
3D03
20 6F3B
JSR
IIDR2 AU
01 154
*
0) 155
3D06
20 B23A
JSR
FLUSII
0 1)56
093D
PSKË05
EQU
*
01157
3D09 '
60
RTS
os 0\
w
<Jl
Einschleuse WarteSchlangennachricht alternativer Eintrittspunkt
Sende Inbetriebsetzungsbefehl
Empfange Antwort
Einschleuse Puffer
Aussprung
Simuliere "+"-Tastendruck
Setze auf Sendung von Protogebühreneinstellbefehi Formatiere Befehl in INBUF
Sende Nachricht an AU Empfange Status alternativer Eintrittspunkt Einschleuse WarteSchlangennachricht alternativer Eintrittspunkt Anfordere Portogebühreneinstellung
Empfange Portogebühreneinstellung Einschleuse Warteschlangennachricht alternativer Eintrittspunkt Aussprung
> w
"TEST 13 10/16/79
12:40:37
DMO: CROSS.TI3
0)159
* PSTATR
01160
* PROCESS
STATUS REPLY •
01161,
3D0A
A5
1 3
PSTATR
LDA
OUTBUF+1
0 116 2
3 DOC
C9
80
CMP
I IISTAT
0)163
3 DOE '
DO
F9
BNE
PSTAT5
01164
3D10
A2
F9
-
LDX
«-7
0 1165
3D1 2
A5
) 4
-
LDA
OUTBUF+ 2
01166
) 43D
PSTAT1
EQU
*
0 1167
3D14
2A
ROL
A
0 1168
3 D1 5
76
3F
ROR
YFLAGS + 7,X
0 1169
3DÌ 7
E8
I NX
0 1170
3D18
30
FA
BMI
PSTAT1
01171
*
01172
*
0 1173
3D1 A
. 05
4d
ORA
ZTRIP
0 1 1.74
3D1C
85
4 D
STA
ZTRIP
0 1175
*
0 1176
|
3D1E
26
3 F
ROL
YIIARDE
0 1177
3D20
A5
15 •
LDA
OUTBUF+ 3
0 1178
3D22
2 9
82
AND
ï% 10000010
0 1179
3D24
85
3 F
STA
YIIARDE
0 1 1 00
3 D 2 6
FO
El
DEQ
PSTAT4
0 118 1
3D28
29
02
AND
%«000000 1 0
0 1182
3D2A
DO
02
BNE
PSTAT2
0 1183
-
*
0 1184
*
> w
Verarbeite Statusantwort Wenn Statusantwort'
Setze auf Kopieren von 7 Marken
Führe aus, bis 7 Marken kopiert Bewege Bit in Markenbyte hinein
Zähle Bit
Wenn Maschine ausgelöst worden ist Setze Maschinenauslöse-Marke
Bewege vorherigen harten Fehler zu Übertrag Hole Fehlerbits
Setze/Lösche Marke für harten Fehler Wenn weicher oder harter Fehler wenn weicher Fehler Bewirke Fehleranzeige
Springe in Hauptschleife ^
W <Jì
TEST 13 10/16/79 12:40:37 DMO: CROSS.TI 3
Ol 185
3D2C
BO DO
BCS
PSKE05
Ol 186
*
01187
*
0 1188
2E3D .
PSTAT2
EQU
*
0 1189
3D2E
20 1 8 3A'
JSR
BLANK
01 190
3D3 )
A9 AB
LDA
' 1 $ AB
01191
3D33
85 0)
STA
DISBUF+1
01192;
3D35
A9 BC
LDA
I ?BC
01193
3D3 7
05 02
STA
DISBUP + 2
01194
3D39
A9 BF
LDA
*$BF
0 1195
3D3B
05 03
STA
DISBUF+3
01 196
3D3D
20 023C
JSR
PPOST4
01 197
*
0 1 1 98
3D40
20 A4 3C
JSR
PRKE02 "
01 199
4 33D
PSTAT3
EQU
*
01 200
3D43
70
SEI
01 201
3D44
A2 7F
LDX
ITSTACK
01 202
3D46
9A
TXS
0 1 203
3D47
A5 2F
LDA
PORTCI
01 204
3D49
09 03
ORA
«3
01 205
3D4B
05 02
STA
PORTC
01206 .
3D4D
85 2F
STA
PORTCI
01 207
3D4F
4C 4C39
JMP
M LOOP
01 208
09 3D
PSTAT4
EQU
PSKE05
01 209
093D
PSTAT5
EQU
PSKE05
nmn
* •
'
Wenn harter Fehler vorher gesetzt Aussprung alternativer Eintrittspunkt Fülle Anzeige mit Leerzeichen Anzeige Fehler-Legende
Lösche Marke für addierbare Anzeige Lösche Marke für Gesamtbetragsakkumulation Setze auf zeitgesteuerte Anzeige alternativer Eintrittspunkt Setze Unterbrechung außer Betrieb Neuanfangssetzung des Stapels
•Untätigsetzung der seriellen Ausgangsleitungen
Springe in Hauptschleife hinein
TEST 13 10/16/79 12:40:37 DMO:CROSS.T13
!
0)234 *RCVIN
0)235 "RECEIVE
01236 3D70 24 49 L RCVIN
0123? 3D72 10 )B "
01 238 3D74 '20 4F3A
01239 3D77 20 563F
01240 3D7A 20 833D
01241 7D3D RCV101
01242 3D7D AO BD 0)243 3D7F 20 523P
01244 3DB2 60
01245 833D RCV102
01246 3D83 A9 02
01247 3D85 A2 OA
01248 3D87 AO 10
01249 3D89 20 903D
01250 3D8C 38
01251 3D8D 66 4A
01252 8F3D RCV103
01253 3D8F 69
INBOUND MESSAGE BIT ZEXCOM BPL RCV103 JSR DISINT JSR D12US JSR RCV102 EQU *
LDY II -67 JSR D20US RTS EQU *
LDA S EXMASK LDX »INBUF V LDY 81 BEND: JSR RCVMSG SEC
ROR ZQI'N EQU *
RTS
► o
W
Empfange einlaufende Nachricht von externem Gerät Wenn Marke für externe Kommunikation gesetzt
Setze Unterbrechungen außer Betrieb Verzögere 12 psec., T3
alternativer Eintrittspunkt Verzögere 350 psec., T15
Aussprung alternativer Eintrittspunkt Wähle externes Gerät.
Zeiger auf Eingangspuffer Zeiger auf Pufferende Empfange Nachricht
Setze Marke für einlaufende Warteschlangen-Nachricht Aussprung
M
W
TEST 13 10/16/79
12:40:37
OMO : CROSS.TI
0)2)2
* PUTNIB
0)2)3
*
0)2)4
3D52
29
OF
PUTNIB
AND
Il $OF
0)2)5
3D54 ■
48
:r
PII A
0)2)6
3D55
A5
LDA
PUTPTR
0)2)7
3D57
4 A
LSR
A
012)8
3058
AA
TAX
0)219
3D59
A9
FO
LDA
i5fo
Ol 220
3D50
BO
07
BCS
PUTNO)
01221
3D5D
65
PLA
01222
3 05 E
' 20
OF3E
JSR
SWAP
0)233
306)
4 B
PUA
0)224
3062
A9
OF
LPA
1 $OF
01225
64 30
PUTNO1
EQU
*
v
0)226
3064
.E6
32
INC
PUTPTR
01227
3D66
35
ûû
AND
0(X
0)228
3D6B
95
00
STA
O, X
0)229
306 A
68
PLA
0) 230
3D6B
) 5
00
ORA
0,X
0)23)
3060
95
00
STA
O; X
0)232
306F
60
RTS
Bringe NIBBLE in (PUTPTR) und erhöhe PUTPTR
Reinige NIBBLE
Zwischenspeichere NIBBLE
Hole NIBBLE-Zeiger
Mache Byte-Zeiger
Bringe Byte-Zeiger nach X
Setze zur Bildung von L/Q-Loch (niedrige Ordnung L/O)
Wenn NIBBLE-Zeiger gerade
Bewege NIBBLE AUF H/O (hohe Ordnung)
Setze zur Bildung von H/O-Loch
Zeiger auf nächsten NIBBLE Bilde Loch
Einsetze NIBBLE
Aussprung
TEST 13 10/16/79
12:40:37
DMO .-CROSS. TI
Ol 255
01256
01257
01258
01259 Ol 260
01261
01262 0 1263 0) 264 01265
0 1 266 01267
01260 01269
01 270 01271 0 1272 0 1273 0 1274 0 1275 0 1276 0 1277 0)270 0 1279
* RCVMSG
»RECEIVE
MESSAGE
3D90
85
25
RCVMSG
STA
IOMASK
3D92
86
2?
STX
I BPTR ti
3D94
86
1P
STX
DPTR
3D96
84
1B
STY
BEND
3D98
20
6 2 3 F
JSR
ECHO
9B3D
RCVMOl
EQU
*
3D9B
A3
)B
LDA
BEND
3D9D
C5
1D
CMP
BPTR
3D9F
30
43
BMI RCVM04
A
jk
ABORT
3 DAI
E6
1D
INC
BPTR"
3DA3
20
7D3F
JSR
RCVBYT
3DA6
A0
FB
LDY
1-5 *
3DA0-
20
4F3F
JSR
D26US
3DAB
20
6 2 3 F
JSR
ECIIO
3 DAE
BO
E8
BCS
RCVMOl
*
3 DDO 3 DB 1 3DB3 3 DB 5 3DB7
38
A"2 2 3 A 5 1D F5 00 81 00
SEC
LDX I I DTR * O LDA BPTR SBC 0,X STA (0,X)
Empfange Nachricht Rette Gerätewähler Rette anfänglichen Pufferseiger .Anfangssetzung Pufferzeiger Rette Zeiger auf Pufferende Gebe RTS-Echo als CTS ab Führe aus, bis EOM empfangen Wenn Puffer voll ist
Abbruch
Zeiger auf nächstes Byte Empfange Byte Verzögere 46 jisec., T10
Gebe EOB/EOM-Echo als CTS/NCTS aus
«
Ende der Ausführung
Setze Übertrag für SBC (Zähler der gespeicherten Bytes Berechne Anzahl der Bytes
Speichere in erstem Byte des Puffers
TUST 13 10/16/79 12:48:37 DMO: CROSS.TI 3
0)280
3DB9
AO
EO
LDY
#-32
0)28)
3DBB
20
5 3 3 F
JSR
Dl 8US
0)282
3DBE
Â5
25
LDA
IOMASK
0)283
3DCO
25
ß3 Ì
AND
FORTD
01204
3DC2
FO
23 '
BEQ
RCVM05
0)285
3DC4
20
7D3D
JSR
RCV101
0 1 286
C73D
RCVMO 2
EQU
*
0 1287
3DC7 .
A5
25
LDA
IOMASK
0)288
3DC9
6A
ROR
A
01289
3 DCA
90
10
BCC
RCVM03 .
0)290
3DCC
20
95 3A
JSR
FLSOUT
Ol 291
3 DCF
AO
03
LDA
»3
Ol 2 9 2
3DD1
05
12
STA
OUTBUF+O
Ol 293
3DD3
A9
00
LDA
HO
01294
3DD6
05
14
STA
OUTBUF+ 2
01295
3DD7
A9
00
LDA
KHSTAT
01296
3DD9
05
13
STA
OUTBUF+1
01297
3DDB
05
15
STA
OUTBUF+1
Ol 298
3DDD
05
3 F
STA
YIIARDE
0 1299
3 DDF
05
4 B
STA
ZQOUT
Ol 300
3DEI
4C
2E3D
JMP
PSTAT2
Ol 301
E43D
RCVM03
EQU
A
01302
3 DE'4
4C
4 3 3D
RCVM04
JMP
PSTAT3
Ol 303
E73D
RCVM05
EQU
*
01301
3DE7
60
RTS
Verzögere 1 713 psec. , T8
Verzögere 350 psec., T15 Alternativer Eintrittspunkt
Wenn Gespräch mit AU (arithmetische Einheit)
Einschleuse auslaufende Warteschlangennachricht Bilde Statusnachricht für verhängnisvollen Fehle*"
Setze Marke.für harten Fehler
Setze Marke für auslaufende Warteschlangennachricht Anzeige Fehler und Abbruch f
Abbruch
Aussprung
TEST 13 10/16/79
12:40:37
DMO:CROSS.TI 3
!
01306 0 1307
0 I 300
01 309 01310
0 I 3 I I 01312 013 13 01314 013 15 0)316 01317 01310 01319
01 320 01321 Ol 322 0 1323
* RCVOUT
* Empfange auslaufende Nachricht von Buchungseinheit
3DE0 3DEB 3DEE
3DF1
3DF3 3DF5
3DF7 3DF9 3DFB 3DFE 3DFF 3 EOI
20 4F3A 20 F13D 4C 7D3D
F13D A9 o 1 F33D 24 03 DO FC
A2 12 A0 10 20 903D 38
66 4B 60
RCVOUT Fl 3D
RCVoo1
RCV002
JSR DISINT J"SR RCVOO 1
JMP RCV101 *
EQU *
LDA SAUMASK
EQU *
BIT PORTD
BNE RCVOO2
LDX ÏOUTBUF LDY KOBEND JSR RCVMSG
v
SEC
ROR ZQOUT RTS
Setze Unterbrechungen außer Betrieb Empfange Nachricht von Buchungseinheit Verzögere 350 psec., T1 5 Aussprung alternativer Eintrittspunkt Wähle Buchungseinheit Führe aus, bis RTS erkannt Suche nach RTS
Ende der Ausführung Zeiger auf Ausgabepuffer Zeiger auf Pufferende Empfange Nachricht
Setze Marke für auslaufende Warteschlangennachricht Aussprung
TEST 13 10/16/79 12:40:37
DMO:CROSS.TI 3
01 325 * SETXMT
01 326 * Setze auf Übertragung - Setze Port-Abbilder - Setze auf Prüfung auf RTS (Sendeaufforderung)
01327 3E02 48 SETXMT PIIA Zwischenspeichere Gerätewahl
01328 3E03 45 2F. EOR PORTCI Rette Port-Abbild für Daten = 1
01329 3E0 5 85 31" STA PORTCI
01330 3E07 A5 2F LDA PORTCI Rette Port-Abbild für Daten = 0 0133) 3E09 85 30 STA PORTCO
01 332 -3EOB 60 PLA Bringe Gerätewahl in Akkumulator
0 1333 3EOC 24 83 BIT PORTD Setze zur Prüfung auf RTS
0 1334 3EOE 60 RTS Aussprung
TEST 13 10/16/79
12:40:37
DMO:CROSS.TI3
>
w o
V0
0) 336
,
* SWAP
0 1337
* *
0 1338
* RETURN
WITU CLEAR
0 1339
3 EOF
OA
SWAP
ASL A
0 13 10
3 E 1 0
69 00
ADC HO
0134)
3E12
0A:
ASLA
0)342
3 E ) 3'
69 : 00
ADC HO
Q1 343
3 E1 5
0A
. ÀSL A
0 1344
3 E1 6
60 00
ADC HO
0 1345
3 E 18
OA
ASL A
0 1346
3 E 1 9
69 00
ADC DO
01347
3E1B
60
RTS
Vertausche NIBBLES IM Akkumulator CARRY Aussprung mit gelöschtem Übertrag
Schiebe H/O-Bit (hohe Ordnung) in Übertrag, Lösche L/O-Bit Bewege Übertrag zu L/O-Bit, Lösche Übertrag
(niedrige Ordnur
Aussprung
Os On
W Ol
TEST 13 10/16/79
12:48:37
DMO:CROSS.TI 3
01 349
*W2DADD
Ol 350
* ADD WORK
0I35 1 ;
3E1C
t
20 4F3A ,
W2DADD
0 1352
3 E 1 F
A9 00 1
0 13 5 3
3E21
85 22
01354
3E25
20 2E3C
0 1355
*
01 356
*
01 357
3E26
A2 04
01 358
3E28
01 359
3E29
F8
01 360
2A3E
W2DAÛl
01361
3E2A
B5 00
01362
3E2C
75 05
01363
3E2E
95 00
0 1364
3E30
CA
öl 365
3E31
)0 F7
01 366
*
01 3671
3E33
D8
01 368
3E44
90 03
01369
3E26
4C 2ESD
01 370
393E
WD2AÛ2
01371
-
*
01372
*
01373
*
JSR DISINT LDA #DISBUF+0*2 STA GETPTR JSR PPEQ05
LDX 1(4 CLC SED EQU *
LDA' DISBUF,X ADC WRKBUF., X STA DISBUF,X DEX
BPL W2DA01 CLD
BCC W2DA02 JMP PSTAT2 EQU *
Addiere Arbeitsspeicher zu Anzeige Setze Unterbrechungen außer Betrieb Zeiger auf Anzeige
Setze X auf Zählung vpn 10 NIBBLES
Definiere PUTPTR
Editiere MOVE (Bewege)
Setze auf Addition von 5 Bytes
Setze auf dezimale Addition Führe aus, bis 5 Bytes addiert sind Addiere Puffer
Bringe Ergebnis in Anzeige Zähle Byte,
Ende der Ausführung Setze auf binäre Arithmetik Wenn Oberlauf
Zeige Fehler an und Abbruch
Gelange in Festkommabetrieb, was folgt
Mache Festkomma-Anzeige
Aussprung
TEST 13 10/16/79 12:48 : 37 DMO: CROSS.TI 3 .
013^5
* FIXDEC
, '
01 376
* Neuformatiere Anzeige :in Festkomma-Dezimalformat
Ol 377
* Aussprünge
.mit*positives Ergebnis anzeigendem Statuswort
Ol 378
3E39
20. 4 F3 A
FI XDEC
JSR
DISINT
Setze Unterbrechungen außer Betrieb
0 1379
3E3C
A9 00 :
LDA
KDISBUF+0*2
Zeiger auf H/O NIBBLE (NIBBLE hoher Ordnung)
01380
3E3E
85 22
-
STA
GETPTR
0138 1
3E40
85 32
STA
PUTPTR •
01382
3E4 2
AO OA
LDY
110
Annahme, daß Anzeige, voll ist
01383
3E4 4
84 2C
STY
NIBCTR
01384
3E4 6
88
DEY
Setze auf Zählung von 10 NIBBLES
Ol 385
473E
FIX DO 1
EQU
*
Schleife mit 2 Ausgängen
Ol 386
3E47
20 5F3B
JSR
GETNIB
Hole NIBBLE von Il/O-Ende
0 1387
3E4A
DO 02
BNE
FIXD02
vorangestellte Null
Ol 388
3 E4C
A9 OF
LDA
» $OF
Mache ihn nicht-numerisch
01389
4E3E
FIX DO 2
EQU'
*
*
0)390
3E4E
C9 OA
CMP
t $0A
Ausgang, wenn numerischer NIBBLE
0)301
3E50
30 OA
BMI
FIXD03
0 1 1 «J 2
J Cb 2
AO OF
I.DA
H ÇIW
Onnkol taste nJchtnumerisehen NIBBLE
Ol 393
3 ES 4
20 523D
JSR
PUTNIB
Û 13 9 4
3 L'5 7
C6 2C
DHC
N)BCTR
Erniedrige angezeigten NIBBLE-Zähler
0 1 395
3E59
88
' DEV
Ausgang, wenn 10 NIBBLES abgestastet
Ol 396
3 E 4 A
10 EB
BPL
FIXDO)
0 1397
5C3E
FIXD03
EQU
A
Schleifenende
01398
3E5C
A5 IF
LDA
DECPOS
Wenn Dezimalpunkt nicht eingegeben
0)399
3 E 5 E
10 04
BDL
FIXD04
0)100
3 E 6 0
A9 02
LDA
Ï 2
Festlege seine Stellung bei 2
TEST 13 10/16/79
12:40:37
DMO .-CROSS. TI 3
014 01 01402 0 14 0 3 01404 0 1405
0 1406
01 407 01408 0 1 409 0 14 10 01411 014 12 01413 014 14 014 15 014 16
01417
01418 0 14 19
01420
01421 0 1422 0 1423 01424 0 1425 0 1.1 5 6
3E62
3E64.
3E65
3E67
3E6 9
3E6B
3E6D
3E70 3E72 .3E74 3E76 3E78 3E7B 3E7D
85 IF
643E
38
A5 2C B5 1 F C9 07 30 03 4C 2E3D 703E 703E A5 IF C9 04 10 09 A9 OF 20 AD8C E6 IF k9 Fl 7FSE
FIX DO 4
3E7F A9 05 3EbL 85 22 3E38 AO 05 3EB5 20 303C
3E88 A9 FF 3EOA 05 4 3
FIXD05 FIXD06
FIXD07
STA DECPOS EQU *
SDC
LDA NIBCTR SBC DECPOS CMP K7 BMI FIXD05 JMP PSTAT2 EQU *
EQU *
LDA DECPOS CMP 1(4 BPL FIXD07 LDA ,«$0F JSR PSIINIB INC DECPOS BPL FIXD06 EQU *
LDA !f DISBUF + 2 STA GETPTR LDY ||5 JSR PPEQ06
LDA II $ FF STA ZSTBLD
Wenn Anzeige nicht formatiert werden kann
Zeige Fehler an und Abbruch
Führe aus falls Dezimalstellung £.4
Bringe Leerzeichen in Anzeige
Schiebe Dezimalpunkt nach links
Ende der Ausführung
Setze auf Betrieb auf Einheiten
*2+]
Setze auf Bewegung von 5 NIBBLES Dezimiere PUTPTR Editiere und bewege
Setze auf Leertastung von MILS und END Setze Marke für einstellbare Anzeige
TEST 13 10/16/79 12:40 : 37 DMO: CROSS.TI 3
01427 3E8C A4 04 0)428 3E3E FO 02
01429 3E90 A9 OF
01430 923E
01431 3E92 05 04
01432 3E94 05 04
01433 3E96 A5 IF
01434 3E98 C5 2C
01435 3E9A 30 02
01436 3E9C 85 2C
01437 9E3B
01438 3E9E 46 44
01439 3EA0 46 42 0)440 3EA2 60
LDY DISBUF+4 BEQ FIXDOÛ LDA tl ?OF FIXD08 EQU *
ORA DISBUF+4 STA DISBUF+4 LDA DECPOS CMP NIBCTR BMI FIXD09 STA NIBCTR FIXD09 EQU *
LSR ZSTNGD LSR ZKEYMO RTS
Wenn MILS und Ende nicht 00
Setze auf Leertastung von lediglich END
Editiere MILS und END
Wenn NIBCTR vorangestellte Null ausschließt
Einschließe vorangestellte Null in NIBCTR
Lösche Marke für Anzeige der Einstellung Lösche Marke für Tastatureingabebetrieb Aussprung
TEST 13. 10/16/79
12:48:37
DMO:CROSS.TI3
01442
0 14 4 3
0 14 4 4
3EA3
4F3A
01445
3EA6
83
4 A
0)446
3EA8
A9
01
0 1447
3 EAA
20
023E
0 14 4 8
3 EAD
FO
08
0 1449
3 EAP
20
5B3F
0 1 450
3 ED 2
A9
FC
0 145)'
3 ED 4
20
5 03 F
0 1452
B73E
01453
3EB7
24
83
01454
3EB9
DO
OB
01455
3EBB
20
Fl 3D
01 456
3EBE
20
5B3F
0 1457
3EC1
AO
CD
Ol 458
3EC3
20
5 2 3 F
01459
C03E
0 1 460
3EC6
A9
0]
0 1461
3EC8
A2
0A
0 1462
3 ECA
20
CE3E
0 1463
3 ECD
60
* XMTIN
* Übertrage in einlaufender
XMT IN
XMT10 1
XMT102
JSR DISINT STA ZQIN LDA SAUMASK JSR SETXMT BEQ XMT10) JSR DOUTOl LDY jf-4 JSR D24US EQU * BIT PORTD BNE XMT]02 JSR RCVOO1 JSR DOUTOl LDY 8r51 JSR D20US EQU *
LDA «AUMASK LDX KINBUF JSR XMTMSG RTS
Os OS
w
Ol
Richtung auf Buchungseinh'eit
Setze Unterbrechungen außer Betrieb
Lösche Marke für einlaufende Warteschlangennachricht
Setze auf Übertragung
Wenn kein RTS von Buchungseinheit Bewirke Anstieg von RTS/CTS an Buchungseinheit Verzögere 39 psec., T2
Wenn RTS von Buchungseinheit
Empfange Nachricht von Buchungseinheit Ausgebe RTS
Verzögere 270 psec., T1 7
Übertrage INBUF (Eingabepuffer) auf Buchungseinheit
Aussprung
W
TEST 13 10/16/79
12:48:37
DMO:CROSS.TI3
014 65
01466
01467 3ECE 85 25 0)468 3EDO 8 6 )D 0 1469 3ED2 8 6 4.0 01470 3ED4 B5 00 0147) 3ED6 85 )A 0)472 3EDÛ 20 5B3P
01473 DB3E
01474 9EQB A2 00 0 14 75 DD3E 0 14 76 3EDD A5 25 0 1 477 3EDF 25 83 0 14 70 3EE1 FO OC 01479 3EE3 E8
0)480 3EE4 DO F7 0140) 3EE6 A9 02 0 1402 3EEB C5 25 01483 3EEA DO F) 014 04 3EEC 4C 573F 0 1405
01486 DDS E
01407 DOSE
01408 EF 3 E 0)409 3EEF AO F5
* XMTMSG
^TRANSMIT MESSAGE XMTMSG
XMTMO)
XMTM02
XMTM03 XMTM04 XMTM05
STA
IOMASK
STX
BPTR
STX
2ECIIER
LDA
O, X
STA
BCTR
JSR
DOUTOl
EQU
*
LDX
KO
EQU
*
LDA
IOMASK
AND
PORTD
BEQ
XMTM05
■I NX
BNE
XMTM04
LDA
SEXMASK
CMP
IOMASK
BNE
XMTMO3
JMP
DOUTOO
EQU
XMTM02
EQU
XMTM02
EQU
*
LDY
1-11
Übertrage Nachricht Speichere Gerätewähler Anfangssetzung Bytezeiger Lösche Echofehler-Marke
Bewirke Ausstieg von RTS
Führe aus bis alle Bytes gesendet
Setze Sperrzeitzähler, T13
Schleife - Ausgang bei CTS (Sendebereitschaft) Ausgang wenn CTS
Erhöhe Sperrzeitzähler
Sperrzeit abgelaufen
Wenn Sendung an externes Gerät
Senke RTS ab Aussprung
Verzögere 72 jisec., T4
TEST 13 10/16/79 12:40:37 DMO: CROSS.TI 3
0) 490
3EF1
20
5 1 3 F •
JSR
D 2,2 US
ü 1 4 9 1
3EF4
E6
1D
INC
BPTR •
01492
3EF6
20
A93F
JSR
XMTBYT
01493
3EF9
C6
IA v
DEC
BCTR
OÌ494
3EFB
DO
DE ;
BNE
XMTMOl
01495
*
01496
3EFD
24
48
BIT
ZECHER
0)497
3EFF
10
03
BPL
XMTM06
0) 498
3 FO )
4C
C73D
JMP
RCVM02
0) 499
040F
XMTM06
EQU
*
01 500
3F04
20
5B3F
JSR
DOUTOl
0)501
3F0 7
AO
CB
LDY
#.-53
0)502
3F09
20
4D3F
JSR
D26US
0)503
3 F0C
20
573F
JSR'
DOUTOO
01504
3 F0F
AO
EE
LDY
#-•18
01505
3 F 1 1
20
503F
JSR
D2 4US
0)506
3 F1 4
60
RTS
Erhöhe Bytezeiger Übertrage Byte Erniedrige Bytezähler
Wenn Echofehler
Prüfe Status, Abbruch
Sende Bestätigung Verzögere 286 jisec., T7
Sende EOM (Ende der Nachricht) Aussprung
TEST 13 10/16/79 12:48:37 DMO: CROSS.T13
G 1 5 0 8 0 1 509 0)5)0 0)5)) 015)2 0)5)3 015)4 0)515
01516
01517
01518 0 15 19
01520
01521
01522
01523 0)524 0)525 0 1526 0)527' 0)528
'XMTOUT
Übertragung in Auswärtsr.ichtung an externes Gerät
3 F ) 5 3 F 1 8 3 F ) A 3F IC 3F) E 3.F20 3F23 3F25 3F27 3F2A 3F2D 3F30 3F32
3F35 3F37 3F39
3F3C
20 4F3A 85 4B 24 4 9 10 JE -A9 0 2 20 023E DO 10 AO FC 20 523F 20 8 3 3D 20 5B3F AO CD 20 523F 353F A9 02 A2 12 20 CE3E 3C3 F ■
60
XMTOUT
XMTOOl
XMTOQ2
JSR DISINT STA ZQOUT BIT ZEXCOM BPL XMT002 LDA ÏEXMASK JSR SETXMT BNE XMTOOl LDY |-4 JSR D20US JSR RCV102 JSR DOUTOl LDY »-51 JSR D20US
V
EQU *
LDA ÏEXMASK LDX ÏOUTBUF JSR XMTMSG EQU *
RTS
Unterbrechung außer Betrieb
Lösche Marke für auslaufende Warteschlangennachricht Wenn externe Kommunikationsmarke gesetzt
Setze auf Übertragung
Wenn RTS von externem Gerät Verzögere 35 psec., T3
Erhalte Nachricht von externem Gerät Veranlasse Anstieg von RTS Verzögere 270 jisec., T17
Übertrage Ausgabepuffer auf externes Gerät
Aussprung
test 13 10/16/79
1 2:40:37 DMO: CROSS.TI 3'
0)530
3F4P
0153)
015 3 2
0)533
0 1534
0 i 5 3 5
0 1536
3F4F
EA
0)537
3F50
EA .
0 1538
3F51
EA
0)539
3F52
EA
0)540
3F53
EA
0)54)
3F54
30 FD
0)542
3F56
60
ORG S3FFA-)71
D26US
' 7. ei t ver zog er ung s rout inen,
D26US D24US D22ÜS D20US DJ OUS
DJ 2US
NOP , NOP NOP NOP INY
BMI D18US RTS
os 0\
JU (ji Ol
Verzögerung beinhaltet LDY H und ISR Halte Kode von Seitengrenzen fern Einstellungen für Y
>
W 00
TEST 13 10/16/79 12:48:37 DMO: CROSS.T13
ûl 544"
01545
01546 3F57 A6 30 0)547 3F59 DO 02 01548 5B3F 0)549 3F5B A6 31 0)550 3F5D 86 82 0)55)'3F5F 86 2F 0)552 3F6) 60
*DOUTOO
* Ausgabedaten 0 oder Daten
DOUTOO LDX PORTCO
BNE D0UTO2
DOUTOl EQU *
LDX PORTCI
D0UT02 STX PORTC
STX PORTCI RTS
an laufendes Gerät
Setze auf Ausgabedaten 1
Springe um alternativen Eintrittspunkt alternativer Eintrittspunkt
Setze auf Ausgabedaten 1
Ausgabedaten
Speichere Port-Abbild
Aussprung
TEST 13 10/16/79 12:40:37 DMO; CROSS.TI 3
0)554 0)555 01556 0)557
01558
01559 0)560 0)561 0)562 0 1563 0)564 01565 0)566
01567
01568
01569
01570 0)57) 0)572 0)573 0 1574
3F62 A5 25 3F64 24. 83 3F6 6 DO 00 3F68 FO 07 3F6A 18
3F6D 3F6D 3F6F
3F7) 3F72 3F74 3F76
3F78 3F7A 3F7C
49 00 05 2F 90 07 713F 38
49 FF 25 2F BO 00 783F 85 2F 85 82 00
* ECHO
* READ AND ECHO
* Bei Aussprung
ECHO
ECHOO)
ECII002
LDA BIT BNE BEQ CLC
EOR
ORA
BCC
EQU
SEC
EOR
AND
BCS
EQU
STA
STA
RTS
INPUT Lese und gebe Echo der Eingabe wieder stellt Obertrag Daten=0 oder Daten=l dar IOMASK PORTD * + 2
ECHO)
»?00
PORTCI
ECII002
II ? FF PORTCI
EC1I002 *
PORTCI PORTC
Lese Eingabe
Wenn Bit = 1 für Daten = 0
Übertrag=0 für Daten = 0
Setze auf Echo Bit = 1 für Daten = 0
(Zeitausgleich)
sonst
Übertrag = 1 für Daten = 1
Setze auf Echo Bit = 0 für Daten = 1
(Zeitausgleich)
Ausgebe Bit
Aussprung
TEST 13 10/16/79
12:40:37 DMO: CROSS.T13
01576
01577 01570 01579 0 1 580
01581
01582 0 1583
01584
01585 0 1586 0 1587 0 1588 0 1589 0 1590 0159)
01592
01593
01594
01595
01596 0 1597 0 1598 0 1599 0 1 600 0 1601 0 1 602
* RCVBYT *RECEIVE BYTE
3F7D 3F7F 3F81 3 FO 3
3F85 3F87 3F89 SF8B 3F8C 3 FBE
3 F9 1 3F94 3F97
3F9A 3F9C 3 F 9 F 3 FA 2 3 F A 4 3FA6
A9 80 A6 1D 95 00 A2 00 853F A5 25 24 83 DO 06 E8
DO F7 4C 4 3 3 D 853F 913F 20 563F 20 623F 20 563F 9A3F AO f8 20 533F 20 623F A6 1D 76 00 90 F2
RCVBYT
RCVBO1
RCVBO 2 RCVB03
RCVB04
3FAB 60
LDA
LDX
STA
LDX
EQU
LDA
BIT
BNE
I NX
BNE
JMP
EQU.
EQU
JSR
JSR
JSR
EQU
LDY
ÌSR
JSR
LDX
ROR
BCC
RTS
ÄS80 BPTR 0,X 10
Â
IÒMASK
PORTD
RCVB03
RCVB02 PSTAT3 RCVBO]
Dl 2US ECHO D1 2 US * .
«-8 D1 8US ECHO BPTR O, X RCVB04
Empfange Byte
Setze Markierung - Lösche Puffer
Setze Sperrzeitzähler, T13 Schleife - Ausgang bei Start Ausgang, wenn Start
Erhöhe Sperrzeit-Zähler Wenn Sperrzeit vorüber Abbruch
Schleifenende Verzögere 12 psec., T10 Echo für Startbit Verzögere 10 jisec., T10
Führe aus bis 8 Bits exponiere Markierung Verzögere 53 psec., T10
Lese Bit undgebe Echo Rotiere Bit in Byte hinein
Prüfe auf Markierung
Aussprung
TEST 13 10/16/79
12:40:37
DMO: CROSS.TI 3
D) 604
0 J 605
0 1 606
0) 607
0)600
0 I 609
0)6)0
0)6))
0)6)2
01613
0)614
0)615
0)616
016)7
0)610
016)9
01620
0162)
0)622
0 1623
0 16 2 4
0)625
0 1626
0)627
01620
. 3 FA9 3FAB 3FAD 3 F A F' 3FBO 3FB2 3FB3 3FB5
3FB6 3FB9 3 FBB 3FBD
3 FCO 3 FC 2 3FC4 3FC6 3 FCB
3 FCA 3 FCC
A6 )D B5 00 ■ 85 37 30
A6 1A CA
DO 0)
) 8
B63F 20 573F A2 F7 AO F5 20 533F C03 F 66 3 7 BO OO 90 04 A4 3) BO 0 4 CA 3 F A4 30 90 00 CE3F
* XMTBYT
"TRANSMIT BYTE
XMTBYT LDX BPTR
LDA 0,X
STA TEMP02 SEC
LDX BCTR DEX
BNE XMTBO)
XMTBOl
XMTB03
XMTB03
XMTB04
CLC EQU JSR LDX
v
LDY JSR EQU ROR 'BCS BCC LDY BCS EQU LDY BCC EQU
DOUTOO
1-9
1-11
D) OUS *
TEMP02
* + 2
XMTB03 PORTC1
XMTB04
*
PORTCO XMTB04
Übertrage Byte
Kopiere Byte in Arbeitsbereich
Annahme daß EOB Byte beendet wenn dieses letztes Byte ist
EOM beendet Byte
Ausgabe Startbit
Setze auf Ausgabe von 9 Bits
Verzögere 68 psec., T9
Ausführung bis 9 Bits gesendet Hole nächstes Bit Wenn Übertrag gesetzt
Setze auf Ausgabe von Daten = 1
sonst
Setze auf Ausgabe von Daten = 0 (Zeitausgleich)
TEST 13 10/16/79 12:40:37 DMO.-CROSS. T13
Û) 629
3FCE
A5
2F
LDA
PORTCI
0)630
3FDO
84
2 F
STY
PORTCI
0163)
3FD2
8 4
82
STY
PORTC
0)632
3FD4
20
E6 3F
JSR
XMTB05
01633
3F07
AO
FB
LDY
S -5
0 1634
3FD9
20
533F
JSR
Dl BUS
0)635
3 FDC
E8
I NX
0)636
3FDD
30
El
BMI
XMTB02
0)637
*
01638
3FDF
AO
FE
LDY
11-2
0)639
3 FE 1
20
533F
JSR
D) 8US
01640
3FE4
A5
2F
LDA
PORTCI
0)641
E63F
XMTB05
EQU
*
0)642
3FE6
45
83
EOR
PORTD
0)643
3FE8
25
25
-AND
IOMASK
0)644
3 FEA
FO
OO
BEQ
* + 2
0 1645
3 FEC
DO
03
BNE
XMTB06
0)646
3FEE
) 8
CLC
0)647
3 FEF
90
03
BCC
XMTB07
0)648
F 1 3F
XMTB06
EQU
*
0 16 4 9
3 FF 1
38
SEC
0 ) 650
3FF2
BO
OO
DCS
XMTB07
0165 1
F 4 3 F
XMT607
EQU
*
01652
3FF4
6 A
ROR
A
0 1653
3FF5
05
48
ORA
ZECHER
01654
3FF7
83
40
STA
ZECHER
0 1655
1FF9
60
RTS
Hole vorheriges Bit Ausgebe gegenv/ärtiges Bit
Vergleiche vorheriges Bit mit Echo Verzögere 38 psec., T9
Zähle Bit
Verzögere 23 psec., T9
Hole vorherige Bitausgabe (STOP) alternativer Eintrittspunkt Vergleiche vorheriges Bit mit Echo
Wenn Bits übereinstimmen
Setze auf Wartung der Echo-Fehler-Marke sonst
Setze auf Setzung der Echo-Fehler-Marke (Zeitausgleich)
Bringe Echo-Fehler-Marke auf neuen Stand
Aussprung
TEST 13 10/16/79
01 657
0 16 5 8
0 16 5 9
0038
01660
3 FFA
0038
01661
3 FFC
0D39
0 1662
3 FFE
003 8
0 1663
CROSS REFERENCE
ACR 00 8 B 127
AUMASKÛOO 1 121
DCTR 001A 18
DEND 001Q 19
ULANK 3A 1 8 538
ULANK13A 1 A 540
UL1NK 001C . 20
BPTR 001D 21
CTRRO 0085 128
CTRLO 008 4 129
DI2US 3F56 1552
D18US 3F53 1540
D20US 3F52 1539
D22US 3F51 1538
D24US 3F50 1537
1 2 : 4 8 : 37 DMO : CROSS. T13 ' g}
*»•
* END
* Unterbrechungsvektor und Endanweisung NMINT EQU INTRP
FDD NMINT FDB INIT FDD INTRP END
378
400
1313
1446
1 460
787
798
1471
1493
1260
1263
361
559
721
844
550
149
758
770
1 259
1264
1 606
382
144
381
1238
1 591
1593
1281
1541
1596
1610
1243
1450
1510
1522
1490
i 15)
1505
1610
870 1189
1268 1277 1468 1491
.1634 1639
%
1579 1598
> W
«t
TEST 13 10/16/79 12:48:37 DMO:CROSS.T13
D26US
00 IE
1536
127)
1502
DDOUNC
001F
22
190
195
233
242
. 903
DECPOS
3A3F
23
280
552
563
635
7)5
1401
) 403
14 1)
1416
1433
D1SPO)
3 A4 3
5 6 8
DlSB02
3A4E '
57)
57 6
DlSB03
3 A4 E '
577
573
D1SB04
3A28
578
570
DISDFR
oooo •
577
742
1020
1077
DlSDUF
0020
13
252
542
763
709
072
1101
1 )05
) 1 00
) 109
1115
136)
1363
1379
• 1420
1427
Î
DlSCTR
3A54
24
■ 250
255
20)
3)9
326
DISIO)
. 3 A4 F
587
593
650
DISINT
3884
584
558
1230
) 300
V ] 351
1370
D1 SP
3890
250
D1SPOÎ
389C
256
251
D1SP02
309E
263
260
DlSP03
38AE
265
262
D1SP04
38AE
275
273
DISP05
38AE
276
2 1 7
DlSP06
38D9
277
269
DlSP07
38C4
284
202
DISP06
3 ÜC4 -
29 )
280
>
w
M vi
924 ! 926 954 959 1398
.993 1023 1034 1092 1095
1116 . 1191 1193 1195 1352
1431 1432 373
1444 1510
Os Os
■u. <*>
Ol
/ 7 9
298
302
303
30 4
3)1
312
325
333
25
1546
154 8
1550
592
606
616
632
633
649
1557
1566
157)
66)
665
122
12:48:37 DMO:CROSS.T13
296
300
293
286
309
307
323
278
253
258
264
1484
1503
16)5
1449
1456
1472
1547
518
529
519
530
616
520
531
510
521
661
608
51 1
522
1 261
1 272
1592
1560
1565
1570
512
523
621
394
1246
1481
1 396
1387
1500 1520
1597
1514 1524
TEST 13 10/16/79 12:40:37 DMO:CROSS.T13
P I X' DO 3
3E5C
1 397
1391
FlXD04
3E64
1402
1399
FlXD05
3E70
1 409
1407
FlXD06
3E70
1 4 1 0v
1417
FlXD07
3E7F
1418
1413
F 1XDO0
3E92
1430
1420
FlXD09
3E9E
1437
14 35
FlXDEC
3E39
1378
759
077
FLSOOl
3AA8
687 *
601
FLS002
3AB1
694
678
FLS003
3 AB 1 .
695
752
FLSOUT
3A95
677
704
036
FLUSII
3AB2
700
393
390
FLUSH1
3AE4
725
712
FLUSH 2
3AE4
. 726
709
FLUSII 3
3 AEE
732
729
FLUSH4
3AF7
733
734
FLUSH5
3D03
744
731
737
FLUSII6
3DOB
740
740
FLUSH7
3 BOE
750
706
FLUSH8
3 AB 1
752
703
FMTBD.l
3 B 2 5
760
765
FMTB02
3B28
771
640
720
FMTD03
3B4C
795
793
FMTBOF
3 D 1 1
757
1 146
978 904
1 290 404 643
w
-4
1021
751 055 1150 1155
os OS
M Ul
TEST 13 10/16/79
12:48;
37
DMO: CROSS.T13
GETK01
3B5E
8)2
807
* ,
GETKEY
SB53
806
' 592
649
892
GETNOl
■ 3B6A
823
82 )
GETNID
3B5F
8)7
i 560
562
574, 1004
1026
GETPTR
0022
26
557
564
567 791
794
1044
1353
1380 1421
IfAREG
0082
101
IIDANT
0086
109
IIDCNT
0087
) 1 1
IICSUM
0084
. 105
*
IIDIACS
008D
108
IIDISAB
0042
74
85)
IIDISKB
0003
1)7
733
IIDISPC
OOAl
1)9
7)3
IIBLOCK
008A
1 02
IIDR2A)
3B75
833
641
1 147
IIDR2A2
3B78
' 835
1073
IIDR2AU
3B6F
830
384
667
853 1069
1153
IIDREG
0083
103
IIENABL
004 )
73
1 138
IICNAKD
0062
1 16
728
MENDEN
0043
75
666
DENTAM
00C5
8)
606
IIENTCO
00C6
' 82
632
IIEXRD
006).
) ) 5
708
11V 1.1 O 1
nnpi i » i
•71Q
o\
OS bJ
w
C/l
1040 • 1386 817 824 994 1024 1030
> w
00
TEST 13 10/16/79
12:40:37
DMO:CROSS.TI3
IIIISLIM
008E
1 10
II LO POS
008B
104
DMTRNO
008C
106
IIPCHT
0085
107
IIPSET
0091
100
IIREQAR
0052
86
IIREQBA
0056
94
IIREQBC
0057"
96
IIREQCS
0054
90
IIREQDL
0052
87
IIREQDR
0053
88
IIREQDS
0055
93
IIREQHS
0056
9.5
IIREQLP
0053
89
IIREQMN
0054
91
II REQPC
0055
92
IIREQPO
0051
85
IIREQST
0056 .
84
IIRESBA
0044
76
HRESàv
0047
78
IISETPO
00CI
89
IlSETSV
0046
77
IISTAT
0080
98
IDEND
0010
123
I ßPTR
0023
27
1ER
008A
1 30
107) 1162 1295 1276
1017
1.068
1 152
383
458
446
1144
44 1
680
I 248
1258
407
> w
ON ON N>
W (Jl
TEST 13 10/16/79 .12:40:37 DMO : CROSS . T13
1 FR
0089
131
INDU F
000A
15
1 23
634
1145
1247
1461
I N IT
390D
351 ,
1061
INITOl
3914
356 1
359
INTROl
3811
154
152
1NTR02
3817
158
150
INTRP
3800
143
1659
1662
IOMASK
0025
29
1 257
1 202
KBSC
3817
163
KSCOl
3fl2A
1 74
1 86
KDSC02
383B
184
1 79
KBSC03
3849
194
191
KDSCO4
384D
199
• 189
KBSC05
3857
. 213
216
KBSCÒ6
385E
219
201
KBSC07
386D
227
224
KBSC08
386D
228
221
KBSC09
3871
232
' 218
KBSC10
3B7C
24 1
230
KBSCl1
3880
243
193
KBSCl2
3884
245
197
234
KCLEAN
0026
30
243
321
KCLEEN
0027
- 31
244
470
KEYCOL
0028
32
181
182
k F. Y MOI
3D0B
849
04 3
639 • • 707. ' 727
1207 14 6 7 14 76
806 809
210 212 214
•fc. ' •
741 745 747' 830 832
1482 1557 1583 1643
240
TEST 13 10/16/79
12:48:37
DMO:CROSS.T13
KEYM02
3B8B
850
KEYM03
3B8D
852
KEYMOD
3B7E
842
KLUSED
0029
33
KSW 1
00 2 A
23
LNCTIM
002B
' 35
MLOOOI
395B
399
ML00Û2
3967
405
ML0003
3977
415
MLOOO 4
3977
4 1 6
ML0005
. 3 9 A5
,443
ML0006
• 3 9 AA
447
ML000 7
39AD
451
ML0008
39BE
462
MLOOO9
39CI
466
MLOO10
39D1
475
MLOO)1
39D4
480
MLOO)2
39D4
48 1
MLOO13
39E4
.490
MLOO14
39F2
499
MLOO)5
3 AO 1
569
MLOO16
3 AO 2
510
MLOO)7
3AÛD
52)
MLOO18
394C
532
MLOO19
39 4C
533
MLOÓP
3 9 4C
• 392
968
459 1139 940
8)1 9)3 934
433
153 4)1 906
487
517 524 528
503
533 1207
067
448
922
374
172
151
396
402
412
4 10
438
442
435
457
455
471
474
468
405
489
513
505
507
50)
453
532
>
W W
962 1060 1122
1081
On On M
-fe. W VI
TEST 13 10/16/79
12:48:37
DMO-.CROSS. TI 3
NIBCTR 002C 36
NMINT 3800 1659
OBEND 00)8 128
OPEA 3893 860
OPEC 3B93 886
OPOP ,3BBÛ 892 OPOPOl 3BC1 ' 902
OPOP02 3BC9 • 907
OUTBUF 0012 16
PAKEOl 3BD2 918
PAKEOl 3BD2 919
PAKE03 3BDF 927
PAKE04 3 BDF 928
PAKE05 3BDF 929
PAKEY 3BCA 913
PCLB01 3B98 868
PCLBO2 3BAD 879
PCLB03 3BAD 880
PCLRK 3B95 867
PCR 008C 132
PDKEO) 3BDF 943
PDKEY 3BEO 934
PKSW 002D 37
PNUMO) 3BFF 961
638 718 761
1436
525 886
526
527
679 685 686
1165 1177 1292
952 957 1011
973
654 895 493 498
548
1434
1660
1319.
514
515
516
893
904
124
1161
915
598
925
•921
943
896
644
876
874
941
376
940
597
380
955
ON ON
W (il
950 1117 1383 1.394 1404
719 1016 1019 1070 1076 1296 1297 1318 1525
w
W
TEST 13 10/16/79
i porta' 0080 133
portax 008d 134
portb 0031 135
portd1 ò02e . 38
portbx 00be 136
portc 0082 137
portco 0030 40
portci 0031 4 1
portci 002p 39
.portd' 0083 138
ppeqo1 3c11 * 975
ppeq02 3c19 983
ppeqo3 3c23 988
ppeq04 3c28 992
ppeq05 3c2e 996
ppeq06 .3c30 998
ppeqo7 3c32 1000
ppeq08 3c32 1001
ppeq09 3c3e 1008
ppeq10 3 bdf 1011
ppeqk 3c04 968
pposti 3c58 1025
ppost2 3c6e 1038
ppost3 3c6e 1039
ppost4 3c82 1051
12:48:37 DMO:CROSS.T13
171
1 76
315
324
167
317
164
1 75
320
368
429
369
430
431 •
433
436
372
.
366-
4 28
1205
1550
1573
1331
1546
1626
1 329
1 549 •
1623
365
427
1203
1206
1328
1 629
1 630
1640
395
401
1283
1315
1333
972
970
986
980
V
1354
799
1423
1010 ) 006 1 003
916 1143 1020 1035 1042
1085 1196
>
w
W M
. 586 1631
1330 1.551. 1 564 1569 1572 1453. 1.477 1 558 1584 1642
o\
Os
W VI
test 13 10/16/79 12:48:37 dmo: cross.ti 3
PPOST5
3C.8 6 .
1054
10)8
PPOST6
3C86
1055
1063
1065
PPOSTR
3C44
1016
69)
PRKEOO
3C89
1061 .
476
PRKEOl
3C9F
1075 ;
1072
PRKE02
3CA4
1078
743
1 198
PRKE03
3CA6
1080
PRKE04
3CA8
1032
722
PRKEY
3C8 7
1060
897
PSIIN02
3CBB
1099
11)1
.
PSIINIB
3 CAD
1091
575
963
1415
PSKFO)
3CEC
1 Î 37
1127
PSKE02
3CF1
1 142
) 134
PSKE03
3CFE
1149
386
669
• *
.V
PSKE04
3D0)
1151
4 13
463
. 472
1135
PSKE05
3D09
1156
1124
1 185
1208
1 209
PSKEY
3CDB
1122
898
PSTATl
3 D1 4
1166
1 1 70
i
PSTAT2
3D2E
1)88
1182
1300
1369
1408
PSTAT3
3D43
1 199
1302
1588
PSTAT4
3DC9
) 20B
' 1 180
PSTAT5
3D09
) 209
1 163
PSTATR
3D0A
) 16)
690
PUTNO)
3D64
' 1 225
) 220
PUTNIQ
3D52
12)4
1009
1037
) 04 8
1 393
o\ o\
N>
4^ M Cft
>
w w
4i.
TEST 13 10/16/79 12:40:37
DMO:CROSS.TI3
RCVBO1 3F85
RCVB02 3F85
RCVB03 3F9)
RCVBO4 3F9A
RCVBYT 3F7D
RCV101 3D7D
RCV102 3DB3
RCV103 3D8F
RCVIN 3D70
RCVMOl 3D9B
RCVMO 2 3DC7
RCVM03 3DE4
RCVM04 3DE4
RCVM05 3DE7
RCVMSG 3D90
RCVOD1 3DF1
RCVOO2 3DFE
RCVOUT 3DES
SETXMT 3E02
SWAP ' 3E0F
TEMPOl 0033
TEMP02 0037
TSTACK 007F
W2DA0) 3E2A
W2DA0 2 3E39
W2DADD 3E 1C
158 2
1589
1589
1587
1590
. 1 505
1594
1 600
1578
1 269
2 1 4 1 :
1285
13)0
1 2 4 5'
1 24 0
1519
1252
1 237
12 86
397
1262
1273
1286
1498
1301
1289
1 302
1265
1 303
1284
1 257
1 249
1320
13 12
1309
1455
1314
1316
1 308
403
837
1327
1447
15)5
1339
261
774
43
178
180
44
4 9 2
496
125
351
1 20 1
1369
1 365
1370
1360
1 35Ì
870
907
822 1093 1102 219 222 236
772 777 792
> <*>
M
1222
1097 1)10 1608 1620
Os Os M
<J\
TEST 13 10/16/79
WRKBUF
0005
14
XMTBOl
3FB6
1614
XMTB02
3 FCO
1619
XMTB03
3FCA
1625
XMTB04
3 FCE
1620
XMTB05-
3 F E 6
164 1
XMTB06' 3 FF 1
1648
XMTB07
3FF4
1651
XMTBYT
3FA9
1 606
XMT101
3EB7
1452
XMT102
3EC6
1 459
XMT IN
3EA3
1444
XMTM01
3EDB
1473
XMTM0 2
3EDD
• 1475
XMTM03
3EDD
1406
XMTM0 4
3EDD
1407
XMTM05
3EEF
1488
XMTM0 6
3 FO 4
1499
XMTMXG
3ECE
1467
XMTOOl
3F05
1523
XMT002
3F3C
1527
XMTOUT
3 Fl 5
1510
YDATRC
003E •
53
YCKDAT
0039
40
YBNABL
003D
52
Y FLAGS
0038
4 6
î 3 7 DMO: CROSS. T13-1362
1627 1 650
034 1407
1526
12:40
995
1612
1636
1622
1624
1632
1645
1647
1492
1 44B
1454
749
1494
1406
1403
1400
1470
1497
1462
1516
1513
680
456
421
27 2
1168
o\ On Ni
4^
W Ol
>
W W ©\
TEST*'! 3*10/16/79 12:40:37 DMO;CROSS.T13
YIIARDE
003F
'54
207
1176
1179
'1290
YINSF
00 3 A
49
295
299
YKßDIS
0040
55
370
440
452
60 2
YLOWF
003B
50
294
YRESBA
0038
47
418
YSERV
0G3C
51
306
ZADDEL
0046
63
810
875
969
991
ZIÌCDWN
0041
58
160
226
454
ZDL1NK
0047
64
156
157
292
417
V. IX II ER
0048
65
1469
1496
1653
1654
ZEXCOM
0049
66
363
439
445
1236
Z f'LAGS
004 1
57
543
ZKEYHO
0042
59
042
846
1439
ZQÌN
00 4 A
67
701
705
710
1251
2QOUT
00 4 B
68
677
702
724
1299
ZSTBLD
0043
60
711
047
1022
1133
ZSTNGT
004 4
61
270
285
1050
1126
ZTIMD
0045
$2
409
971
1084
2TOTAC
004C
69
860
073
801
977
ZTRIP
00 4 D
70
467
469
1173
1174
>
OJ M -4
730 736.
1052 420 1512
1445
1322 1511
1426
14 38
985 900 1053
0\ 0\ KJ
«t
Ut

Claims (6)

662 435
1. Steuereinheit für eine Frankiermaschine, die eine Buchungseinheit (58) zur Steuerung der Buchungsvorgänge und eine Druckereinheit (56) zum Ausdrucken der Portogebühren aufweist, gekennzeichnet durch eine einen Mikroprozessor (80, 100) und einen Schaltkreis (81, 101) umfassende Anordnung zur Erzeugung von seriellen Signalen in einem Nachrichteninformat von Bitgruppierungen aus einer bestimmten Anzahl von Bits mit Start- und Stopbit an und durch Anschlussmittel (86) zum Anschliessen dieser Signale an die Buchungseinheit (58), wobei der Mikroprozessor der Anordnung imstande ist, eine von aussen seriell eingehende Nachricht mit der genannten in der Anordnung erzeugten Nachricht zu vergleichen.
2. Einheit nach Anspruch 1, dadurch gekennzeichnet, dass eine Anzeigeeinheit für Portogebühren vorgesehen ist, die mit dem Schaltkreis der Anordnung verbunden ist.
2
PATENTANSPRÜCHE
3. Einheit nach Anspruch 1, gekennzeichnet durch zweite Anschlussmittel (88) zum Anschliessen eines externen Gerätes (164) und durch einen Puffer (158) zum Zwecke über die Steuereinheit Signale aus der Frankiermaschine an das externe Gerät (150) und zurück übertragen zu können.
4. Einheit nach Anspruch 1, dadurch gekennzeichnet, dass der Mikroprozessor (81) der Anordnung imstande ist die genannten Nachrichten asynchron abzugeben.
5. Einheit nach den Ansprüchen 3 und 4.
6. Einheit nach Anspruch 1, dadurch gekennzeichnet, dass die Anschlussmittel (86) Einweg-Übertragungskanäle bilden, die jeweils eine Übertragung nur in einer Richtung zu und aus der Steuereinheit bewirken.
CH5043/84A 1979-10-30 1980-10-30 Steuereinheit fuer eine frankiermaschine. CH662435A5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/089,413 US4301507A (en) 1979-10-30 1979-10-30 Electronic postage meter having plural computing systems

Publications (1)

Publication Number Publication Date
CH662435A5 true CH662435A5 (de) 1987-09-30

Family

ID=22217501

Family Applications (6)

Application Number Title Priority Date Filing Date
CH5041/84A CH668875A5 (de) 1979-10-30 1980-10-30 Sende- und empfangseinheit und kommunikationseinrichtung mit sende- und empfangseinheiten.
CH8094/80A CH662433A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.
CH5042/84A CH662434A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.
CH573/86A CH666565A5 (de) 1979-10-30 1980-10-30 Kommunikationsanlage und frankiermaschine mit einer kommunikationsanlage.
CH5043/84A CH662435A5 (de) 1979-10-30 1980-10-30 Steuereinheit fuer eine frankiermaschine.
CH5044/84A CH662436A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CH5041/84A CH668875A5 (de) 1979-10-30 1980-10-30 Sende- und empfangseinheit und kommunikationseinrichtung mit sende- und empfangseinheiten.
CH8094/80A CH662433A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.
CH5042/84A CH662434A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.
CH573/86A CH666565A5 (de) 1979-10-30 1980-10-30 Kommunikationsanlage und frankiermaschine mit einer kommunikationsanlage.

Family Applications After (1)

Application Number Title Priority Date Filing Date
CH5044/84A CH662436A5 (de) 1979-10-30 1980-10-30 Frankiermaschine.

Country Status (12)

Country Link
US (1) US4301507A (de)
AT (2) AT384116B (de)
BE (1) BE885949A (de)
BR (1) BR8006975A (de)
CA (1) CA1159563A (de)
CH (6) CH668875A5 (de)
DE (3) DE3051014C2 (de)
FR (1) FR2476352B1 (de)
GB (5) GB2080588B (de)
IT (1) IT1148281B (de)
NL (1) NL193476C (de)
SE (5) SE459828B (de)

Families Citing this family (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4390952A (en) * 1980-06-27 1983-06-28 Pitney Bowes Inc. Mailing system with sequential printing control
FR2486687B1 (fr) * 1980-07-09 1986-08-22 Roneo Alcatel Ltd Compteur d'affranchissement postal
US4447890A (en) * 1980-07-14 1984-05-08 Pitney Bowes Inc. Remote postage meter systems having variable user authorization code
US4442501A (en) * 1981-02-26 1984-04-10 Pitney Bowes Inc. Electronic postage meter with weak memory indication
US4445198A (en) * 1981-09-29 1984-04-24 Pitney Bowes Inc. Memory protection circuit for an electronic postage meter
US4566106A (en) * 1982-01-29 1986-01-21 Pitney Bowes Inc. Electronic postage meter having redundant memory
EP0231452B2 (de) 1982-01-29 2002-01-16 Pitney Bowes Inc. Mikroprozessorsysteme für elektronische Frankiereinrichtungen
US5109507A (en) * 1982-01-29 1992-04-28 Pitney Bowes Inc. Electronic postage meter having redundant memory
CA1206619A (en) * 1982-01-29 1986-06-24 Frank T. Check, Jr. Electronic postage meter having redundant memory
US4471440A (en) * 1982-02-01 1984-09-11 Pitney Bowes Inc. Electronic postage meter having power magnetically coupled to the meter from the meter base
US4506329A (en) * 1982-03-08 1985-03-19 Pitney Bowes Inc. Non-volatile memory serial number lock for electronic postage meter
US4525786A (en) * 1982-07-12 1985-06-25 Pitney Bowes Inc. Electronic postage meter having a one time actuable operating program to enable setting of critical accounting registers to predetermined values
US4573174A (en) * 1982-09-07 1986-02-25 Pitney Bowes Inc. Electronic postage meter having interlock between mechanical and electrical registers
US4547853A (en) * 1982-10-13 1985-10-15 Pitney Bowes Inc. Electronic postage meter reset circuit
JPS59103186A (ja) * 1982-11-15 1984-06-14 ピツトネイ・ボウズ・インコ−ポレ−テツド シ−ルド用スクリ−ンを備えた電子郵便料金計
DE3243696A1 (de) * 1982-11-23 1984-10-18 Francotyp - Postalia GmbH, 1000 Berlin Verfahren zur datumseinstellung fuer elektronisch gesteuerte frankiermaschinen
US4623987A (en) 1982-12-08 1986-11-18 Pitney Bowes Inc. Postage meter with keyboard keys for commanding and requesting performance of meter operations
CA1223360A (en) * 1982-12-08 1987-06-23 Pitney Bowes Inc. Modifying a firmware variable in an electronic postage meter
US4636975A (en) * 1982-12-08 1987-01-13 Pitney Bowes Inc. Controlling firmware branch points in an electronic postage meter
US4536850A (en) * 1982-12-08 1985-08-20 Pitney Bowes Inc. Monitoring the status of the trip cycle in an electronic postage meter
US4635204A (en) 1982-12-08 1987-01-06 Pitney Bowes Inc. Postal meter with date check reminder means
US4577283A (en) * 1982-12-08 1986-03-18 Pitney Bowes Inc. Postage meter with keyboard keys for causing meter operations to be performed
US4509141A (en) * 1982-12-08 1985-04-02 Pitney Bowes Inc. Postage meter with keyboard keys used for changing operating constants
US4559443A (en) * 1982-12-08 1985-12-17 Pitney Bowes Inc. Initializing the print wheels in an electronic postage meter
US4535407A (en) * 1982-12-08 1985-08-13 Pitney Bowes Inc. Postage meter with keyboard keys for changing postage unused amount
US4622651A (en) * 1983-04-18 1986-11-11 Pitney Bowes Inc. Electronic postage meter having piezoelectric audio transducer energized by stepping motor driver circuit
US4524426A (en) * 1983-04-19 1985-06-18 Pitney Bowes Inc. Electronic postage meter controllable by mailing machine
US4578758A (en) * 1983-06-23 1986-03-25 Pitney Bowes Inc. Electronic postage meter having a regulated power supply system responsive to a voltage developed in a transformer primary winding circuit
US4535421A (en) * 1983-07-05 1985-08-13 Pitney Bowes Inc. Universal real time transparent asynchronous serial/echoplex converter
US4611282A (en) * 1983-07-18 1986-09-09 Pitney Bowes Inc. Postage meter using a flag to indicate interuption of accounting register updating due to power failure or microprocessor failure
US4528644A (en) * 1983-07-18 1985-07-09 Pitney Bowes Inc. Customizing the firmware after assembly of an electronic postage meter
US4763271A (en) * 1983-09-12 1988-08-09 Pitney Bowes Inc. Method and apparatus for updating parameter data
US4584648A (en) * 1983-09-14 1986-04-22 Pitney Bowes Inc. Post office window system with programmable prompts
US4584647A (en) * 1983-10-17 1986-04-22 Pitney Bowes Inc. Electronic postage meter with a ring counter
US4882669A (en) * 1983-11-28 1989-11-21 Canon Kabushiki Kaisha Multi computer fail safe control apparatus
EP0165386B1 (de) * 1984-04-26 1989-11-29 Heidelberger Druckmaschinen Aktiengesellschaft Verfahren und Speichersystem zum Speichern von Einstellwerten für Stellvorrichtungen an Druckmaschinen
US4559592A (en) * 1984-05-31 1985-12-17 Pitney Bowes Inc. Electronic postage meter having a switching power supply employing integrated circuit timer
US4745346A (en) * 1984-10-04 1988-05-17 Pitney Bowes Inc. Electronic postage meter print wheel setting optimization system
US4635205A (en) * 1984-10-04 1987-01-06 Pitney Bowes Inc. Microprocessor controlled d.c. motor for indexing postage value changing means
US4630210A (en) * 1984-10-04 1986-12-16 Pitney Bowes Inc. Microprocessor controlled d.c. motor for controlling a load
US4636959A (en) * 1984-10-04 1987-01-13 Pitney Bowes Inc. Microprocessor controlled d.c. motor for controlling a postage meter
US4631681A (en) * 1984-10-04 1986-12-23 Pitney Bowes Inc. Microprocessor controlled d.c. motor and application therefor
US4649491A (en) * 1984-12-20 1987-03-10 Pitney Bowes Inc. Modular battery powered business systems
US4817002A (en) * 1984-12-24 1989-03-28 Pitney Bowes Inc. Electronic postage meter non-volatile memory systems having human visually readable and machine stored data
US4731728A (en) * 1985-01-10 1988-03-15 Pitney Bowes Inc. Postage meter with means for preventing unauthorized postage printing
US4710883A (en) * 1985-03-12 1987-12-01 Pitney Bowes Inc. Electronic postage meter having a status monitor
US4998203A (en) * 1985-03-12 1991-03-05 Digiulio Peter C Postage meter with a non-volatile memory security circuit
US4775246A (en) * 1985-04-17 1988-10-04 Pitney Bowes Inc. System for detecting unaccounted for printing in a value printing system
FR2584557B1 (fr) * 1985-07-02 1989-07-28 Smh Alcatel Systeme de telecontrole pour machines a affranchir
US4835713A (en) * 1985-08-06 1989-05-30 Pitney Bowes Inc. Postage meter with coded graphic information in the indicia
US4650974A (en) * 1985-08-07 1987-03-17 Pitney Bowes Inc. Condensation shield
EP0219118B1 (de) * 1985-10-15 1991-09-25 Pitney Bowes Inc. Doppelt redundante elektronische Frankiermaschine
US4805109A (en) * 1985-10-16 1989-02-14 Pitney Bowes Inc. Nonvolatile memory protection arrangement for electronic postage meter system having plural nonvolatile memories
DE3685191D1 (de) * 1985-10-16 1992-06-11 Pitney Bowes Inc Systeme zur nichtfluechtigen speicherung von daten und frankiermaschinensysteme.
US4817004A (en) * 1985-10-16 1989-03-28 Pitney Bowes Inc. Electronic postage meter operating system
US4845632A (en) * 1985-10-16 1989-07-04 Pitney Bowes Inc. Electonic postage meter system having arrangement for rapid storage of critical postage accounting data in plural nonvolatile memories
US4787046A (en) * 1985-11-12 1988-11-22 Pitney Bowes Inc. Mailing system having a capability for one-step postage metering
GB2183546A (en) * 1985-11-29 1987-06-10 Pitney Bowes Plc Electronic postage meter
US4907161A (en) * 1985-12-26 1990-03-06 Pitney Bowes Inc. Batch mailing system
US4998204A (en) * 1985-12-26 1991-03-05 Pitney Bowes Inc. Mailing system and method for low volume mailers printing postage information upon inserts
US4853864A (en) * 1985-12-26 1989-08-01 Pitney Bowes Inc. Mailing systems having postal funds management
US4962459A (en) * 1985-12-26 1990-10-09 Mallozzi Joseph D System for accounting for postage expended by a postage meter having data security during printing
GB8630680D0 (en) * 1985-12-26 1987-02-04 Pitney Bowes Inc Accounting for postage
US4783745A (en) * 1986-01-30 1988-11-08 Pitney Bowes Inc. Nonvolatile memory unlock for an electronic postage meter
DE3605421A1 (de) * 1986-02-20 1987-08-27 Thomson Brandt Gmbh Verfahren zum datenaustausch zwischen einem ersten und einem zweiten prozessor
US4910686A (en) * 1986-04-04 1990-03-20 Pitney Bowes Inc. Postage meter with non-dollar amount indicia
US4831554A (en) * 1986-04-10 1989-05-16 Pitney Bowes Inc. Postage meter message printing system
US4785417A (en) * 1986-04-28 1988-11-15 Pitney Bowes Inc. Electronic postage meter having an out of sequence checking arrangement
US5375172A (en) * 1986-07-07 1994-12-20 Chrosny; Wojciech M. Postage payment system employing encryption techniques and accounting for postage payment at a time subsequent to the printing of postage
US4796193A (en) * 1986-07-07 1989-01-03 Pitney Bowes Inc. Postage payment system where accounting for postage payment occurs at a time subsequent to the printing of the postage and employing a visual marking imprinted on the mailpiece to show that accounting has occurred
US4809185A (en) * 1986-09-02 1989-02-28 Pitney Bowes Inc. Secure metering device storage vault for a value printing system
US4809186A (en) * 1986-09-19 1989-02-28 Pitney Bowes Inc. Postage meter for metering mixed weight mail
FR2611946B1 (fr) * 1987-02-27 1991-01-04 Smh Alcatel Machine a affranchir electronique comportant des valeurs limitant les affranchissements
FR2611947B1 (fr) * 1987-02-27 1991-05-10 Smh Alcatel Machine a affranchir comportant une alarme
FR2617313B1 (fr) * 1987-02-27 1991-08-16 Smh Alcatel Systeme d'exploitation d'une machine a affranchir electronique
US4941091A (en) * 1987-06-30 1990-07-10 Pitney Bowes Inc. Mail management system transaction data customizing and screening
US4837779A (en) * 1988-04-12 1989-06-06 Dual-Lite Manufacturing, Inc. Communicator and communication method and system
JP2679775B2 (ja) * 1989-07-31 1997-11-19 三田工業株式会社 Cpu間通信方法
US5293319A (en) * 1990-12-24 1994-03-08 Pitney Bowes Inc. Postage meter system
US5239168A (en) * 1991-07-29 1993-08-24 Pitney Bowes Inc. Postage meter with barcode printing capability
FR2704343B1 (fr) * 1993-04-21 1995-07-13 Secap Machine à affranchir en deux parties.
US5452654A (en) * 1993-07-13 1995-09-26 Pitney Bowes Inc. Postage metering system with short paid mail deterrence
US5448641A (en) * 1993-10-08 1995-09-05 Pitney Bowes Inc. Postal rating system with verifiable integrity
USD361780S (en) 1994-05-05 1995-08-29 Pitney Bowes Inc. Mail processing machine
US5655023A (en) * 1994-05-13 1997-08-05 Pitney Bowes Inc. Advanced postage payment system employing pre-computed digital tokens and with enhanced security
US5586036A (en) * 1994-07-05 1996-12-17 Pitney Bowes Inc. Postage payment system with security for sensitive mailer data and enhanced carrier data functionality
US5612889A (en) * 1994-10-04 1997-03-18 Pitney Bowes Inc. Mail processing system with unique mailpiece authorization assigned in advance of mailpieces entering carrier service mail processing stream
US5737426A (en) 1994-12-13 1998-04-07 Pitney Bowes Inc. Remote and secure feature enabling for an electronic postage meter
FR2730102B1 (fr) * 1995-01-31 1997-04-18 Neopost Ind Dispositif de protection thermique pour machine a affranchir
US6671813B2 (en) * 1995-06-07 2003-12-30 Stamps.Com, Inc. Secure on-line PC postage metering system
US6233063B1 (en) 1995-06-29 2001-05-15 Agfa Corporation Two lens converging device in a dual plane flat-bed scanning system
US5812536A (en) * 1995-07-05 1998-09-22 Pitney Bowes Inc. Secure accounting system employing RF communications for enhanced security and functionality
EP0789333B1 (de) 1996-01-31 2003-08-13 Francotyp-Postalia AG & Co. KG Frankiermaschine
US5812400A (en) * 1996-08-23 1998-09-22 Pitney Bowes Inc. Electronic postage meter installation and location movement system
US5731980A (en) * 1996-08-23 1998-03-24 Pitney Bowes Inc. Electronic postage meter system having internal accounting system and removable external accounting system
US6050486A (en) * 1996-08-23 2000-04-18 Pitney Bowes Inc. Electronic postage meter system separable printer and accounting arrangement incorporating partition of indicia and accounting information
US8225089B2 (en) 1996-12-04 2012-07-17 Otomaku Properties Ltd., L.L.C. Electronic transaction systems utilizing a PEAD and a private key
DE19711997A1 (de) * 1997-03-13 1998-09-17 Francotyp Postalia Gmbh Anordnung zur Kommunikation zwischen einer Basisstation und weiteren Stationen einer Postbearbeitungsmaschine und zu deren Notabschaltung
US5999921A (en) * 1997-04-30 1999-12-07 Pitney Bowes Inc. Electronic postage meter system having plural clock system providing enhanced security
US6058190A (en) * 1997-05-27 2000-05-02 Pitney Bowes Inc. Method and system for automatic recognition of digital indicia images deliberately distorted to be non readable
US6023690A (en) * 1997-06-12 2000-02-08 Pitney Bowes Inc. Method and apparatus for securely resetting a real time clock in a postage meter
US5946672A (en) * 1997-06-12 1999-08-31 Pitney Bowes Inc. Electronic postage meter system having enhanced clock security
US6076081A (en) * 1997-08-13 2000-06-13 Pitney Bowes Inc. Protocol converter with peripheral machine trip capability
US6175827B1 (en) 1998-03-31 2001-01-16 Pitney Bowes Inc. Robus digital token generation and verification system accommodating token verification where addressee information cannot be recreated automated mail processing
WO2000019382A1 (en) 1998-09-29 2000-04-06 Stamps.Com, Inc. On-line postage system
US6378012B1 (en) 1998-10-29 2002-04-23 Edward R. Bass Interface with data transmission mode from weighing scale to one or more peripheral devices and mailing machine tripping mode determined by individual peripheral device protocol
US6502143B1 (en) 1999-12-31 2002-12-31 Edward R. Bass Intelligent interface cable assembly and method of providing the same
US20020128986A1 (en) * 2001-02-23 2002-09-12 Peter Stutz Communication system for franking system
US20020169728A1 (en) * 2001-02-23 2002-11-14 Christian Moy Modular franking system
US6577300B2 (en) 2001-04-11 2003-06-10 Pitney Bowes Inc. System, device and method for recording and input to a programmable stamp of data to be included on a substrate in both human and machine readable form
USD480751S1 (en) 2002-08-21 2003-10-14 Pitney Bowes Inc. Rate card adaptor for a mailing machine
US7424458B2 (en) * 2003-11-21 2008-09-09 Pitney Bowes Inc. Method and system for generating characterizing information descriptive of printed material such as address blocks and generating postal indicia or the like incorporating such characterizing information
US7475041B2 (en) * 2003-11-21 2009-01-06 Pitney Bowes Inc. Method and system for generating postal indicia or the like
US20050131840A1 (en) * 2003-12-15 2005-06-16 Pitney Bowes Incorporated Method and system for generating characterizing information descriptive of selected printed material such as a particular address block
US7668786B2 (en) * 2003-12-15 2010-02-23 Pitney Bowes Inc. Method and system for estimating the robustness of algorithms for generating characterizing information descriptive of selected printed material such as a particular address block
US8615409B1 (en) 2005-04-15 2013-12-24 Recovery Data-Connect, L.L.C. System and method for identification, perfection, collection, and valuation of third-party claims including subrogation claims
USD632733S1 (en) * 2009-04-24 2011-02-15 Pitney Bowes Inc. Mailpiece tabber
USD631506S1 (en) * 2009-12-18 2011-01-25 Pitney Bowes Inc. Mailing machine
USD689998S1 (en) 2012-08-22 2013-09-17 S.C. Johnson & Son, Inc. Dispenser housing
USD713517S1 (en) 2013-02-19 2014-09-16 S.C. Johnson & Son, Inc. Dispenser

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2934009A (en) * 1956-10-22 1960-04-26 Pitney Bowes Inc Sheet feeding and treating
FR1186999A (fr) * 1957-06-07 1959-09-04 Ibm France Dispositif de commande et de contrôle à distance
US3910322A (en) * 1972-08-24 1975-10-07 Westinghouse Electric Corp Test set controlled by a remotely positioned digital computer
GB1428704A (en) * 1973-04-13 1976-03-17 Int Computers Ltd Data processing arrangements
FR2225890B1 (de) * 1973-04-13 1976-09-10 Honeywell Bull Soc Ind
DE2327669C3 (de) * 1973-05-30 1975-12-11 Siemens Ag, 1000 Berlin Und 8000 Muenchen Schaltungsanordnung für den Datenaustausch zwischen zentralen und peripheren Einrichtungen
ZA743969B (en) * 1973-10-16 1975-06-25 Pitney Bowes Inc Computer responsive postage meter
FR2253428A5 (de) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US3921148A (en) * 1974-03-06 1975-11-18 Ontel Corp Business machine communication system and data display
US3978457A (en) 1974-12-23 1976-08-31 Pitney-Bowes, Inc. Microcomputerized electronic postage meter system
US4097923A (en) * 1975-04-16 1978-06-27 Pitney-Bowes, Inc. Remote postage meter charging system using an advanced microcomputerized postage meter
US4124889A (en) * 1975-12-24 1978-11-07 Computer Automation, Inc. Distributed input/output controller system
US4016369A (en) * 1976-03-09 1977-04-05 Bell Telephone Laboratories, Incorporated Addressing arrangements for communications networks
US4050374A (en) * 1976-06-21 1977-09-27 Pitney-Bowes, Inc. Meter setting mechanism
CA1077171A (en) 1976-07-14 1980-05-06 Frank T. Check (Jr.) Electronic postal meter having noise-rejecting input/output channel
DE2750875A1 (de) * 1976-11-16 1978-05-24 Vital Zoltan Dr Kombinierte maschine
US4122532A (en) * 1977-01-31 1978-10-24 Pitney-Bowes, Inc. System for updating postal rate information utilized by remote mail processing apparatus
GB2006491B (en) * 1977-07-02 1982-01-06 Ml Eng Plymouth Data transmission system
US4180856A (en) * 1977-07-29 1979-12-25 Pitney Bowes Inc. Electronic postage metering system
US4137564A (en) * 1977-08-22 1979-01-30 Burroughs Corporation Intelligent computer display terminal having EAROM memory
GB2033627B (en) * 1977-10-28 1982-08-11 Pitney Bowes Inc Method of error checking contents of a register

Also Published As

Publication number Publication date
GB2080588B (en) 1984-09-05
US4301507A (en) 1981-11-17
GB2062312A (en) 1981-05-20
SE8403278D0 (sv) 1984-06-19
DE3040549A1 (de) 1981-05-14
SE465693B (sv) 1991-10-14
NL193476C (nl) 1999-11-02
GB8402376D0 (en) 1984-02-29
SE459828B (sv) 1989-08-07
CH662433A5 (de) 1987-09-30
BE885949A (fr) 1981-02-16
SE8403278L (sv) 1984-06-19
NL193476B (nl) 1999-07-01
ATA167486A (de) 1995-06-15
IT1148281B (it) 1986-11-26
AT400643B (de) 1996-02-26
SE8403277L (sv) 1984-06-19
SE465691B (sv) 1991-10-14
CH662434A5 (de) 1987-09-30
SE8403276D0 (sv) 1984-06-19
DE3051014C2 (de) 1991-03-28
SE465694B (sv) 1991-10-14
CH666565A5 (de) 1988-07-29
GB2080205A (en) 1982-02-03
GB2080205B (en) 1984-09-12
SE465692B (sv) 1991-10-14
BR8006975A (pt) 1981-05-05
CH668875A5 (de) 1989-01-31
SE8403277D0 (sv) 1984-06-19
SE8007598L (sv) 1981-05-01
GB2062312B (en) 1984-08-22
AT384116B (de) 1987-10-12
IT8050047A0 (it) 1980-10-30
ATA532580A (de) 1987-02-15
SE8403276L (sv) 1984-06-19
GB2080587B (en) 1984-09-05
DE3051015C2 (de) 1993-07-15
FR2476352B1 (fr) 1987-09-18
GB2080588A (en) 1982-02-03
FR2476352A1 (fr) 1981-08-21
GB2080587A (en) 1982-02-03
CA1159563A (en) 1983-12-27
CH662436A5 (de) 1987-09-30
SE8403275D0 (sv) 1984-06-19
NL8005936A (nl) 1981-06-01
SE8403275L (sv) 1984-06-19

Similar Documents

Publication Publication Date Title
CH662435A5 (de) Steuereinheit fuer eine frankiermaschine.
DE3686523T2 (de) Fernsteuerungssystem fuer frankiermaschinen.
DE3040559C2 (de)
DE3204906C2 (de)
DE3416229C2 (de) System von Spielautomaten
DE3712138B4 (de) Verfahren zum Betrieb eines Frankiermaschinensystems
DE2818551C2 (de)
EP0183738B2 (de) Kontrollanlage und verfahren zum ablesen und zur aufnahme der kenndaten von kontrollstellen bei einer überwachungsanlage
EP0969422B1 (de) Verfahren und Anordnung zur Verbesserung der Sicherheit von Frankiermaschinen
DE3040570C2 (de)
EP0459159B1 (de) Frankiermodul
DE69125900T2 (de) Apparat zum Nachladen einer Frankiermaschine
DE2438055C2 (de) Frankiermaschine mit einer Eingabeeinrichtung
CH648424A5 (de) Frankiermaschine.
DE2636852C2 (de) Anordnung zur zentralen Erfassung der durch die Benutzung von Frankiermaschinen zu entrichtenden Freimachungsgebühren von Postsendungen
WO1989011134A1 (fr) Systeme electronique de calcul et d&#39;enregistrement pour machines d&#39;affranchissement
CH627567A5 (de) Zaehlvorrichtung zum ermitteln der drehzahl in einer geregelten lageeinstellungsvorrichtung.
DE2751406C3 (de) Anordnung zur automatischen Führung und Navigation und zum automatischen Betreiben von Schiffen
CH623948A5 (en) Data processing system with a multiplicity of on-line stations and use of the system for recording details on manually established telephone connections.
CH621009A5 (de)
CH648941A5 (de) Nachladbare elektronische frankiermaschine.
AT398649B (de) Frankiermaschinen-steuereinrichtung
CH623949A5 (de)
AT398648B (de) Frankiereinrichtung mit einer dateneingabeeinrichtung
EP0996097B1 (de) Verfahren zur Verbesserung der Sicherheit von Frankiermaschinen bei der Guthabenübertragung

Legal Events

Date Code Title Description
PL Patent ceased