Arduino N64 Controller Library und Tetris-Port

März 26th, 2012 by Kai

Moved to GitHub: https://github.com/pothos/arduino-n64-controller-library

Die Arduino-Plattform (arduino.cc) bietet einen einfachen Einstieg in die Microcontroller-Programmierung und ist gerade im Nicht-Geek-Bereich eine Erfolgsgeschichte. Die vielen Bibliotheken ermöglichen es, hauptsächlich auf der „Organisationsebene“ zu bleiben – in kurzer Zeit war aus der Kombination von TVout, dem verfügbaren Tetris-Clone und einigen Modifikationen zum Speichern der Highscore im EEPROM eine archaische Spielkonsole aufgebaut. Dank dieser Anleitung konnte ein N64-Controller benutzt werden. Während für NES relativ viel Quellcode verfügbar ist, gibt es keine komfortable N64-Controller-Library, da wegen exaktem Timing Inline-Assembler verwendet wird und der PIN fest eingeschrieben ist. Meine Bibliothek ist vielleicht nicht in schönster Manier geschrieben und alles andere als optimal in der Codegröße, aber für eine Erstveröffentlichung sollte es ausreichen – komfortabel ist sie zumindest (auch alle möglichen PINs von 0 bis 13 können unabhängig voneinander für Controller benutzt werden).

Die Lizenz ist unklar, es handelt sich hauptsächlich um Modifikationen und Zusammenstellungen. Der Tetris-Port „Simple Tetris Clone“ ist z.B. unter der MIT-License veröffentlicht, die meisten Bibliotheken unter der (L)GPL.

Version 1 der Library (26.03.2012) 2 der Library (26.07.2012),

getestet auf Arduino Uno: N64Controller

Hier der Quelltext für das Spiel: N64Tetris

Beispielquellcode:

#include <N64Controller.h>
N64Controller player1 (12); // PIN 12
void setup() {
    player1.begin(); // Initialisierung
}
void loop() {
    delay(30);
    player1.update(); // Tastenzustand auslesen
    if (player1.button_A() && player1.button_D_down()
        || player1.button_Start()) { // bitte keinen Sinn suchen
        int xachse = player1.axis_x(); // kann negativ oder positiv sein,
                                   // je nach Ausrichtung des Analog-Sticks
    }
    // …
}

Facharbeit

Oktober 23rd, 2010 by Kai

Ich habe meine Facharbeit in Mathe geschrieben zum Thema Public-Key-Kryptographie am Beispiel des RSA-Verfahrens: heutige Umsetzung und Implementierung.

Hier sind die Links:

Facharbeit als PDF oder online ohne PDF-Viewer (kein PDF-Viewer? → pdfreaders.org)

als ODT (LibreOffice) – falls ihr wissen wollt, wie die Formeln geschrieben werden

schnelles hybrides Verschlüsselungs-Programm aufbauend auf dem Facharbeits-Code (src)

das kompilierte Programm für Linux (64 Bit) braucht die Ubuntu-Pakete libgmp3c2 libgmpxx4ldbl und zum Kompilieren libgmp3-dev

und das kompilierte Programm für Linux (32 Bit)

das kompilierte Programm für Windows