Das Schneider CPC Systembuch

Die Firmware des Schneider CPC

Überblick

MAIN FIRMWARE JUMPBLOCK

Der zentrale Sprungbereich

KEY MANAGER

Die Tastatur-Routinen

Adresse   Bezeichnung       Beschreibung
--------- ----------------- ------------------------------------------
  KEY MANAGER: BB00: KM INITIALIZEBB00    KM INITIALIZE     Initialisieren der Tastatur-Routinen.
  KEY MANAGER: BB03: KM RESETBB03    KM RESET          Zurücksetzen der Tastatur-Routinen.
  KEY MANAGER: BB06: KM WAIT CHARBB06    KM WAIT CHAR      Warte auf ein (expandiertes) Zeichen von der Tastatur.
  KEY MANAGER: BB09: KM READ CHARBB09    KM READ CHAR      Hole ein (expandiertes) Zeichen von der Tastatur (falls eins vorhanden ist).
  KEY MANAGER: BB0C: KM CHAR RETURNBB0C    KM CHAR RETURN    Gebe ein Zeichen an den MAIN FIRMWARE JUMPBLOCK: KEY MANAGER
Die Firmware des Schneider CPC: KEY MANAGER
KM
zurück. KEY MANAGER: BB0F: KM SET EXPANDBB0F KM SET EXPAND Ordne einem Die Tastatur: ErweiterungszeichenErweiterungszeichen ein Datentypen: StringsString zu. KEY MANAGER: BB12: KM GET EXPANDBB12 KM GET EXPAND Hole ein Zeichen aus einem Erweiterungs-String. KEY MANAGER: BB15: KM EXP BUFFERBB15 KM EXP BUFFER Lege den Speicherbereich fest, in dem der MAIN FIRMWARE JUMPBLOCK: KEY MANAGER
Die Firmware des Schneider CPC: KEY MANAGER
KM
die Erweiterungs-Strings speichern kann. KEY MANAGER: BB18: KM WAIT KEYBB18 KM WAIT KEY Warte auf ein (nicht expandiertes) Zeichen von der Tastatur. KEY MANAGER: BB1B: KM READ KEYBB1B KM READ KEY Hole ein (nicht expandiertes) Zeichen von der Tastatur. KEY MANAGER: BB1E: KM TEST KEYBB1E KM TEST KEY Erklärung der Anschlussbelegung: TestTeste, ob eine bestimmte Taste gedrückt ist. KEY MANAGER: BB21: KM GET STATEBB21 KM GET STATE Erfrage den Status der Shift- und Caps-Locks. KEY MANAGER: BB24: KM GET JOYSTICKBB24 KM GET JOYSTICK Erklärung der Anschlussbelegung: TestTeste den Schalt-Zustand der Schaubilder der Tastatur: Erster Joystick 0 und zweiter Joystick 1Joysticks. KEY MANAGER: BB27: KM SET TRANSLATEBB27 KM SET TRANSLATE Lege das Zeichen fest, das eine Taste erzeugen soll, wenn sie ohne 'CTRL' oder 'SHIFT' gedrückt wird. KEY MANAGER: BB2A: KM GET TRANSLATEBB2A KM GET TRANSLATE Erfrage die Belegung einer Taste ohne 'CTRL' und 'SHIFT'. KEY MANAGER: BB2D: KM SET SHIFTBB2D KM SET SHIFT Bestimme das Zeichen einer Taste für 'SHIFT'. KEY MANAGER: BB30: KM GET SHIFTBB30 KM GET SHIFT Erfrage die Tasten-Überstezung mit 'SHIFT'. KEY MANAGER: BB33: KM SET CONTROLBB33 KM SET CONTROL Bestimme das Zeichen einer Taste für 'CTRL'. KEY MANAGER: BB36: KM GET CONTROLBB36 KM GET CONTROL Erfrage die Die Tastatur: Die Standard-Tasten-ÜbersetzungTasten-Übersetzung mit 'CTRL'. KEY MANAGER: BB39: KM SET REPEATBB39 KM SET REPEAT Lege fest, ob eine Taste 'Der Key Manager: Repeatrepeaten', sich also automatisch wiederholen darf, wenn sie lange genug gedrückt wird. KEY MANAGER: BB3C: KM GET REPEATBB3C KM GET REPEAT Erfrage, ob eine Taste 'Der Key Manager: Repeatrepeaten' darf. KEY MANAGER: BB3F: KM SET DELAYBB3F KM SET DELAY Lege die Verzögerungszeiten beim 'Der Key Manager: RepeatRepeaten' fest. KEY MANAGER: BB42: KM GET DELEAYBB42 KM GET DELEAY Erfrage die Verzögerungszeiten beim 'Der Key Manager: RepeatRepeaten'. KEY MANAGER: BB45: KM ARM BREAKBB45 KM ARM BREAK Aktiviere den Break-Mechanismus. KEY MANAGER: BB48: KM DISARM BREAKBB48 KM DISARM BREAK Schalte den Break-Mechanismus aus. KEY MANAGER: BB4B: KM BREAK EVENTBB4B KM BREAK EVENT Löse ein Break-Event aus, wenn der Mechanismus aktiv ist. KEY MANAGER: BD3A: KM SET LOCKSBD3A KM SET LOCKS Lege den Shift- und den Caps-Lock-Status neu fest. nur CPC 664 und 6128! KEY MANAGER: BD3D: KM FLUSHBD3D KM FLUSH Lösche alle bisher aufgelaufenen Zeichen im Tastaturpuffer. nur CPC 664 und 6128!

