Projekt Project Hardware Hardware Bedienung Operation BASIC (1) BASIC (1) BASIC (2) BASIC (2) BASIC (3) BASIC (3) Interna Internals Beispiele Examples Erweiterungen Extensions Bibliotheken Libraries Treiber Driver Programme Programs Bezugsquellen: Where to buy: Bausatz Kit Leerplatine Empty board | AVR-ChipBasic2 - Programme AVR ChipBasic2 - Programs V1.45 (c) 2006-2012 Jörg Wolfram V1.45 (c) 2006-2012 Jörg Wolfram # 1 Programmübersicht 1 Program Overview In der aktuellen Version werden die folgenden Programme mit dem System mitgeliefert: In the current release, the following programs are included with the system: SETKBD -DE- SETKBD-DE SETKBD -US- SETKBD-US Serial Load Serial Load CBTerm mini CbTerm mini Clone644 Clone644 Bench Bench Chip8 Chip8 # 2 Keyboard Konfiguration 2 Keyboard Configuration Mittels dieser Programme ist es möglich, alternative Keyboard-Belegungen zu installieren. Using these programs, it is possible to install alternative keyboard layouts. Das aktuell eingestellte Layout wird im unteren Bereich des Hauptmenüs angezeigt. The currently selected layout is displayed in the lower section of the main menu. Nach dem Start des entsprechenden Programmes ändert sich die Anzeige im Hauptmenü und die neue Tastaturbelegung ist sofort wirksam. After the start of the corresponding program changes the display in the main menu and the new keyboard layout is effective immediately. ## 2.1 SETKBD -DE- 2.1 SETKBD-DE Setzt die Tastaturbelegung auf deutsches Layout. Sets the keyboard layout to German layout. Diese Belegung ist auch nach dem Flashen einer neuen version eingestellt. This assignment is also set after flashing a new version. ## 2.2 SETKBD -US- 2.2 SETKBD-US Setzt die Tastaturbelegung auf US-amerikanisches Layout. Sets the keyboard layout to US-based layout. # 3 Der serielle Lader 3 The serial loader Über den seriellen Lader ist es möglich, das System in gewissem Maße fernzusteuern. Via the serial loader, it is possible to remotely control the system to some extent. Damit lassen sich auch Anwendungsfälle ohne Bildschirmausgabe realisieren. This theoretically gives also applications without screen output. Das ist zum Beispiel der Fall, wenn "nur" ein LCD angesteuert werden soll. This is for example the case when "only" an LCD to be controlled. Im Weiteren beschriebene Ausgaben und Tastendrücke beziehen sich auf den Computer, der mit dem ChipBasic2 Sytem über die serielle Systemschnittstellle verbunden ist und auf dem ein Terminalprogramm läuft. Hereinafter described editions and keystrokes are related to the computer that is connected to the via the serial ChipBasic2 Sytem Systemschnittstellle and on a terminal program running. Der Lader nimmt innerhalb der Programme eine gewisse Sonderstellung ein. The charger takes in the programs on a special position. Durch eine spezielle Signatur ("L" als 13.Byte) lässt er sich weder starten noch editieren. By a special signature ("L" as 13.Byte) he can start editing or lease. Beim Systemstart wird nach einem Lader gesucht und der erste gefundene gestartet. At system startup, is looking for a charger, and the first match starts. Dies ist unabhängig von einer eingestellten Autostart-Funktion. This is independent of a set autostart feature. Es sind sowohl der Programm-Upload (ASCII und X-Modem) als auch die Konfiguration des Systems möglich. Both the program upload (ASCII and X-modem) as well as the configuration of the system are possible. Nach dem Start des Systems meldet sich der serielle Lader über die serielle System-Schnittstelle mit folgender Meldung: After starting the system logs the serial loader via the serial system interface with the following message:
    Press space to start! Press space to start!
