Permalink
Browse files

Merge branch 'master' of github.com:befedo/pong

  • Loading branch information...
2 parents b931172 + 4de5b63 commit b52ebd6a66b08dabbd6cef26475c74298a79a6fc Marc Ludwig committed Sep 2, 2012
Showing with 478 additions and 397 deletions.
  1. +45 −25 doxygen.conf
  2. +60 −60 src/ball_object.vhd
  3. +82 −113 src/game_controller.vhd
  4. +135 −46 src/main.bdf
  5. +43 −45 src/paddle_object.vhd
  6. +113 −108 src/pong.vhd
View
@@ -1,4 +1,4 @@
-# Doxyfile 1.8.1.2
+# Doxyfile 1.8.2
# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project
@@ -32,7 +32,7 @@ PROJECT_NAME = Pong
# This could be handy for archiving the generated documentation or
# if some version control system is used.
-PROJECT_NUMBER = 0.1
+PROJECT_NUMBER = 1.0
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
@@ -126,7 +126,9 @@ FULL_PATH_NAMES = YES
# only done if one of the specified strings matches the left-hand part of
# the path. The tag can be used to show relative paths in the file list.
# If left blank the directory from which doxygen is run is used as the
-# path to strip.
+# path to strip. Note that you specify absolute paths here, but also
+# relative paths, which will be relative from the directory where doxygen is
+# started.
STRIP_FROM_PATH =
@@ -229,14 +231,15 @@ OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = YES
# Doxygen selects the parser to use depending on the extension of the files it
-# parses. With this tag you can assign which parser to use for a given extension.
-# Doxygen has a built-in mapping, but you can override or extend it using this
-# tag. The format is ext=language, where ext is a file extension, and language
-# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
-# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
-# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
-# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
-# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension,
+# and language is one of the parsers supported by doxygen: IDL, Java,
+# Javascript, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,
+# C++. For instance to make doxygen treat .inc files as Fortran files (default
+# is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note
+# that for custom extensions you also need to set FILE_PATTERNS otherwise the
+# files are not read by doxygen.
EXTENSION_MAPPING =
@@ -249,6 +252,13 @@ EXTENSION_MAPPING =
MARKDOWN_SUPPORT = YES
+# When enabled doxygen tries to link words that correspond to documented classes,
+# or namespaces to their corresponding documentation. Such a link can be
+# prevented in individual cases by by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+
+AUTOLINK_SUPPORT = YES
+
# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
# to include (a tag file for) the STL sources as input, then you should
# set this tag to YES in order to let doxygen match functions declarations and
@@ -269,11 +279,11 @@ CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
-# For Microsoft's IDL there are propget and propput attributes to indicate getter
-# and setter methods for a property. Setting this option to YES (the default)
-# will make doxygen replace the get and set methods by a property in the
-# documentation. This will only work if the methods are indeed getting or
-# setting a simple type. If this is not the case, or you want to show the
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES (the
+# default) will make doxygen replace the get and set methods by a property in
+# the documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
# methods anyway, you should set this option to NO.
IDL_PROPERTY_SUPPORT = YES
@@ -362,7 +372,7 @@ EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
-# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
+# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
# scope will be included in the documentation.
EXTRACT_PACKAGE = NO
@@ -890,13 +900,23 @@ HTML_FOOTER =
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
# style sheet that is used by each HTML page. It can be used to
-# fine-tune the look of the HTML output. If the tag is left blank doxygen
-# will generate a default style sheet. Note that doxygen will try to copy
-# the style sheet file to the HTML output directory, so don't put your own
-# style sheet in the HTML output directory as well, or it will be erased!
+# fine-tune the look of the HTML output. If left blank doxygen will
+# generate a default style sheet. Note that it is recommended to use
+# HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this
+# tag will in the future become obsolete.
HTML_STYLESHEET =
+# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional
+# user-defined cascading style sheet that is included after the standard
+# style sheets created by doxygen. Using this option one can overrule
+# certain style aspects. This is preferred over using HTML_STYLESHEET
+# since it does not replace the standard style sheet and is therefor more
+# robust against future updates. Doxygen will copy the style sheet file to
+# the output directory.
+
+HTML_EXTRA_STYLESHEET =
+
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
# that these files will be copied to the base HTML output directory. Use the
@@ -981,9 +1001,9 @@ DOCSET_FEEDNAME = "Doxygen generated docs"
DOCSET_BUNDLE_ID = org.doxygen.Project
-# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
-# the documentation publisher. This should be a reverse domain-name style
-# string, e.g. com.mycompany.MyDocSet.documentation.
+# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely
+# identify the documentation publisher. This should be a reverse domain-name
+# style string, e.g. com.mycompany.MyDocSet.documentation.
DOCSET_PUBLISHER_ID = org.doxygen.Publisher
@@ -1211,7 +1231,7 @@ SERVER_BASED_SEARCH = NO
# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
# generate Latex output.
-GENERATE_LATEX = NO
+GENERATE_LATEX = YES
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
# If a relative path is entered the value of OUTPUT_DIRECTORY will be
View
@@ -11,66 +11,66 @@ use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
entity BALL_OBJECT is
- generic(
- --! Obere Begrenzung des Balles
- BALL_TOP_LIMIT: integer range 0 to 1199:=10;
- --! Untere Begrenzung des Balles
- BALL_BOTTOM_LIMIT: integer range 0 to 1199:=20;
- --! Linke Begrenzung des Balles
- BALL_LEFT_LIMIT: integer range 0 to 1599:=10;
- --! Rechte Begrenzung des Balles
- BALL_RIGHT_LIMIT:integer range 0 to 1599:=20;
- --! X Koordinate des Balles bei RESET
- BALL_X_START: integer range 0 to 1599:=11;
- --! Y Koordinate des Balles bei RESET
- BALL_Y_START:integer range 0 to 1199:=11;
- --! X Koordinate des Balles bei RESET_2
- BALL_X_START_2: integer range 0 to 1599:=11;
- --! Y Koordinate des Balles bei RESET_2
- BALL_Y_START_2:integer range 0 to 1199:=11;
- --! Takteiler für eine Bewegung in X Richtung
- BALL_X_START_COUNT: natural:=1000;
- --! Takteiler für eine Bewegung in Y Richtung
- BALL_Y_START_COUNT:natural :=5000;
- --! Wert um den der Startwert reduziert wird wenn es zu einer Richtungsumkehr kommt
- BALL_SPEED_UP:natural := 150;
- --! Beschleunigung des Balles in Y Richtung
- BALL_SPEED_UP_Y:natural := 150;
- --! Maximaler Zählerstand bis die Bewegung umgekehrt wird
- BALL_Y_START_COUNT_MAX:natural :=40000;
- --! Minimaler Zählerstand für die Maximal Geschwindigkeit in Y Richtung
- BALL_Y_START_COUNT_MIN:natural :=50000;
- --! Minimaler Start-Zählwert
- BALL_MIN_COUNT: natural := 50000;
- --! Ausdehnung des Balles
- BALL_DIMENSION:natural:=6
- );
- port(
- --! Takteingang für die Bewegung des Balles
- CLK: in bit;
- --! Setzt den Ball auf die erste Start Position zurück
- RESET: in bit;
- --! Setzt den Ball auf die zweite Start Position zurück
- RESET_2: in bit;
- --! Ausgang ob die aktuelle Position(V_ADR und H_ADR) ein Bildpunkt enthält
- DRAW: out std_logic;
- --! Vertikale Adresse
- V_ADR: in bit_vector(11 downto 0);
- --! Horizontale Adresse
- H_ADR: in bit_vector(11 downto 0);
- --! Aktuelle X Position der Ball-Mitte
- X_CURRENT:out integer range 0 to 1599;
- --! Aktuelle Y Position der Ball-Mitte
- Y_CURRENT:out integer range 0 to 1199;
- --! Eingang für die Bewegungsrichtung des linken Paddles(hoch)
- PADDLE_1_UP: in bit;
- --! Eingang für die Bewegungsrichtung des linken Paddles(runter)
- PADDLE_1_DOWN: in bit;
- --! Eingang für die Bewegungsrichtung des rechten Paddles(hoch)
- PADDLE_2_UP: in bit;
- --! Eingang für die Bewegungsrichtung des linken Paddles(runter)
- PADDLE_2_DOWN: in bit
- );
+ generic(
+ --! Obere Begrenzung des Balles
+ BALL_TOP_LIMIT: integer range 0 to 1199:=10;
+ --! Untere Begrenzung des Balles
+ BALL_BOTTOM_LIMIT: integer range 0 to 1199:=20;
+ --! Linke Begrenzung des Balles
+ BALL_LEFT_LIMIT: integer range 0 to 1599:=10;
+ --! Rechte Begrenzung des Balles
+ BALL_RIGHT_LIMIT:integer range 0 to 1599:=20;
+ --! X Koordinate des Balles bei RESET
+ BALL_X_START: integer range 0 to 1599:=11;
+ --! Y Koordinate des Balles bei RESET
+ BALL_Y_START:integer range 0 to 1199:=11;
+ --! X Koordinate des Balles bei RESET_2
+ BALL_X_START_2: integer range 0 to 1599:=11;
+ --! Y Koordinate des Balles bei RESET_2
+ BALL_Y_START_2:integer range 0 to 1199:=11;
+ --! Takteiler für eine Bewegung in X Richtung
+ BALL_X_START_COUNT: natural:=1000;
+ --! Takteiler für eine Bewegung in Y Richtung
+ BALL_Y_START_COUNT:natural :=5000;
+ --! Wert um den der Startwert reduziert wird wenn es zu einer Richtungsumkehr kommt
+ BALL_SPEED_UP:natural := 150;
+ --! Beschleunigung des Balles in Y Richtung
+ BALL_SPEED_UP_Y:natural := 150;
+ --! Maximaler Zählerstand bis die Bewegung umgekehrt wird
+ BALL_Y_START_COUNT_MAX:natural :=40000;
+ --! Minimaler Zählerstand für die Maximal Geschwindigkeit in Y Richtung
+ BALL_Y_START_COUNT_MIN:natural :=50000;
+ --! Minimaler Start-Zählwert
+ BALL_MIN_COUNT: natural := 50000;
+ --! Ausdehnung des Balles
+ BALL_DIMENSION:natural:=6
+ );
+ port(
+ --! Takteingang für die Bewegung des Balles
+ CLK: in bit;
+ --! Setzt den Ball auf die erste Start Position zurück
+ RESET: in bit;
+ --! Setzt den Ball auf die zweite Start Position zurück
+ RESET_2: in bit;
+ --! Ausgang ob die aktuelle Position(V_ADR und H_ADR) ein Bildpunkt enthält
+ DRAW: out std_logic;
+ --! Vertikale Adresse
+ V_ADR: in bit_vector(11 downto 0);
+ --! Horizontale Adresse
+ H_ADR: in bit_vector(11 downto 0);
+ --! Aktuelle X Position der Ball-Mitte
+ X_CURRENT:out integer range 0 to 1599;
+ --! Aktuelle Y Position der Ball-Mitte
+ Y_CURRENT:out integer range 0 to 1199;
+ --! Eingang für die Bewegungsrichtung des linken Paddles(hoch)
+ PADDLE_1_UP: in bit;
+ --! Eingang für die Bewegungsrichtung des linken Paddles(runter)
+ PADDLE_1_DOWN: in bit;
+ --! Eingang für die Bewegungsrichtung des rechten Paddles(hoch)
+ PADDLE_2_UP: in bit;
+ --! Eingang für die Bewegungsrichtung des linken Paddles(runter)
+ PADDLE_2_DOWN: in bit
+ );
end entity BALL_OBJECT;
architecture BALL_OBJECT_ARC of BALL_OBJECT is
Oops, something went wrong.

0 comments on commit b52ebd6

Please sign in to comment.