TEXT VDU

Die Textausgabe-Routinen

Adresse   Bezeichnung       Beschreibung
--------- ----------------- ------------------------------------------
  TEXT VDU: BB4E: TXT INITIALISEBB4E    TXT INITIALISE    Initialisiere Die Abteilungen des Betriebssystems: Die Text-VDUdie Text-VDU.
  TEXT VDU: BB51: TXT RESETBB51    TXT RESET         Setze Die Abteilungen des Betriebssystems: Die Text-VDUdie Text-VDU zurück.
  TEXT VDU: BB54: TXT VDU ENABLEBB54    TXT VDU ENABLE    Erlaube, dass Zeichen im aktiven Die Text-VDU: FensterFenster ausgegeben werden.
  TEXT VDU: BB57: TXT VDU DISABLEBB57    TXT VDU DISABLE   Verbiete die Ausgabe von Zeichen im aktiven Die Text-VDU: FensterFenster.
  TEXT VDU: BB5A: TXT OUTPUTBB5A    TXT OUTPUT        Drucke ein Zeichen oder befolge den Control-Code.
  TEXT VDU: BB5D: TXT WR CHARBB5D    TXT WR CHAR       Drucke ein Zeichen. Control-Codes erzeugen Sonderzeichen.
  TEXT VDU: BB60: TXT RD CHARBB60    TXT RD CHAR       Versuche, ein Zeichen vom Bildschirm zu lesen.
  TEXT VDU: BB63: TXT SET GRAPHICBB63    TXT SET GRAPHIC   Bestimme, ob der Text im laufenden Die Text-VDU: FensterFenster auf Die Text-VDU: Der Cursorder Cursor- oder
                            Grafik-Position ausgegeben werden soll.
  TEXT VDU: BB66: TXT WIN ENABLEBB66    TXT WIN ENABLE    Lege die Grenzen des aktuellen Textfensters fest.
  TEXT VDU: BB69: TXT GET WINDOWBB69    TXT GET WINDOW    Erfrage die Grenzen des aktuellen Textfensters.
  TEXT VDU: BB6C: TXT CLEAR WINDOWBB6C    TXT CLEAR WINDOW  Lösche die Anzeige im aktuellen Textfenster.
  TEXT VDU: BB6F: TXT SET COLUMNBB6F    TXT SET COLUMN    Bewege Die Text-VDU: Der Cursorden Cursor des aktuellen Textfensters in die angegebene Spalte.
  TEXT VDU: BB72: TXT SET ROWBB72    TXT SET ROW       Bewege Die Text-VDU: Der Cursorden Cursor des aktuellen Textfensters in die angegebene Zeile.
  TEXT VDU: BB75: TXT SET CURSORBB75    TXT SET CURSOR    Lege Zeile und Spalte Die Text-VDU: Der Cursordes Cursors neu fest.
  TEXT VDU: BB78: TXT GET CURSORBB78    TXT GET CURSOR    Erfrage Zeile und Spalte Die Text-VDU: Der Cursordes Cursors.
  TEXT VDU: BB7B: TXT CUR ENABLEBB7B    TXT CUR ENABLE    Schalte Erklärung zu den verwendeten Bezeichnungen: CursorCursor auf der Benutzer-Ebene ein.
  TEXT VDU: BB7E: TXT CUR DISABLEBB7E    TXT CUR DISABLE   Schalte Die Text-VDU: Der Cursorden Cursor auf der Benutzer-Ebene aus.
  TEXT VDU: BB81: TXT CUR ONBB81    TXT CUR ON        Schalte Die Text-VDU: Der Cursorden Cursor auf der System-Ebene ein.
  TEXT VDU: BB84: TXT CUR OFFBB84    TXT CUR OFF       Schalte Die Text-VDU: Der Cursorden Cursor auf der System-Ebene aus.
  TEXT VDU: BB87: TXT VALIDATEBB87    TXT VALIDATE      Überprüfe, ob sich eine Position innerhalb des Text-Fensters befindet.
  TEXT VDU: BB8A: TXT PLACE CURSORBB8A    TXT PLACE CURSOR  Male einen 'Cursor-Fleck' auf die Cursorposition.
  TEXT VDU: BB8D: TXT REMOVE CURSORBB8D    TXT REMOVE CURSOR Entferne einen 'Cursor-Fleck' von Cursorposition.
  TEXT VDU: BB90: TXT SET PENBB90    TXT SET PEN       Lege die Stift-Tinte für die Buchstaben fest.
  TEXT VDU: BB93: TXT GET PENBB93    TXT GET PEN       Erfrage die momentane Stift-Tinte.
  TEXT VDU: BB96: TXT SET PAPERBB96    TXT SET PAPER     Lege die Hintergrund-Tinte für die Buchstaben fest.
  TEXT VDU: BB99: TXT GET PAPERBB99    TXT GET PAPER     Erfrage die momentane Hintergrund-Tinte.
  TEXT VDU: BB9C: TXT INVERSEBB9C    TXT INVERSE       Tausche die Papier- und Stift-Tinten für das momentan aktuelle Text-Fenster aus.
  TEXT VDU: BB9F: TXT SET BACKBB9F    TXT SET BACK      Lege fest, ob die Buchstaben im Transparent-Modus geschrieben werden sollen.
  TEXT VDU: BBA2: TXT GET BACKBBA2    TXT GET BACK      Erfrage, ob im aktuellen Textfenster der Transparent-Modus eingeschaltet ist.
  TEXT VDU: BBA5: TXT GET MATRIXBBA5    TXT GET MATRIX    Erfrage, an welcher Stelle die Grafik-Information über das Aussehen
                            des angegebenen Buchstaben abgelegt ist.
  TEXT VDU: BBA8: TXT SET MATRIXBBA8    TXT SET MATRIX    Bestimme das Aussehen eines Buchstaben neu.
  TEXT VDU: BBAB: TXT SET M TABLEBBAB    TXT SET M TABLE   Teile der Text-VDU mit, in welchem Speicherbereich die selbst-
                            definierbaren Zeichen-Matrizen abgelegt werden können.
  BBAE    TXT GET TABLE     Erfrage, wo momentan der Bereich für die selbst-definierbaren
                            Zeichen-Matrizen liegt.
  TEXT VDU: BBB1: TXT GET CONTROLSBBB1    TXT GET CONTROLS  Erfrage die Lage der Control-Code-Tabelle.
  TEXT VDU: BBB4: TXT STREAM SELECTBBB4    TXT STREAM SELECT Wähle ein anderes Text-Fenster an.
  TEXT VDU: BBB7: TXT SWAP STREAMSBBB7    TXT SWAP STREAMS  Vertausche die Einstellungen und Basic und Maschinencode: ParameterParameter zweier Text-Fenster.
  TEXT VDU: BD40: TXT ASK STATEBD40    TXT ASK STATE     Erfrage Erklärung zu den verwendeten Bezeichnungen: CursorCursor- und VDU-Status des aktuellen Textfensters.
                            Nur CPC 664 und 6128!