Werden hier nur "unsinnige" Zeichen empfangen, sollte geprüft werden, ob die Einstellungen von 1200 oder 2400 Bps, 8Bit, 2 Stopp-Bits stimmen. Here are only "nonsense" character received, it should be examined whether the settings of 1200 or 2400 bps, 8 bits, 2 stop bits. Gestartet wird der Loader mittels der Leertaste, dies muß innerhalb von ca. 2 Sekunden erfolgen. Started the loader using the spacebar, this must be done within about 2 seconds. Zentraler Punkt im Loader ist das Hauptmenü, zu welchem von fast jeder Stelle mittels Leertaste zurückgekehrt werden kann. Central point in the loader is the main menu, which can be returned to from almost anywhere using spacebar.
    ---------------------------- ----------------------------
      ChipBasic2 Serial Loader ChipBasic2 Serial Loader
    ---------------------------- ----------------------------
     S = Show Status S = Show Status
     U = Upload (XMODEM) U = upload (XMODEM)
     T = Text Upload (ASCII) T = upload text (ASCII)
     A = Set Autostart A = Set Startup
     C = Config Hardware C = Config hardware
     Q = Quit Q = Quit
## 3.1 Show Status 3.1 ShowStatus Mit der Taste S kann eine Liste der intern gespeicherten Programme angezeigt werden. With the S key, a list of internally stored programs will be displayed. Nach der Programm-Nummer stehen der Programmname, der Programmtyp und die Markierung für einen aktiven Autostart. After the program number are the program name, program type and the mark for an active startup. Mit der Leertaste (und auch allen anderen Buchstaben-, Ziffern- und Zeichentasten) gelangt man wieder zurück ins Hauptmenü Use the spacebar (and all other letter, number and character keys) you go back to the main menu
    ---------------------------- ----------------------------
              Status Status
    ---------------------------- ----------------------------
    P1: SerialLoader LOADER P1: Serial Loader LOADER
    P2: BASIC P2: BASIC
    P3: BASIC P3: BASIC
    P4: BASIC (A) P4: BASIC (A)
    P5: BASIC P5: BASIC
    P6: BASIC P6: BASIC
    P7: BASIC P7: BASIC
    P8: BASIC P8: BASIC
    Space returns to main menu Space returns to main menu
    Press any key! Press any key!
## 3.2 Upload (XMODEM) Release 3.2 (XMODEM) Mit der Taste U wird zum Upload Menü gewechselt. With the U button to upload menu is changed.
    ---------------------------- ----------------------------
           XModem Upload XModem upload
    ---------------------------- ----------------------------
    P1: SerialLoader LOADER P1: Serial Loader LOADER
    P2: BASIC P2: BASIC
    P3: BASIC P3: BASIC
    P4: BASIC (A) P4: BASIC (A)
    P5: BASIC P5: BASIC
    P6: BASIC P6: BASIC
    P7: BASIC P7: BASIC
    P8: BASIC P8: BASIC
    Space returns to main menu Space returns to main menu
    Select Program (1..8) : Select Program (1 through 8):
Gestartet wird der Upload durch Auswahl eines der Programme (Tasten 1...8 ), mit der Leertaste gelangt man wieder zurück ins Hauptmenü. Start the upload by selecting one of the programs (keys 1 .. 8), with the space bar takes you back to the main menu. Falls der Lader ausgewählt wurde, gibt es noch eine Sicherheitsabfrage, da man sich durch das Überschreiben des Loaders selbst aussperren kann. If the charger has been selected, there is a security check, because you can lock yourself out by overriding the loader itself. Der eigentliche Upload beginnt erst nach 10 Sekunden, damit genügend Zeit am Terminalprogramm ist, um auch dort den Upload zu starten. The actual upload starts after 10 seconds, to allow sufficient time in the terminal program is also there to start the upload. Sind alle Daten übertragen, wird wieder das Upload-Menü angezeigt. Once all the data transferred, again the upload menu. Lediglich wenn der Lader überschrieben wurde wird das System neu gestartet. Only if the loader was overwritten, the system is rebooted. ## 3.3 Text Upload 3.3 Text Upload Mit der Taste T wird zum Text-Upload Menü gewechselt. Use T for text-upload menu is changed. Hiermit können BASIC-Quellprogramme übertragen werden. Lets BASIC source programs are transmitted. Diee werden im Anschluß der Übertragung in das Binärformt übersetzt, falls das erste Zeichen des Dateinamens kein Unterstrich _ ist. Diee are subsequently translated into the transfer of Binärformt, if the first character of the file name is an underscore _.
    ---------------------------- ----------------------------
           Text Upload Upload text
    ---------------------------- ----------------------------
    P1: SerialLoader LOADER P1: Serial Loader LOADER
    P2: BASIC P2: BASIC
    P3: BASIC P3: BASIC
    P4: BASIC (A) P4: BASIC (A)
    P5: BASIC P5: BASIC
    P6: BASIC P6: BASIC
    P7: BASIC P7: BASIC
    P8: BASIC P8: BASIC
    Space returns to main menu Space returns to main menu
    Select Program (1..8) : Select Program (1 through 8):
