You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Christian Kroll f9030ab721 README.md: I HATE that freaking mark down 11 years ago
animations seasonal animation removed 12 years ago
borg_hw the MCLR pins of the 74HCT164 chips are not connected on Borg 16 12 years ago
can resolved some signedness issues, still many to go (btw: 78 bytes eliminated in the process) 12 years ago
compat weitergem8 16 years ago
doc/img README.md: small cleanups 11 years ago
games corrected some doxygen tag errors 12 years ago
joystick incorporated borg drivers from "Hackerspace FFM" - thx guys! 12 years ago
mcuf renamed project because it is to cool for stupid name 16 years ago
menu dealt with compiler warning about discarded qualifiers 13 years ago
profiles seasonal animation removed 12 years ago
random saved 162 bytes 14 years ago
rfm12 there was a problem with initing the rfm12. I have corrected it. 13 years ago
scripts Cleanup in menuconfig 11 years ago
scrolltext progmem const error 12 years ago
simulator Merge branch 'master' of das-labor.org:users/chris/borgware-2d 11 years ago
smallani added additional configparameters for small animations 14 years ago
uart replaced deprecated SIGNAL() and SIG_* macros to be compatible with avr-libc 1.8.0 and gcc 4.7.0 13 years ago
.gitignore .gitignore finetuning 12 years ago
.travis.yml Add .travis.yml or continuous integration 11 years ago
COMPILING.txt weitergem8 16 years ago
Doxyfile made some parameters like plasma frame delays configurable 13 years ago
Makefile make menuconfig sollte nciht zweimal durchlaufen 11 years ago
Makefile-old Spot the German! 13 years ago
README.md README.md: I HATE that freaking mark down 11 years ago
avr5.x Game and menu support added. Dependencies fixed. Compiles fine for AVR and Windows. Linux simulator is still missing a linker script. 16 years ago
config.h fixed a lot of config options 13 years ago
config.in incorporated borg drivers from "Hackerspace FFM" - thx guys! 12 years ago
defaults.mk support for Cygwin64 added 11 years ago
depend.mk adding menu and game support 16 years ago
display_loop.c seasonal animation removed 12 years ago
display_loop.h integrating simulator 16 years ago
eeprom_reserve.c renamed project because it is to cool for stupid name 16 years ago
ioport.h gigaborg support :-) 14 years ago
main.c there was a problem with initing the rfm12. I have corrected it. 13 years ago
makros.h 16 years ago
pixel.c put Martin Herwegs source code into separate files 14 years ago
pixel.h resolved some signedness issues, still many to go (btw: 78 bytes eliminated in the process) 12 years ago
rules.mk experimental FreeBSD support 12 years ago
util.c incorporated borg drivers from "Hackerspace FFM" - thx guys! 12 years ago
util.h integrating simulator 16 years ago

README.md

Borgware-2D

Firmware for AVR based two-dimensional LED matrices, especially the Blinken Borgs from Das LABOR. Main platform is the Borg16 construction kit. Other supported platforms are the LED Brett projector from Hackerspace FFM or the ELO Ping-Pong Board.

Small Borg16 Glow Lamp Borg

Animations

Matrix Fire Scrolling Text

Games

Snake Tetris

  • Tetris
  • Classic: Standard Tetris Clone
  • First Person Tetris: Rotate the bucket instead of the Tetromino.
  • Bastet: Dices the worst the possible Tetromino the whole time.
  • Snake
  • Pong
  • Space Invaders

Build

Supported build platforms are Linux, FreeBSD and Windows (via Cygwin). Due to customized linker scripts, simulator support is currently limited to x86 and x86_64 archs. Following dependencies have to be met:

Dependencies Linux / FreeBSD

Package names are based on those packages found in the Debian/Ubuntu repositories. Please adapt the names according to your Linux distribution (or FreeBSD for that matter).

  • build-essential (pulls in an ordinary gcc build tool chain for the host)
  • make (gmake on FreeBSD)
  • libncurses5-dev
  • gcc-avr
  • avr-libc
  • binutils-avr
  • avrdude
  • freeglut3-dev

Dependencies Windows

  • WinAVR (includes avr-gcc and avrdude)
  • Cygwin(64)
    • make
    • gcc-core
    • libncurses-devel (Cygwin)
    • libncursesw-devel (Cygwin64)
  • libusb-win32 if you want to use your USBasp programmer device with avrdude on Windows

Configure

Open a terminal and type:

make menuconfig

This brings up a curses based text interface for configuring certain aspects of your target platform. Be careful if you use a full-fledged IDE like Eclipse to manage the build, as integrated terminal emulators tend to choke on curses generated shell output. Just ensure that 'make menuconfig' has been run at least once in an ordinary terminal emulator after a fresh checkout or after issuing 'make mrproper'.

Compile

To build for the actual target platform, just type:

make

If you want to test and debug your code within a GUI application, you can use the simulator:

make simulator

Then you can start the simulator by typing ./borgsim(.exe)

Please keep in mind that the simulator is NOT an emulator. All it does is to compile the source code to an ordinary host application so you can step through your C-Code. The GUI application scans the simulated frame buffer every 40ms and draws its contents.