GRAPHICS VDU

Die Grafik-Routinen

Adresse   Bezeichnung       Beschreibung
--------- ----------------- ------------------------------------------
  GRAPHICS VDU: BBBA: GRA INITIALISEBBBA    GRA INITIALISE    Initialisiere Die Abteilungen des Betriebssystems: Die Grafik-VDUdie Grafik-VDU.
  GRAPHICS VDU: BBBD: GRA RESETBBBD    GRA RESET         Setze Die Abteilungen des Betriebssystems: Die Grafik-VDUdie Grafik-VDU zurück.
  GRAPHICS VDU: BBC0: GRA MOVE ABSOLUTEBBC0    GRA MOVE ABSOLUTE Bewege den Grafik-Cursor zur angegebenen Position.
  GRAPHICS VDU: BBC3: GRA MOVE RELATIVEBBC3    GRA MOVE RELATIVE Bewege den Grafik-Cursor Adressierungsarten der Z80: Relativrelativ zur momentanen Position.
  GRAPHICS VDU: BBC6: GRA ASK CURSORBBC6    GRA ASK CURSOR    Erfrage die momentane Die verwendeten Abkürzungen bedeuten: x:X- und Y-Koordinate des Grafik-Cursors.
  GRAPHICS VDU: BBC9: GRA SET ORIGINBBC9    GRA SET ORIGIN    Lege den Bezugspunkt für die Adressierungsarten der Z80: Absolutabsolute Cursor-Positionierung neu fest.
  GRAPHICS VDU: BBCC: GRA GET ORIGINBBCC    GRA GET ORIGIN    Erfrage den momentanen Grafik-Nullpunkt.
  GRAPHICS VDU: BBCF: GRA WIN WIDTHBBCF    GRA WIN WIDTH     Lege den linken und rechten Rand des Grafik-Fensters fest.
  GRAPHICS VDU: BBD2: GRA WIN HEIGHTBBD2    GRA WIN HEIGHT    Lege den oberen und unteren Rand des Grafik-Fensters fest.
  GRAPHICS VDU: BBD5: GRA GET W WIDTHBBD5    GRA GET W WIDTH   Erfrage den linken und rechten Rand des Grafik-Fensters.
  GRAPHICS VDU: BBD8: GRA GET W HEIGHTBBD8    GRA GET W HEIGHT  Erfrage den oberen und unteren Rand des Grafik-Fensters.
  GRAPHICS VDU: BBDB: GRA CLEAR WINDOWBBDB    GRA CLEAR WINDOW  Lösche die Anzeige im Grafik-Fenster.
  GRAPHICS VDU: BBDE: GRA SET PENBBDE    GRA SET PEN       Lege die Die Bildausgabe: Tinten und FarbenTinte des Zeichenstiftes neu fest.
  GRAPHICS VDU: BBE1: GRA GET PENBBE1    GRA GET PEN       Erfrage die momentane Die Bildausgabe: Tinten und FarbenTinte des Zeichenstiftes.
  GRAPHICS VDU: BBE4: GRA SET PAPERBBE4    GRA SET PAPER     Lege die Hintergrund-Tinte für Die Abteilungen des Betriebssystems: Die Grafik-VDUdie Grafik-VDU neu fest.
  GRAPHICS VDU: BBE7: GRA GET PAPERBBE7    GRA GET PAPER     Erfrage die momentane Hintergrund-Tinte.
  GRAPHICS VDU: BBEA: GRA PLOT ABSOLUTEBBEA    GRA PLOT ABSOLUTE Setze einen Punkt auf die angegebenen Position.
  GRAPHICS VDU: BBED: GRA PLOT RELATIVEBBED    GRA PLOT RELATIVE Setze einen Punkt Adressierungsarten der Z80: Relativrelativ zur momentanen Position des Grafik-Cursors.
  GRAPHICS VDU: BBF0: GRA TEST ABSOLUTEBBF0    GRA TEST ABSOLUTE Erklärung der Anschlussbelegung: TestTeste, welche Tintennummer der Punkt auf der angegebenen Position hat.
  GRAPHICS VDU: BBF3: GRA TEST RELATIVEBBF3    GRA TEST RELATIVE Erklärung der Anschlussbelegung: TestTeste, welche Tintennummer ein Punkt Adressierungsarten der Z80: Relativrelativ zur aktuellen Lage des
                            Grafik-Cursors hat.
  GRAPHICS VDU: BBF6: GRA LINE ABSOLUTEBBF6    GRA LINE ABSOLUTE Ziehe eine Linie von der momentanen Position des Grafik-Cursors zur
                            angegebenen Adressierungsarten der Z80: Absolutabsoluten Position.
  GRAPHICS VDU: BBF9: GRA LINE RELATIVEBBF9    GRA LINE RELATIVE Ziehe eine Linie zu einer Position Adressierungsarten der Z80: Relativrelativ zur aktuellen Lage des
                            Grafik-Cursors.
  GRAPHICS VDU: BBFC: GRA WR CHARBBFC    GRA WR CHAR       Zeichne einen Buchstaben an der Position des Grafik-Cursors.
  GRAPHICS VDU: BD43: GRA DEFAULTBD43    GRA DEFAULT       Stelle die Standardwerte für die verschiedenen Optionen der Grafik-VDU ein.
                            Nur CPC 664 und 6128!
  GRAPHICS VDU: BD46: GRA SET BACKBD46    GRA SET BACK      Setze den Die Grafik-VDU: Hintergrund-ModusHintergrund-Modus der Grafik-VDU. Nur CPC 664 und 6128!
  GRAPHICS VDU: BD49: GRA SET FIRSTBD49    GRA SET FIRST     Setze die Erster-Punkt-Option für die zu zeichnenden Linien.
                            Nur CPC 664 und 6128!
  GRAPHICS VDU: BD4C: GRA SET LINE MASKBD4C    GRA SET LINE MASK Lege die Punktmaske für Linien neu fest. Nur CPC 664 und 6128!
  GRAPHICS VDU: BD4F: GRA FROM USERBD4F    GRA FROM USER     Konvertiere die User-Koordinaten (Adressierungsarten der Z80: Relativrelativ zum Origin) in Basiskoordinaten
                            (Adressierungsarten der Z80: Relativrelativ zur linken unteren Ecke). Nur CPC 664 und 6128!
  GRAPHICS VDU: BD52: GRA FILLBD52    GRA FILL          Male eine beliebige Fläche aus. Nur CPC 664 und 6128!