Gestartet wird der Upload durch Auswahl eines der Programme (Tasten 1...8 ), mit der Leertaste gelangt man wieder zurück ins Hauptmenü. Start the upload by selecting one of the programs (keys 1 .. 8), with the space bar takes you back to the main menu. Der Lader lässt sichauf diese Weise nicht überschreiben, wählt man diesen zum Überschreiben aus, wird eine Fehlermeldung angezeigt. The loader does not overwrite sichauf this way, choose from these to overwrite, an error message is displayed. Da der Bildspeicher als Textpuffer benutzt wird, erscheint auf dem Bildschirm (falls angeschlossen) des ChipBasic2 Systems ein buntes "Buchstabendurcheinander". Since the image memory is used as a text buffer appears on the screen (if connected) the system ChipBasic2 a colorful "character disorder". Dies ist aber normal. This is normal. ## 3.4 Autostart 3.4 Auto Start Mit der Taste A kann die Autostart-Funktion eingestellt werden. With the A button, the auto-start function can be set. Einstellbar ist Autostart für die Programme 1 bis 7, abgestellt werden kann sie nicht. Adjustable startup for programs 1 to 7, they can not be stopped. Die Autostart-Funktion lässt sich nicht auf einen Lader einstellen. The auto-start function can not be set on a supercharger.
    ---------------------------- ----------------------------
             Autostart Startup
    ---------------------------- ----------------------------
    P1: SerialLoader LOADER P1: Serial Loader LOADER
    P2: BASIC P2: BASIC
    P3: BASIC P3: BASIC
    P4: BASIC (A) P4: BASIC (A)
    P5: BASIC P5: BASIC
    P6: BASIC P6: BASIC
    P7: BASIC P7: BASIC
    P8: BASIC P8: BASIC
    Space returns to main menu Space returns to main menu
    Select Autostart (1..7) :2 Select Startup (1 .7): 2
Der Autostart wird jetzt auf Programm 2 eingestellt. The startup is now set to Program 2. ## 3.5 Config Hardware 3.5 Hardware Config Mit der Taste C lässt sich die Hardware des Zielsystems konfigurieren. With the C button you can configure the hardware of the target system. Die Einstellungen entsprechen der "normalen" Konfigurationsseite. The settings correspond to the "normal" configuration page. Mit der Taste 8 werden die getätigten Einstellungen gespeichert und das System neu gestartet, wird das Menü mittels Leertaste verlassen, gehen die getätigten Einstellungen verloren. Button 8 is the actual settings are saved and the system rebooted, exit via spacebar to go the actual settings are lost.
    ---------------------------- ----------------------------
      ChipBasic2 Configuration ChipBasic2 Configuration
    ---------------------------- ----------------------------
    (1) Serial speed: 2400 Bps (1) Serial speed: 2400 bps
    (2) I2C speed : 400 kHz (2) I2C speed: 400 kHz
    (3) SPI speed : 5 MHz (3) SPI speed: 5 MHz
    (4) EEPROM addr : 0 (4) EEPROM addr: 0
    (5) Line end : only LF (5) Line end: Only LF
    (6) Serial I/O : simple (6) Serial I / O: simple
    (7) Serial Input: PD3 (7) Serial Input: PD3
    (8) Store (8) Store
    Space returns to main menu Space returns to main menu
    Select Parameter (1..8) : Select Parameters (1 through 8):
