A> |
Die Veranstaltung Praktische Informatik II vermittelt Grundlagen der Hardwareseite der Informatik, dazu zählt insbesondere die hardwarenahe Programmierung. In den Übungen sollen sich die Studenten mit Programmierung eines realen Mikroprozessors in Assembler auseinander setzen. Das didaktisches Beispiel dient hierzu der MC68000 von Motorola. Da dieser Prozessor in den heutigen Personal Computern kaum mehr verbreitet ist(Amiga und Atari ST basierten auf der 68000er Familie) werden die Übungen auf einem Simulator abgehandelt. Wer jetzt denken mag warum die hardwarenahe Programmierung im Rahmen der PI2 nicht auf einem state-of-the-art Prozessor durchgeführt wird, dem sei folgendes gesagt: Der MC68000 und seine Nachfolger sind in der Praxis nach wie vor von großer Bedeutung, v.a. im Bereich der embedded systems(der typische Prozessor für die Waschmaschine). Seine einfachen Strukturen eigenen sich zudem sehr gut um Einsteiger an Programmierung der "untersten Ebene" heranzuführen.
Wie auch in PI1 werden die Programmierübungen per abox abgegeben. Wer sich nicht mit der abox auskennt, sollte sich das System von Komolitonen erklären lassen. Wichtig: Die abox funktioniert nur im PI-Pool und dort nur auf PI-Accounts!
Folgende Regeln gelten für die abox-Abgabe:
Um den BSVC-Simulator auf einem PI-Pool Account benutzen zu können, muß einmalig folgendes shell-Skript ausgeführt werden:
/home/pi2/bsvc_dir/bsvc_install.sh
Danach stehen folgende Kommandos zur Verfügung:
68kasm
: Übersetzen der Assemblerlistings in Binärcode für den
Simulator
bsvc
: Der Simulator
68000doc
: Das komplette Prozessormanual von Motorola
bsvcdoc
: Die Dokumentation zum BSVC-Simulator
Zusätzlich wird in Eurem Homeverzeichnis das Unterverzeichnis
bsvc_samples
angelegt, hierhin befinden sich einige Beispiellisting und auch die
Datei simple.setup
, die ihr jedesmal in den Simulator laden müßt bevor
ihr damit arbeiten könnt.
Wer den BSVC zuhause auf seinem Linux installieren will, dem sei mit folgender step-by-step Anleitung weitergeholfen:
bsvc-2.1-src.tar.gz
von der
BSVC-Downloadseite ladencp /<download_dir>/bsvc-2.1-src.tar.gz /tmp/.
cd /tmp
gunzip bsvc-2.1-src.tar.gz
tar xvf bsvc-2.1-src.tar
cd bsvc-2.1
cd src
which wish
eingeben: Es wird der Pfad des Tcl/Tk-Tools wish ausgegeben -->
merken(sollte in aller Regel /usr/bin/wish
sein)
Makefile.common
in einem Editor (pico, emacs, vi, ... ganz nach Gusto)
öffnen und folgende Änderungen vornehmen
- PROJECT_BASE = /tmp/bsvc-2.1
- INSTALL_DIR = /usr/bin
- WISH = <das vorher gemerkte Verzeichnis von wish>
make -f Makefile.Linux
kompilieren (kann ein paar Minuten dauern)make install -f Makefile.Linux
installieren68kasm
(Assemblierer) und bsvc
(Simulator) sollten
nun zur Verfügung stehen/tmp/bsvc-2.1/samples/m68000
enthält einige Beispielfiles
und unter anderem die Datei simple.setup
die vor jeder Benutzung in den Simulator
geladen werden muß. Daher sollte man sich dieses Verzeichnis an eine geeignete Stelle kopieren
(z.B. ins Home-Verzeichnis des Users mit dem man den Simulator benutzen will)/tmp/bsvc-2.1/doc
enthält einiges an Dokumentation zum
Simulator. Auch den Subset davon, den man gebrauchen könnte, evtl. an eine geeignete
Stelle schieben./tmp/bsvc-2.1
und das Archiv /tmp/bsvc-2.1-src.tar
löschen.
Wer nicht über Massenspeicher redest, sondern ihn einfach nur hast, kann das natürlich
auch sein lassen.Es gibt auch eine BSVC-Version für Windows, wer diese verwenden will, sollte folgendermaßen vorgehen:
bsvc-2.1-win32.exe
und tcl803.exe
von der
BSVC-Downloadseite ziehentcl803.exe
ausführen und wie ein gewohntes Windows-Programm installieren.bsvc-2.1-win32.exe
ausführen, dies ist ein selbstentpackendes Archiv und
es erzeugt das Unterverzeichnis BSVC-Setup
BSVC-Setup
das Setup-Programm Setup.exe
ausführen. Während der Installation wird nach dem Pfad von wish.exe
gefragt(gehört zu Tcl, das man zuvor installiert hat). Wenn man den Pfad nicht mehr
weiß, sollte man vielleicht seine Platte nach wish.exe
durchsuchen lassen.simple.setup
in selbigen geladen werden. Diese Datein ist im Samples-Unterverzeichnis der BSVC-Installation
zu finden.68kasm
kopiert sich während der Installation ins
Windows-Verzeichnis und steht damit auf der Kommandozeile zur Verfügung