SCREEN PACK

Die Bildschirm-Routinen

Adresse   Bezeichnung       Beschreibung
--------- ----------------- ------------------------------------------
  SCREEN PACK: BBFF: SCR INITIALISEBBFF    SCR INITIALISE    Initialisiere das Screen-Pack.
  SCREEN PACK: BC02: SCR RESETBC02    SCR RESET         Setze das Screen-Pack zurück.
  SCREEN PACK: BC05: SCR SET OFFSETBC05    SCR SET OFFSET    Verändere den Hardware-Scroll-Offset des Bildschirms.
  SCREEN PACK: BC08: SCR SET BASEBC08    SCR SET BASE      Verlege den Bildschirm in ein anderes RAM-Viertel.
  SCREEN PACK: BC0B: SCR GET LOCATIONBC0B    SCR GET LOCATION  Erfrage Scroll-Offset und Speicher-Viertel des Bildschirmes.
  SCREEN PACK: BC0E: SCR SET MODEBC0E    SCR SET MODE      Lösche den Bildschirm, setze den Scroll-Offset auf Real: NullNull
                            und lege den Bildschirm-Modus neu fest.
  SCREEN PACK: BC11: SCR GET MODEBC11    SCR GET MODE      Erfrage den momentan eingestellten Bildschirm-Modus.
  SCREEN PACK: BC14: SCR CLEARBC14    SCR CLEAR         Lösche den ganzen Bildschirm mit der Die Bildausgabe: Tinten und FarbenTinte 0.
  SCREEN PACK: BC17: SCR CHAR LIMITSBC17    SCR CHAR LIMITS   Erfrage, wieviele Buchstaben, abhängig vom aktuellen
                            Bildschirm-Modus, in eine Zeile passen.
  SCREEN PACK: BC1A: SCR CHAR POSITIONBC1A    SCR CHAR POSITION Konvertiere eine 'physikalische' Buchstaben-Position
                            in die zugehörige Bildspeicher-Adresse.
  SCREEN PACK: BC1D: SCR DOT POSITIONBC1D    SCR DOT POSITION  Konvertiere eine Grafik-Position in 'Basis'-Koordinaten
                            in die zugehörige Bildspeicher-Adresse.
  SCREEN PACK: BC20: SCR NEXT BYTEBC20    SCR NEXT BYTE     Bestimme die Adresse des Datentypen: Bytes
