<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=MOS_Technology_VIC_II</id>
	<title>MOS Technology VIC II - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=MOS_Technology_VIC_II"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=MOS_Technology_VIC_II&amp;action=history"/>
	<updated>2026-05-24T19:50:46Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=MOS_Technology_VIC_II&amp;diff=38594&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=MOS_Technology_VIC_II&amp;diff=38594&amp;oldid=prev"/>
		<updated>2025-10-19T11:01:54Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:MOS6569R3 chtaube061229.jpg|miniatur|MOS 6569R3 auf einem C64-Mainboard]]&lt;br /&gt;
[[Datei:GRafik VIC 8565R2 C64 II.jpg|miniatur|Der VIC II 8565R2 für den C64-II]]&lt;br /&gt;
&lt;br /&gt;
Der &amp;#039;&amp;#039;&amp;#039;VIC-II&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;Video Interface Controller-II&amp;#039;&amp;#039;&amp;#039;) von [[MOS Technology]], Nachfolger des [[MOS Technology VIC|VIC]], ist ein [[Video Display Controller]], der im [[Commodore International|Commodore]]-[[Heimcomputer]] [[Commodore 64|C64]] und (als leicht erweiterter [[VIC IIE]] bzw. [[VIC III]]) im [[Commodore 128|C128]] zum Einsatz kam. Er wurde in [[National Television Systems Committee|NTSC]]- (MOS 6567/MOS 8562) und [[Phase Alternating Line|PAL]]-Versionen (MOS 6569/MOS 8565) produziert.&lt;br /&gt;
Eine Besonderheit des VIC II sind seine 8 Hardware-[[Sprite (Computergrafik)|Sprite]]s mit Kollisionsabfrage.&lt;br /&gt;
&lt;br /&gt;
== Technische Daten ==&lt;br /&gt;
&lt;br /&gt;
[[Datei:VIC-II color map.svg|miniatur|Die 16 Farben des VIC II]]&lt;br /&gt;
[[Datei:VIC-II.svg|miniatur|Der MOS 6567 VIC II]]&lt;br /&gt;
&lt;br /&gt;
* Erzeugung des Systemtakts für die anderen Chips&lt;br /&gt;
* Automatischer [[Dynamic Random Access Memory #Refresh|Refresh]] für dynamische RAMs ([[Dynamic Random Access Memory|DRAM]]).&lt;br /&gt;
* Bus und Speicher kann mit Prozessoren der [[MOS Technology 6502|6502]]-Familie ohne große Verlangsamung eines der beiden Chips gemeinsam verwendet werden, beide Chips greifen abwechselnd darauf zu.&lt;br /&gt;
* 16 [[Byte|kB]] Adressbereich ([[Speicherdirektzugriff|DMA]]) für Video- und Zeichensatzspeicher&lt;br /&gt;
* Separater 1000&amp;amp;nbsp;×&amp;amp;nbsp;4&amp;amp;nbsp;Bit-Farbspeicher, beim C64 mit statischem RAM ([[Static random-access memory|SRAM]]) realisiert. (Im für die [[Hauptprozessor|CPU]] vorgesehenen Adressraum der Größe 1&amp;amp;nbsp;kB erscheint nur ein [[Nibble]] je [[Speicheradresse|adressiertem]] Byte.)&lt;br /&gt;
* 16 Farben&lt;br /&gt;
* Textmodus mit 25 Zeilen zu 40 Zeichen&lt;br /&gt;
* 3 Textmodi:&lt;br /&gt;
** &amp;#039;&amp;#039;Hires&amp;#039;&amp;#039; mit 8&amp;amp;nbsp;×&amp;amp;nbsp;8 [[Pixel]]n pro Zeichen, einer aus 16 Vordergrundfarben je Zeichen und einer für den gesamten Bildschirm geltenden Hintergrundfarbe.&lt;br /&gt;
** &amp;#039;&amp;#039;Extended-Color Mode&amp;#039;&amp;#039; (ECM) mit 8&amp;amp;nbsp;×&amp;amp;nbsp;8 Pixeln pro Zeichen, einer aus 16 Vordergrundfarben und einer von 4 (aus 16) Hintergrundfarben je Zeichen, Zeichensatz auf die ersten 64 Zeichen eingeschränkt.&lt;br /&gt;
** &amp;#039;&amp;#039;Multi-Color&amp;#039;&amp;#039; mit 4&amp;amp;nbsp;×&amp;amp;nbsp;8 (doppeltbreiten) Pixeln pro Zeichen, je Zeichen eine aus 8 Vordergrundfarben, und 3 bildschirmweit geltenden weiteren Farben aus 16. Hires-Zeichen und Multicolor-Zeichen können dabei beliebig gemischt werden, die Vordergrundfarbe ist nur aus den ersten 8 Farben wählbar.&lt;br /&gt;
* 2 Grafikmodi:&lt;br /&gt;
** &amp;#039;&amp;#039;Hires&amp;#039;&amp;#039; mit 320&amp;amp;nbsp;×&amp;amp;nbsp;200 Pixeln, und einer frei wählbaren Vorder- und Hintergrundfarbe pro 8&amp;amp;nbsp;×&amp;amp;nbsp;8-Pixel-Feld&lt;br /&gt;
** &amp;#039;&amp;#039;Multi-Color&amp;#039;&amp;#039; mit 160&amp;amp;nbsp;×&amp;amp;nbsp;200 (doppeltbreiten) Pixeln, 3 frei wählbaren Farben je 4&amp;amp;nbsp;×&amp;amp;nbsp;8 Pixel-Feld sowie einer bildschirmweit einstellbaren Farbe.&lt;br /&gt;
* Hardware-Pixel-[[Bildlauf]] (vertikal und horizontal um maximal 8 &amp;#039;&amp;#039;Hires-&amp;#039;&amp;#039;Pixel)&lt;br /&gt;
* 8 Hardware-[[Sprite (Computergrafik)|Sprite]]s mit 24&amp;amp;nbsp;×&amp;amp;nbsp;21 Pixeln Größe mit Kollisionsabfrage, Multicolor-Möglichkeit und getrennter Skalierbarkeit auf das jeweils Doppelte in X- und Y-Richtung.&lt;br /&gt;
* Optionale [[Interrupt]]s bei Sprite-Sprite- und Sprite-Grafik-Kollisionen&lt;br /&gt;
* Rasterzeilen-Interrupts&lt;br /&gt;
* [[Lichtgriffel]]-Funktion mit Interrupts&lt;br /&gt;
* Ausgabesignal: Y/C, getrennte [[Luminanz]] und [[Chrominanz]] (ähnlich wie bei [[S-Video]], nur mit geringerer Luma-Amplitude)&lt;br /&gt;
&lt;br /&gt;
== Programmierung des VIC II ==&lt;br /&gt;
Eine zentrale Rolle bei der Programmierung des VIC II spielt der [[Rasterzeileninterrupt]]. Dieser kann dazu dienen, an bestimmten Bildschirmpositionen das aktuelle Hauptprogramm anzuhalten und neue Registerinhalte in einige VIC II-Register zu laden. Auf diese Weise kann man sehr einfach den Bildschirm in mehrere verschiedene Bereiche unterteilen ([[Split Screen]]). Weiterhin kann man mit deren Hilfe recht leicht die 8 Sprites mehrfach pro Bildaufbau verwenden, so dass man sehr viel mehr Sprites darstellen kann. Diese beiden Verfahren werden von sehr vielen C64-Spielen verwendet.&lt;br /&gt;
&lt;br /&gt;
Weiterhin stellt der Rahmen um die Grafik des C64 ein Problem dar, besonders bei PAL-Systemen ist dieser sehr breit. Der VIC II bietet keinerlei Register, die Darstellung von Grafik in diesem Bereich ermöglichen, allerdings kann man durch einige geschickte Registermanipulationen zur richtigen Zeit die Maskierung der Darstellung durch den Rahmen abschalten und so zumindest Sprites in diesem Bereich darstellen, so dass sich die Grafikdarstellung auf bis zu 402 Pixel Breite und ungefähr 284 Pixel Höhe (bei PAL, weniger bei NTSC-Systemen) erweitern lässt.&lt;br /&gt;
&lt;br /&gt;
Auch die Farbauflösung in den Grafikmodi lässt sich durch geschickte Registermanipulation erhöhen. Man kann den VIC II dazu zwingen, nicht nur bei jeder achten, sondern bei jeder Rasterzeile neue Farbinformation aus dem Speicher zu laden. Das hat zur Folge, dass bei einer bildschirmfüllenden Grafik zwar mehr als 64 % der Rechenzeit für die Grafikdarstellung aufgewendet wird, aber man erhält einen fast vollwertigen 16-Farben-Modus (&amp;#039;&amp;#039;FLI, Flexible Line Interpreter&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
Schnelles Scrollen von Bitmap-Grafik ist ebenfalls durch ausgefeilte Registermanipulationen möglich, horizontal kann so der Bildschirmanfang verschoben werden (&amp;#039;&amp;#039;HSP – Horizontal Screen Position&amp;#039;&amp;#039;), was ein viel zu rechenaufwendiges Umkopieren der gesamten Bitmap alle 8 Pixel (wie es bei herkömmlichem Hardwarescrolling nötig wäre) überflüssig macht – es braucht nur der hereinscrollende Bereich neu beschrieben zu werden. Vertikal kann die Bitmap mittels FLD (&amp;#039;&amp;#039;Flexible Line Distance&amp;#039;&amp;#039;) nach unten bzw. per &amp;#039;&amp;#039;Linecrunching&amp;#039;&amp;#039; nach oben verschoben werden (&amp;#039;&amp;#039;VSP – Variable Screen Position&amp;#039;&amp;#039;). Zusammen ist dieser Effekt unter C64-Programmierern als AGSP (Any Given Screen Position) bekannt.&amp;lt;ref&amp;gt;codebase64.org: [https://codebase64.org/doku.php?id=base:agsp_any_given_screen_position Any Given Screen Positioning (AGSP) HSP/VSP with a line crunch]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Siehe auch|DYCP}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.cebix.net/VIC-Artikel.txt VIC II-Spezifikation]&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste Commodore}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Commodore-Chip]]&lt;br /&gt;
[[Kategorie:Grafikchip]]&lt;br /&gt;
[[Kategorie:MOS Technology]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>