Course Related Lecture
Material for:
- Advanced Hardware
Oriented C and Assembly Language Programming
- Advanced Software
Development Project Implementation
Retro
Programming - Vectrex Academy 2021
General
Information
- Advanced Elective Courses (twice 2 SWS /
3 ECTS, thus total of 4 SWS / 6 ECTS )
- Fraunhofer IAIS Initiative
"Roberta - Lernen mit Robotern" -
- Advanced
skills in programming, computer science,
and calculus required
- Limited number of seats, entry test must be passed.
Schedule
Spring Term 2021
- Weekly appointments, Monday 11:30 - 13:00 and
Monday 17:15 - 18:45
- Timeslots might still be subject to change.
- The lecture is
presented as online-tutorial via Alfaview.
- Please subscribe to
the corresponding Moodle course.
Course
Topics and Educational Objectives
- Advanced knowledge of the C Programming Language
- Advanced C Programming Skills
- Inner workings of a C compiler
- MC 6809 assembly language
programming
- Deeper understanding of how C is mapped to
assembly language
- Advanced machine oriented C-programming techniques
- Memory efficient data structures, runtime
efficient algorithms
- Game development techniques, bit twiddling hacks
- Vector graphics, the Vectrex system
Development
Tools and Environment
- Laptop, Windows,
Linux or Mac
- VIDE
- Vectrex Integrated
Development Environment
(by Malban)
- ParaJVE
Vectrex Emulator (by Parabellum)
- jsvecx
Vectrex Emulator for your web browser
(by Dr. Snuggles)
- Geany
Configurable Integrated Development
Environment
- Notepad++
source code editor
Project
Resources
- Vectrex Academy Game Project Template and Demo (vectrex.zip)
- MinGW
environment for running GCC
under Windows (installer)
- Install G++
(GCC) with MinGW (it is
sufficient to install only
the needed libraries, but no
harm in installing
everything)
- In Windows, add
C:\MinGW\bin to user and
system path variable
- How to edit
environemt variables in
Windows 10 (video)
- Optional: configuration
files for
Visual Studio
(Code) integration
Vectrex C
Programming Interface
Vectrex
Programming Documentation
- Introduction to
Vectrex Programming by Christoph Tumber (PDF)
- Vectrex Programmer's Manual - Part 1 (PDF)
- Vectrex Programmer's Manual - Part 2 (PDF)
- Motorola MC6809 Programming
Manual (PDF)
- Motorola
MC6809 Programmers Reference (PDF)
Vectrex
Programming Online Resources
Vectrex
Web Pages
Book
References
- Game Development and Retro Programming
- "Making 8-Bit Arcade Games in C", Steven Hugg
- "Game Design und Produktion", Gunther Rehfeld,
Hanser Verlag
- "Classic Game Design", Franz Lanzinger, Mercury
Learning and Information
- "Game Programming Patterns", Robert Nystrom,
Genever Benning
- MC6809 and Assembly Language Programming
- "Der Mikroprozessor 6809", Jörg Zschocke, Springer
Verlag, 1986
- "Mikrocomputertechnik mit dem Prozessor 6809 und
den Prozessoren 6800 und 6802", Günter Schmitt,
Oldenbourg Verlag, 1994
- "Advanced 8-Bit Microprocessor: MC6809", Rober J.
Simpson, Raveendran Paramesran, Springer Verlag 1998
- "6809 Assembly Language Programming", Lance A.
Leventhal, Osborne / McGraw-Hill, 1981
- "6809 Microcomputer Programming & Interfacing
with Experiments", Andrew C. Staugaard, Blacksburg,
1981
- "The MC6809 Cookbook", Carl D. Warren, Tab Books,
1980
Disclaimer
- Pforzheim
University is
not responsible for the
contents of external
websites.
Acknowledgements
in no particular order
- Many thanks go to Mr.
Helmut Müller for supporting this
project from the very beginning on
and for generously donating parts of
his Vectrex collection to the
Computer Science Lab.
- Also many thanks to Mr.
Christopher Salomon for his great
support and for integrating our C
Setup (and several other whishes)
into VIDE, he also generously
donated parts of his personal
Vectrex collection to the Computer
Science Lab.
- And many thanks to Mr.
Franck Chevassu, the creator of the
ParaJVE Vectrex emulator, for kindly
providing us with his ParaJVD
Vectrex debugger and for giving us
free licenses for this tool.
Latest modification on 03/24/2021,
09:30
- Link to Vector Gaming Forum updated
|