Datenbreite: Bytes
Bytes
im Bildschirm-Speicher rechts von der angegebenen Adresse. SCREEN PACK: BC23: SCR PREV BYTEBC23 SCR PREV BYTE Bestimme die Adresse des Datentypen: Bytes
Datenbreite: Bytes
Bytes
im Bildschirm-Speicher links von der angegebenen Adresse. SCREEN PACK: BC26: SCR NEXT LINEBC26 SCR NEXT LINE Bestimme die Adresse des Datentypen: Bytes
Datenbreite: Bytes
Bytes
im Bildschirm-Speicher unter der angegebenen Adresse. SCREEN PACK: BC29: SCR PREV LINEBC29 SCR PREV LINE Bestimme die Adresse des Datentypen: Bytes
Datenbreite: Bytes
Bytes
im Bildschirm-Speicher über der angegebenen Adresse. SCREEN PACK: BC2C: SCR INK ENCODEBC2C SCR INK ENCODE Konvertiere eine Tintennummer in ein Datentypen: Bytes
Datenbreite: Bytes
Byte
, das, in den Bildschirm gepoket, alle betroffenen Punkte in dieser Die Bildausgabe: Tinten und FarbenTinte darstellt. SCREEN PACK: BC2F: SCR INK DECODEBC2F SCR INK DECODE Bestimme die Tintennummer des ersten Punktes von links im übergebenen Datentypen: Bytes
Datenbreite: Bytes
Byte
. SCREEN PACK: BC32: SCR SET INKBC32 SCR SET INK Lege die beiden Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farben
fest, in der eine Die Bildausgabe: Tinten und FarbenTinte in den beiden Blinkperioden dargestellt werden soll. SCREEN PACK: BC35: SCR GET INKBC35 SCR GET INK Erfrage die Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farben
, in der eine Die Bildausgabe: Tinten und FarbenTinte in den beiden Blinkperioden dargestellt wird. SCREEN PACK: BC38: SCR SET BORDERBC38 SCR SET BORDER Bestimme die Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farben
, in denen der Bildschirmrand in den beiden Blinkperioden dargestellt wird. SCREEN PACK: BC3B: SCR GET BORDERBC3B SCR GET BORDER Erfrage die Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farben
, in denen der Bildschirmrand in den beiden Blinkperioden dargestellt wird. SCREEN PACK: BC3E: SCR SET FLASHINGBC3E SCR SET FLASHING Lege die Länge der beiden Blinkperioden neu fest. SCREEN PACK: BC41: SCR GET FLASHINGBC41 SCR GET FLASHING Erfrage, welche Länge die beiden Blinkperioden momentan haben. SCREEN PACK: BC44: SCR FILL BOXBC44 SCR FILL BOX Fülle einen rechteckigen Bildschirm-Ausschnitt mit einer Die Bildausgabe: Tinten und FarbenTinte. Die Grenzen werden in Buchstaben-Positionen angegeben. SCREEN PACK: BC47: SCR FLOOD BOXBC47 SCR FLOOD BOX Fülle einen rechteckigen Bildschirm-Ausschnitt mit einer Die Bildausgabe: Tinten und FarbenTinte. Die Grenzen werden in Byte-Positionen angegeben. SCREEN PACK: BC4A: SCR CHAR INVERTBC4A SCR CHAR INVERT Invertiere eine Buchstaben-Position (->Erklärung zu den verwendeten Bezeichnungen: CursorCursor). SCREEN PACK: BC4D: SCR HW ROLLBC4D SCR HW ROLL Scrolle den ganzen Bildschirm hardwaremäßig um eine Buchstaben-Position rauf oder runter. SCREEN PACK: BC50: SCR SW ROLLBC50 SCR SW ROLL Scrolle einen Bildschirm-Ausschnitt um eine Buchstaben-Position rauf oder runter. SCREEN PACK: BC53: SCR UNPACKBC53 SCR UNPACK Expandiere eine Zeichen-Matrix entsprechend dem momentanen Bildschirm-Modus. SCREEN PACK: BC56: SCR REPACKBC56 SCR REPACK Komprimiere die expandierten Datentypen: Bytes
Datenbreite: Bytes
Bytes
wieder zu einer Zeichen-Matrix. SCREEN PACK: BC59: SCR ACCESSBC59 SCR ACCESS Setze den Zeichen-Modus für Die Abteilungen des Betriebssystems: Die Grafik-VDUdie Grafik-VDU. SCREEN PACK: BC5C: SCR PIXELSBC5C SCR PIXELS Setze einen Punkt im Bildschirm. SCREEN PACK: BC5F: SCR HORIZONTALBC5F SCR HORIZONTAL Zeichne eine waagerechte Linie. SCREEN PACK: BC62: SCR VERTICALBC62 SCR VERTICAL Zeichne eine senkrechte Linie. SCREEN PACK: BD55: SCR SET POSITIONBD55 SCR SET POSITION Lege die Lage des Bildschirms nur für die Software neu fest. Nur CPC 664 und 6128!

