CB2 micro
Games/Applications
Go back to the main site
About this page

This page includes the CB2 firmware (opensource) and all the games and application programs that have been written for the CB2 micro, as long as I am aware of. This page will be updated constantly with new programs, so make sure you check it out regularly!

Have you written a game or an application for the CB2 micro that you think it will be useful or just fun for other people to have? Please email it to me to upload it on this page. KIT discounts can be arranged if you have your programs listed on this page!



Quick index reference


Click on a word in the table below to navigate to the relevant section/application. Then use "back" on your browser to return to this table.

Note, to download the code of the BASIC programs, copy it to a notepad and save it as a text file. Then transfer this file to your CB2 micro through the serial port. Alternatively, you can always type in the programs manually. In this case, you do not need to type in the first line (PROGRAM:programname), the last line (#) and the line numbers of the program.


1 Games
1.1 SetFree
1.2 Arkanoid
1.3 Eatman
1.4 Racer
1.5 Pong
1.6 Snake
1.7 PongOne

2 Networked Games

2.1 None yet


3 Applications
3.1 Submenus
3.2 Charset
3.3 SinusCosinus
3.4 Face
3.5 Marquee
3.6 Tilemode
3.7 CB2Matrix

4 Networked Applications
4.1 microBBS
4.2 Colterm
4.3 ColtermSRV

5 Lab
5.1 Oscilloscope

6 HAM radio
6.1 None yet

7 System files

8 Additional programs






1 Games

Name Description Controls Requirements Code/DownloadScreenshot
1.1 SetFree SetFree is a game written by KOS. You shoot missiles from your plane to hit prisons and try to free up prisoners. If you hit your plane on a prison or a man or the walls, a life is lost. After a number of free men has been reached, level goes up. You have limited amount of missiles, but you gain more missiles when freeing prisoners.
Left, Right, Up, Down arrows and SPACE
None
1.2 Arkanoid
Arkanoid is the classic game. You control the bar to repel the ball which hits on brick targets. In this version you play forever no matter how many lives you have lost.
Left and Right arrows
None
1.3 Eatman
This game is a clone of the packman game. If you catch a red fruit, the spirits for a short time whiten and can be hunted by you. The spirits, however, are "stupid", because they only move randomly through the labyrinth.
Left, Right , Up and Down arrows
None
1.4 Racer
A purple bonus point brings 20 points, high score is stored in the internal EEPROM.
Left and Right arrows
None
1.5 Pong
This is the well known pong game. It is a dual player version, two people are needed to play this.
Player one: left CTRL and SHIFT keys

Player two: right CTRL and SHIFT keys
Two players
1.6 Snake
This is the well known snake game.
Left, Right , Up and Down arrows None
1.7 PongOne
This is the well known pong game. It is a single player version, you play against the computer.Left, Right , Up and Down arrows None




2 Networked Games


Name Description Controls Requirements Code/DownloadScreenshot











3 Applications

Name Description Controls Requirements Code/DownloadScreenshot
3.1 Submenus Submenus is an example of how tabbed menus, submenus and screens can be created on the CB2. Within each screen a separate function of yours could be implemented. The menus and submenus names can be changed according to your needs.
ESC, F1, F2, F3 and F4 keys
None

3.2 Charset It prints out the full charset.
None
None

3.3 SinusCosinus It prints out sine and cosine in graphic mode 2.
None
None

3.4 Face It prints out a happy face in graphic mode 2.
None
None

3.5 Marquee It prints out a scrolling marquee.
None
None

3.6 Tilemode This little program shows the usage of the Tilemode. By means of the cursor keys the visible cutout in the 32x32 tiles large field can be scrolled.
Cursor keys
Tilemode library (from firmware package v1.42) loaded at any position P1-P8

3.7 CB2Matrix CB2Matrix is a screen saver of random characters and colors. If "The Matrix" has been written for the CB2 micro, it would probably look like this.
None None





4 Networked Applications

Name Description Controls Requirements Code/DownloadScreenshot
4.1 microBBS microBBS is a simple Bulletin Board System. The program handles the modem auto-answer and all the communications after the establishment of the dialup connection. With microBBS callers can write their own public messages and preview the list of public messages. They can also view information about the system. The program stores the messages in the internal EEPROM of the MCU, which is limited, so keep messages short. microBBS is designed to display the information correctly aligned on the CBterm of other CB2 micro clients. On connection of a client from a PC, you may need to alter the printed messages spaces, to line up the information better on the PC terminal. If you want to run your own BBS, you may need to change the name of the BBS as well as the system information messages, to suit your needs.
None
External serial dial-up modem, connected to the RS-232 port of the CB2 micro, or external serial to ethernet adapters if it is to be accessed through internet.
4.2 Colterm
Colterm is a terminal communication program that allows the CB2 micro to communicate through the serial port with another CB2 micro that runs a server program compatible with Colterm, written by the users. The advantage of Colterm compared to the CBterm mini, is that Colterm supports transfer of color text and pseudographics as well as sound. The disadvantage is that the data rate can be slower, depended on how you refresh the page, since additional information is being transfered along with every character. Colterm uses a proprietary communication protocol so it is not compatible to "ordinary" terminals. This means that you cannot use it to communicate with a PC or other device or control smart modems etc. For that reason you use CBterm instead. The Colterm client must run on a CB2 micro and the server must be a CB2 micro that is running a server program compatible with Colterm. This server program, be it a game, application or whatever, is supposed to be written by you and must be written to be compatible with the Colterm communication protocol.
Left, Right, Up, Down arrows, ~. Also, [, ],  ENTER and any character. See the Colterm documentation.
The CB2 micro that runs the Colterm, must be connected through the RS-232 port, to another CB2 micro that runs a compatible server program such as ColTermSRV
4.3 ColtermSRV
This is just a test server program to test the Colterm communication. This server just sends out to the Colterm client a page of random characters, then waits for user input, then repeats the process.
None
The CB2 micro that runs the ColTermSRV, must be connected through the RS-232 port, to another CB2 micro that runs the Colterm






5 Lab

Name Description Controls Requirements Code/DownloadScreenshot
5.1 Oscilloscope This is a small oscilloscope program. The analogue input 0 (PIN2 of the printer connector) is evaluated, the sampling takes place 50 times per second. Since the reference voltage is 2.56V by default, the parameter range 0x100 ... 0x1FF (direct access to ADMUX) is used to set AVCC as the reference voltage. To turn off the demonstration, line 16 of the program must be commented out.
None
None






6 HAM radio

Name Description Controls Requirements Code/DownloadScreenshot









7 System files

Here is the list of system files (sources, documents, binaries) for the latest and the archived versions of the firmware of the CB2 micro. Note that some versions, although newest, may not include all the files in them (eg. Xmem libraries). In this case you may look in the archived versions for these files. Also, in version 1.52 there are no binaries provided, apart from the system HEX.

VersionFilesDate
V1.52
Unreleased version. Internal EEPROM bug fix performed on runtime.asm
main_644_152.hex
runtime.asm
avr-chipbasic2_1.52-source.zip
27.5.2019
V1.51 avr-chipbasic2_151-binary.tar.bz2
avr-chipbasic2_151-doc.tar.bz2
avr-chipbasic2_151-source.tar.bz2
26.3.2017
V1.50 avr-chipbasic2_150-binary.tar.bz2
avr-chipbasic2_150-doc.tar.bz2
avr-chipbasic2_150-source.tar.bz2
11.1.2015
V1.49 avr-chipbasic2_149-binary.tar.gz
avr-chipbasic2_149-doc.tar.gz
avr-chipbasic2_149-source.tar.gz
16.6.2014
V1.48 avr-chipbasic2_148-binary.tar.gz
avr-chipbasic2_148-doc.tar.gz
avr-chipbasic2_148-source.tar.gz
23.5.2014
V1.45 avr-chipbasic2_145-binary.tar.gz
avr-chipbasic2_145-doc.tar.gz
avr-chipbasic2_145-source.tar.gz
6.1.2013
V1.44 avr-chipbasic2_144-binary.tar.gz
avr-chipbasic2_144-doc.tar.gz
avr-chipbasic2_144-source.tar.gz
14.11.2012
V1.43 avr-chipbasic2_143-binary.tar.gz
avr-chipbasic2_143-doc.tar.gz
avr-chipbasic2_143-source.tar.gz
27.04.2012
V1.42 avr-chipbasic2_142-binary.tar.gz
avr-chipbasic2_142-doc.tar.gz
avr-chipbasic2_142-source.tar.gz
07.03.2012
V1.39 avr-chipbasic2_139-binary.tar.gz
avr-chipbasic2_139-doc.tar.gz
avr-chipbasic2_139-source.tar.gz
08.10.2011
V1.36 avr-chipbasic2_136-binary.tar.gz
avr-chipbasic2_136-doc.tar.gz
avr-chipbasic2_136-source.tar.gz
15.01.2011
V1.28 avr-chipbasic2_128-binary.tar.gz
avr-chipbasic2_128-doc.tar.gz
avr-chipbasic2_128-source.tar.gz
11.04.2010





8 Additional programs

Here is a list of additional useful programs related to the project. Such programs include chip8 games, basic games not documented on the above tables and utilities for firmware building and programming.

DescriptionFilesDate added
Package of 8080, converter and Chip8 programs (allready converted to run on the system)
chipbasic_additional_ch8_programs.zip
23.1.2019
Package of a few more BASIC games (some incomplete)
games2.zip
7.3.2019
Ponyprog, Windows programmer software for the MCU.PonyProg_V207c.zip23.1.2019
Linux compiler for building the sources.
cb2_linux_compiler.zip
16.9.2019