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 OverviewIn der aktuellen Version werden die folgenden Programme mit dem System mitgeliefert: In the current release, the following programs are included with the system:
2 Keyboard Konfiguration 2 Keyboard ConfigurationMittels 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-DESetzt 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-USSetzt 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:
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.
3.1 Show Status 3.1 ShowStatusMit 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
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.
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 UploadMit 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 _.
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 StartMit 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.
3.5 Config Hardware 3.5 Hardware ConfigMit 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.
3.6 Quit 3.6 QuitMit der Taste Q wird der Lader beendet und die Autostart-Funktion ausgeführt. Use Q, the charger stops and run the auto-start function.
4 Das Kommunikationsprogramm CBTerm mini 4 The communication program cbTerm miniCBTerm 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 keysIn 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:
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:![]() ![]() 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.![]() 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.![]() 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 charactersEinige 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.
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 keysDie 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:
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 RateAn 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 speedHier 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 speedHier 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 addressHiermit 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 LineMit 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 - TypeMö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 pinDa 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 StartupWenn 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.
6 System-Benchmark 6 System BenchmarkMit 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.![]() 7 Der Chip8-Interpreter 7 The Chip8 interpreterChip8 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 keysIn 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:
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.![]()
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 programsDer 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 emulatorDer 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 |