CASSETTE MANAGER

Die Kassetten- und Disketten-Routinen
Von Die Abteilungen des Betriebssystems: AmsdosAMSDOS gepatchte Routinen sind mit '*' markiert.

Adresse   Bezeichnung       Beschreibung
--------- ----------------- ------------------------------------------
  CASSETTE MANAGER: BC65: CAS INITIALISEBC65    CAS INITIALISE    Initialisiere die Kassetten-Routinen.
  CASSETTE MANAGER: BC68: CAS SET SPEEDBC68    CAS SET SPEED     Lege die Schreib-Geschwindigkeit neu fest.
  CASSETTE MANAGER: BC6B: CAS NOISYBC6B    CAS NOISY         Lege fest, ob die Kassetten-Routinen ihre Meldungen unterdrücken sollen.
  CASSETTE MANAGER: BC6E: CAS START MOTORBC6E    CAS START MOTOR   Starte den Motor des Kassetten-Rekorders.
  CASSETTE MANAGER: BC71: CAS STOP MOTORBC71    CAS STOP MOTOR    Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: HaltHalte den Motor des Kassetten-Rekorders an.
  CASSETTE MANAGER: BC74: CAS RESTORE MOTORBC74    CAS RESTORE MOTOR Starte oder stoppe den Motor entsprechend einer früheren Einstellung.
  CASSETTE MANAGER: BC77:  CAS IN OPENBC77 *  CAS IN OPEN       Eröffne eine Datei zur Eingabe.
  CASSETTE MANAGER: BC7A: CAS IN CLOSEBC7A *  CAS IN CLOSE      Schließe eine Eingabe-Datei.
  CASSETTE MANAGER: BC7D: CAS IN ABANDONBC7D *  CAS IN ABANDON    Vergesse, dass eine Datei zur Eingabe eröffnet ist.
  CASSETTE MANAGER: BC80: CAS IN CHARBC80 *  CAS IN CHAR       Lese ein Zeichen aus der Eingabe-Datei.
  CASSETTE MANAGER: BC83: CAS IN DIRECTBC83 *  CAS IN DIRECT     Lese die Eingabe-Datei in einem Zug.
  CASSETTE MANAGER: BC86: CAS RETURNBC86 *  CAS RETURN        Gebe das zuletzt gelesene Zeichen noch einmal zurück.
  CASSETTE MANAGER: BC89: CAS TEST EOFBC89 *  CAS TEST EOF      Frage an, ob das Ende der Eingabe-Datei erreicht ist.
  CASSETTE MANAGER: BC8C: CAS OUT OPENBC8C *  CAS OUT OPEN      Eröffne eine Datei zur Ausgabe.
  CASSETTE MANAGER: BC8F: CAS OUT CLOSEBC8F *  CAS OUT CLOSE     Schließe die Ausgabe-Datei.
  CASSETTE MANAGER: BC92: CAS OUT ABANDONBC92 *  CAS OUT ABANDON   Vergesse die Ausgabe-Datei. Hierbei gehen immer größere Datenmengen
                            verloren.
  CASSETTE MANAGER: BC95: CAS OUT CHARBC95 *  CAS OUT CHAR      Schreibe ein Zeichen in die Ausgabe-Datei.
  CASSETTE MANAGER: BC98: CAS OUT DIRECTBC98 *  CAS OUT DIRECT    Schreibe die Ausgabe-Datei in einem Zug.
  CASSETTE MANAGER: BC9B: CAS CATALOGBC9B *  CAS CATALOG       Erstelle ein Inhaltsverzeichnis.
  CASSETTE MANAGER: BC9E: CAS WRITEBC9E    CAS WRITE         Schreibe einen Speicherbereich auf die Kassette.
  CASSETTE MANAGER: BCA1: CAS READBCA1    CAS READ          Lese einen Speicherbereich von Kassette ein.
  CASSETTE MANAGER: BCA4: CAS CHECKBCA4    CAS CHECK         Vergleiche die Daten auf der Kassette mit einem Speicherbereich.

SOUND MANAGER

Die Lautsprecher-Routinen

Adresse Bezeichnung         Beschreibung
------- ------------------- ------------------------------------------
 SOUND MANAGER: BCA7: SOUND RESETBCA7   SOUND RESET         Setze die Lautsprecher-Routinen zurück.
 SOUND MANAGER: BCAA: SOUND QUEUEBCAA   SOUND QUEUE         Schicke einen Ton zum Sound-Manager.
 SOUND MANAGER: BCAD: SOUND CHECKBCAD   SOUND CHECK         Frage an, ob in der Ton-Warteschlange ein Platz für einen
                            neuen Ton frei ist.
 SOUND MANAGER: BCB0: SOUND ARM EVENTBCB0   SOUND ARM EVENT     Bestimme eine Routine, die aufgerufen werden soll, sobald in der
                            Ton-Warteschlange ein Platz frei ist.
 SOUND MANAGER: BCB3: SOUND RELEASEBCB3   SOUND RELEASE       Gebe Anhang: Die Tonausgabedie Tonausgabe frei.
 SOUND MANAGER: BCB6: SOUND HOLDBCB6   SOUND HOLD          Friere Anhang: Die Tonausgabedie Tonausgabe ein.
 SOUND MANAGER: BCB9: SOUND CONTINUEBCB9   SOUND CONTINUE      Setze Anhang: Die Tonausgabedie Tonausgabe fort.
 SOUND MANAGER: BCBC: SOUND AMPL ENVELOPEBCBC   SOUND AMPL ENVELOPE Lege eine Der Sound Manager: Amplituden-Hüllkurve
