- sfreakblog

Werbung
Fachschule für Technik und Wirtschaft
XXXXXXXXXXXX
Projektarbeit
Name:
Klasse:
Datum:
XXXXXXXXX
XXXXXXXXX
04.02.2005
-2-
Thema:
Entwicklung und Herstellung eines
Arcadecontrollers sowie Anfertigung
der für den PC benötigten
Interfaceschaltung
Spezialisierungsrichtung: Nachrichtentechnik
Betreuer: XXXXXXXXXXX
-3-
„Freestyler“ – von einer Idee zum fertigen Projekt
Inhaltsverzeichnis 1/2
Seite
1
Die Idee
5
1.1
Was ist ein Arcadecontroller?
5
1.2
Emulationsmöglichkeiten am PC
7
2
Erste Überlegungen zur technischen Realisierung
7
2.1
Vorhandene Hardware in der Projektumgebung
9
2.2
Wie kommuniziert der Controller mit dem PC?
9
2.3
Allgemeiner Aufbau und Funktion der Tastatur
10
2.4
Anordnung der Bedienelemente und Gehäusedesign
12
2.5
Vergleich mit im Handel erhältlichen Geräten
12
2.6
Materialbeschaffung
13
3
Die Interfaceschaltung
13
3.1
Protokolle für die Datenübertragung zwischen PC und Tastatur
14
3.2
Schaltungsanalyse
15
3.3
Das Layout der Lochrasterplatine
16
3.4
Bestückung der Platine
17
3.5
Erste Funktionstests, Fehlersuche und Problembeseitigung
17
3.6
Einbau ins Gehäuse
18
4
„Tastaturhack“ bzw. „Tastaturreversing“
19
4.1
Logik des Tastaturprozessors und Ghost - Key - Problem
19
4.2
Erstellung eines Tastenkontaktplanes
20
4.3
Entwicklung der Tastaturmatrix
21
4.4
Verteilung der Controllerfunktionen auf der Matrix
21
-4-
Inhaltsverzeichnis 2/2
Seite
5
Bau des Controllers
22
5.1
Das Gehäuse
22
5.2
Montage der Joysticks und Pushbutton
22
5.3
Montage der Tastaturprozessorplatine
22
5.4
Herstellung der elektrischen Verbindungen
23
5.5
Testen aller gewünschten Funktionalitäten
23
Anlagenverzeichnis
Anlage 1
Der komplette Tastenkontaktplan
24
Anlage 2
Tastenverteilung auf der 18 Zeilen x 8 Spalten - Matrix
25
Anlage 3
Mikroschalterzuordnung auf der Tastaturmatrix
26
Anlage 4
Übersicht der benötigten Gehäuseteile
27
Anlage 5
Auszug aus dem „Freestyler“ - Konfigurationsfile für MAME
28
Anlage 6
Kleines Arcade - ABC
30
Anlage 7
Professionelle Alternativen
32
-51 Die Idee
Durch Zufall habe ich vor einigen Jahren die Möglichkeit der Nachbildung anderer
Computersysteme auf dem PC entdeckt.
Ein C64 - Emulator, welcher die Software und Hardware aus vergangenen Tagen in
absoluter Perfektion wieder aufleben ließ, weckte mein Interesse an diesem Thema.
Es war zum Beispiel möglich, das original C64 - Diskettenlaufwerk über ein
spezielles Schnittstellenkabel am PC zu betreiben.
Nach dem C64 - Emulator testete ich weitere Programme, um beispielsweise den
Amiga, den Robotron Z1013, die Rechner der ostdeutschen KC - Serie, aber auch
diverse Spielkonsolen am PC zu simulieren. Die benötigte Software kann häufig
kostenlos aus dem Internet herunter geladen werden. Vor ca. einem Jahr fand ich
eine englische Web - Seite, welche sich mit der Emulation von Spielhallenautomaten
beschäftigte. Diese Videospielautomaten werden auch als ARCADE - Maschinen
bezeichnet. Es existieren verschiedene Emulationsprogramme für diese Automaten.
Als bekannteste Software wird MAME (Multiple Arcade Machine Emulator)
kontinuierlich weiterentwickelt. Wie der Name verrät, unterstützt MAME viele
verschiedene Arcadesysteme. Momentan ist es mit diesem Emulator möglich, über
5000 Automaten am PC zu simulieren. Für diese Software habe ich meinen
Controller entwickelt.
1.1 Was ist ein Arcadecontroller?
Bei einem Arcadecontroller handelt es sich um ein robustes Eingabegerät, mit dem
schnelle Reaktionsspiele optimal bedient werden können. Man unterscheidet Einbzw. Mehrspielergeräte. Je nach Ausführung ist ein solcher Controller mit
mindestens einem 8 - Wege - Arcadejoystick und einer Vielzahl mechanisch sehr
belastbarer Taster ausgerüstet. Diese Taster werden auch als „Pushbuttons“
bezeichnet. Jeder Joystick hat vier und jeder Taster hat einen austauschbaren
Mikroschalter. Diese Mikroschalter vertragen problemlos über 100.000 Schaltspiele
und können bei Verschleiß sehr einfach gewechselt werden. Im Handel sind
Controller für Spielkonsolen und Personalcomputer erhältlich. Allerdings ist der Preis
dieser Geräte oftmals inakzeptabel, da meist nur hochwertige Einzelteile verbaut
wurden. Ein neuer Arcadejoystick kostet je nach Ausführung ca. 50€. Im Internet
fand ich viele Anregungen, an denen ich mich bei der Realisierung meines Projektes
orientieren konnte.
-6Es gab eine Menge negativer Beispiele:
Ich wollte ein schöneres Design und benötigte vor allem mehr Funktionen!
Ebenso fand ich aber auch die absoluten „Hightech - Controller“:
Bei diesen Arcadeboards wurden nur hochwertige elektronische und mechanische
Bauteile verwendet. Ein in den Boards eingesetzter Mikrocontroller kommuniziert
über eine spezielle Treibersoftware mit dem PC. Der Vorteil dieser Lösungen besteht
in der Programmierbarkeit der Eingabegeräte. Man kann diese Controller fast mit
jeder Software verwenden.
Die Realisierung setzt allerdings ein fundiertes Programmierwissen, handwerkliches
Geschick und einen nicht unerheblichen finanziellen Aufwand voraus.
Ich hatte mich für einen Mittelweg entschieden. Bei meinem Controller mussten die
Kosten vertretbar bleiben. Eine ansprechende Optik mit viel Funktionalität und vor
allem eine einfache Konfiguration waren die Hauptziele.
-71.2 Emulationsmöglichkeiten am PC
Unter dem Begriff Emulation versteht man die Nachbildung bzw. die Simulation von
Hardware durch eine spezielle Software. Diese Programme werden umgangssprachlich als Emulatoren bzw. EMUs bezeichnet und sind unter anderem für alte
Heimcomputer, alte Spielkonsolen, die bereits erwähnten Arcadeautomaten und
Flipperautomaten verfügbar. Grundvoraussetzung für den erfolgreichen Betrieb eines
EMUs ist ein leistungsfähiger PC. In vielen Fällen kann man Originalzubehör,
wie z.B. Diskettenlaufwerke oder diverse Eingabegeräte am Emulator betreiben.
Diese Bilder sollen einige Möglichkeiten aufzeigen:
2 Erste Überlegungen zur technischen Realisierung
Nachdem ich viel Zeit mit dem Lesen von Internetforen und Homepages zugebracht
hatte, fasste ich den Entschluss, einen Multifunktionscontroller zu bauen. Der
Controller sollte über einen Einspieler- und über einen Zweispielermodus verfügen.
Zusätzlich plante ich einen 3. Joystick senkrecht in der Gehäusefront, um synchrone
Auf- und Abwärtsbewegungen zwischen Monitor und Joystick zu erreichen. Als
weitere Anforderung musste durch 2 Pushbuttons in der linken und rechten
Gehäuseseite eine optimale Kontrolle von Flipperspielen gewährleistet werden. Alle
benannten Faktoren setzten eine ausreichende Größe und ein entsprechendes
Controllergewicht voraus. Bei der Entwicklung konzentrierte ich mich hauptsächlich
auf die Kompatibilität zum Arcadeemulator MAME. Es existieren wenig Automaten,
bei denen beide Spieler zur Steuerung neben einem Joystick gleichzeitig bis zu 6
Pushbuttons betätigen können. Um diese Spiele mit dem Controller zu bedienen, ist
-8eine sinnvolle Anordnung der 2 Joysticks und 12 Buttons auf dem Controllergehäuse
notwendig. In den meisten Automaten mit komplexen Steuerungen laufen
Sportspiele. Durch Capcom`s weltweit populäre „Streetfighter “ - Automatenserie
wurden auch für deutsche Spieler asiatische Kampftechniken am Monitor erlebbar.
Auf jeder der 6 Tasten liegt eine bestimmte Angriff- oder Verteidigungsfunktion der
Spielfigur. Durch geschickte Kombination aus Joystickbewegung und dem Betätigen
mehrerer Tasten in bestimmten Reihenfolgen, erreicht man die vom Gegner
gefürchteten Spezialtechniken bzw. „Specialmoves“.
Bei der Mehrzahl der Videoautomaten stehen jedem Spieler jedoch maximal 3
Pushbutton zur Verfügung. Diese 3 Taster wollte ich zentral erreichbar, auf der
Gehäuseoberseite, neben dem jeweiligen Joystick positionieren.
Außer den 14 bereits erwähnten Spieltasten wurden noch 2 weitere Funktionstasten
für die Spielmoduswahl (1 od. 2 Spieler) und eine Taste für den Münzeinwurf
benötigt.
Letztere Taste wird auch als Coin - Taste bezeichnet und ist notwendig, weil MAME
die originalen Automaten - ROMs verarbeitet. Jeder Spielhallenautomat lässt sich nur
durch den Einwurf eines entsprechenden Münzbetrages (Coin) aktivieren. MAME
wertet das einmalige Betätigen der Coin - Taste als einen Münzeinwurf aus.
Wie bereits erwähnt, ist jeder der 3 Joysticks mit 4 Mikroschaltern bestückt. Zu
diesen 12 Mikroschaltern kommen noch die 17 Schalter der Pushbuttons. Dies
bedeutet, dass insgesamt 29 Schalter mit dem PC kommunizieren.
-9In folgender Tabelle sind alle Funktionen meines Controllers übersichtlich dargestellt:
Spieler 1:
P1 Joy up
P1 Joy down
P1 Joy left
P1 Joy right
P1 Bu1
P1 Bu2
P1 Bu3
P1 Bu4
P1 Bu5
P1 Bu6
Spieler 2:
P2 Joy up
P2 Joy down
P2 Joy left
P2 Joy right
P2 Bu1
P2 Bu2
P2 Bu3
P2 Bu4
P2 Bu5
P2 Bu6
Frontstick:
Front Joy up
Front Joy down
Front Joy left
Front Joy right
Zusatzbutton:
1Player
2Player
Münzeinwurf
Flipper li
Flipper re
P1 (Player1)
=>Spieler 1
P2 (Player2)
=>Spieler 2
Joy up, down, left
und right
=>Richtungen der
Joystickbewegung
2.1 Vorhandene Hardware in der Projektumgebung
Für alle Funktionstests verwendete ich meinen privaten PC mit folgender Systemausstattung:
- AMD Athlon Thunderbird 1000Mhz - CPU
- Grafikkarte vom Typ Nvidia Geforce2 Pro
- Eingabegeräte: Standard PS2 Tastatur und Standard PS2 Maus
- Betriebssystem Windows XP
2.2 Wie kommuniziert der Controller mit dem PC?
Ein moderner PC besitzt viele verschiedene Schnittstellen, über die eine Anschaltung
des Controllers denkbar wäre. Allerdings haben alle für den Anschluss externer
Hardware üblichen Kommunikationsschnittstellen für mein Projekt einen sehr großen
Nachteil. Bei Verwendung der seriellen COM-, der parallelen LPT-, aber auch der
USB- bzw. Firewireschnittstelle ist eine spezielle Treibersoftware notwendig, welche
ins Betriebssystem eingebunden werden muss. Dieser Treiber würde den
Datenaustausch zwischen PC - Betriebssystem und Eingabegerät über die gewählte
Schnittstelle steuern.
Da verschiedene Betriebssysteme die Computerschnittstellen unterschiedlich
ansprechen und verwalten, muss folglich unter erheblichem Zeitaufwand für jedes
System eine eigene Treibersoftware entwickelt werden. Der Arcadeemulator MAME
ist beispielsweise ebenfalls in der LINUX - Version xMAME verfügbar.
Bei Erscheinen neuer Betriebssystemversionen muss eine fortlaufende Anpassung
bzw. Optimierung der Schnittstellensoftware für den fehlerfreien Betrieb des
Controllers durchgeführt werden. Dieser hohe Aufwand brachte mich davon ab, eine
der 4 oben benannten Möglichkeiten für das Projekt zu favorisieren.
- 10 Stattdessen machte ich mir über die Verwendung der Gameportschnittstelle
Gedanken. Der Gameport verbindet gewöhnlich Joysticks und Gamepads mit dem
Computer. Ein einfacher Treiber für diese Schnittstelle ist in allen üblichen PC Betriebssystemen vorhanden. Meine Überlegung war es, die Elektronik aus einem
multifunktionalen, handelsüblichen Gamepad in dem Arcadecontroller zu betreiben.
Leider musste ich feststellen, dass die Möglichkeiten der Gameportschnittstelle nicht
ausreichend sind. Maximal 4 digitale und 4 analoge Eingangssignale können vom
Gameport ohne größeren Aufwand verarbeitet werden. Die 29 Mikroschalter meines
Controllers entsprechen insgesamt 29 digitalen Eingangssignalen.
Somit musste ich nach einer weiteren Lösung für das Arcadeboard suchen.
Mittels einer Internet - Suchmaschine wurde ich auf die private Homepage von
Stephan Hans aufmerksam: http://home-t-online.de/home/Stephan.Hans/tricks.htm.
Herr Hans hatte eine elektrische Schaltung entwickelt, mit der die Möglichkeit
besteht, gleichzeitig zwei Tastaturen an einem PC zu betreiben. Diese Schaltung
wurde auch als Tastatursplitter bezeichnet. Sinnvoll ist die Lösung, weil eine Tastatur
als PC - Bedientastatur und die andere für die Controlleranbindung verwendet
werden kann.
Alle MAME - Funktionen lassen sich frei konfigurieren und über die Tastatur steuern.
Da bei einer üblichen Multifunktionstastatur mit 102 Tasten (MF - 102) jeder
betätigten Tastaturtaste ein eindeutiger Scancode zugeordnet ist, stehen somit für
die Codierung der benötigten Controllertasten theoretisch 102 Möglichkeiten zur
Verfügung. Der Tastatursplitter wird über ein angefertigtes PS2 - Kabel mit der PS2 Tastaturschnittstelle des PC verbunden. Am Splitter befinden sich 2 Buchsen für die
Bedientastatur und den Arcadecontroller.
2.3 Allgemeiner Aufbau und Funktion der Tastatur
Wie bereits beschrieben, verwendete ich zur PC - Anschaltung des Controllers
eine zweite Tastatur. Um aufzuzeigen, warum für das Projekt nicht die gesamte
Tastatur, sondern nur der integrierte Tastaturprozessor und das Anschlusskabel
benötigt wurden, möchte ich nachfolgend die Grundlagen und Funktionalitäten einer
Standardtastatur erläutern.
Die Tastatur gilt als das wichtigste Eingabegerät am Computer. Prinzipiell besteht
eine Tastatur aus den Funktionseinheiten Zifferntastenblock, Funktionstasten,
Cursortasten, Sondertasten und dem Schreibmaschinenblock.
- 11 Für meine Betrachtungen waren nicht die Aufgaben der Funktionseinheiten
maßgeblich. Interessanter sind die innere Verschaltung und das elektronische
Funktionsprinzip einer Tastatur. Jede Taste ist einem speziellen Stromkreis der
Tastatur zugeordnet.
Ein kleiner Mikroprozessor untersucht innerhalb einer Sekunde mehrere hundertmal
alle Tastaturstromkreise. Jede Taste besitzt an der Unterseite eine kleine Metallfeder. Bei Betätigung einer Taste verbindet diese Feder zwei Punkte auf einer mit
Leiterbahnen überzogenen Folie. Der entsprechende Tastaturstromkreis ist
geschlossen. Durch das Kontaktieren ändert sich die Spannung innerhalb des
zugehörigen Tastaturstromkreises. Auf diese Spannungsänderung reagiert der
Tastaturprozessor und generiert ein, der betätigten Taste eindeutig zugeordnetes
elektrisches Signal. Dieses als Scancode bezeichnete Signal gelangt über die
serielle PS2 - Schnittstelle vom Tastaturprozessor zum Tastaturcontroller.
Der Tastaturcontroller befindet sich auf dem PC - Motherboard und ist für die
Auswertung und Weiterverarbeitung des empfangenen elektrischen Signals
zuständig.
Für die Verbindung meines Controllers mit dem PC benötigte ich demzufolge nur das
Tastaturkabel und den Tastaturprozessor, welcher direkt in das Controllergehäuse
eingebaut wurde. Der Prozessor ist mit allen 29 Mikroschaltern elektrisch verbunden.
Somit werden die Tastaturstromkreise durch das Betätigen der Mikroschalter
geschlossen und eine Kommunikation mit dem PC ist möglich.
- 12 2.4 Anordnung der Bedienelemente und Gehäusedesign
Die Verteilung der Bedienelemente meines quaderförmigen Arcadecontrollers ist auf
folgender Abbildung übersichtlich dargestellt:
Die Gesamtlänge beträgt 73,5cm. Die Tiefe und die Höhe betragen jeweils 18,5 bzw.
10cm. Das Gehäuse wurde aus mindestens 1cm starkem Sperrholz angefertigt,
um ein vernünftiges Gewicht und entsprechende Stabilität zu realisieren. Zur
Verschönerung habe ich das Gehäuse mit silberner Metalleffektfolie überzogen und
die Kanten mit Aluminiumwinkelprofilen verkleidet.
2.5 Vergleich mit im Handel erhältlichen Geräten
In deutschen Geschäften werden wegen zu geringer Nachfrage fast keine
Arcadecontroller angeboten. Lediglich für einige ältere Spielkonsolen existieren
Einspielerboards mit einem Joystick und bis zu 6 Pushbuttons. Zweispielersysteme
oder Boards für den Personalcomputer habe ich in Deutschland noch nicht gesehen.
Ist die Anschaffung eines professionell hergestellten Controllers geplant, besteht
fast nur die Möglichkeit, direkt in Amerika bzw. England über Internet zu bestellen.
Drei verschiedene Systeme haben sich durchgesetzt. Die Arcadeboards HotRod,
SlikStik bzw. X - Arcade unterscheiden sich im Preis, Anzahl der möglichen Spieler
und im Design. Alle Systeme entsprechen, zumindest in der Zweispielerausführung,
annähernd dem Funktionsumfang meines Controllers. Die Profigeräte verfügen über
einen Mikrocontroller und eine spezielle Treibersoftware, welche die Kommunikation
mit dem PC ermöglicht. Ein großer Nachteil dieser Systeme sind die hohen Kosten,
welche ohne Versandgebühr zwischen $99,95 und $694,95 liegen.
Bezugsquellen und Abbildungen der Boards können Anlage 7 entnommen werden.
- 13 2.6 Materialbeschaffung
Die meisten Probleme hatte ich bei der Beschaffung der Bedienelemente.
2 gebrauchte Joysticks und alle 8 runden Pushbuttons sowie diverse Kupferlitzen für
die Verdrahtung der Bedienelemente konnte ich bei Ebay für 30 Euro ersteigern.
Von einem Bekannten erhielt ich den 3. Joystick. Die fehlenden 9 Taster entstammen
einem ausgemusterten Dart - Automat. Das Sperrholz für das Gehäuse hatte mein
Vater übrig. Eine alte Cherry -Tastatur fand ich in meinem Schrank.
Die elektrischen Bauteile für den Tastatursplitter, inklusive Gehäuse und LochrasterPlatine, kaufte ich bei Conrad Elektronik für etwa 15 Euro. Dazu kamen noch die
selbstklebende Metalleffektfolie, die Aluminiumwinkelprofile und diverse Schrauben
für 20 Euro. Somit beliefen sich meine Gesamtkosten auf ca. 65 Euro.
3 Die Interfaceschaltung
Die ursprüngliche Schaltung von Stephan Hans stammt aus einer Zeit, in der an
die serielle PS2 - Schnittstelle im PC noch nicht zu denken war. Damals wurde die
Tastatur mit einem DIN - Stecker an den Computer angeschlossen. Ich zeichnete
eine neue Schaltung mittels Electronic Workbench, um zwei der drei 5-poligen
DIN - Buchsen gegen zwei 6-polige PS2 - Buchsen auszutauschen. Der eingesetzte
IC (74HCT4053), aber auch die Schnittstellen waren im EWB nicht vorhanden. Dies
machte eine Nachbearbeitung der Schaltung mit einem Grafikprogramm notwendig.
- 14 3.1 Protokolle für die Datenübertragung zwischen PC und Tastatur
Um die Funktion der Schaltung zu verstehen, müssen die Kommunikationsabläufe
zwischen dem PC (Host) und der Tastatur bekannt sein. Bei der stattfindenden seriell
bidirektionalen Datenübertragung werden zwei unterschiedliche Protokolle
eingesetzt. Damit die Übertragung synchron läuft, ist eine separate Takt- bzw.
CLOCK - Leitung notwendig. Das Taktsignal wird von der Tastatur generiert und hat
üblicherweise eine Frequenz im Bereich von 20 - 30 kHz. Sende und Empfangsrichtung haben unterschiedliche Wertigkeiten. Die Senderichtung vom PC zur
Tastatur wird bevorzugt. Deshalb können jederzeit Befehle vom PC an die Tastatur
übertragen werden (auch wenn die Tastatur bereits sendet).
Sendeprotokoll der Tastatur:
Wie aus dem Bild ersichtlich, kann eine Tastatur nur Daten zum PC senden, wenn
vorher sowohl die Leitungen DATA als auch CLOCK den Zustand High (=idle)
angenommen haben. Bei jeder fallenden Flanke des CLOCK - Signals kann ein Bit
des DATA - Signals ausgelesen werden. Das DATA - Signal besteht für einen zum
PC übertragenen Scancode aus einem Startbit, 8 Datenbits, einem Paritätsbit und
einem Stopbit. Wurde beispielsweise die Taste „a“ der Tastatur betätigt, wird der
Scancode 1Chex (8 Datenbits: 00011100) übertragen.
Empfangsprotokoll der Tastatur (PC sendet in Richtung Tastatur):
Verwendung findet dieses Protokoll bei der Übertragung von Steuercodes, wie z.B.
Aktivierung der NUM- bzw. CAPS LOCK - LED zur Tastatur.
- 15 Um das gleichzeitige Senden von der Tastatur in PC - Richtung zu verhindern, muss
zuerst für 60 Mikrosekunden die CLOCK - Leitung auf Low gesetzt werden. Nach
Ablauf dieser Zeit werden ebenfalls die DATA - Leitung auf Low gezogen und das
Taktsignal der Tastatur überlassen. Der Mikrocontroller in der Tastatur befindet sich
durch diese Prozedur in Empfangsbereitschaft. Vom PC werden nun die 8 Datenbits,
gefolgt von einem Paritätsbit, zur Tastatur übertragen. Nach Ablauf einer weiteren
Taktperiode, bei der durch die Tastatur die DATA - Leitung auf High gesetzt wurde,
sendet die Tastatur eine Bestätigung (Acknowledge) für den Empfang der neuen
Daten, indem sie die DATA - Leitung für die nächste Taktflanke auf Low zieht.
3.2 Schaltungsanalyse
Die Schaltung realisiert die gleichzeitige Anbindung von 2 Tastaturen am PC. Der
Analog - Multiplexer - IC 4053N verbindet das Taktsignal einer Tastatur mit dem PC,
um die Synchronisation der Kommunikationsabläufe zu gewährleisten. Die Schaltung
besteht außerdem aus 2 NPN (BC548) bzw. PNP (BC558) Transistoren, welche im
Schalterbetrieb eingesetzt werden. Um beide Transistoren einer Stufe zu verkoppeln,
wird ein 2,2KOhm Widerstand verwendet. Über zwei aus jeweils einem 47kOhm Widerstand und einem 22nF - Kondensator bestehende RC - Glieder lassen sich in
Kombination mit den beiden PNP - Transistoren die verwendeten internen Schalter Y
und Z des Multiplexer - IC zurücksetzen. Um die Steuersignale (z.B. Aktivierung der
NUM - LED) zur Bedientastatur zu übertragen, wird zusätzlich noch eine Diode vom
Typ 1N4148 benötigt. Für die Verbindung der Schaltung mit PC, Arcadecontroller
und Bedientatstatur habe ich zwei PS2- und eine 5-polige DIN - Buchse eingesetzt.
Die Datenübertragung vom Arcadecontroller zum PC funktioniert wie folgt:
Zum Verbindungsaufbau wird über die CLOCK - Leitung (PIN1) das Taktsignal an
den Z - Eingang des IC (PIN4) gelegt. Dadurch wird im Schaltkreis der Eingang Z mit
dem Ausgang Z0 verbunden und das Taktsignal liegt ebenfalls direkt an der PS2 Buchse (PIN5) des PC. Der Tastaturcontroller im PC registriert, dass ein Scancode
zum PC übertragen werden soll. Jetzt wird entsprechend dem vereinbarten Protokoll
bitweise und taktsynchron die DATA - Leitung über T3 abgefragt. Ist die DATA Leitung im High - Zustand, schaltet über den Widerstand R3 ebenfalls der Transistor
T4 durch. Der bereits aufgeladene Kondensator C2 wird durch T4 kurzgeschlossen
und die +5V Betriebsspannung fällt komplett über R4 ab.
- 16 Weil der Rücksetzeingang B vom Y - Schalter (verantwortlich für das Weiterleiten des
Taktes der Bedientastatur zum PC) des Multiplexers parallel zu R4 liegt, kann es nie
vorkommen, dass beide Taktsignale gleichzeitig zum Takteingang vom PC gelangen
und dadurch die synchrone Übertragung gefährden. Die Datenübertragung von der
Bedientastatur zum PC funktioniert identisch. Allerdings wird für das Taktsignal der
Y - Schalter im Multiplexer verwendet. Die Steuerung des Rücksetzeingangs C vom
Z - Schalter wird von T2, C1 und R2 realisiert.
3.3 Das Layout der Lochrasterplatine
Das Layout der Lochrasterplatine wurde mit der Software Lochmaster erstellt.
Lochrasterplatine Bestückungsseite
Lochrasterplatine Lötseite
- 17 3.4 Bestückung der Platine
Bevor ich mit der Bestückung der Tastatursplitterplatine beginnen konnte, hatte ich
sie auf die benötigten Maße (74mm x 41mm) zugesägt und mit 4 Bohrungen für den
Einbau ins Gehäuse versehen. Im zweiten Schritt wurden alle Bauteile der
Bestückungsliste, dem Layoutplan entsprechend, auf die Platine gesetzt und
aufgelötet. Wie man dem Layout entnehmen kann, musste ich ebenfalls auf der
Bestückungsseite diverse Brücken realisieren. Dazu verwendete ich dünnen
isolierten Draht. Dieser wurde durch Zinn auf der Lötseite der Platine befestigt. Im
letzten Schritt habe ich alle Bauteile und Brücken mittels Blankdraht und Zinn auf der
Lötseite elektrisch leitend verbunden.
Bestückungsliste:
Widerstand
R1/R3 , 2,2k
Widerstand
R2/R4 , 47k
Kondensator
C1/C2 , 22nF
Transistor
T1/T3, BC548 (NPN)
Transistor
T2/T4, BC558 (PNP)
Diode
D1, 1N4148
Schaltkreis
IC1, CD4053BE
Schaltkreisfassung DIL16, IC - Fassung
2 x PS2 - Buchse
(6-polig, Mini - DIN geschirmt)
1 x DIN - Buchse
(5-polig)
Platine: RM 2,54 mm Punktraster 74mm x 41mm
3.5 Erste Funktionstests, Fehlersuche und Problembeseitigung
Die ersten Funktionstests der Schaltung führte ich mit einem älteren PC und 2
Standardtastaturen durch. Vor den Versuchen war es notwendig, ein PS2 - Kabel für
die Anbindung des Splitters an den PC zu fertigen. Ich verwendete ein kurzes Stück
geschirmtes Signalkabel und 2 PS2 - Stecker:
Steckverbinder Mini - DIN (6-polig)
1 DATA
2 nicht belegt
3 Ground
4+ 5 V
5 CLOCK
6 nicht belegt
- 18 Mit diesem Kabel stellte ich nun die Verbindung zwischen PC und Splitter her. Beide
Tastaturen wurden an den Splitter angeschlossen und der PC eingeschaltet.
Der erste Test verlief negativ. Mein PC ließ sich nicht starten. Stattdessen erhielt ich
eine BIOS - Fehlermeldung. Es wurde auf ein Problem des Tastaturcontrollers
hingewiesen. Nach Überprüfung meiner Schaltung mit dem original Schaltplan von
Stephan Hans konnte ich den Fehler eingrenzen. Herr Hans hatte statt
DIN - Buchsen äquivalente Stecker im Schaltplan eingezeichnet. Weil im Internet auf
den Fotos zu seiner Beispielschaltung allerdings Buchsen zu sehen waren,
verwendete ich die Pinbelegung einer 5-poligen DIN - Buchse für mein
Schaltungslayout bzw. für die Umsetzung DIN auf PS2. Dadurch waren alle 3
Schnittstellen in meinem Layout falsch angeschlossen. Um den Änderungsaufwand
der neuen Schaltung gering zu halten, wurde auf der Platine nur die PS2 - Buchse
für die Bedientastatur umgelötet. Die Anpassung für die Schnittstellen zum
Arcadecontroller und zum PC hatte ich im jeweiligen Stecker der Anbindungskabel
ebenfalls durch Umlöten realisiert. Mein zweiter Funktionstest war erfolgreich. Der
PC hat vollständig gebootet. In einem Editorfenster konnte ich die fehlerfreie
Funktionalität der Platine feststellen. Unabhängig von der verwendeten Tastatur
wurde jedes Zeichen zum PC übertragen und auf dem Monitor ausgegeben.
3.6 Einbau ins Gehäuse
Zuerst setzte ich die Platine in das untere Gehäuseteil und markierte die benötigten
Aussparungen für die Buchsen mit einem Bleistift auf dem Gehäuse. Anschließend
wurde das Gehäuse mittels Säge und Feile entsprechend bearbeitet, die Platine in
das Gehäuseunterteil geschraubt und das Gehäuse geschlossen. Die Aussparungen
bzw. die Montage der Platine sind auf folgenden Fotos gut erkennbar:
- 19 4 „Tastaturhack“ bzw. „Tastaturreversing“
Auf die Begriffe bin ich während meiner Recherchen für die Projektarbeit im Internet
gestoßen. Beide Formulierungen haben die gleiche Bedeutung.
Der Tastatur wird durch komplette Demontage die Aufgabe entzogen, über normale
Tastenbetätigungen mit dem PC zu kommunizieren. Man verwendet nur die in der
Tastatur eingebaute kleine Platine, auf der sich der Tastaturprozessor befindet, um
eine Kommunikation zwischen Hardware (z.B. Arcadecontroller) und PC zu
erreichen. Ich habe für mein Projekt ebenfalls eine komplette Tastatur zerlegt. Die
Platine mit dem Tastaturprozessor ist die „Schaltzentrale“ in meinem
Arcadecontroller. Ein weiteres wichtiges Hauptziel beim Tastaturhack ist das
Ermitteln der im Prozessor eingebauten Matrix - Logik. Diese ist herstellerabhängig
und für fast jede Tastatur unterschiedlich.
4.1 Logik des Tastaturprozessors und Ghost - Key - Problem
Der Tastaturprozessor verwendet eine Matrixschaltung zur Bestimmung des
Scancode nach einer Tastenbetätigung. Unter dem Begriff Matrix versteht man in
diesem Zusammenhang, dass jeweils eine ganze Reihe bzw. eine Spalte der
Tastatur auf einen Anschlusspin des Tastaturprozessors geführt sind. Durch die
Betätigung einer Taste verbindet man nun die jeweilige Reihe mit der dazugehörenden Spalte. Eine eindeutige Zuordnung der Taste wird dadurch möglich.
Das Foto zeigt die von mir eingesetzte Platine. Die blau markierten Pins entsprechen
den Matrixzeilen 1 - 18. Die rot markierten Pins verbinden die Matrixspalten 1 - 8 mit
dem Tastaturprozessor. Somit ist auf dieser Platine eine 18 x 8 - Matrix realisiert.
Wie ursprünglich die 102 Tasten des Keyboards auf der Matrix verteilt waren, kann
der Anlage 2 entnommen werden. Jeder im Arcadecontroller eingebaute Mikroschalter wurde mit einem Reihenpin und einem Spaltenpin der Platine verbunden.
Durch Betätigung eines Joysticks oder Pushbutton wird mindestens ein Mikroschalter
geschlossen und der entsprechende Scancode generiert.
- 20 Wenn die 29 Mikroschalter wahllos auf der Matrix verteilt werden, funktioniert das
Arcadeboard definitiv nicht. Es wäre möglich 3, 4 oder vielleicht auch 6 Scancode
gleichzeitig zum PC zu übertragen. Mit 6 Signalen ist aber kein 2 - Spielermodus
realisierbar. Geht man von 6 gleichzeitigen Signalen aus, könnten 2 Spieler bei
diagonaler Bewegung des jeweiligen Joysticks maximal noch jeweils 1 Pushbutton
betätigen. Eine Joystickdiagonalbewegung schließt, mechanisch bedingt, immer 2
Schalter. Die meisten Automatenspiele verlangen aber pro Spieler mindestens 4 bis
6 Pushbutton. Ursache für die beschriebene Begrenzung ist die im Tastaturprozessor
integrierte Logik, welche zur Abfrage der Tastaturmatrix verwendet wird. Man spricht
allgemein vom Ghost - Key - Problem.
Die Abtastlogik des Tastaturprozessors lässt sich wie folgt definieren: Bilden die 3
bereits gedrückten Tasten auf der Matrix 3 Eckpunkte eines Rechtecks, kann keine
Taste unter, im bzw. über dem Rechteck vom Controller ausgewertet werden. Ein
Ghost - Key - Signal wird vom Prozessor generiert und zum PC übertragen.
Das gleichzeitige Betätigen der Tasten H, 7 und 0 auf der von mir ermittelten Matrix
hat beispielsweise zur Folge, dass alle weiteren Tasten, welche durch die Matrixspalten 1 - 3 und die Matrixzeilen 1 - 18 abgebildet sind, vom Tastaturprozessor nicht
ausgewertet werden können. Somit wird nur durch gezieltes, logisches Verteilen
aller benötigten Mikroschalter auf der Tastaturmatrix die Anbindung des
Arcadecontrollers über den Tastaturprozessor ohne Einschränkungen möglich.
4.2 Erstellung eines Tastenkontaktplanes
Um die in Anlage 2 abgebildete und in meiner ursprünglichen Tastatur verwendete
Matrix zu erhalten, musste ich für jede Taste die benötigte Pinkombination an der
Tastaturprozessorplatine ermitteln. Innerhalb der Tastatur wurden alle Stromkreise
über eine mit vielen Leiterbahnen versehene Kunststofffolie an die Prozessorplatine
herangeführt. Diese Folie besteht aus einem oberen und einem unteren Teil, welche
durch eine mit Kontaktlöchern versehene Metallplatte voneinander getrennt sind.
Jede Tastenbetätigung stellt eine elektrisch leitende Verbindung zwischen dem
oberen und dem unteren Folienkontakt her. Die Pinkombinationen aller Tasten
wurde mittels Durchgangsprüfung zwischen den Foliekontakten und den Platinenpins
bestimmt. Als Messgerät verwendete ich ein Digitalmultimeter mit akustischer
Durchgangsprüfung. Die Ergebnisse sind im Tastenkontaktplan (Anlage 1)
dokumentiert (u = unterer Folienkontakt; o = oberer Folienkontakt).
- 21 4.3 Entwicklung der Tastaturmatrix
Mit dem Tastenkontaktplan war es mir nun möglich, die komplette Tastaturmatrix
zu erstellen. Ich entwickelte eine Tabelle mit 18 Zeilen und 8 Spalten. Die Zeilen und
Spalten repräsentieren jeweils die oberen bzw. unteren Folienkontakte. In die Tabelle
wurden alle Tasten übertragen. Anlage 2 enthält die vollständige Tastaturmatrix.
4.4 Verteilung der Controllerfunktionen auf der Matrix
Um eine möglichst hohe Kompatibilität des Arcadecontrollers mit vielen Programmen
zu erreichen, musste ich einige Regeln bei der Verteilung meiner Mikroschalter auf
der Tastaturmatrix beachten. Alle Windows - Funktionstasten, wie z.B. Alt, AltGr,
Windows li./re., Menü usw., aber auch die NUMPAD - Tasten wurden nicht
vergeben. Ich habe diese Tasten in der Anlage 3 schwarz umrahmt.
Niemals eintretende Fälle, wie z.B. gleichzeitig „Joy left“ und „Joy right“ oder
gleichzeitig „Joy up“ und „Joy down“ konnten auf einer Matrixzeile abgebildet werden.
Der Frontstick wird nie in Verbindung mit einem der beiden anderen Joysticks
verwendet. Aus diesem Grund befinden sich die Funktionen „Front Joy up“ und
„Front Joy down“ neben den Funktionen „P1 Joy up“ und „P1 Joy down“ in der
Matrixzeile 2.
Die Zusatzbuttons und Flippertasten werden im Joystickbetrieb nicht benötigt,
haben somit keinen Einfluss auf das Ghost - Key - Problem und können dadurch
wahllos auf der Matrix verteilt werden.
Die 12 Aktionstasten für den 2 - Spieler - Betrieb befinden sich in keiner Matrixzeile
mit Joystickfunktionalität.
Leider bin ich wegen dieser vielen Regeln an die Grenzen meiner Tastaturmatrix
gestoßen. Die Button 5 und 6 beider Spieler könnten im 2 - Spieler - Modus
Probleme bereiten, da für alle 4 Tasten nur noch 2 Matrixzeilen zur Verfügung
standen. Weil diese Tasten allerdings sehr selten gleichzeitig betätigt werden, wird
man kaum Fehler feststellen. Die komplette Verteilung aller Mikroschalter auf meiner
Matrix kann Anlage 3 entnommen werden.
- 22 5 Bau des Controllers
In diesem Teil der Projektarbeit möchte ich kurz die Anfertigung und Montagereihenfolge meines Arcadecontrollers darlegen. Auf die Ausführung handwerklicher
Tätigkeiten, wie z.B. Bohren, Sägen, Kleben und Verschrauben, wird nicht genauer
eingegangen.
5.1 Das Gehäuse
Für das Grundgehäuse sägte ich 1cm dickes Sperrholz auf die in der Anlage 4
dokumentierten Maße zu. Nach dem Entgraten der Kanten wurden in alle Teile die
benötigten Bohrungen eingebracht. Um die eckigen Pushbutton im Gehäuse zu
versenken, mussten die entsprechenden kreisrunden Bohrungen mit einer Feile zu
quadratischen Aussparungen gearbeitet werden. Anschließend habe ich alle Teile
miteinander verklebt bzw. verschraubt und das entstandene Gehäuse von innen
dunkelschwarz lackiert. Zum Schluss wurden die Außenseiten mit selbstklebender
Metalleffektfolie überzogen und die Controllerkanten durch Aluminiumprofile
verkleidet. Die Unterseite des Controllergehäuses bleibt offen, um defekte
Mikroschalter problemlos wechseln zu können.
5.2 Montage der Joysticks und Pushbutton
Nach der Gehäusemontage wurden alle 18 Bedienelemente an den vorgesehenen
Stellen ins Gehäuse eingesetzt. Jeder Joystick ist mit 4 Schrauben befestigt. Alle
Pushbutton besitzen ein Gewinde und werden von einer passenden Kunststoffmutter
im Gehäuse gehalten.
5.3 Montage der Tastaturprozessorplatine
Für die Montage der Tastaturprozessorplatine verwendete ich einen 4cm breiten und
einen 52,5cm langen Sperrholzstreifen. Zuerst befestigte ich 3 Schraubklemmleisten
(jeweils 12 Klemmen) mittig auf diesem Streifen. Im zweiten Schritt lötete ich an
jeden benötigten PIN der Prozessorplatine einen ausreichend langen Draht.
Anschließend montierte ich die Platine mit Kunststoffabstandshaltern ebenfalls auf
dem Holzstreifen. Nach dem Ausrichten und Abbinden der Drähte wurde jeweils ein
Draht in eine Klemme gelegt und eingeschraubt. Zum Schluss befestigte ich den
Sperrholzstreifen an der inneren Gehäuserückseite (siehe Abbildung Seite 6, rechts
unten).
- 23 5.4 Herstellung der elektrischen Verbindungen
Jede Klemme, auf dem im Gehäuse montierten Sperrholzstreifen, hat eine elektrisch
leitende Verbindung zu einem PIN der Tastaturprozessorplatine.
Ein Mikroschalter besitzt immer mindestens 2 Anschlussmöglichkeiten. Ist ein 3.
Kontakt vorhanden, handelt es sich um einen Wechselschalter. In meinen Controller
wurden nur Wechsler eingebaut. Ich musste bei der Verdrahtung darauf achten,
immer die beiden Schließerkontakte mit den jeweils benötigten Schraubklemmen zu
verbinden. Für die elektrische Verdrahtung nutzte ich verschiedenfarbige Kupferlitzen. Für die Mikroschalterkontakte presste ich passende Kabelschuhe und für die
Schraubklemmen entsprechende Aderendhülsen auf die Litze.
Um beispielsweise den COIN - Button (Geldeinwurf = Taste „4“) mit dem Tastaturprozessor zu verbinden, verwendete ich die Schraubklemmen für die Matrix - Zeile 2
und die Matrix - Spalte 3. Alle anderen Schalter wurden ebenfalls entsprechend der
Anlage 3 verdrahtet.
Das bereits während der Gehäusemontage in den Controller eingeführte Anschlusskabel wurde auf die Prozessorplatine gesteckt und mit einer Kunststoffschelle auf
den Sperrholzstreifen geschraubt.
5.5 Testen aller gewünschten Funktionalitäten
Nach der kompletten Montage stellte ich erneut die Verbindungen zwischen Arcadecontroller und PC über den Tastatursplitter her und schrieb für den Arcadeemulator
MAME das benötigte „Freestyler“ - Konfigurationsfile (Anlage 5).
Ich verwendete meinen Controller bei mehreren Automatenspielen im Einspielermodus. Dabei traten keinerlei Probleme auf. Bei dem Zweispielertest unterstützte
mich meine Frau. Auch hier funktionierte der Controller zu meiner vollsten
Zufriedenheit. Die Funktion der Flippertasten kontrollierte ich mit der
Emulationssoftware PINMAME (Foto Seite 7).
Weitere Emulationsprogramme, wie z.B. Winkawaks, Neorage und Zinc, laufen
ebenfalls problemlos mit meinem Arcadecontroller. Prinzipiell kann ich den Controller
für jede PC - Software benutzen, bei der eine digitale Steuerung benötigt wird.
- 24 Anlage 1
Der komplette Tastenkontaktplan
- 25 Anlage 2
Tastenverteilung auf der 18 Zeilen x 8 Spalten - Matrix
- 26 Anlage 3
Mikroschalterzuordnung auf der Tastaturmatrix
- 27 Anlage 4
Übersicht der benötigten Gehäuseteile
Alle Zeichnungen wurden im Maßstab 1:5 erstellt. Die Maßangaben entsprechen der
Maßeinheit cm.
4,5
8,5
9,5
18,0
2,5
Oberteil
10,5
17,5
21,5
26,5
31,5
46,0
53,0
57,0
62,0
67,0
73,0
2,5
3,0
4,0
5,0
10,0
3,5
Vorderseite
20,0
25,0
30,0
37,0
50,0
55,5
60,5
65,5
73,0
10,0
Rückseite
73,0
9,0
9,0
2,5
2,5
Rechtes Seitenteil
Linkes Seitenteil
3,0
3,0
16,0
16,0
- 28 Anlage 5
Auszug aus dem „Freestyler“ - Konfigurationsfile für MAME
(die Datei muss ins Mame - Unterverzeichnis: „ctrlr“,
z.B. G:\MamePlus0.88\ctrlr\Rene.cfg)
<mameconfig version="10">
<system name="default">
<!-Freestyler input customization file
Revision 1.0 - 26/01/2005 Rene Stritzke
-->
<input>
<port type="START1">
<newseq type="standard">KEYCODE_1 OR JOYCODE_1_START</newseq>
</port>
<port type="START2">
<newseq type="standard">KEYCODE_2 OR JOYCODE_2_START</newseq>
</port>
<port type="COIN1">
<newseq type="standard">KEYCODE_4 OR JOYCODE_1_SELECT</newseq>
</port>
<port type="P1_JOYSTICK_UP">
<newseq type="standard">KEYCODE_G OR KEYCODE_V OR JOYCODE_1_UP</newseq>
</port>
<port type="P1_JOYSTICK_DOWN">
<newseq type="standard">KEYCODE_B OR KEYCODE_T OR JOYCODE_1_DOWN</newseq>
</port>
<port type="P1_JOYSTICK_LEFT">
<newseq type="standard">KEYCODE_C OR KEYCODE_X OR JOYCODE_1_LEFT</newseq>
</port>
<port type="P1_JOYSTICK_RIGHT">
<newseq type="standard">KEYCODE_D OR KEYCODE_W OR JOYCODE_1_RIGHT</newseq>
</port>
<port type="P1_BUTTON1">
<newseq type="standard">KEYCODE_O OR JOYCODE_1_BUTTON1 OR
MOUSECODE_1_BUTTON1</newseq>
</port>
<port type="P1_BUTTON2">
<newseq type="standard">KEYCODE_P OR JOYCODE_1_BUTTON2 OR
MOUSECODE_1_BUTTON3</newseq>
</port>
<port type="P1_BUTTON3">
<newseq type="standard">KEYCODE_UP OR JOYCODE_1_BUTTON3 OR
MOUSECODE_1_BUTTON2</newseq>
</port>
- 29 <port type="P1_BUTTON4">
<newseq type="standard">KEYCODE_RIGHT OR JOYCODE_1_BUTTON4</newseq>
</port>
<port type="P1_BUTTON5">
<newseq type="standard">KEYCODE_RSHIFT OR JOYCODE_1_BUTTON5</newseq>
</port>
<port type="P1_BUTTON6">
<newseq type="standard">KEYCODE_RCONTROL OR JOYCODE_1_BUTTON6</newseq>
</port>
<port type="P2_JOYSTICK_UP">
<newseq type="standard">KEYCODE_Y OR JOYCODE_2_UP</newseq>
</port>
<port type="P2_JOYSTICK_DOWN">
<newseq type="standard">KEYCODE_F OR JOYCODE_2_DOWN</newseq>
</port>
<port type="P2_JOYSTICK_LEFT">
<newseq type="standard">KEYCODE_H OR JOYCODE_2_LEFT</newseq>
</port>
<port type="P2_JOYSTICK_RIGHT">
<newseq type="standard">KEYCODE_N OR JOYCODE_2_RIGHT</newseq>
</port>
<port type="P2_BUTTON1">
<newseq type="standard">KEYCODE_K OR JOYCODE_2_BUTTON1</newseq>
</port>
<port type="P2_BUTTON2">
<newseq type="standard">KEYCODE_BACKSPACE OR JOYCODE_2_BUTTON2</newseq>
</port>
<port type="P2_BUTTON3">
<newseq type="standard">KEYCODE_DOWN OR JOYCODE_2_BUTTON3</newseq>
</port>
<port type="P2_BUTTON4">
<newseq type="standard">KEYCODE_PGDN OR JOYCODE_2_BUTTON4</newseq>
</port>
<port type="P2_BUTTON5">
<newseq type="standard">KEYCODE_LSHIFT OR JOYCODE_2_BUTTON5</newseq>
</port>
<port type="P2_BUTTON6">
<newseq type="standard">KEYCODE_RCONTROL OR JOYCODE_2_BUTTON6</newseq>
</port>
</input>
</system>
</mameconfig>
- 30 Anlage 6
Kleines Arcade - ABC
Die folgenden Fachbegriffe findet man oft in diversen Internetforen bzw. auf Internetseiten, welche sich mit der Thematik Arcade- und Videospielautomaten beschäftigen.
Arcade
Begriff entstammt dem Wortschatz der amerikanischen Jugend
aus den 80er Jahren; mit Arcade wurden nicht nur die
Videospiele, sondern auch die Spielhallen selbst bezeichnet
PCB
„Printed Circuit Board“ ist vergleichbar mit einem PC Mainboard;
auf dem Board befindet sich das eigentliche Spiel und fast alle
für diese Software notwendigen Bauteile (CPU, Eproms, Grafikund Soundchips), PCB ==> Herzstück eines jeden Automaten
Jamma
"Japanese Arcade Maschine Manufacturer"; ebenfalls in
den 80er Jahren haben sich die japanischen Automatenhersteller zusammengeschlossen, um einen gemeinsamen
Standard (2x 28 pin JAMMA - Anschluss) für die Anschlussbelegung der Automaten zu vereinbaren
Marqee
Einschubreklame am Kopf des
Automatengehäuses
Sideart
Bedruckte Folie zur Verschönerung
der Automatengehäuseseiten
Cabinet
Fachbegriff für das Automatengehäuse
Upright /
Begriffe für die Automatenbauart; Upright sind die typischen
Cocktail
aufrecht stehenden Automaten; an Cocktailautomaten können
bis zu 4 Spieler um den Automaten sitzen und die Bildschirmdarstellung kann im 90°-Winkel wechseln
- 31 MAME
Software, welche aktuell in der Lage ist, über 5000
Videoautomaten durch Prozessoremulation nachzubilden;
entwickelt wurde das Programm von einem Studenten; es
existiert eine Vielzahl von Internetseiten, welche sich mit
diesem Emulator beschäftigen.
Manufacturer
Hersteller der Automaten, SEGA, KONAMI, IREM, JALECO,
BALLY und WILLIAMS zählen auch heute noch zu den
bekanntesten; WILLIAMS und BALLY haben neben
Videospielautomaten auch noch viele Flipper produziert.
Man könnte an dieser Stelle noch viele weitere Erklärungen dokumentieren, dies
würde aber den Rahmen der Projektarbeit sprengen.
- 32 Anlage 7
Professionelle Alternativen
1. HotRod
http://www.hanaho.com/products/HotRodJoystick
Preis $99,95
2. SlikStik
http://www.slikstik.com/
Preise zwischen $169,95 und $694,95 Dollar
3. X - Arcade
http://www.x-arcade.com/
Preise zwischen $99.95 - $149.95
- 33 -
Literaturverzeichnis
Es wurden keinerlei Zeitschriften bzw. Bücher für die Erarbeitung der Projektarbeit
verwendet. Alle Quellen sind im Internet unter folgenden HTML-Links zu finden:
Thematik „Tastatursplitter“
http://home.t-online.de/home/stephan.hans/tricks.htm
http://www.st-hans.de/
Thematik „Funktion der Tastatur“
http://shop.tastaturkoenig.de/informationen/wie-funktioniert-eine-tastatur/
http://www4.informatik.uni-erlangen.de/Lehre/WS03/V_BS/oostubs/web/aufgaben/aufgabe1/tastatur.shtml
http://homepages.fh-regensburg.de/~grf39054/praktika/sas.doc
Thematik „Tastatur- bzw. Keyboardhack“
http://www.mameworld.net/emuadvice/keyhack2.html
http://emulated.emusanet.com/kbhack.htm
Thematik „Arcadecontroller“
http://www.arcadecontrols.com/arcade.htm
http://www.arcadecontrols.com/arcade_examples.php
http://www.arcadecontrols.com/arcade_joyofjoys.htm
http://www.retrogame.de/
Thematik „Mame, Emulation“
http://www.mame.net/
http://www.mame.net/screenshotsNEW.html
http://www.mame.net/mamefaqgerman.html
http://www.classicgaming.com/mame32qa/
http://www.classicgaming.com/mame32qa/down.htm
http://mame.emu-zone.org/
http://advancemame.sourceforge.net/menu-snapshot.html
http://advancemame.sourceforge.net/menu-snapshot.html
http://www.arcademania.de/Arcademania/s.allgemein.html
http://www.emu-alliance.com/index.php/emulators/mame
http://www.emustation.de/
http://www.klov.com/index.php
- 34 -
Selbstständigkeitserklärung
Ich versichere, dass ich die vorliegende Arbeit selbstständig verfasst habe.
Es wurden keine anderen Quellen als die angegebenen verwendet.
................................................
(XXXXXXXXXXX)
Herunterladen