## 3.6 Quit 3.6 Quit Mit der Taste Q wird der Lader beendet und die Autostart-Funktion ausgeführt. Use Q, the charger stops and run the auto-start function.
    ---------------------------- ----------------------------
      Serial Loader Quit Serial loader Quit
    ---------------------------- ----------------------------
# 4 Das Kommunikationsprogramm CBTerm mini 4 The communication program cbTerm mini CBTerm mini ist ein minimales Kommunikationsprogramm, mit dem zwei ChipBasic2 Computer untereinander oder auch mit einem PC kommunizieren können. CbTerm mini is a minimal communication program that allows two computers to ChipBasic2 each other or communicate with a PC. Es gibt zwei Modi, zusätzlich können auch Programme per XModem Protokoll übertragen werden. There are two modes, additional programs can also be transmitted via XModem protocol. ## 4.1 Die Belegung der Funktionstasten 4.1 The assignment of function keys In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen den Tasten ESC und F1...F4 und haben folgende Funktionen: In the bottom row are the possible commands, the colors correspond to the ESC and F1 ... F4 and have the following functions:
| Programm verlassen Exit program
| Den Modus (Normal/Dialog) wechseln The mode (normal / dialogue) Change
| Ein Programm mittels X-Modem Protokoll senden A program using the X-modem protocol to send
| Ein Programm mittels X-Modem Protokoll empfangen A program using the X-modem protocol received
| Textfenster leeren Text box empty
### 4.1.1 Exit (ESC) 4.1.1 Exit (ESC) Nach einer Abfrage, ob das Programm verlassen werden soll, wird zum Hauptmenü zurückgekehrt. After a query, whether the program should be left to the main menu is returned. ### 4.1.2 Mode (F1) 4.1.2 Mode (F1) Mit jedem Tastendruck ändert sich die aktuell ausgewählte Einstellung. With each press changes the currently selected setting. Diese wird links oben angezeigt. This is shown above left. Bei jedem Wechsel wird das Textfenster gelöscht. Every time you change the text box is cleared. Es gibt zwei Modi, normal und dialog . There are two modes, normal and dialog. Im Normalmodus werden nur die empfangenen Zeichen angezeigt: In Normal mode, only the received characters are displayed: Im Gegensatz dazu werden im Dialogmodus sowohl die empfangenen als auch die gesendeten Zeichen angezeigt. In contrast, in interactive mode, both the received and the transmitted characters are displayed. Dabei werden die gesendeten Zeichen grün und die empfangenen Zeichen rot dargestellt. Here, the characters sent are shown in green and red characters received. ### 4.1.3 Send (F2) 4.1.3 end (F2) Mit dieser Funktionen können Programme mittels des XModen Protokolls gesendet werden. With these functions, programs can be sent via the XModen Protocol. Zunächst erscheint eine Auswahlbox, in der zu sendende Programm gewählt werden kann. First, a selection box that can be selected in the program to be broadcast. Mit den Cursortasten nach oben und unten wird das zu sendende Programm gewählt, mit der ENTER Taste wird die Übertragung gestartet, was durch eine kleine Hinweisbox angezeigt wird. Use the cursor keys up and down the program to be broadcast is selected, press the ENTER button to start the transfer, which is indicated by a small information box. Während der Programmauswahl als auch bevor die Übertragung durch den Empfänger gestartet wird kann der Vorgang mit der ESC Taste abgebrochen werden. During program selection and before the transfer is initiated by the receiver, the process can be aborted by pressing the ESC key. ### 4.1.4 Receive (F3) 4.1.4 Receive (F3) Mit dieser Funktionen können Programme mittels des XModen Protokolls empfangen werden. With these functions, programs can be received by means of XModen Protocol. Zunächst erscheint eine Auswahlbox, in der zu überschreibende Programm gewählt werden kann. First, a selection box that can be selected in the program to be overwritten. Dabei lässt sich das Teminalprogramm selbst nicht überschreiben. It allows the Teminalprogramm not overwrite itself. Wird dies versucht, wird der Vorgang mit einer Alertbox abgebrochen. If this is attempted, the process is aborted with an alert box. Mit den Cursortasten nach oben und unten wird das zu überschreibende Programm gewählt, mit der ENTER Taste wird die Übertragung gestartet, was durch eine kleine Hinweisbox angezeigt wird. Use the cursor keys up and down to the overriding program is selected, pressing the ENTER key, the transmission starts, as indicated by a small information box. Zuvor sollte aber die Übertragung auf Senderseite gestartet werden. But first, the transmission on the sender side to start. Während der Programmauswahl kann der Vorgang mittels der ESC Taste abgebrochen werden. During the program, the selection process using the ESC key to cancel. ### 4.1.5 Clear (F4) 4.1.5 Clear (F4) Mit dieser Taste wird das Textfenster gelöscht und der Cursor an den Anfang desselben gesetzt. This turns the text box is cleared and set the cursor to the beginning of it. ### 4.1.6 Übertragene Zeichen 4.1.6 Transferred characters Einige Tasten und übertragene Codes haben spezielle Funktionen, die in untenstehender Tabelle aufgeführt sind. Some keys and transmitted codes have specific functions that are listed in the table below. Für die Zeilenenden haben die auf der Konfigurationsseite eingestellten Gültigkeit. For the line endings have the set on the configuration page validity.
ASCII Code ASCII code | Taste Button | Aktion Action
0x08 0x08 | Backspace Backspace | Löscht letztes Zeichen, aber nur bis zum Anfang der aktuellen Zeile Delete last character, but only until the beginning of the current line
0x0a 0x0a | ENTER ENTER | Zeilenvorschub (abhängig von der Zeilenende-Konfiguration) Line feed (depending on the end of line configuration)
0x0c 0x0c | F4 F4 | löscht das Textfenster erases the text window
restliche <128 remaining <128 | Buchstaben/Ziffern/Zeichen Letters / numbers / characters | Zeichen ausgeben Characters spend
# 5 System Clonen (Mega644/P) 5 System Cloning (Mega644 / P) Vom Aufbau her ähnelt des Clone Programm der Konfigurationsseite wobei die aktuelle Konfiguration als Voreinstellung genommen wird. The structural design of the Clone program the configuration page similar to the current configuration is taken as default. ## 5.1 Die Belegung der Funktionstasten 5.1 The assignment of function keys Die gerade aktive Funktion ist invertiert dargestellt, die Auswahl erfolgt über die Cursor-Hoch und Cursor-Runter Tasten. The currently active function is highlighted, the selection is made by the high-cursor and cursor-down keys. In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen wieder den Tasten ESC und F1...F4 und haben folgende Funktionen: In the bottom row are the possible commands, the colors again correspond to the ESC and F1 ... F4 and have the following functions:
| Programm verlassen Exit program
| Ausgewählte Einstellung verändern Selected setting change
| System clonen Cloning System
### 5.1.1 Exit (ESC) 5.1.1 Exit (ESC) Nach einer Abfrage, ob das Programm verlassen werden soll, wird zum Hauptmenü zurückgekehrt. After a query, whether the program should be left to the main menu is returned. ### 5.1.2 Change (F1) 5.1.2 Change (F1) Mit jedem Tastendruck ändert sich die aktuell ausgewählte Einstellung. With each press changes the currently selected setting. ### 5.1.3 Serielle Geschwindigkeit 5.1.3 Serial Rate An dieser Stelle kann die Geschwindigkeit der seriellen Schnittstelle zwischen 1200 und 2400 Bps umgeschaltet werden. At this point, the speed of the serial interface 1200-2400 bps are switched. Mit dem BASIC-Befehl BAUD kann die Geschwindigkeit im Programm temporär verstellt werden, nach Ende des Programmes wird wieder auf den hier eingestellten Wert zurückgestellt. With the BASIC command BAUD speed can be adjusted in the program temporarily, after the end of the program will be set back to the value set here. ### 5.1.4 I2C-Geschwindigkeit 5.1.4 I2C speed Hier kann die Geschwindigkeit der I2C-Schnittstelle zwischen 100 und 400 kHz umgeschaltet werden. Here, the speed of the I2C interface are switched 100-400 kHz. Die meisten I2C-Bausteine kommen mit 400kHz zurecht, aus Kompatibilitätsgründen kann auch die langsame Geschwindigkeit genutzt werden. Most I2C devices cope with 400kHz, for reasons of compatibility can also be used to slow speed. ### 5.1.5 SPI-Geschwindigkeit 5.1.5 SPI speed Hier kann die Geschwindigkeit der SPI-Schnittstelle zwischen 156 kHz und 5 MHz umgeschaltet werden. Here, the speed of the SPI interface between 156 kHz and 5 MHz are switched. ### 5.1.6 EEPROM Adresse 5.1.6 EEPROM address Hiermit lässt sich die EEPROM-Adresse für das Daten-EEPROM einstellen (XPOKE/XPEEK). This allows to build the EEPROM address for the data EEPROM set (XPOKE / XPEEK). ### 5.1.7 Zeilenende 5.1.7 End of Line Mit dieser Taste kann die Art des Zeilenendes für die serielle und parallele Schnittstelle festgelegt werden. This key is the way the end of line for the serial and parallel port are set. Möglich sind LF only (Unix/Linux), CR only (Mac) und CR+LF (Windows). Are only possible LF (Unix / Linux), CR only (Mac) and CR + LF (Windows). ### 5.1.8 Serielles Interface - Typ 5.1.8 Serial Interface - Type Möchte man zB einen anderen RS232 Pegelwandler als die vorhandene Schaltung verwenden, kann dies hier umgeschaltet werden. Simple ist die original-Schaltung, mit Standard funktionieren RX und TX wie bei jedem anderen UART. If you want to use a different example than the existing RS232 level converter circuit, this can be changed here. Simple is the original circuit, with Standard RX and TX work like any other UART. ### 5.1.9 Serielles Interface - Eingangspin 5.1.9 Serial Interface - input pin Da die ursprüngliche Beschaltung der seriellen Schnittstelle schon den TX1-Pin (PD3) des ATMega644P belegt, gibt es hier die Möglichkeit, den Eingangspin der seriellen System-Schnittstelle zwischen PD1 (notwendig für ATMega644P) und PD3 (Kompatibilitätsmodus) umzuschalten. Since the original wiring of the serial interface already the TX1 pin (PD3) of the ATmega644P is, there is the possibility of the input pin of the serial system interface between PD1 (necessary for ATmega644P) and PD3 (compatibility mode) switch. Die Umschaltung ist für beide Typen möglich, allerdings lässt sich die zweite serielle Schnittstelle des 644P im Kompatibilitätsmodus nicht benutzen. Switching is possible for both types, however, can the second serial port of the 644P not use compatibility mode. ### 5.1.10 Autostart 5.1.10 Startup Wenn im Intro-Screen keine Taste gedrückt wird, kann ein Programm automatisch gestartet werden. If the intro-screen button is not pressed, a program can be launched automatically. Der in früheren Versionen vorhandene Autostart-Jumper wird nicht mehr abgefragt und sollte unbedingt offengelassen werden. In earlier versions of existing startup jumper will no longer monitored and should absolutely be left open. Wählbar sind die Programme 1...7 sowie eine Dekativierung der Autostart-Funktion. A choice of the programs 1 .. 7 and a Dekativierung the autostart function. ### 5.1.11 System clonen (F4) 5.1.11 Cloning System (F4) Mit dieser Taste wird das Clonen gestartet. This key cloning is started. Der Target-Mikrocontroller muss auch ein Mega644 sein und einen Quarz oder externen Oszillator angeschlossen haben. The target microcontroller must also be a Mega644 and have connected a crystal or external oscillator. Denn neben dem Flash werden auch die Fusebits programmiert. For in addition to the Flash Fuse bits are programmed. Eventuell vorhandene BASIC-Programme werden natürlich auch mit übertragen. Any existing BASIC programs are naturally transmitted with. Damit ist es möglich, einen weiteren Computer aufzubauen ohne einen PC zur Verfügung zu haben / zu benutzen. This makes it possible to build another computer without using a PC to have available /. Nach Anwahl der Funktion folgt noch eine Sicherheitsabfrage, danach wird der Kopiervorgang gestartet. After selecting the function nor a safety inquiry, then the copy process will start. Um das System zu clonen ist ein Kabel mit einer speziellen Belegung notwendig, mit welchem dann die SPI/ISP-Schnittstellen beider Systeme verbunden werden. The system to clone a cable with a special allocation is needed, with which are then the SPI / ISP interfaces of both systems together.
Host Signal Host signal | Host PIN Host PIN | Target Signal Target signal | Target PIN Target PIN
GND GND | 4,6,8,10 4,6,8,10 | GND GND | 4,6,8,10 4,6,8,10
VCC VCC | 2 2 | VCC VCC | 2 2
MOSI MOSI | 1 1 | MOSI MOSI | 1 1
MISO MISO | 9 9 | MISO MISO | 9 9
SCK SCK | 7 7 | SCK SCK | 7 7
SS SS | 3 3 | RESET RESET | 5 5
# 6 System-Benchmark 6 System Benchmark Mit Benchmark lässt sich die effektive Taktfrequenz in MHz für alle 8 Videomodi bestimmen. With benchmark, determine the actual clock rate in MHz for all 8 video modes. Effektive Taktfrequenz bedeutet dabei, bei welcher Taktfrequenz der Mikrocontroller genauso schnell wäre wenn er keine Videoausgabe etc. erledigen muss. Effective clock frequency means here, in which the microcontroller clock frequency would be just as fast when he needs to do no video output, etc.. Wenn die Anzeige erscheint, kann das Programm mit einem beliebigen Tastendruck beendet werden. When the display appears, the program can be terminated with any button. Die angezeigten Ergebnisse sind im NTSC-Mode (ohne Treiber für Mode 7) gemessen. The results are measured in NTSC mode (no driver for mode 7). Bei PAL sind die Ergebnisse etwas besser, da die Gesamt-Zeilenzahl bei gleicher Anzahl sichtbarer Zeilen höher ist. For PAL, the results are slightly better, since the total number of lines up with the same number of visible rows. # 7 Der Chip8-Interpreter 7 The Chip8 interpreter Chip8 ist ein Interpreter, mit dem Chip8 oder S-Chip Programme im Videomode 5 oder im Videomode 7 (nur Drivercode 0xA8) laufen können. Chip8 is an interpreter with the Chip8 or S-chip program in video mode 5 or in video mode 7 (Driver only code 0xA8) can run. ## 7.1 Die Belegung der Funktionstasten 7.1 The assignment of function keys In der untersten Zeile stehen die möglichen Kommandos, die Farben entsprechen wieder den Tasten ESC und F1...F4 und haben folgende Funktionen: In the bottom row are the possible commands, the colors again correspond to the ESC and F1 ... F4 and have the following functions:
| Programm verlassen Exit program
| Chip8-Programm via X-Modem empfangen Chip8 program via X-modem receive
| Chip8-Programm speichern Chip8 program store
| Chip8-Programm laden Chip8 load program
| Chip8-Programm starten Chip8 program start
### 7.1.1 Exit (ESC) 7.1.1 Exit (ESC) Nach einer Abfrage, ob das Programm verlassen werden soll, wird zum Hauptmenü zurückgekehrt. After a query, whether the program should be left to the main menu is returned. ### 7.1.2 Recv (F1) 7.1.2 recv (F1) Es kann ein Chip8-Programm via XMODEM übertragen werden. It can be a Chip8 program via XMODEM transfer. Das Programm muss allerdings entsprechend aufbereitet werden (su). The program must be treated accordingly (see below). Beim iram2 Treiber werden die oberen 2K ignoriert. When the upper 2K iram2 drivers are ignored. ### 7.1.3 Save (F2) 7.1.3 Save (F2) Es kann ein Chip8-Programm auf das DataFlash Modul gespeichert werden. It can be a Chip8 program is stored on the data flash module. Es können nur leere Speicherplätze oder bestehende Chip8-Programme überschrieben werden. Only empty storage locations or existing Chip8 programs are overwritten. Die Dateiauswahl geschieht über die Fileselektorbox, der Dateiname entspricht dem Programmnamen und der Typ wird automatisch auf CH8 gesetzt. The file selection is done via the Fileselektorbox, the file name is the program name, and the type is automatically set to CH8. ### 7.1.4 Load (F3) 7.1.4 Load (F3) Es kann ein Chip8-Programm vom DataFlash Modul geladen werden. It can be a Chip8 program are loaded from Data Flash module. Die Dateiauswahl geschieht dabei über die Fileselektorbox, es können nur CH8 Dateien geladen werden. The file selection is effected via the Fileselektorbox, it can only CH8 files are loaded. ### 7.1.5 Run (F4) 7.1.5 Run (F4) Das geladene Programm wird gestartet. The loaded program is started. Mit CTRL-C kann die Programmausführung abgebrochen werden. Press CTRL-C, the program execution will be terminated. Wenn sich ein Programm in einer Endlosschleife befindet (zB am Spielende) kann es mit der Taste F10 neu gestartet werden. If a program is in an infinite loop (eg at the end of the game), it can be restarted by pressing F10. Mit gedrückter linker CTRL Taste sind witere Funktionen erreichbar: Holding down the left CTRL key witere functions are available:
| Delay verringern, Programmausführung wird schneller Delay, reduce program execution is faster
| Delay erhöhen, Programmausführung wird langsamer Delay increase, program execution is slower
Da der Chip8-Interpreter wesentlich schneller als das Original ist, kann ein Delay eingestellt werden. Since the Chip8 interpreter is much faster than the original, a delay can be set. Es entspricht der Anzahl der Bildzeilen, die vor jedem Befehl gewartet werden und wird mit dem Programm gespeichert. It corresponds to the number of lines that must be maintained before each command and is saved with the program. Sinnvoll sind Werte zwischen 6 und 20. Meaningful values ​​are 6 to 20 ## 7.2 "Aufbereitung" von Chip8-Programmen 7.2 "treatment" of Chip8 programs Der Chip8-Interpreter braucht die Daten in einem bestimmten Format, und zwar einem 4 KBytes großem Speicherabbild. Chip8 the interpreter needs the data in a specific format, namely a 4 KBytes large dump. Zusätzlich sind Delay und die Tastenbelegung hinterlegt. Additional delay and the key assignments are stored. Dazu müssen die Programme aus dem Internet heruntergeladen werden und mittels der Programme im TOOL-Ordner konvertiert werden. These programs have to be downloaded from the Internet and are converted by means of the programs in the Tool folder. # 8 Der 8080-Emulator 8 The 8080 emulator Der 8080-Emulator befindet sich noch in einem frühen Entwicklungsstadium. The 8080 emulator is still in an early development stage. Er unterstützt derzeit nur das XRAM64 Modul und kann als Vorlage für eigene Anwendungen dienen. He currently does not support XRAM64 module and can serve as a template for your own applications. created with latex2web.pl v0.62 © 2006-2011 Joerg Wolfram Created with latex2web.pl v0.62 © 2006-2011 Joerg tungsten