BCBC: SOUND AMPL ENVELOPE: Der Parameterblock der Amplituden-Hüllkurve:
Amplituden-Hüllkurve
neu fest. SOUND MANAGER: BCBF: SOUND TONE ENVELOPEBCBF SOUND TONE ENVELOPE Lege eine Der Sound Manager: Frequenz-Hüllkurven
BCBF: SOUND TONE ENVELOPE: Der Parameterblock der Frequenz-Hüllkurve:
Frequenz-Hüllkurve
neu fest. SOUND MANAGER: BCC2: SOUND A ADDRESSBCC2 SOUND A ADDRESS Erfrage die Adresse einer Der Sound Manager: Amplituden-Hüllkurve
BCBC: SOUND AMPL ENVELOPE: Der Parameterblock der Amplituden-Hüllkurve:
Amplituden-Hüllkurve
. SOUND MANAGER: BCC5: SOUND T ADDRESSBCC5 SOUND T ADDRESS Erfrage die Adresse einer Der Sound Manager: Frequenz-Hüllkurven
BCBF: SOUND TONE ENVELOPE: Der Parameterblock der Frequenz-Hüllkurve:
Frequenz-Hüllkurve
.

KERNEL

Die Zentrale

Adresse   Bezeichnung        Beschreibung
--------- ------------------ ------------------------------------------
  KERNEL: BCC8: KL CHOKE OFFBCC8    KL CHOKE OFF       Setze den MAIN FIRMWARE JUMPBLOCK: KERNEL
Die Firmware des Schneider CPC: KERNEL
Kernel
zurück. KERNEL: BCCB: KL ROM WALKBCCB KL ROM WALK Suche und initialisiere alle Speicheraufteilung durch ein Vordergrund-Programm: Hintergrund-ROMsHintergrund-ROMs. KERNEL: BCCE: KL INIT BACKBCCE KL INIT BACK Initialisiere ein bestimmtes Speicheraufteilung durch ein Vordergrund-Programm: Hintergrund-ROMsHintergrund-ROM. KERNEL: BCD1: KL LOG EXTBCD1 KL LOG EXT Mache dem MAIN FIRMWARE JUMPBLOCK: KERNEL
Die Firmware des Schneider CPC: KERNEL
Kernel
eine RSX-Erweiterung bekannt. KERNEL: BCD4: KL FIND COMANDBCD4 KL FIND COMAND Erfrage zum angegebenen Namen einer Maschinencode über HIMEM: RSXRSX oder eines Erläuterung zu den Anschlüssen 40 bis 45: 42 - ROMEN (0)ROMs die Ausführungsadresse und Speicherkonfiguration. KERNEL: BCD7: KL NEW FRAME FLYBCD7 KL NEW FRAME FLY Initialisiere einen Datenblock und füge ihn in die Trees: ListenListe aller Software- Unterbrechung bei jedem Strahlrücklauf des Bildschirms ein. KERNEL: BCDA: KL ADD FRAME FLYBCDA KL ADD FRAME FLY Füge einen fertigen Datenblock in die Trees: ListenListe aller Software-Unterbrechung bei jedem Strahlrücklauf ein. KERNEL: BCDD: KL DEL FRAME FLYBCDD KL DEL FRAME FLY Entferne einen Datenblock aus dieser Trees: ListenListe. KERNEL: BCE0: KL NEW FAST TICKERBCE0 KL NEW FAST TICKER Initialisiere einen Datenblock und füge ihn in die Trees: ListenListe aller Software- Unterbrechung bei jedem Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: INT - InterruptInterrupt ein. KERNEL: BCE3: KL ADD FAST TICKERBCE3 KL ADD FAST TICKER Füge einen fertigen Datenblock in die Trees: ListenListe aller Software-Unterbrechungen bei jedem Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: INT - InterruptInterrupt ein. KERNEL: BCE6: KL DEL FAST TICKERBCE6 KL DEL FAST TICKER Entferne einen Datenblock aus dieser Trees: ListenListe. KERNEL: BCE9: KL ADD TICKERBCE9 KL ADD TICKER Füge einen Datenblock in die Trees: ListenListe des Universal-Timers ein. KERNEL: BCEC: KL DEL TICKERBCEC KL DEL TICKER Entferne einen Datenblock aus der Trees: ListenListe des Universal-Timers. KERNEL: BCEF: KL INIT EVENTBCEF KL INIT EVENT Beschreibe einen Event-Block vorschriftsmäßig mit den in Registern angegebenen Werten. KERNEL: BCF2: KL EVENTBCF2 KL EVENT Stoße einen Event-Block an. Dies führt zu einer Software-Unterbrechung. KERNEL: BCF5: KL SYNC RESETBCF5 KL SYNC RESET Lösche die Trees: ListenListe aller synchronisierbaren Unterbrechungen, die noch auf ihre Ausführung warten. KERNEL: BCF8: KL DEL SYNCHRONOUSBCF8 KL DEL SYNCHRONOUS Stelle den BCEF: KL INIT EVENT: EventblockEventblock einer synchronisierbaren Unterbrechung ruhig und entferne ihn auch aus der Warteliste, falls er dort eingetragen ist. KERNEL: BCFB: KL NEXT SYNCBCFB KL NEXT SYNC Hole die nächste synchronisierbare Unterbrechung aus der Der Key Manager: WarteschlangeWarteschlange, falls noch eine wartet. KERNEL: BCFE: KL DO SYNCBCFE KL DO SYNC Rufe die mit &KERNEL: BCFB: KL NEXT SYNCBCFB geholte Unterbrechung auf. KERNEL: BD01: KL DONE SYNCBD01 KL DONE SYNC Beende die Bearbeitung einer synchronisierbaren Unterbrechung. KERNEL: BD04: KL EVENT DISABLEBD04 KL EVENT DISABLE Lege die Ausführung von normalen, synchronisierbaren Unterbrechungen auf Eis. KERNEL: BD07: KL EVENT ENABLEBD07 KL EVENT ENABLE Lasse die Ausführung von normalen, synchronisierbaren Unterbrechungen wieder zu. KERNEL: BD0A: KL DISARM EVENTBD0A KL DISARM EVENT Stelle einen BCEF: KL INIT EVENT: EventblockEventblock ruhig. KERNEL: BD0D: KL TIME PLEASEBD0D KL TIME PLEASE Erfrage den Stand des Interruptzählers. KERNEL: BD10: KL TIME SETBD10 KL TIME SET Stelle den Interruptzähler auf einen neuen Startwert. KERNEL: BD5B: KL RAM SELECTBD5B KL RAM SELECT Wähle eine neue BD5B: KL RAM SELECT: Mögliche RAM-Konfigurationen:RAM-Konfiguration aus. Nur CPC 6128!

MACHINE PACK

Maschinennahe Routinen

Adresse Bezeichnung          Beschreibung
------- -------------------- ------------------------------------------
 MACHINE PACK: BD13: MC BOOT PROGRAMBD13   MC BOOT PROGRAM      Lade und starte ein Maschinencode-Programm.
 MACHINE PACK: BD16: MC START PROGRAMBD16   MC START PROGRAM     Rufe ein Vordergrund-ROM auf.
 MACHINE PACK: BD19: MC WAIT FLYBACKBD19   MC WAIT FLYBACK      Warte bis zum nächsten Strahlrücklauf des Monitorbildes.
 MACHINE PACK: BD1C: MC SET MODEBD1C   MC SET MODE          Lege den Bildschirm-Modus neu fest.
 MACHINE PACK: BD1F: MC SCREEN OFFSETBD1F   MC SCREEN OFFSET     Setze den Hardware-Scroll-Offset.
 MACHINE PACK: BD22: MC CLEAR INKSBD22   MC CLEAR INKS        Setze alle Die Bildausgabe: Tinten und FarbenTinten auf eine Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farbe
. MACHINE PACK: BD25: MC SET INKSBD25 MC SET INKS Lege die Die Grafik: Farben
Die Bildausgabe: Tinten und Farben
Farben
für alle Die Bildausgabe: Tinten und FarbenTinten neu fest. MACHINE PACK: BD28: MC RESET PRINTERBD28 MC RESET PRINTER Setze die Printer-Indirections zurück. MACHINE PACK: BD2B: MC PRINT CHARBD2B MC PRINT CHAR Versuche, ein Zeichen zum Drucker zu schicken. MACHINE PACK: BD2E: MC BUSY PRINTERBD2E MC BUSY PRINTER Schaue nach, ob der Drucker bereit ist. MACHINE PACK: BD31: MC SEND PRINTBD31 MC SEND PRINT Sende ein Zeichen zum Drucker. MACHINE PACK: BD34: MC SOUND REGISTERBD34 MC SOUND REGISTER Lade ein Datentypen: Bytes
Datenbreite: Bytes
Byte
in ein Die Tonausgabe: Das Kontrollregister (Reg. 7)
Die Tonausgabe: Die möglichen Hüllkurvenformen (Reg. 13)
Register
des Sound-Chips. MACHINE PACK: BD58: MC PRINT TRANSLATIONBD58 MC PRINT TRANSLATION Ändere die Zeichen-Übersetzungs-Tabelle für den Drucker. Nur CPC 664 und 6128.

JUMPER

Eine Routine für Die Sprungleisten des Betriebssystems: Die Sprungleistendie Sprungleiste

Adresse  Bezeichnung      Beschreibung
------- ----------------- ------------------------------------------
 JUMPER: BD37: JUMP RESTOREBD37   JUMP RESTORE      Stelle die Original-Sprungleiste wieder her.

Valid HTML   Valid CSS